Microsoft has generated a warm glow for developers at this year's BUILD. There really does seem to be a different attitude in the air and things are moving - but are they?
Under its new CEO, Satya Nadella, Microsoft does seem to be a different place but it is worth keeping in mind that these are early days and I might well want to take back my current opinions in a few months.
This year's BUILD conference does seem to have generated a sort of warm glow. Developers seem to be more hopeful that Microsoft will do the "right thing" in the future - but why exactly is there so much optimism?
When you look a little more carefully there aren't many actual announcements or decisions that deliver on that warm glow right now.
Take Windows 8.1. and its update. I have a feeling that many developers are looking beyond the actual and to a future Windows update that isn't actually available yet.
Update 1 doesn't actually deliver that much - but what it does deliver is heading in the right direction. It is probably more important that Microsoft has taken the complaints of the desktop/mouse user seriously and has done something, no matter how trivial, to address their problems.
So what is new in Windows 8.1 Update1?
As already mentioned - not a lot.
About the biggest deal is the move to make the Windows Taskbar more integrated with WinRT apps. You can now pin a WinRT app on the desktop taskbar or opt to have it show in the taskbar when it is running.
This is an acknowledgment that most desktop users have had to resort to using the taskbar as a replacement for the missing Start button.
Once you have an app pinned to the taskbar you can run it without having to switch to the start screen. This means you don't have to move back to the Start screen as often and so you can ovoid the jarring jump to WinRT hyperspace.
The Taskbar is not the Start button, but it all helps.
That is the highlight of the upgrade.
You can also now find the power button more easily, there is a new search button, you can customize tiles with a right click context menu, there are better app install notifications, a title bar has been added to WinRT apps when used with a mouse, and so on to ever smaller changes.
The main point is that Update 1 contains something for the Desktop user and, to be noitced at all, is a new experience for them. Since Windows 8 first appeared, Microsoft has more or less ignored desktop users and apps and if you want to take the most down beat view it has even been hostile to them - you will like WinRT, you will write WinRT apps...
Return of the Start Button
The real big announcement at BUILD was that Microsoft is moving even further toward giving its customers what they want. Yes the start button is coming back.
The exact design of the new-old button isn't clear as yet, but to satisfy any right-minded user it has to offer hierarchical organization of programs rather than the flat presentation used by the Start window. If you try to use the Start window with the hundreds of apps a developer typically has installed it becomes a complete nonsense.
Also promised is the ability to display WinRT apps on the desktop in a window. This is so obvious and sane a thing to do that it is totally amazing that it wasn't the way the system was constructed in the first place. If WinRT had been a system in a window then it would have been so much more flexible - and after all the OS is called "Windows".
It was always obvious that WinRT should be just another window mode on the desktop.
When this happens you can write that WinRT timer app which can also sit on the desktop and be useful to a desktop user as well as a Start screen user.
No date has been given for these promised new features. It could be Update 2, and why call the current update Update 1 if there isn't going to be a second one?
However, it seems more likely that they will see the light of day in Windows 9 sometime in 2015. The reason is simply that if you put all you good stuff in Update 2 why would anyone hail Windows 9 as the solution to Windows 8?
There is a lot of mythology being touted about Windows 7 being the "good" Windows to Vista's "bad" Windows and my guess is that Microsoft will want to encourage the idea that Windows 9 is the new "good" Windows.
As I've already, said the key factor is that it seems that Microsoft is now more flexible about Windows, what it is and how you should use it.
When you think back only a short while to the days of Sinofsky and the whole "Windows 8 is how Microsoft says it should be, not what you want it to be" era then it seems odd that it has taken so long for the company to recover its sanity.
Let's hope it really has.
In times to come my guess is that the Sinofsky era will be regarded as some aberration where someone tried to imitate Steve Jobs in telling the customer what they wanted, but got it terribly wrong.
Of course, if Microsoft doesn't return to sanity then we will probably be looking back at the Sinofsky era as the one that sunk the company.
At the same time that Microsoft is pleasing most of us with tales of the "Windows to come", it has already pleased a lot of us with news of open source .NET and WinJS - although how these will actually play out in the coming months we will have to wait and see.
There is also the worry that Microsoft doesn't seem to want us to notice some of the ways in which .NET is experiencing a resurgence. For example, why was C# 6 hidden in the announcement for the open sourcing of Rosyln? Is this no longer a top-level project that Microsoft is proud of? And what about Xamarin? Is Microsoft really happy that another company is .NET's champion and responsible for most of the innovation in the platform?
The news about revamping Azure and Visual Studio is encouraging. Visual Studio seems to be morphing into a do-it-all IDE and not just one that supports Microsoft technologies. This is, on the one hand, good, but on the other not so good.
If you still create or have to maintain desktop applications then you can't help but look back to the days when WPF was new and you were inspired to create new and amazing user interfaces. Today Windows Forms are on maintenance-only support and WPF is hardly moving. Will the newly announced DirectX 12 mean that WPF gets an upgrade? Who knows?
Microsoft may have announced the Universal App, but in this context "Universal" means WinRT and Windows Phone 8. Yes, it is good that WinRT and Windows Phone 8 are moving closer together, but what about Windows?
There was never the need to fragment the operating system in the first place - so Microsoft can hardly expect us to cheer when it starts to put it back together.
A Cloud Ecostructure
If you only have to look to the future then it is good that Visual Studio is now Visual Studio Online and you can work in a team on a project in the cloud.
It is also good that Microsoft is making tools that integrate with Azure. If you want to create a website then what could be easier than, say, WebMatrix - you can edit, test and deploy to Azure from a single environment. This goes well beyond what any other company offers, but Azure websites aren't cheap compared to what others offer.
Once you move away from Windows 8 then the whole developer eco-system looks much more complicated and messy and this year's BUILD and its announcements have done little to make it seem less messy.
What they have done is to put the best possible spin on it all without actually delivering very much.
There were lots of other small announcements - Cortina - Microsoft's long overdue Siri; an OS for the Internet of things, a free OS for small systems; .NET native; RuuJIT goes SIMD; and more. They all seem to be heading in the right direction, even if they don't really all hang together.
We have detected the intention and even a tiny bit of proof that Microsoft is back. For the rest we have to trust the future.
So we can retire into our corners and wait for the goodies, hopeful that Microsoft is listening to what its developers actually need - new stuff without seriously damaging the old stuff.