Mike Macgirvin
Diary and Other Rantings
   
Thursday, Oct 16 2008, 06:15 pm
Jul 26, 2005
Google announces 'CodeJam III' - their competition for software
Google announces 'CodeJam III' - their competition for software engineers. The winner can take home a $10,000 prize and have the opportunity to work for Google Research in exciting places like Brazil or India. Gee, think I should try out? Nope. The winners are in a race. The main object is to find people who write code quickly. This is the main reason I left the software business. Anybody can write functions. Some can type 1000 lines of code in a day and solve seemingly intractable logic in four lines of code. Sorry, but these aren't the people I would want working on my software. A function does not exist in a vacuum. It is part of a system. It has connections to and from that system and an environment in which it lives. This environment is affected by the function as much as the function is affected by its environment. And the environment is always changing. The correct algorithm for a particular environment will look completely different than the correct algorithm to solve the problem.

The only way to completely understand the system and therefore solve the logic problem - is to become totally immersed in it. This takes time. Often you will find that the system itself needs to be modified to solve the logic problem correctly, and modifying the system will have an adverse effect on other components which live in the environment you wish to change. The correct answer may indeed involve only four lines of code, but it can sometimes take days to know that.

The other aspect of rapidly designed software which makes it a poor business choice is that one must anticipate that the person who created the code will not be the same person who ends up maintaining it. If that person doesn't have sufficient information about why certain design choices were made (and how the function fits into its environment), the function - or even the entire system - will someday need to be scrapped. Over 90% of the software code ever written has eventually been scrapped.

Murphy strikes. During one of the hottest weeks in history, the air conditioner at the store decides that it can't take it anymore. The few shoppers who have ventured out in the heat and think they'll get a refreshing breeze inside have been in for a shock. It's hotter in here than it is on the street. All the repairmen are booked for the next two weeks. Time for some fans and wet towels...

Comments? | More Actions Open/Close menu
Back
"On the Internet, no one knows you're using Windows NT"
(Submitted by Ramiro Estrugo, restrugo@fateware.com)