Monday, August 27, 2012

Download PMBOK 4th Mind Map from Mind Manager 2012

Step1: Choose "From Template" as Figure1

Figure 1


Step2: Choose "Maps for That!" as Figure 2
Figure 2


Step3: Choose "Technology" as Figure 3

Figure 3

Step4: Choose "PMP Study Guide" as Figure 4
Figure 4



Wednesday, August 22, 2012

This is what will be happened in next few years, emerging trends!

(Actually this is my old post from April 2010 - but it was draft version in un-published box)

Trends:
1. Cloud Computing
2. Business Intelligence
3. Mobile Computing
4. 4G Internet

Equivalent to:
1. PHP/Server Side programming
2. Mobile programming: iPhone/Android/WindowsMobile/Bada/Internet TV
3. Interactive Design: HTML5/Flash
4. EcoSystem, Social API: Facebook, Twitter, Zing, Youtube

Saturday, August 18, 2012

Manually install/remove iPhone software

If you get a chance to download ipa file but don't know how to install it to your iPhone, iPad? Here are some tips:

INSTALL MANUALLY
1/ Using Installous:
- Download your desired ipa file (or ssh to your iPhone)
- In case if you download directly on your Safari, you can use iFile to move it to Installous folder (/private/var/mobile/Documents/Installous/Downloads)
- Open Installous then install it

2/ Using  dpkg -i to install your application (*.deb file)

UNINSTALL MANUALLY

1/ SSH to your mobile phone
2/ Delete your application under folder: /var/stash/Applications/<application name>
3/ And/Or delete your application under folder /private/var/mobile/Applications/<application id/code>
This is a bit hard for you to know which application id/code folder belongs to which application, so you basically have to go in that folder and find <application name>.app folder that equivalent to you application name (you have to guess and make sure correct folder yourself)

Detail example:

1/ How to find your application folder?
Change to default application folder: cd /private/var/mobile/Applications/<application id/code>
Find your application folder that you wish to delete: ls -R | grep 


Another way is using SBSettings\System Wide Options\App Folders, then select your application to see it folder

2/ Delete application: rm -fR /private/var/mobile/Application/<application id/code>

Basic understandings of iPhone/iPad

1/ iOS is unix-based operating system - debian/ubuntu? so that's reason why there are some workforce to port iPhone GCC compiler to Ubuntu - https://github.com/javacom/toolchain4#readme - need study, confirmed?
- So please do remember some constraints related to security matters, eg: you ssh (using root) a file to iPhone and then your application (default using 'mobile' user) to access that file - it'll be failed due to security

2/ IPA package is generally zip file with content inside

3/ Some important folders/directories in iOS
- Default user-home folder: /private/var/mobile
- User-home Application folder: /private/var/mobile/Applications - This is where all the real application code, data stored - so if you want to hack your application - come in here
- User's application data: /private/var/mobile/Documents/ - This is where you see your working data in application stored
- Default iPhone Application folder:  /var/stash/Applications
TBC

4/ Package in iOS
- deb file: is a traditional debian package file so you can use debian command to install, remove it, eg: dpkg -i

- ipa file

5/ Default root password: alpine

Some useful applications for iPhone/iPad

1/ PaperBoss:
I need to study courses, and I made decision to use FlashCards technique. I googled around and finally there were no suitable application on iPhone, iPad. So I had an idea is to create Flash Card myself (picture) and set it as PC's wallpaper, iPhone/iPad wallpaper interval. I found an application: PaperBoss, that was quite very old application in iOS, it's crashed all the time (during setting/configuration works) but it still works normally background somehow

2/ TBC

Useful commands in iPhone/iPad terminal

1/ Want to reboot your iphone/ipad? Connect to terminal (or SSH) and issue command: reboot

2/ Want to restart SpringBoard? Connect to terminal (or SSH) and issue command: killall SpringBoard
TBC

3/ Want to start/stop service in iPhone, speeding up your iPhone?

Start vsftpd (daemon/background service)
launchctl load /System/Library/LaunchDaemons/com.bigboss.vsftpd.Startup.plist

Stop vsftpd daemon
launchctl unload /System/Library/LaunchDaemons/com.bigboss.vsftpd.Startup.plist

