Guy Kawasaki’s Top Ten Lies of [Software] Engineers
June 5, 2008
I stumbled across this old blog post from Guy Kawasaki…
1. “We’re about to go into beta testing.” This is a meaningless statement because it doesn’t matter when you go into beta testing–what matters is when you come out of beta testing. (The only hard and fast deadline for coming out of modern-day beta testing is “before you run out of money.”)
In the good old days, “alpha” used to mean “all features are implemented though not necessarily working properly.” “Beta” used to mean “there are no more repeatable bugs.” Nowadays beta means “we’ve gone as long as possible past the shipping date that we promised our investors.”
2. “I don’t know anything thing about marketing…” This is a lie of false modesty. The engineer is thinking, in totality, “I don’t know a thing about marketing, but how hard could it be compared to what I’m doing? I should run marketing and engineering. I just hope that the marketing the MBAs come up with is worthy of my code.” However, don’t worry too much about this lie because it self-corrects as the engineer misses deadline after deadline and comes to realize that he has bigger issues.
3. “I’ll comment the code, so that the next person can understand what I did.” This is a lie of good intentions. Really, the engineer did intend to comment the code but as the schedule slipped, priorities changed. The question put to management became: “Do you want me to comment the code or finish it sooner?” Guess what the answer was. Luckily, the lack of comments usually doesn’t matter because the code is so crappy that a total rewrite is necessary in a year.
4. “Our architecture is scalable.” This is the lie that I enjoy hearing the most. Typically, an engineer who has never shipped a product says this after creating a prototype in Visual BASIC. The whole conversation goes like this: “Google’s architecture isn’t as scalable as mine. They can support 25 million simultaneous searches. We will be able to easily handle a billion.”
Luckily, in most cases, the adoption of the product is slower than the CEO’s “conservative” forecast, so scalability never becomes an issue. Yeah, those clowns at Google, Yahoo, Oracle, Microsoft, Apple, and AOL don’t know anything about scaling compared to the engineer…
5. “The code supports all the industry standards.” This is almost a truth but for a short omission: “This code supports all the industry standardsthat I agree with.” The engineer has made a personal decision to ignore standards she doesn’t like–for example, those promulgated by Microsoft. It’s no big deal–customers will never know…
Read the rest of his post HERE
[?]

