Search My Blog

Custom Search

Monday, August 3, 2009

Greatest prime factor of a number: Project Euler Problem 3 in python

I think this converges fairly fast and is also based on the additive nature of primal factors. Further , it kind of leads into why primes get rarer (and hence this can be use to converge to prime factors)

Algorithm explained
Start with the smallest prime(p=2) and divide the evil number (e)
If it divides, extract he largest power of 2 from e possible.
--The divisor now is divisible by a prime factor greater than 2 and can utmost be e/2^i
--increment p to 3 and so on. Also check if e/3 is less than 3. This forms the outer limit

If the smallest prime (p=2) does not divide the number (e), even better for us
-- The number is divisible by something greater than 2 and hence, the other factor is less than e/2.
-- increment p by 1 and check if less than e/2. redo from 1st step

Heres the program,

# Problem 3 - to find the largest prime factor of a number

n= 600851475143

z=n

i = gcf = 2
while i <>
if n%i == 0:
x = 1
while (n%(i**x)) == 0:
x = x + 1
z =n/(i**(x-1))
n = z
gcf = z
print i," power ",x-1, " and other divisor is ", z
else:
z = n/i
gcf=n
i=i+1

print "The program is complete and the gratest prime factor is ", gcf
Stumble Delicious Technorati Twitter

Saturday, May 23, 2009

Path to process maturity - establishing benchmark processes

Simplify, understand, deploy and then enrich

Establishing a process from a benchmark, is not straightforward. While most people beleive that the benchmark shoul help bring them to maturity,

The process of establishment is a 4 step process

1. Take the benchmark and simplify - water it down and you will hate yourself for doing it
2. Get people to understand the elements, intent and purpose. Very often a complex process evokes fear, hence, having a process with just the core (obvious) intent fulfilled is a good starting point.
3 and 4. Use the process a couple of times, each time enriching the process. Ensure that the next project builds on the past projects process

One of the key roles of the PMO is to identify with the help of the senior management, the key deliverables from programs and work the above process to the benchmark. We have all heard the statement, it (the benchmark) works in company Y not here. It needs to be suited to our culture and organization. The above are 4 steps to align and get to the benchmark in your organizations context.
Stumble Delicious Technorati Twitter

Sunday, May 3, 2009

Challenges in moving to a project matrix organizations: People change management

Changing organization structures from a deep functional to a project matrix, involves substantial challenges in people management. There are  broad guidelines that may be useful 
  1. Keep the end in mind - very often it is "courses for horses". You do fit your organization to the best people you have, period. Hence, neither your organization structure nor your role definitions for the new structure will be perfect. It is critical to identify what are the 1~2 items that you will NOT compromise [ Example, when establishing a program management organization, having it function neutral may be a critical rule. You can still accommodate people and new structures , provided you stick to this broad rule]
  2. Changes have to be enforced once decided. There are 3 techniques - most textbooks talk of just two to handle the resistance to change
  • (a) Carrot - make people comfortable and show them the possible growth paths/career plan in the new structure
  • (b) Stick - make organizational compliance mandatory. Preached easily, but difficult to practice with your best guys
  • (c) Inaction! or wait - Several fears arise due to fear of the unknown. In any change management effort, the only way to overcome this residual fear, is not by more written definitions, but often , by pushing the people into their new waters and waiting for them to settle down. [For those of you who have travelled by Indian Railways, passengers are finicky and fight for their seats only till the train starts. For the next 6-10 or 24 hrs they all settle down into well oiled positions without any external intervention. This is probably cultural, but then thats what change management is all about!!]
These may sound simplistic, but having a gameplan like this in mind and also documenting the new org structure, rules and approaches help to improve on a continuous basis.
Stumble Delicious Technorati Twitter

Tuesday, April 21, 2009

Branding the key metrics: Making metrics stick

Most change management programs and PMO struggle to deliver key metrics to senior management because of poor traction with operating and senior management.

To make a metrics program successful, the 1 or 2 (at most) reports should be branded with a name. Branding and retaining the key metrics into a report say Q25 or T20 or 9box , enables recall and drives continuity to a changing/improving set of metrics.

Further, this can also be incorporated into training programs / presentations at all levels to ensure importance and recall. A generic non-branded report such as a project report can easily be abused / modified and mis-understood diluting the needs of project reporting. Stumble Delicious Technorati Twitter

Tuesday, April 7, 2009

Chennai Village Thiruvizha: Aruvathi Moovar at Kapaleeswarar Temple

A Photo Essay



Stumble Delicious Technorati Twitter

Sunday, March 29, 2009

PMO Maturity Model with respect to Project Issues: Value add from PMO


Most senior management expect the PMO to be aware of risks in projects based on (1) their interactions with project teams (2) cross project experiences



The 3 levels of maturity of a PMO are

1. Initial: The PMO is still getting to be aware of the programs/structure and processes. Further, the rapport with the program manager will determine the extent of the risk awareness

2. Reporting: The processes have been established. Techniques to effectively capture risk and resolve are commonly accepted by program teams and PMO. The project leaders are also confident of the methodology and the PMO is aware of the risks known to the project teams

3. Value added : The PMO has been well established and is working over a range of projects. Cross functional project experience enables the PMO to foresee risks in the program not self evident to the project teams.

Every organizations leadership wants PMOs to ramp up as fast as possible to Maturity level 3. Stumble Delicious Technorati Twitter

Wednesday, March 25, 2009

Gaming your way through college!

Alan Feng teaches a course on star craft at UC Berkeley Stumble Delicious Technorati Twitter