Windows 8 has been released to manufacturing, along with Windows Server 2012 and Visual Studio 2012. There is also a major new version of Office, Microsoft's other mainstay, due for completion around November this year.
These releases are more than just the usual round of updates. On its tablet-friendly Metro side, Windows 8 has a new runtime and user interface which is almost a platform within a platform. Microsoft consciously reformed the Windows API, with much of it unavailable from the Metro side, applications sandboxed, and asynchronous programming enforced.
If you do development in Microsoft Office, you will find a new application model there as well. Called Apps for Office, this is a way of embedding web applications either in a document (only supported in Excel at the moment) or in a task pane alongside a document (supported in Excel, Word and Project). Outlook 2013 does not have a task pane, but uses a similar approach for new-style Mail apps, a separate pane that displays alongside an email.
The significance of Apps for Office is that being web-based, they also work in Office Web Apps. This means that an application developed for the new model will run on platforms where the Office 2013 client is not available, including tablets and Macs.
There is a lot of sense in Microsoft's approach, whether or not you like the blocky Windows 8 Start screen, or the washed-out user interface in Office 2013. That said, it is a big ask for developers. The problem is not only the amount that developers will have to learn, but also what they need to throw away.
When Visual Studio 2010 was released, frameworks including Silverlight, Windows Presentation Foundation and XNA (for games) were positioned as strategic APIs in which developers could invest their time and effort with confidence. A few years later, and all those frameworks look like legacy.
If Windows RT (that is the ARM version) takes off, developers have to come to terms with a wave of Windows devices that do not run their desktop applications at all.
On the mobile side, loyal Microsoft-platform developers have endured a rollercoaster ride trying to keep up with how the company says you should develop today. Windows Mobile 6: C/C++ is in. Windows Phone 7: C/C++ is out. Windows Phone 8: C/C++ is in again.
The question developers will be asking as Windows 8 and Office 2013 roll out is this: how can we be sure that innovations like the Windows Runtime or Apps for Office will still be worth developing for by the time Visual Studio 2014 comes around?
I am inclined to agree that the Windows platform needed reform, and despite a few jarring changes there is a lot to like in the 2012 wave. But what the company now needs is a period of consistency and consolidation, otherwise its developer community will simply lose faith.
See how this all links together? First, you deliver on your commitments. As you deliver, you let people know that you have delivered. Not obnoxiously, but enough so you build a reputation for success. Now, you've built a reputation for delivery and success. You have earned your personal power. You keep doing that.
Now, you have power in the organization. You can start influencing people. You see what other people want, and you explain what you want. You listen. You explain. You look for short and long-term wins. You're not salesy, that doesn't work. But what does work is looking for an outcome that both of you can live with for the short and long term.
There's more for influence, but this works for verbal influence and was the topic of my keynote at the Better Software/Agile Development Practices conference. I posted my slides on slideshare.
You start from where you are. This is a building process. You are not going to get there overnight. But, you can be more powerful and more influential. Do try and let me know what you did.