Build 2014: Empowering Developers in a Cloud-First, Mobile-First World

Build 2014: Empowering Developers in a Cloud-First, Mobile-First World

  • Comments 10

@StevenGuggs and @JohnShew here…Last week we were on stage at Build sharing what we’ve learned over the last year through our conversations with developers.

If there is one message that has rung through loud and clear, it’s that when it comes to building applications and services – one size does not fit all – nor should it.  The kind of app you are building – social, gaming, enterprise, etc. – and the tools and technologies you use – native, managed, or web – have a cascading impact on a developer’s approach to building software.

While we are constantly listening and adjusting our thinking, right now we see developers focusing on three major approaches to software development – native development using technologies like C, C++, DX, and going down to the metal; managed development using technologies like .NET, WPF, embedding, etc.; and web development using technologies like HTML5, JavaScript, Cordova and so on. 

The Right Tools for the Right Job

Most developers are incredibly principled when they select among these approaches, as they build their software – talk to a .NET developer using WPF and they are clear on why this is right tool for their job, often the most sophisticated desktop LOB apps, which need to be deployed and remain stable for years.  Similarly web developers are principled in that many choose close conformance to industry standards so their solutions maximize reach.  And then there are developers who wring every ounce of capability of the hardware by handcrafting code around a particular networking stack or GPU.  Each of these different approaches are constructs of a need being filled – and each approach has led to successful applications and outcomes. 

To illustrate our commitment to these convictions, we constructed our entire keynote at Build around demos that showed off amazing work by developers, from across the industry.  We selected the specific demos shown at Build we because each one distilled down to an expression of a simple point:

Microsoft is committed to supporting developers in ways that developers value – because what is best for a developer, any developer, is what’s best for Microsoft. 

Developers building iOS apps on an Azure back end, like the team at Daring Fireball, exemplifies the commitment Microsoft is making to ensure that best in class tools and services are available across platforms. We think that this is great.  And this often surprises people.

Our Pillars

Simply put, we’re committed to enabling developers of all development approaches and are focusing our efforts around three key pillars designed to ensure developer success:

  1. Reuse your stuff – we are empowering developersto painlessly bring their existing investments and assets forward
  2. Easily build cloud and mobile first app experiences
  3. Do more, in less time - the tools and technologies we are building help developers maximize their business
    opportunities, across different platforms

Last year, when we talked about our work on a common core for Windows and Windows Phone, we committed to ensuring that these principles applied to the work we are doing for all developers.  We’ve made it our goal to achieve convergence across nearly 100% percent of our APIs – x86, x64, ARM, Windows, Embedded, Phone - with a vision of supporting Windows developers in writing their applications to run across all Windows devices, with minor UI accommodations. With the common core set to include Xbox One and IoT devices, as well as providing support for heterogeneous languages and programmatic modernization of old code, building for Windows is set to offer an impressive reach to line of code ratio.

What Developers Want = What We Want

But all of the above is just a minute portion of our work. With a huge group of developers out there who don’t know Microsoft, much less the value our technology can offer them, we know that we have work to do. When it comes to developers who target multiple platforms, whose success is measured by ability to get a job done as efficiently as possible, we’re here to keep pushing. We know that we have to embrace all developers, adding value on a developer’s terms, and come open and honest every day to be successful.   

Relevance today is giving developers what they want, not just what we want. So our approach is simple:

To create value for developers through a combination devices, services, and tools that can benefit all developers - irrespective of their language, application model, or platform preference.

We believe that we can provide developers with a fairly unique and powerful opportunity: to take their existing investments in code – whether HTML5, JavaScript, Python, PHP, .NET, C, and many more – and bring those assets forward to create the most powerful, modern experiences on Windows, Windows Phone, Microsoft Azure and even Xbox.  And, in many cases, on iOS and Android, as well (and this becomes more true every day, as a matter of fact).

And keep an eye on Johnshew's blog where he will be posting more about what happened behind the scenes, as we pulled this all together.

We’re just getting started.

Leave a Comment
  • Please add 3 and 4 and type the answer here:
  • Post
  • Speaking for  a large number of game devs, can we have OpenGL ES support?

  • We have a large silverlight product. How do you support us?

  • 1. A 'big bang' of shipping just the minimum to develop for each platform using the same API/BCL with minimal platform specific extensions is the goal.

    2. Modern .NET, Modern Win32/api with each api/class/method listed as  is modern or is depreciated is drastically needed.  

    3. Obsolete and deprecate technologies not used for building with the modern .NET, modern win32/api.

    4. Pick one technology in each space to carry forward and deprecate the others.  For example, remote procedure call-like mechanisms would have 2 levels; a low level traditional socket based and a higher level/WCF one carried forward and all other mechanisms would be depreciated.

    5. Restart the developer tools/VS with a compiler, editor, project browser, debugger and a minimal set of tools.  Add on only a limited subset of tools to VS.  Split TFS/agile/architecture and other tools out of VS into their own application.

  • No doubt cloud and mobile are important, but don't forget there are millions more desktop developers. When you are trying to catch up tablet and mobile world with Apple and Google, don't forget your biggest strength is desktop.

  • When will we learn more about cloud computing for gaming?

  • Matt, here's a link to what we're saying today: http://news.xbox.com/2013/10/xbox-one-cloud  ...E3 is just around the corner.  :)

  • David, first make sure to check out the Windows 8.1 Update - there is a lot of love for the desktop coming through in this update.  Regarding app development, the current push for API consistency across all Windows devices and form factors is something to keep your eyes on.

  • Agree totally with the 'big bang' restart and phasing out tools

  • It's a really nice article on Empowering Developers in a Cloud-First, Mobile-First World.

  • "One size does not fit all" - That's why we want a return of the VB6 programming language - Microsoft's highest rated in the May 2014 Tiobe index.

        visualstudio.uservoice.com/.../3440221-bring-back-classic-visual-basic-an-improved-versi

Page 1 of 1 (10 items)