Start sshd
launchctl load /Library/LaunchDaemons/com.openssh.sshd.plist

Stop sshd
launchctl unload /Library/LaunchDaemons/com.openssh.sshd.plist

View all working processes
ps -ax

View working processes, and its status
top

View disk free on your iphone
df -h

View used command in terminal
history

View your iPhone information: Kernel, Hardware, iPhone name, etc.
hostinfo

Or
uname -a

View network connections to/from your iphone
netstat -s

Configure your iphone network interface
ifconfig -a

Manipulate packages: install, list, remove, etc.
dpkg -l

View help system
help

Some sources for your free/cracked iPhone/iPad app:

1/ Cydia (in this application you can add many application sources/repositories, you can google it)
2/ Installous (this can be installed from Cydia)
3/ HipStore (this can be installed from Cydia; source: store.heaveniphone.com)
4/ AppStoreVN (this can be installed from Cydia)
5/ Installer (this can be installed from Cydia)



Friday, August 3, 2012

Want to study - flash cards is smart choice

I'm reviewing PMP course, and I soon or later want to get this certificate so I'm thinking of creating my own flash cards, I google around tools for my iphone, ipad, and I saw these interesting websites, especially for knowledge, flash cards exchange

http://www.cobocards.com/pool/en/cardset/67qae0711/online-karteikarten-pmp-processes/

http://www.flashcardexchange.com/iphone-flash-cards

https://quizlet.com/upgrade/?signup&redir=http%3A%2F%2Fquizlet.com%2F

And tools:
CoboCards
FlashCard+

Btw, I will use these tools for creating, maintaining and sharing our project knowledge also

And I got an idea to create a soft (called 'Social Flash Cards') to integrate into Facebook, Twitter, and sharing feature between users; taking a photo with notes for studying and share instantly to friends

And I learnt from the guy - Christian Kienle - who made and published flash cards tool an interesting term "Prototyping driven developer" that sounds cool. He created hundred applications based on his own idea and publish, few of them, acquired by firm, company to make commercial

Wednesday, August 1, 2012

Speed up your iphone by stopping daemons

Your iPhone basically is a Unix (MacOSX) power-based phone, that sounds cool!? So to speed up your iPhone, you just simply stop un-used, or rarely use services (call daemon in Unix)

Here are 4 steps:
1/ Get access to your iPhone terminal (ssh, MobileTerminal)
2/ Learn launchctl command (with parameter: start, stop, list, load, unload)
3/ Using launchctl with parameter "list" to see un-used, rarely used daemons, and "stop" it, or "unload" it from startup
4/ Move (do not delete - in case you want to get back those services) those .plist file away from /System/Library/LaunchDaemons/

These are links for your reference:
1/ Related to command line: http://www.ifans.com/forums/threads/ssh-daemon-wont-start.87039/

This shows you how to load, unload daemon from startup also

2/ Related to daemons: http://www.ijailbreak.com/how-to/how-to-remove-launch-daemons-to-increase-speed-battery-life-disk-space-part-two/

3/ This week, when I reviewed my post, and after working around I found this very detail and interesting article. It explains very detail which Daemon you can stop & in which situation
http://forums.macrumors.com/showthread.php?t=1371126

 Finally, use it at your own risk, but warranty there is no damage to you iPhone, iPad


Wednesday, May 16, 2012

Myself study on BI - Business Intelligence (TBC)


Business Intelligence Research

I.                   ETL Testing

A.                 As Informatica Product Specification

1.       Source and Destination Loading one-one (no transformation)
2.       Source and Destination Loading with transformation
·         Using pre-built operators in Informatica Product to build transformation, there is no need of programming skill
3.       Production Validation: validate if the source data loaded into Production environment correctly

B.                 As GeekInterview.com

Testing covers:
1.       Data validation within Staging to check all
·         Mapping Rules
·         Transformation Rules
2.       Data validation within Destination to check if
·         Data is present in required format
·         There is no data loss from Source to Destination

C.                 Data-centric Testing

