Skip to main content


Showing posts from December, 2009

Relearning to Count - Zero, One, Many

I have been thinking about the methods we use to count with.  What method of counting is most appropriate to the task at hand (pardon the pun).  A smart friend of mine told me that developers need to relearn to count.  As a software developer the appropriate method of counting is, zero, one, many.

The first time we learn to count we use our fingers in the simplest technique.  Some time early in childhood we learn to show fingers for our age, "I'm this many (shows two fingers)".  Then we actually learn to count, 1, 2, 3.  Later taking it up to 10.  So a base-10 number system seems like a natural human number system.  But is this true?

I've been wondering why we used a sexagesimal number system (base-60) for time.  A hour has 60
minutes and 60 seconds in the minute.  Why use this system when it would appear a base-10 system would have been more natural?

These two facts perplexed me.  We learn to count in base-10, yet our fundamental unit of measure is base-60.  Readin…

(NOT) Reliable and Valid Research - Fox News

Fox News quotes poll to show that perhaps scientist falsified research to support global warming.

Rasmussen Poll:  Did scientists falsify research to support their own theories on Global Warming?
59% Somewhat likely
35% Very likely
26% Not very likely
120% total people responding

Well that is a poll that you can take to the bank.

Perfection and constant change

"To improve is to change; to be perfect is to change often."
      - Winston Churchill 

The Universe - by the numbers

The Universe appears to be quite old but for some reason the really interesting things happened at either end of the arrow of time.  Being a fan of This Is Indexed I though I would try one myself - nope not funny.
Everything interesting happens at the ends of time.

      Age (years) 13,700,000,000     Universe  4,600,000,000      Solar system  4,570,000,000      Sun  4,540,000,000      Earth
   530,000,000      The Cambrian explosion
       2,500,000      Stone Age (begins)            15,000       Domestication of dog, cow, pig, etc.            10,000       Argicultural revelotion              5,300       Bronze Age (begins)
                230       Industrial Revolution (begins)
                 47       me

ToDo or Not ToDo - that is the question.

What does a TODO tag in your code say about you as a developer?

When is a TODO not appropriate - is it every appropriate to postpone work that you recognize, but just don't want to deal with now?  Is procrastination a trait that we encourage or discourage?

I posit that quality code has very few if any TODO tags.  That there is a inverse correlation between the percentage of TODOs in a code base and the quality of the code.

Srikaran Reddy had this argument to make:
TODOs present in code may be indicative of the quintessential engineer: one who can distinguish between what is required at the moment versus an ideal, or potential future requirement, that is of relatively lower priority. The term 'sine qua non' comes to mind. This is especially true when maintaining inherited code. On the other hand, a TODO could represent some sloppiness. There are different flavors of TODOs that need to be factored into this argument.

The good thing about TODOs is that they are easily tracked, …

Rx for a Team Culture

Do you think you need a prescription to create a Team Culture - OK - here you go.

Executive-level statements in public and private about the importance of team players (not just teamwork platitudes).Executives model team player behaviors (not just preach behaviors).Promote and reward people with team player skills, publicly announce reasons including team player factors for decision.Reward team players with important assignments.Adjust individual performance appraisal systems to include specific team player behaviors.Hold training on attitudes, skills and behaviors of team players.Reward team players with higher salary increases, and tell them why.Create an incentive system that rewards team effort (not individual effort).Institute flexible compensation programs that allow managers to pay individuals that contribute to the team culture.Include team-player skills & abilities in management assessment programs.Develop programs of team awards that motivate the teams, flexible enough to…