« A Poem for All of Us Bloggers | Main | Yes, I'm a shallow Guy, but I'm now #46 in Technorati »

April 27, 2006

The Top Ten Lies of Engineers

After a several month hiatus, I would like to return to my top-ten lies series. So far, I've covered entrepreneurs and VCs, Today's topic is the top ten lies of engineers.

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 standards that 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...

6. “We can do a Macintosh version right after we finish the Windows version; in fact, much of the Windows code can be re-used because of how we architected it.” The truth is that version 1.0 of any software is an experiment. It can be a magnificent experiment, but it's an experiment nonetheless. Thus, Windows version 1.0 is held together by duct-tape. The Macintosh version is a copy of the duct-taped Windows version written by an engineer who just finished college and got his first Macintosh a month ago. How hard could it be to learn to program for a different platform? C++ is C++, right?

7. “We have an effective bug reporting database and system.” Of course, the assumption behind the design of the bug reporting database and system is that there are no bugs in the code, so there's not much to database and report. Generally speaking, if the largest number of documented bugs doesn't ever exceed 1,000, it means that the company isn't tracking bugs carefully.

8. “We can do this faster, cheaper, and better with an offshore programming team in India.” Rank and file engineers usually don't tell this lie; it's the CTO who does. Somehow we've got it in our heads that every programmer in India is good, fast, and cheap, and every programmer in the United States is lousy, slow, and expensive. My theory is that for version 1.0 of a product, the maximum allowable distance between the engineers and marketers is thirty feet.

9. “Our beta sites loved the software.” In twenty five years of working in technology, I've never heard a company report that its beta sites didn't like its software. There are three reasons for this: first, many beta sites are so honored to get pre-release software that they don't want say anything negative. Second, most beta sites haven't used the software very much. Third, most beta sites don't want to seem cruel by criticizing a company's new product. Doing so is as socially unacceptable as telling someone that his baby is ugly.

10. “This time we got it right.” The scary thing about this lie is that the engineer really believes it. Again. The problem is that “this time” occurs over and over again. I have great faith in engineers and believe that in the long run, they do get it right. It's just that in the long run, we're all dead.

Addendumbs (sic):

“This code is so bad it would be faster to write it all from scratch than debug and expand the current shipping code.” (Joel.)

"I like thinking about architecture, but I can code." (Glenn Kelman)

"It works on my machine." (Gaurav)

"Of course I can let go of the code and run the business instead." (Jason)

"Even my mom can navigate the screens." (Nitin)

Powered by Qumana

TrackBack

TrackBack URL for this entry:
http://www.typepad.com/services/trackback/6a00d8341c527353ef00d83427980253ef

Listed below are links to weblogs that reference The Top Ten Lies of Engineers:

» True Lies from The Bell Curve Scar
I confess Im a recovering engineer. And Guy Kawasakis latest top ten list brought a smile to my face: The Top Ten Lies of Engineers ... [Read More]

» Over 1000 defects? from Compound Thinking
Guy Kawasaki has a funny and true to life list of the top ten lies engineers tell. But, almost as an asside he says: Generally speaking, if the largest number of documented bugs doesnt ever exceed 1,000, it means that the company isnt t... [Read More]

» Lies of Engineers from Picture My World
Guy Kawasaki posts another brilliant top-10 list. #9 really resonates: Our beta sites loved the software. In twenty five years of working in technology, Ive never heard a company report that its beta sites didnt like its s... [Read More]

» The Top Ten Lies of Engineers from simonb.com
Guy Kawasaki latest top ten list is for engineers. Ouch! [Read More]

» Die Top Ten der Programmierer-Lügen from TechNovelty
Guy Kawasaki (der mit dem HWBN [häufig wechselnden Blog-Namen]), hat eine wundervolle Liste mit den Top Ten der Programmierer-Lügen mit dem Titel The Top Ten Lies of Engineers. Er vergisst leider die #1 Lüge aus dem Marketing, die für einen Teil de... [Read More]

