This very long post from Joel Spolsky speaks to me and depresses me on so many levels.
I have been a programmer for a long long time. I have been programming to DOS and Windows and for a few years, thanks to some great innovations by the Fox Software folks, to the Mac. I have always accepted that Microsoft is in the business of selling operating systems and if they own the developers, they own the world. It is one of the reasons that I have nearly jumped ship a few times. But, well, they own me – Joel drives this point home (and how they do it) pretty clearly in this post.
He also talks about the “Raymond Chen Camp” – which represents those at Microsoft whose biggest interest is to keep Windows and dependent applications running, no matter what – no breaking changes. He quoted some great posts from Raymond Chen’s awesome blog as examples. He compares this to the MSDN camp – which he says is compartmentizing software tools too much and encouraging developers to use disjointed and complex “code chunks“. And he says they’ve won – because they have gotten away with breaking changes quite a lot lately. Not only breaking our code but breaking a lot more in our lives in order to try to keep up.
I definitely get frustrated with the changes and the effort of keeping up, but change is necessary. I believe I have quoted Ilya Prigogine’s Nobel winning theory of chaos and disorder in the universe on my blog before: “You can’t have order without change“. I accept that. I stomped and whined a whole lot when .NET came out and I saw what it meant for my vb6 applications and skills. But I learned and I am writing better applications.
I don’t think Joel is decrying change, but breaking changes. I’m sure Paul Vick could easily explain why it was maybe close to impossible to move VB to .NET,give it the power it can have now without breaking VB6 code.
He also talks about Windows .NET apps vs Web .NET apps which was the point that one of my user gruop members took away from this post and is thinking maybe it’s time for him to go back to FoxPro if he wants to focus on Windows applications.
I have too much work to do and to much invested in all of this to step back and think about what he is saying (this week or this month or this year). Doesn’t that sound awful? Self-serving? Uncaring about the big picture?
There is much to read and absorb in this article. It’s a pretty interesting look at software regardless of if you agree with him or not – and you will probably find yourself agreeing with some, disagreeing with other parts or just realizing that you really don’t want to think about it at this level…
[just a note – yes I deleted the post. I realized my gut reaction did not express my opinions well, so I have modified it a bit and reposted. And I still am a bit uncomfortable with this because it’s a huge thing to think about and I haven’t taken the time that I think it deserves…]