I read the latest Visual Studio Magazine Editor's Note with some interest. I agree with a lot of what Patrick says in his piece. Microsoft is seriously damaging the Dot Net developer community and adoption in the industry with these half baked product releases and abrupt about-faces after shipping. As I wrote in another blog, I have seen the adoption problems myself.
People outside the developer community are starting to view Dot Net as an unstable platform to build on, and that hurts all of us who make our living on the Dot Net Framework.
Losing Future Developers?
Dan Appleman takes on future developers in the guest opinion part of VSM, Where did all the developers go? Dan asserts that the changes and pace of change is driving people away from development as a career, not just to other platforms. The pace of change for a new developer looking to learn the Dot Net framework is pretty scary.
Can you imagine just picking up the Dot Net framework at 3.5? I can't imagine the confused look students would have trying to teach the framework to them at this point. And if we start losing future developers, where are we going to get our new hires of tomorrow?
Windows Workflow a total rewrite
I was a little shocked to read that Windows Workflow in 4.0 is a total rewrite though. Wow, another major shipping product being dumped by Microsoft?
From one reader on the site:
Kathleen Dollard's article on the changes in the upcoming version of Workflow [Ask Kathleen, "Windows Workflow Changes Direction," January 2009] reminded me that the same thing happened with SQL Server DTS 2000/2005, as well as with the MapPoint object model and ADO. Now SQL Notification Services was dropped in 2008? Are you kidding? It makes you wonder: How many times do you have to relearn things you used to know how to do?
Well, the Windows Workflow and WCF are both way, way over complicated if you ask me. But that doesn't mean they will be simplified in 4.0. In fact I seriously doubt they rewrote it to simplify things.
It actually makes me happy that I never invested more into the Workflow model. We occasionally get requests to write a Workflow provider for VistaDB. Doesn't look like that is going to happen anytime soon. How many other companies are now going to reject WF?
Sort of reminds me of Sync Services (another technology that was totally rewritten after release of the API to developers and pushed into production too early). We invested several man months of time into Sync and were totally dejected with a CTP of the system was a major change in architecture and API. We dropped it after that, and in hindsight it turns out to have been the right decision since it is just now appearing to finally be stable. Well, maybe. I haven't checked the 4.0 list to see if it is changing again.
Developers are all beta testers now?
Are we as developers all beta testing for Microsoft now? I seriously am starting to feel that way. 3.5 was shipped way before it was done, as evidenced by the fact that SP1 is 200MB and takes about an hour to install. That is a Service Pack? Should have been called 3.6 since it added so much new functionality. Come on, the Entity Framework is a patch? I don't think so.
LINQ to SQL anyone?
I was at the developers conference when Microsoft announced that LINQ to SQL was to be treated as a stop gap measure until Entity Framework was shipping. At that time I thought they were talking a period of weeks, this was over 2 years before the release of EF with SP1. A lot of developers are really ticked off at the amount of time they spent just to have to reinvest in another technology in the same release of the framework (3.5).
Get it together
Seriously, this is Microsoft! Not some small startup working out of their garage. They spend man years per day on development efforts. If they can't get it straight it makes us all look bad.
Take a look at the latest VSM magazine. It is about 1/2 the thickness of the magazine was a few years ago. Hmm, maybe they are losing audience, or advertisers? Or maybe they already wrote about all the 3.5 technologies (including a TON of articles on LINQ to SQL that never mentioned it was a stop gap measure).
Dot Net is a great platform, but I seriously think Microsoft has made some bad decisions lately on the development front. We need stability from the leader, especially during this economic period. Budgets have shrunk to the point where companies cannot afford to waste time on development that will be scrapped in literally months of time. Where is the return on investment?
How many times do we have to go through the rewrite process before Microsoft gets it right? It used to be said that you always waited until Version 3.0 of a Microsoft product before you bought it. I still know lots of users who refuse to install anything Microsoft related until the first Service Pack is released.