» Top Ten Lies of Marketing from AiAlone.com
In response to Guy Kawasaki's Top Ten Lies of Engineering:1. quot;Of course we need that feature.quot; :: We have no friggin' clue what that feature does, but our competition has it in their product, so we need it to!2. quot;Good work on... [Read More]

» The Top Ten Lies of Engineers from Enda Quicklinks
http://blog.guykawasaki.com/2006/04/the_top_ten_lie.html... [Read More]

» jPOS6 from jPOS.org
/by apr/ Ive tagged a v1_5_2 version and moved the version number to 1.5.3, but while working on these major build system changes I thought it was time go up to 1.6.0. Well refer to jPOS 1.6.x versions as jPOS 6 and its svn repository ... [Read More]

» Le bugie degli ingegneri from NicolaCanalini
GuyKawasaki ha scritto la sua personale top ten delle bugie degli ingegneri ... [Read More]

» Business, lies and silos from alex's thoughts for Open Business
Some like Seth Godin readily acknowledge that marketers are liars. I agree with him and extend the proposition to all business people, myself included of course, especially if one considers that it is a lie to omit something. On the [Read More]

» Engineering Lies from Tempus Fugate
Kawasaki recently posted "The Top Ten Lies of Engineers". It was humorous but definitely struck a chord with my situation. Specifically #8... [Read More]

» The Real Top Ten Lies of Engineers from Brave New Word
Guy Kawasaki, a Venture Capitalist with technology roots (Apple), writes the top ten lies of engineers. He is sooooo wrong! His list doesn’t come even close with the worst lies of engineers. It looks like he never talked directly to [Read More]

» The Top Ten Lies of Engineers from Startup Fever
Guy Kawasaki on the top ten lies of engineers: After a several month hiatus, I would like to return to my top-ten lies series. So far, Ive covered entrepreneurs and VCs, Todays topic is the top ten lies of engineers. ... [Read More]

» links for 2006-04-29 from Tech-Blog
Signum sine tinnitu--by Guy Kawasaki: The Top Ten Lies of Engineers more great lies from Guy (tags: business programming software) Pushing String SAML expert at sun (tags: sun blog xml saml unread) [Read More]

» Lies by engineers.. from Arun's blog: pricing, processes, venturing
I just loved this post by Guy Kawasaki, and had to comment on it! Ive been an engineer, a programmer, a tester, a marketing guy, and am currently an entrepreneur Oh the lies I have told and heard (hahhahahaha) Im goi... [Read More]