Applied specific to ETL processes where data movement happens
1.       Technical Testing: Technical testing ensures that the data copied, moved or loaded from the source system to target system correctly and completely. Technical testing is performed by comparing the target data against the source data. List of testing techniques:
a.       Checksum Comparison: to check if quantitative information of both source and destination database is the same using Checksum technique. For example: number of records from source database compared to destination; ACCUMULATED information on source database compared to CALCULATED information on destination database, eg: summarized annual data for monthly salaries in the source database (total salaries of months of all employees) causes new column in destination database to contain sum of monthly salaries paid within a year for each year (total salaries of years of all employees). These two values should be equal
b.      Domain Comparison: Compare list of unique entries (field-unique of records) in source database to unique entries in destination database. For example: List of Employee Name in the Salary table of source database to List of Employee Name in the destination database; like Dictionary List
c.       Multi-value Comparison: Similar to Domain/Dictionary/List comparison, multi-value comparison compares the WHOLE record or the CRITICAL columns between source and destination database, and MATCHING between these columns. For example: Domain comparison reports correctness of Employee List between source, destination database; Checksum comparison reports correctness of Salary entries between source and destination database; but these comparisons not guarantee the correctness of assigning Salary entry to Employee entry (MATCHING between columns). Multi-value comparison discovers such issues by comparing the key columns/attributes of each record between source and destination database
2.       Business Testing: To validate business common senses, eg: Salary/Commission cannot be less than zero. There is a list of exhaustive rules to test against, and it depends on domain knowledge, industry. Need research list of best practices
3.       Reconciliation: Ensures that the data in the destination database is in agreement with the overall system requirements. Examples of how the reconciliation helps in achieving high quality data:
a.       Internal reconciliation: the data within the destination database gets compared against each other (mostly in business constraint terms), eg: number of shipments always less than or equal to number of orders, otherwise it’s invalid
b.      External reconciliation: the data within the destination database gets compared to other (external) system, eg: Number of Employees in the destination database cannot be larger than Number of Employees in the HR Employee Master System


II.               ETL Implementation Strategy

A.                 Suggested Strategy by ETLGuru.com

1.       Theory
·         Every time there is a movement of data, there is a need of data validation
·         There are various of test conditions during migration from DEV to QA, QA to PRODUCTION
2.       Practice
·         A better ETL strategy is to store all the BUSINESS RULES into centralized tables, even in source for target system, these rules can be in SQL text.
·         This is a kind of repository that can be called from any ETL processes, auditors at any phase of project life cycle. There is NO need to re-think, re-write the rules
·         Any or all of these rules can be made OPTIONAL, TOLERANCE can be defined, CALLED immediately after process runs or data can be audited at leisure
·         This data validation/auditing system basically contains:
a. The tables contain the rules
b.The process to call dynamically
c. The tables to store results from the execution of the rules
·         Benefits
a. Rules can be added dynamically with no change to ETL code
b.Rules are stored dynamically
c. Tolerance level can be changed with ever changing to ETL code
d.Business Rules can be added or validated by Business Expert without worrying about ETL code
·         This practice can be applied to ETL tools, Databases: Informatica, DataStage, SyncSort DMExpress, Sunopsis, Oracle, Sybase, SQL Server Integration (SSIS)/DTS,

III.            ETL Architecture Design

A.                 Study shows:

There are 3 proposed layers:
1.       Layer 1: Data relational: extract, transform, load from source to destination
2.       Layer 2: Control, Log, Security and Authorization of ETL processes, organize and call sub-processes
3.       Layer 3: Manage and Schedule ETL processes, Recovery from Failure, Load Balancing, etc.

B.                 Incremental Loading Design

1.       Change Data Capture: there are 3 main approaches
·         Log-based CDC
·         Audit columns
·         Calculation of snapshot differentials
2.       F

IV.             Advanced (mostly for Large Scalable Database/Volume)

A.                 MapReduce



B.                 Hadoop



C.                 A Highly Scalable Dimensional ETL Framework based on MapReduce






Monday, April 23, 2012

Create Burndown chart & exclude weekends in TFS

