You’ve heard this from ReadWriteWeb for the past several months: The exodus to the cloud for enterprise services and resources is moving control of everyday work away from the IT department. So what happens with all those displaced IT workers and administrators who are no longer managing applications and services day-to-day?
Well, if you ask the folks producing the next edition of Visual Studio for Microsoft’s upcoming Windows 8, they become developers.
“One of the things that we think about is like, hey, there is a world of development and there is a world of operations. In some sense, those worlds have been far apart in the past. [With] Visual Studio 11, we are taking the next big steps in terms of providing a tight workflow between the dev world and the ops world – we call it the ‘DevOps loop.'” This from S. Somasegar, Microsoft’s corporate vice president for the Developer Division, during the recent rollout of the first public beta of VS 11 – historically its principal developers’ suite.
Not Those Two Worlds Over There, But These Two Over Here
Over the last five years, Microsoft has operated under the notion that there are two separate classes of developers, which it once called “Web developers” and “apps developers.” The former group has been addressed with a product line called Expression Studio, which was originally geared toward the Web designer that Microsoft described as hailing from the world of graphic design – someone more experienced using Photoshop than Eclipse. Now, with the Windows 8 design motif hinging upon Web apps that it wants its mainline developers to embrace – the workers who know C# and Visual Basic – it can’t exactly afford to treat Web apps developers as sous-chefs.
So it did not go unnoticed that the latest VS 11 beta not only has extensive support for JavaScript app developers, but also contains the Expression Blend component – the tool from Expression Studio for devs to design CSS stylesheets. If Microsoft still has two audiences, two worlds, in mind for its developer product lines, their characteristics are evidently both in flux. Coming into focus ever so gradually is a concept called DevOps – essentially, the admin or system operator who either dabbles in development, or has already taken the dive and who Microsoft is only now discovering.
“We’re looking very heavily in bringing in another role, as part of the software development team: That’s the operations professional,” said Corporate VP Jason Zander during the VS 11 rollout event. “DevOps is a good example of that. We have the developer in the operations cycle – sometimes it’s the same person, sometimes it’s different departments… We recognize especially as we all start going out and building really advanced services and sticking those out in the cloud, it’s necessary for us to really get that loop working very tightly.”
Windows 8 will ship with two worlds of its own: one which encompasses the new and emerging world of touch-capable apps, and one which most Windows applications will run on today. Microsoft doesn’t want these two models to align with separate developer classes – and that’s a smart decision. If the “Expression” realm aligned itself with Metro-style Web apps and the “Visual Studio” realm with Desktop-style .NET applications, Windows itself would split into two competing ecosystems.
So think of this latest product cycle as “open-ecosystem surgery” – a route to cross-pollinate Microsoft’s existing dev groups, with the result (hopefully) being that a new pair of groups emerges along a different dividing line. Planting some new seeds in this reconfigured garden, Microsoft will be offering an express version of its premium Visual Studio tier. The SKU that used to be marketed to large teams will now get an Express version, hosted within the Windows Azure cloud, for smaller teams.
Worth noting is this new TFS project dashboard, which is supplied by the cloud-based team server. It’s not just that it incorporates Microsoft’s corporate-wide layout – it borrows its on-screen gadget concept from the upcoming Server Manager tool for the next Windows Server “8.”
“The Team Foundation Server Express product uses a lot of the core technologies from the full-fledged [TFS] product that a lot of our developer customers love and use today,” remarked Somasegar. “As a result, you get a lot of the core functionality like work item tracking, source control, [issue] management tracking… being able to have task boards that allow you to follow agile practices.” Like the developer division’s other Express tools, the new TFS Express will be free; but unlike the others, it will support teams of up to five.
In an interview with ReadWriteWeb, Jason Zander tells us to expect some, though not all, DevOps-oriented features from the existing Team Foundation Server to become incorporated into the Express edition. But routing work items between two roles – for example, starting with a developer role and delegating to an operator role – will be enabled within TFS Express.
A Broader Mix of Both Worlds
Microsoft will be taking further steps than we had been told last September to bring the existing .NET developer base into the Metro-style world. Although it’s already an accepted fact that Silverlight development is at a dead end, Microsoft is building additions to the .NET Framework that will enable C# and Visual Basic developers to build what Microsoft will officially call “Metro-style apps.” This is important because when we were introduced to the Metro concept last September, it was characterized as the style of apps you create using the WinRT runtime library. WinRT is not .NET; and at that time, there were elements of Metro-looking layout that you could incorporate into a .NET app, but it might not be something that runs in a tile on the Start screen.
That has changed: With these new additions to .NET Framework 4.5, including .NET for Metro-style apps, C# and Visual Basic apps can be created using VS 11.
Jason Zander tells us more: “The core subsystems that you want to rely on for a Metro-style application are provided by the Windows Runtime. It’s the same one that’s sourced up, whether using C++, JavaScript, C#, or VB. There is still the Common Language Runtime [from .NET] in there, and there’s still some of the core base class libraries that I need to write code… but one key difference, just to demonstrate this point, is that there’s already a communications stack in WinRT, and we just use that one.”
For now, Zander says, this will not mean that Metro-style apps will be available to the entire multitude of .NET languages, though he does not discount the possibility that other contributors could change that in the future. The Metro-style additions will be exclusively for C# and Visual Basic.
“To the extent that you’re a JavaScript developer and you’re writing a Metro-style application, then of course you can just use JavaScript. We do enable the ability for that application… to call out to C++ or .NET assemblies,” Zander explains. One example he offers would be a physics library written in C++, which may then be called from JavaScript code in the Metro app. “That’s kind of a hybrid application that has both components in it,” he says.
“If I’m a Silverlight developer today, and I’d like to author a Metro-style application, probably one of the most direct routes to being able to do that is to target XAML and C#, for example, as a Metro-style app there. And then taking a Silverlight app with the XAML, using some of the code that you have, and being able to retarget that inside of the new Metro project that you write. We do not have tools that will automatically convert those assets over,” Zander warns. “And because you are targeting the Windows Runtime, there are some differences.” There are new markup items for using XAML with touch and hover gestures, for instance. Windows Phone 7 apps will face a similar transition to Metro and C#, he adds.
But if the developer wants to transition his skill set from Silverlight to JavaScript/HTML, “in that case, you’re rebuilding the application. We’re not going to try to automatically map anything over. My experience with those types of tools is, they generally have a hard time giving you the fidelity that you’d expect. Sometimes the apps kinda work; and if you’re targeting a new medium, like from Silverlight to JavaScript/HTML, those are different enough that I feel you’d actually be more productive as a developer to use [the Silverlight base] more as inspiration than as core assets.”
It’ll be a difficult set of bridges to build, but in this particular department, Microsoft does have one factor squarely in its favor: It does not have much competition for building Windows apps. Right now, the competition is from the cross-platform development realm, but that realm will not have a leg up on WinRT and the new .NET Framework additions. Microsoft has juggled the order of elements in the universe before. For the converging worlds of apps developers and system operators, don’t count it out yet.