07.24.07

Will the Internet save Business 2.0?

Posted in Uncategorized at 10:27 pm by David Kellogg

I have a sick feeling for helping to kill paper publications. On the Internet, I work to bring information to the masses. The hoi polloi get what they want when they want it. Yet, I have a soft spot for great paper publications like Business 2.0. I subscribed for a meager $10 and fell in love with it very quickly. The writing is witty. They follow ideas and companies long before they are ripe. Business 2.0 covers my industry quickly, whereas Fortune covers only what already made money.

Today, I joined a Facebook group to show my support. It has grown to 1500 members in 4 days. I hope it works. Hopeful like Democrats, we may fail knowing we did the right thing.

Unfortunately, all paper publications are feeling the advertising pinch. I prefer at times not to choose my news but to have others choose it for me. I want to sit down and read an article end to end and see another perspective. Business 2.0 gives me the startup point of view. I would miss it.

07.15.07

Design Patterns died today. RIP

Posted in Uncategorized at 12:54 pm by David Kellogg

SILICON VALLEY, California - Design Patterns (1995-2007) met its untimely demise during a code freeze today. A post by Slashdot user MillionthMonkey shot Design Patterns through the heart. Design Patterns, rest in peace. Design Patterns are survived by Algorithms and Anti Patterns.

phdcommics

I must admit in my 11 years of paid coding, I never used a single Pattern. Yet as I wrote code, I wondered if there was some order to it all. Design Patterns attempts to explain well written code and turn messiness into order. Unfortunately, the explanation was turned on its head, as trend-seeking professors encouraged their students to inject patterns into their code. It sounds like inserting great lines of COBOL into your C program. Sometimes the cure is not right for the disease.

Design Patterns attempt to take the art and science of writing code and turn it into an engineering discipline. Despite arguments to the contrary, computer science is not engineering. Engineering involves applying the same rules (gravity, chemistry, physics) to a large number of experiments and testing their results. Engineers can make predictions based upon scant evidence, like testing a few i-beams or wafers to test the whole, to make assumptions about the quality of a product.

Computer science is not yet engineering. The closest I have seen to real engineering is at Google, where statistics play a role in what they do. At many companies, they test several web page designs on the users to see which one works for the user. This is heading in the right direction. Engineering has little to do with writing code. Writing code in the right way enables good engineering to occur outside the code.

Adding design Patterns to working code to impress your boss creates code bloat. This leads to my favorite Anti Pattern: writing too many design patterns in your code.