Our team starts to use TFS for managing Product Backlog, and this is the first time I work on TFS Burndown chart. Google around and I found this page to help us configure Burndown chart to exclude weekend (By default, TFS keeps weekend in the Burndown chart, so it doesn't reflect correctly your team effort). This makes sure your Burndown chart works correctly with any length of sprint (2 weeks or more) Steps: Add code below to Category Group to exclude weekend
Select the filter tab and enter the following : Filter Expression =Weekday(Fields!DateValue.Value,0) Type Integer (to the right of the fx button) Operator < Value 6
The pop-up Window should like this
Then add this code into Report (right click into the Report, select Properties, then select Code)
' Define other methods and classes here Function NumberOfDaysToAdjustForWeekends(ByVal valNow as Date, ByVal startOfSprint as Date) AS Int32 Dim valCurrent As Date = startOfSprint Dim weekendDaysPassed As Int32 = 0 Do While valCurrent < valNow valCurrent = valCurrent.AddDays(1) If (valCurrent.DayOfWeek = DayOfWeek.Saturday Or valCurrent.DayOfWeek = DayOfWeek.Sunday) Then weekendDaysPassed = weekendDaysPassed + 1 End If Loop Return weekendDaysPassed End Function
Finally, add code below into "Work_Item_Count"'s expression
=Code.Burndown ( Sum(Fields!Remaining_Work.Value), Fields!DateValue.Value.AddDays(-Code.NumberOfDaysToAdjustForWeekends(Fields!DateValue.Value, Parameters!StartDateParam.Value)), Parameters!EndDateParam.Value.AddDays(-Code.NumberOfDaysToAdjustForWeekends(Parameters!EndDateParam.Value, Parameters!StartDateParam.Value)))
Source: http://2e2ba.blogspot.com.au/2011/08/tfs-scrum-templates-and-burndown-report.html

Saturday, March 31, 2012

Links to follow for digital art works and marketing

Actually, these links were noted long time ago, when I worked for digital marketing firm. anyway, it's worth for following up in spare time

News related to Digital Marketing in Asia Pacific
http://www.campaignsingapore.sg/Category/459,digital.aspx

Art links
Deviant Art http://browse.deviantart.com/designs/web/
Zidean Art http://zidean.com/


Digital news
Digital News http://www.campaignasia.com/digital/news/443,101.aspx
Digital Case Studies http://www.campaignasia.com/digital/case-studies/443,99.aspx
Digital Works http://www.campaignasia.com/digital/the-digital-work/443,108.aspx


Digital campaign
http://yahoo.com.vn
http://zing.vn
http://coca-cola.zing.vn
http://forum.mysamsung.vn/forumdisplay.php?f=13

Sunday, February 26, 2012

Monday, February 13, 2012

Interesting tools for PHP code metrics, detectors

http://stackoverflow.com/questions/5611736/calculate-software-metrics-for-php-projects

PHP Depend generates some nice metrics for you.

Here are those I can think about :

phpcpd -- copy-paste detector
phploc -- to do many kind of counts (lines, classes, ...)
PHP_CodeSniffer -- to check if your code respects your coding standards.
phpmd -- mess detector
phpDocumentor / DocBlox to generate documentation (and detect what is not properly documented)

In PHP, those tools are generally not used from Eclipse, but integrated in some Continuous Integration Plateform.

About those, you can take a look at :

phpUnderControl -- was used a lot a couple of years ago -- it has less success now
Jenkins (More or less a fork of Hudson)
And, for that one, see Template for Jenkins Jobs for PHP Projects
Still, if you want to integrate some of those tools with Eclipse PDT, you might want to take a look at PHP Tool Integration.





See our PHP CloneDR for a tool that computes the amount and the precise location of duplicated code. It will find duplicates in spite of reformatting the text, modification of comments, and modifications (up to a degree of [dis]similarity.

There's an example of Joomla processed by the PHP CloneDR at the link.

Monday, February 6, 2012

Tools for code analysis

http://www.ndepend.com/Metrics.aspx#LCOM

TRIZ in creative process & problem sovling

This is just quick note, and will come back later, since I'm quite busy now

http://www.expertprogrammanagement.com/2010/06/introduction-to-triz-triz-tastic/

Program Manager Defined

As a program manager the second most common question Im asked is what is the difference between a project manager and a program manager?. The first most popular question Im asked is what is a program manager anyway?.
Deliverables Versus Benefits
The classic explanation of the difference between project managers and program managers is that project managers are concerned with deliverables, whereas program managers are concerned with benefits. This definition is correct, but I find it easier to describe the difference by way of an example.
The example were going to consider is that of making a satellite navigation device and bringing it to market. In order to do this there are many things we would need to do, including:
Designing the form factor of the device
Writing the software for the device
Sourcing the materials or components that will be used to make the device
Tooling up a factory to manufacture the device
Marketing the device
Selling the device into distribution channels
Designing and making the cardboard box the device will be sold in
To manage all of the different specialists needed to bring this product successfully to market would be impossible, there are just too many people involved, even if you outsourced much of the work to third parties. This is where the program manager comes in.
Leading a Program
If we were to run the effort to successfully launch our satellite navigation device as a program, we might create seven projects, one for each of the bullet points listed above. So we would have a software project, we would have a project to source the components to construct the device, and we would have five further projects.
Assuming we did this each project would have its own project manager, and the program manager would lead all seven projects and therefore the overall program. The program managers aim being to coordinate between all projects to ensure that what is delivered provides more benefit to the business than if we just set all these different projects off and running in isolation.
Dependencies
One of the most important things a program manager will do in this coordination role is to manage the dependencies between projects. In our example they would need to ensure that the components have been sourced before the hardware design can be finalized. They would also ensure that software requirement changes would not detract from the proposition the marketing project will be promoting to customers. They are responsible for managing all dependencies between teams.
Despite the program manager coordinating the dependencies they are not responsible for planning the projects, this is the individual project managers role. They may however issue top-down guidance on plans which the project managers will try to meet. Ultimately, it should be a combination of top-down and bottom-up planning which results in the overall program plan.
Benefits Management
Another important responsibility for program managers is that of benefits management. Program managers arent so much concerned with the deliverables that the individual projects produce, but more with the overall benefit derived for the organization. In our example we can think of benefit as being profit, but in fact benefit can be measured in all kinds of ways. Because program managers are concerned mostly with benefits, this will sometimes lead them to recommend broad decisions, such as killing off entire feature sets to get the product to market quickly, or sequencing the building of a product in a way which may not seem intuitive to an engineer.

http://www.pmtoolbox.com/project-management-news/program-manager-defined.html

Career Development

If you want to develop yourself to next level of career, beside self-study, finding your own coach, but unluckily not all the time you find all yourself so referencing to other CV, like this website will help us a lot in provision your career

http://www.bestsampleresume.com/resumes/manager/program-manager-resume.html

The link above is for Program Manager position

Templates for Project Management

Uhm, it's more than 3 years from the date I started to handle a project my self, anyway I'm in meeting room with little free-time, and just to blog tools/links, templates only, will spend time for sharing project management skills later

Earn Valued Analysis, just learn few months ago, and want to test if it's applicable
http://www.pmtoolbox.com/project-management-templates/project-earned-value-analysis-template.html

This site is very useful for Project Management works, with free templates

Sunday, February 5, 2012

Links for researching MSSQL SSIS

http://social.msdn.microsoft.com/forums/en-US/sqlintegrationservices/threads/
http://bi-polar23.blogspot.com/2007/08/loading-multiple-excel-files-with-ssis.html
http://weblogs.asp.net/mikebosch/archive/2007/10/26/ssis-skipping-rows-and-stripping-subtotals.aspx
http://www.techrepublic.com/blog/datacenter/how-to-import-an-excel-file-into-sql-server-2005-using-integration-services/205
http://www.bigresource.com/Tracker/Track-ms_sql-O0cd2m6I/

Wednesday, January 18, 2012

How to design audit table in ETL

http://www.calsql.com/2009/09/audit-trail-in-sql-server-2000-2005.html

Sunday, January 15, 2012

Tools for BI projects

Uhm, actually, I'm working on BI project, knew these tools for awhile, now having time, take a quick look, and found that it's very useful, worth to investigate and use it for your BI projects! Will 4share.net for a copy. Furthermore I will find its competitive tools

http://www.red-gate.com/products/

Digital Inspiration Technology Guide

Change the world with your passion