I MUST do this! I cannot stop myself! I must RANT about this.
I am presently in Grand Cayman trying out for a job as the CTO of a startup company in the Caribbean. When I get there, everyone has these super expectations of me because I am from Microsoft. I am simply expected to be the GOD of computers. It happens all the time but my first few days there were especially humbling.
I know Microsoft so I must know Windows 7 system administration.
I know Microsoft so I must know Exchange Server administration.
I know Microsoft so I must be able to reverse engineer any application in minutes!
I know Microsoft so I must be able to code anything in any language in seconds.
I know Microsoft so I must be a super genius.
I know Microsoft so I must know all about cell phones in foreign countries.
I know Microsoft so I must be able to manage huge projects well.
I know Microsoft so I must know how to fix your virus laden PC.
Well you get the picture.
What I am is an old developer that loves computers – or did, back when they were sane.
Computers today and nothing like what they were back when there was the S100 bus, the trash80, the comadore64, the apple IIe and the like.
Back when I first got involved in personal PCs the idea was to make life simple and easy for individuals. The mainframe was for those IBM dinosaurs. The hip dudes like myself could hack up cool stuff easy in Basic or C or even Assembly language and do some cool stuff.
Today PCs do a lot more but not really. They have massive computing power but most of it is spent on overhead jumping hoops around security and COM interfaces. Looking up values in the registry and self configuring. We even have entire systems being virtualized, sometimes several levels deep.
So today’s machines look cooler, but still crash within two years of using them. They are full of BUGS. FULL of them. All over the place. EVERYWHERE YOU LOOK! And its amazing to me how much people have become so accustomed to things NOT WORKING that they have almost subconsciously learned how to work around the problems. Its like driving on roads that all have potholes all over them – eventually, you just don’t notice them anymore.
But in fact we have massive bugs. We have poor code design, poor product design, layers of crap and confusing UI idioms. We may not crash things often but things just fail. Files just corrupt. Viruses just happen. OS settings just deteriorate over time like rotting caucuses in a forest. Web sites just go down. Connections just get lost.
It is actually a best practice in my book to flatten your PC at least once a year – so you don’t forget all the crap you have to do to get stuff back up and reinstall all your apps and recover all your data. So you learn how to backup often and keep your important stuff in a manageable way.
Where did all this come from?
Human nature. People are malicious, lazy, conceited, selfish and deceitful at heart. Eventually the PC is going to reflect all of that.
We made the PC easy so everyone could use it. Then everyone started using and abusing it. Trust was lost and we needed copy protection, security firewalls, checkpoints in the OS, logging of all events, centralized storage of settings, access lists, credentials, cryptography, trust relationship management, biometric readers, locked up servers, obfuscated code, and basically locks on every door.
My adventure in the Cayman Islands has reintroduced me to the insanity of computers today. I daily hit at least 10 bugs in Microsoft products as I try to work with them. Our IT guy has two servers with virtual servers on them all configured to keep apps separate from each other and provide redundant functionality so that WHEN the bugs hit, the whole company doesn’t crash and burn.
The bugs come from over ambitious schedules and the 80/20 rule. Any product that achieves 80% functionality is ready to ship and should be shipped and the next version started ASAP. The idea of perfecting a product in software is viewed as unproductive and unprofitable. I tend to disagree. I know of a guy living nicely on income generated from a DOS app he wrote in the 80s and got it down to where it’s just perfect. It never breaks. Companies still use it because it’s reliability is far above any other competitor. Open source has some older projects like mail clients and the like that haven’t been touched for years – there are simply no more bugs left.
I look forward to the day when Microsoft, like IBM, falls of its own weight. I look forward to a simple OS that is just so fast and easy that nobody will ever even think of going back to Windows.
I think it will happen someday. It will likely come out of China. Maybe moores law just has to settle down a bit before we can get there. Building pyramids with 80/20 blocks is insane.
Yah, that says enough for now. Now back to trying to figure out why….