Redmond Review

What System Center Can Do for Developers

Microsoft System Center 2012 is out, and Microsoft .NET Framework developers everywhere are cheering.

I kid, of course; developers likely consider System Center a bit dull and more than a bit irrelevant. That would be a mistake, though, even if System Center may at first look like little more than a datacenter operations dashboard. In reality, System Center does an immense amount for .NET and the Microsoft platform, as well as the credibility and utility of cloud computing.

System Center used to be a collection of several separate products. The 2012 version has integrated these components into a single offering (albeit in both Standard and Datacenter editions), adding significant value to the product and simplicity to its licensing. As a starter, System Center includes Configuration Manager, Data Protection Manager, Endpoint Protection, Operations Manager, Orchestrator and Service Manager.

But for developers, the most important System Center components will likely be its Virtual Machine Manager (VMM) and App Controller. VMM provides manageability for Hyper-V VMs. App Controller provides a self-service portal for deployment of services over VMM/Hyper-V private clouds or the Windows Azure public cloud. But it turns out that this isn't just about the cloud; it's about stuff that Microsoft has been looking at for a very long time.

History and Déjà Vu
VMM and App Controller both work with a template-based paradigm. Pick a template and the corresponding infrastructure is provisioned, on servers, in a private cloud or the public one. This template-based infrastructure bit is very significant. It's a good idea, and we've seen it before. Microsoft has had a dream of automating infrastructure -- in other words, providing a developer-friendly abstraction layer over infrastructure deployment -- for a long time.

Remember the enhancements to Windows Azure announced about a year ago? One of them was a facility called AppFabric Composite Applications. It was a diagram-based mechanism for defining the compute, storage and database resources required by a cloud application, which could then be used to deploy that very infrastructure. Despite being announced a year ago, this feature hasn't really shipped.

This failure to launch is more than a year old, though. Remember the 2005 release of Visual Studio Team Architect? It had a technology, code-named "Whitehorse" during its beta period, that allowed and operated on a similar principal: providing designers for architectural diagrams that could then act as declarative expressions of the hardware to be provisioned. Whitehorse diagrams were based on something called the System Definition Model (SDM).

As it turns out, the SDM was tied to a vision Microsoft laid out in 2003, called the Dynamic Systems Initiative (DSI). In the press release accompanying the DSI, Microsoft said: "Developers don't have an easy way to describe their application's characteristics and needs for the datacenter, and IT managers lack the required tools to help them drive IT requirements back into development."

More than nine years later, Microsoft is now delivering what it refers to in the System Center 2012 marketing material as "standardized application blueprints … [that] would typically include specifications for the hardware, operating system and application packages that compose the service." This time, it seems like it's going to stick.

A Vision Finally Realized?
System Center has already been selling nicely, and with the consolidation of the separate products into just two unified editions of System Center 2012, I expect its momentum to build significantly. The classic Microsoft playbook move of continually plugging away at something until finally getting it right (the euphemism for which might be "iterating") still seems to work.

Sometimes Microsoft comes up with an idea that the market isn't ready for. DSI, in 2003, might have been one of those ideas. Now the technology industry has a name for what DSI sought to address: "DevOps," defined as the intersection of software development and IT operations. The cloud has lent legitimacy to this idea, because it does deliver automated provisioning of infrastructure. The economy has lent urgency to this idea, because budgets have required versatility across infrastructure and development for many technologists.

That's why System Center should be important to you. It's a highly capable product that can get you a leg up on these especially stressful challenges. It's getting traction for itself and for the nearly decade-old DSI -- itself based on work done by Microsoft Research in the mid-1990s. The goal of that work was helping IT operations and development get in sync. System Center 2012, the cloud and you might finally attain that goal today.

About the Author

Andrew Brust is Research Director for Big Data and Analytics at Gigaom Research. Andrew is co-author of "Programming Microsoft SQL Server 2012" (Microsoft Press); an advisor to NYTECH, the New York Technology Council; co-moderator of Big On Data - New York's Data Intelligence Meetup; serves as Microsoft Regional Director and MVP; and is conference co-chair of Visual Studio Live!

comments powered by Disqus

Featured

  • Compare New GitHub Copilot Free Plan for Visual Studio/VS Code to Paid Plans

    The free plan restricts the number of completions, chat requests and access to AI models, being suitable for occasional users and small projects.

  • Diving Deep into .NET MAUI

    Ever since someone figured out that fiddling bits results in source code, developers have sought one codebase for all types of apps on all platforms, with Microsoft's latest attempt to further that effort being .NET MAUI.

  • Copilot AI Boosts Abound in New VS Code v1.96

    Microsoft improved on its new "Copilot Edit" functionality in the latest release of Visual Studio Code, v1.96, its open-source based code editor that has become the most popular in the world according to many surveys.

  • AdaBoost Regression Using C#

    Dr. James McCaffrey from Microsoft Research presents a complete end-to-end demonstration of the AdaBoost.R2 algorithm for regression problems (where the goal is to predict a single numeric value). The implementation follows the original source research paper closely, so you can use it as a guide for customization for specific scenarios.

  • Versioning and Documenting ASP.NET Core Services

    Building an API with ASP.NET Core is only half the job. If your API is going to live more than one release cycle, you're going to need to version it. If you have other people building clients for it, you're going to need to document it.

Subscribe on YouTube