To give you a background on myself, I've been programming for close to 28 years. The last 15 I've actually been paid for it. Go me! Another tidbit, my first paid programming job was to write software for the Apple Newton. I was not a happy camper in 1998.
With that being said I'm going to first talk about Microsoft. Through very shrewd business moves they became the de facto operating system on most business computers. For them this was very good. In the mid 90s they seemed unstoppable. At that point they could pretty much dictate what would be on the computer that someone would use at work. Like most corporations they started trying to expand in other arenas, using their strengths to their advantage. This, of course, resulted in the almost never ending legal battle that fundamentally changed the upper management at Microsoft. Instead of being aggressive they decided to put more processes in place to prevent a repeat.
I think that is the number one thing that has prevented Microsoft from doing anything relevant in the last 6 years. But it isn't the only thing.
I'm not a big fan of Bill Gates. Nor am I a huge fan of Steve Jobs. But the thing they both have in common is a sense of vision. Jobs had a better vision in what people might like but Gates had a better vision in what would sell. I'm considering the eighties and nineties here.
This brings me to the other Steve, Mr. Ballmer. From what I have read and what I have seen he is a good salesman. I can't state it as a fact but I am pretty sure that most programmers hate good salesmen. Or saleswomen. Good salespeople succeed at getting a client to pay for something. The problem is that they don't ask why a client wants that something. "You want a button to enter a date? Yes we can do that!" However a better question to ask is "What makes you need to enter a date?" Getting the reason behind the request is critical. I can guarantee you on this, the person asking for the feature cannot contemplate a better solution. They have tunnel vision, "At this point in the app I want to do this." Every time I've ever suggested an alternative, "What if we make it so that the date was relative to the blah?" they go bonkers nuts and wonder why they didn't think of it.
This is why programmers hate good salespeople and why the love great ones. Which brings me back to Microsoft and Steve Ballmer. Because of the success of Microsoft in the business environment they became beholden to it. Their customers no longer were you and I but companies and OEMs. Ballmer being the good salesman he was gave them road maps and promises they wanted to hear. Thus Vista was created. Over promised and under delivered. Trying to solve everyone's perceived needs doesn't solve any of them. So I don't believe that Bill Gates was a genius really, he was very smart, shrewd and made the right development decisions. Steve Ballmer made the right sales decisions but doesn't understand the development process.
Now we get to Apple and Steve Jobs. Since Jobs reclaimed the leadership at Apple that company has completely changed. It used to be that Apple was transparent, like a glass shower wall. Actually a wall implies that they had some barrier. Then the iMac appeared. Everyone, including me, thought it was silly. But remember the vision thing I talked about too many paragraphs above? Yeah. That saved Apple.
The next thing was the iPod. Every time Apple introduces anything this comes up "No wireless. Less space than a nomad. Lame." Now why did the iPod grow? I mean it shouldn't have. It was Mac only, Firewire only. But it was the first music player since the Walkman that didn't suck donkey balls and could be used by someone without a computer science degree.
Did Apple or Jobs or Ive (not sure he was there at the time) ask people what they wanted in a music player? No. They just made something that they liked and figured other people would like it as well. Looks like that gamble worked. Eventually they made it available for Windows users and USB. From this time until about the time the iPhone was announced every single music player was dubbed an iPod killer. Including the Zune produced under the Ballmer Microsoft.
Now I don't want to sound like I'm praising the trinity of Apple, Ive and Jobs. Remember the "Mac Cube?" Apple is the other side of the pendulum. They don't seem to ask customers what they want at all. Jobs and company have had a really good run with the iPhone and iPad. Their laptops have found their way into the hands of people that I know were anti-Apple. Hell a guy I work with that complained about Apple to me bought an iPad today.
Jobs has the opposite problem that Ballmer does. He doesn't ask people what they need because he thinks he knows what they need. So far he has a good track record. I'm not convinced it will last though. You always have to ask what people think they need and follow up with why they think they need it. You don't have to design your product for everyone, but it may give you new ideas for something else.
Current Mood: contemplative