» Kowasaki on Lies from Engineers from Innovation Science
Guy Kowasaki recently posted the Top Ten Lies Told by Engineers.(as an engineer, Im a little insulted by the photo he chose to display [Read More]

» Kawasaki on Lies from Engineers from Innovation Science
Guy Kawasaki recently posted the Top Ten Lies Told by Engineers.(as an engineer, I’m a little insulted by the photo he chose to display…well, not really). As I’ve said before, what Guy has to say is always insightful and worth [Read More]

» Half a Dozen Top Announcements from louisgray.com: live
There were a number of announcements that warrant mentioning. The president's popularity is inversely proportional to the price of gas. And here I thought spending $34.00 at the pump was patriotic. Guy Kawasaki has an excellent post on "The Top Ten L... [Read More]

» Items of Interest: 2006.04.28 from Ellis Web
Things that I found interesting on April 28. 2006: A Blog Without Comments Is Not a Blog - Thoughts from Jeff Atwood. I think that sometimes the opposite becomes true (especially for some of the more popular sites with multiple contributors): A blog w... [Read More]

» links for 2006-04-30 from j mo's
Simply Ming: Recipe: Pepper-Crusted Tuna, Avocado and Cucumber just printed this recipe...must.make.soon. (tags: recipes) Simply Ming: Recipes : Cilantro Oil can't forget this... Signum sine tinnitu--by Guy Kawasaki: The Top Ten Lies of Engineers (tag... [Read More]

» Las mentiras de los ingenieros from TecnoBlógico
Me temo que hoy es el día en el que revelaremos el verdadero significado de muchas frases que dicen los ingenieros, sobre todo pensad en cuantos proyectos dependen de estas afirmaciones 1.Vamos a entrar en la fase de beta testing.... [Read More]

» A trip back to the good old days. from devlon duthie
Guy Kawasaki takes me back to my consulting days with this post (Top Ten Lies of Engineers) My faves: 3. Ill comment the code, so that the next person can understand what I did. This is a lie of good intentions. Really, the engine... [Read More]

» Links from Sørens Linkblog
dom.ter CPR selvbetjening Microsoft Security Notification top 10 lies of engineers [Read More]

» The Top Ten Lies of Engineers from Futurelab's Blog
by: Guy Kawasaki After a several month hiatus, I would like to return to my top-ten lies series. So far, I've covered entrepreneurs and VCs, Today's topic is the top ten lies of engineers.... [Read More]

» Top Ten Lies of Engineers from blog.ncircle.com
Guy Kawasaki has a great new post on his blog entitled Top Ten Lies of Engineers. You know, this would be funny if it weren't strangely true. Luckily, we have a great engineering team at nCircle - our product development... [Read More]

» Guy Kawasaki: Top Ten lies. from Technological Musings
Guy Kawasaki has a post, actually two posts on the top ten lies of engineers and marketers. It's a fun read, even though one or two of those 'lies' are going to look straight at you and take a shot:... [Read More]

» Guy Kawasakis The Top Ten Lies of Engineers from Rob Bazinet Unleashed
Guy Kawasaki is a well-known entrepreneur and writer in high-tech. He recently wrote about The Top Ten Lies of Engineers. I had to step back and think about how many of these applied to me or any of the teams I have been a part of. I ... [Read More]

» Websites are always in beta from michael.wilcox
Your website is never finished. Web pages dont go to press like printed leaflets and brochures do. And that unfinshed quality is a great thing. I started in work doing print design. The worst moments were always when advance copies... [Read More]

» Top Ten Lists: Customers and Customer Service from Satisfy Me
This is a good cross post from Young Joowith his "top 10 list of how you as a software engineer... [Read More]

» Top Down Pointers - Professional Blogs from De Gardener
I am often asked about my own favorite blogs (in addition to Techcrunch and Mashable, of course). I am also often pinged about starting points - where to begin with mobile data, with web 2.0 and with internet software. I will do my best and share a mo... [Read More]

» MikeJSolutions from Mike Johnston
I've heard these so many times now that I find myself actually remembering when I used them.... HA! [Read More]

» Better, Faster and Cheaper? from EppsNet: Notes from the Golden Orange
Somehow weve got it in our heads that every programmer in India is good, fast, and cheap, and every programmer in the United States is lousy, slow, and expensive. My theory is that for version 1.0 of a product, the maximum allowable distance be... [Read More]

» Lies, damn lies, and top 10 lists from things of sorts
It all started innocently enough: Guy Kawasaki posted the The Top Ten Lies of Venture Capitalists back in January, followed closely by his The Top Ten Lies of Entrepreneurs. Now hes back with the The Top Ten Lies of Engineers and The Top Ten Lie... [Read More]

» Interesting Reads from Life of a Software Program Manager
Ive added a link to my links section, but one blog that Ive found very informative is Guy Kawasakis (http://blog.guykawasaki.com). He has written a few books, and has plenty of experience in the VC space. He posts very frequently, here a... [Read More]

» Interesting Reads from Life of a Commercial Software Program Manager
I've added a link to my links section, but one blog that I've found very informative is Guy Kawasaki's (http://blog.guykawasaki.com). He has written a few books, and has plenty of experience in the VC space. He posts very frequently, here are a few of ... [Read More]

» Interesting Reads from Life of a Software Program Manager
[Read More]

» Guy Kawasaki Top 10 Conspiracy from Innovation Creators
Guy Kawasaki is planning on taking over the blogosphere. I have proof!!! Beyond the strange resemblance to Dr. Evil, there are all the suspicious things that Guy does: He writes lots of top ten lists. We all know that Top... [Read More]

Comments

"11. Writing code makes me an engineer"

Didn't there used to be something called a "programmer"? I wonder what happened to those.

Dear founder of a site write to me please as you have directed such interesting audience on your site.Welcome friends!!!

Here's one that I employ most (shamefully)

"Try re-creating the bug again. If it doesn't happen again, I think you missed something."

I can't really argue with this. I have a similiar list of "Lies Software Engineers Tell". You can find it here. http://www.notesfromthecape.com/2006/06/the_ten_lies_so.html

Funny stuff but... these lies are far too optimistic to have been spoken by any real engineer. I can only hear that kind of bull coming from an MBA/CTO/VP or some pumped up new grad who wants to be one. Do you have any idea how much trouble you can create for yourself by saying stuff like "our architecture is scalable"? That kind of statement (even if it's true) will put a noose around your neck. Let's leave lying to the marketing department, shall we?

This entire list is why real (electrical) engineers regard software engineers with a great deal of suspicion.

And why mechanical (especially aeronautical) engineers regard electrical and software engineers with suspicion and envy.

And why civil engineers regard everyone as slipshod.

I hate to say it, but I HAVE seen code that was faster to throw away and write again than debug. It was also about 1/4 the length.

How about this one
"It's not our bug, it's the 3rd party software's problem"

I think this one should be able to bump out one of your top ten Guy:
"I write software therefore I know a lot about usability".

Not lies but the response to bug reports that bug me the most and hear every day:
"It is no worse than before, but yeah, in general, it would be good to fix"

Or a variation:
"That bug has been there since it is implimented, it is not a new issue"

There was a time when I actually valued your opinion, but now I'm not quite sure why. You're obviously more a "marketeer" than an engineer. Pretty much every one of these items is either complete crap or forced upon engineers by unreasonable management requirements which make it not the engineer's fault anyway. You've obviously spent too much time on the SIDE-line instead of the FRONT-line. Unless you've actually been there personally you're just parroting the whining of management and marketing who start half the problems in the first place.

Wouldn't it be great if the "higher ups" didn't have to deal with us incompetent engineers and could just snap their fingers and instantly get whatever they asked for? Of course, best be careful what one asks for...

___________________________________

Tim: I suggest you read today's post about marketers. You'll be happy. I am not an engineer at all, incidentally. But I've had to listen to these lies for years.

Guy

How many people really roll on the floor laughing?

My personal favorite:


'That isn't possible...'

The moment a developer says that you know he just doesn't want to do what you asked him to do and that he disagrees with you. If he likes the job he would mention the second most used lie by developers:

'I can build anything you want with this language/platform/set-up...'

John F:

I've seen hardware botched just as badly as any software. The difference is, it's much harder to ship botched hardware.

-jcr

I bet John F. is a hardware 'engineer'.

Aloha

"The feature works but you can't touch it because it's in development and if you want to see it, I'll give you a demo on my devlopment machine"

I agree #4 is silly but I don't buy your statement that scalability is not an issue upfront, and the implication that it is something that can be put in later. I don't mean that a 0.9 release has to be tested with 100s of thousands of users, but if the underlying architecture - think algorithms and data structures - aren't built to scale, you have a complete rewrite on your hands. As I've argued on my blog, this "scale later" argument perpetrated in books like 37Signals' "Getting Real" is dangerous advice.

How can you miss the "It works on my machine" lie. Well its not always a lie but I have heard it (and said it) so many times knowing well that getting it work on your own dev machine means zilch.

have you been speaking with out tech guys again? :-)

@Eric:

I may be wrong headed but check your stats. IE still owns 85% of the market. Are you seriously saying forget about it? If you are building an app to work with "the internet" as you call it... then it better work on IE. Period.

I am a Mac user myself so I feel ya- but those thoughts don't pay the bills.

Gene Kranz, director of NASA Mission Control through the Apollo program (making him arguably the geek di tutti geeks) had a great saying in this vein (from memory):

"Engineers will wildly overestimate what they can do in one year and wildly underestimate what can be accomplished in ten."

The biggest lie of all:
software engineering.
Hint:
Software is written by programmers. Hardware is designed by engineers.

Reminds me of when I did some coding in the good old days.

Mike Johnston's comment about it being frustrating that an employee's obsession with standads-compliant software, because it invariably didn't work with IE, is just flat-out wrong-headed.

Why not have a goal to create web pages that work for all users on the Internet? And not just IE users (IE 6+ mind you!)

You think Microsoft wouldn't make IE standards-compliant if we refused to let their proprietary junk muck up the system?

Remember the phrase: "Windows isn't done until Lotus won't run?"

Turnabout is fair play.

(Sorry for "co-opting" your blog, Guy, but I wanted to reply to this guy's comment.)

To "Bob" - I've seen these lies played out by engineers in the past. It's too easy to blame all the problems on marketing (I've done it many times in the past - and it's fun, too!). Perhaps the engineering team should push back a little when marketing comes to them with yet another poor product? If they don't, they're just as guilty as the marketing folks.

I'm an engineer with too much experience to suffer with the "this and them" experience we have between marketing and engineering. If these two groups cannot work together then it's not a real company, it's bozo-land, and you should either go to another company where they do work together or start your own company and make it right.

(And, yes, I have read the 37Signals "Getting Real" book. I find it a real good variant of the "Agile" development methodologies. The 37Signals folks are very sharp, and their products are really good. They are in balance.)

Here is what I think the Real top ten list is:

http://bravenewword.typepad.com/brave_new_word/2006/04/the_real_top_te.html

Good analysis Guy.
This list shows the symptoms of a greater issue in the IT world of today… communication. Unfortunately, lack of proper communication points to the CEO and his management staff.
Guarding territory, protecting subordinates, and hidden agendas take away from what a company should be.
These issues have been the around for all of my 27 years in programming and management. They have just changed form every few years. Bring the marketer, engineer and stakeholders together for the common goal – money!
Management has to remove the mud slinging and get everyone focused on the goals. You are definitely right when the engineer says “I don't know anything thing about marketing” and he acts accordingly. Just imagine how powerful your employees would be if they fully understand why they are supposed to perform some task. Employee buy in to a task is just as important as being on fire about your product.
Managers you all now have new tasks… tear down the walls, get everyone on the same page, and go make some money.

Guy,

Good fun reading. I admit to telling these lies at some point in my career. However many of them where much earlier in the day. Having 15 years under my belt, I am not so delusional anymore.

PS, I can back up my Mac/Windows porting architecture: It uses a common code base and has stable implementations on both platforms!

Post a comment

This weblog only allows comments from registered users. To comment, please Sign In.

My Photo

Contact Me

  • bar.gif


VisualCV


Search this blog

Alltop

  • Alltop, confirmation that I kick ass

Advertising

Feed and Leads

Categories

Alignment of Interests

  • Alltop
    Stay on top of all the news topics.
  • BagTheWeb
    Find, bag, and share websites and articles.
  • Doba
    Drop-ship products for ecommerce sales.
  • Garage Technology Ventures
    Raise venture capital for your tech company.
  • Paper.li
    Publish social-media newspapers.
  • Statusnet
    Make an Open-Source Twitter for your organization.
  • Peerspin
    Pimp your MySpace pages.
  • Sixense
    Control your game like never before.
  • SocialToo
    Engage people at social media sites like Twitter.
  • StumbleUpon
    Find interesting stuff on the web.
  • TicketLeap
    Sell and manage online ticket sales for events.
  • Triggit
    Make real-time bids for online ad space.
  • DataSift
    Analyze big data from social media.
  • Tynt
    Trace who's using your website content.
  • uStream
    Stream video live.
  • Visible Measures
    Monitor how people interact with online video.
  • Writer.ly
    Find freelancers for book projects.
  • XAT
    Chat with people.

Optimization

  • quick sprout