Microsoft’s Visual Studio ecosystem numbers 180 partners and counting. On the heels of the Microsoft BUILD conference in September, here’s what you should know about the current tool set, from the forthcoming Visual Studio 11 (now in developer preview) to LightSwitch, Team Foundation Server and Project Server. Plus, there was a look at how third-party plug-ins play nice with Redmond. In the aftermath of BUILD, there’s been a blizzard of words around Redmond’s evolutionary changes to its operating system, development environment and life-cycle tools.
On the negative side: criticism of the Metro-style design, confusion around the positioning of LightSwitch and the status of Silverlight, angst towards the changes to the Windows 8 start menu, and mea culpas over key aspects of C++11 that won’t soon be implemented in Visual Studio.
On the positive: a renewed interest in native code, excitement over its touch-screen-centric style, enthusiasm for massive parallelization with C++ Accelerated Massive Parallelism (C++ AMP), and the touching embrace of Project Server and Team Foundation Server to comprise a full ALM offering, to name just a few.
With a customer base as massive as Microsoft’s, positive and negative chatter is inevitable. Beyond just opinions, there are statistics: The company’s heavily instrumented preview versions of Windows 8, Visual Studio 11, Team Foundation Server and more offer a closely guarded “census,” according to Microsoft’s Steven Sinofsky, into actual usage patterns via the opt-in Customer Experience Improvement Program. Sinofsky is just one member of an army of bloggers engaging the often-outraged developers who use Microsoft’s tools, taking feedback, debating decisions, and explaining the scientific rationale behind any given change.
In the shadow of Apple founder Steve Jobs’ death, legions of Microsoft developers find themselves wondering if Redmond’s choices will be as world-changing in the next decade as Apple’s were in the last. In addition, a massive ecosystem of ISVs is analyzing the developer preview to pinpoint plug-in offerings of their own. The symbiosis is in full flower; this is your field guide.
Visual Studio 2011 developer preview
At the heart of Microsoft’s developer tools strategy is its market-leading integrated development environment, Visual Studio.
“This is a big release,” said Tony Goodhew, product manager for Visual Studio 2011. “It’s the equivalent-size release as Visual Studio 2008 and 2010. There’s a similar feature surface area improvement.”
So what’s the best way to think about the panoply of refinements and introductions? “The Microsoft brand promise is productivity, integration and platform support,” said Goodhew. “As a tool with 15 years of history, Visual Studio has really focused on this promise. Listening to what developers want, we focused on making the developer experience better and more productive. We also focused on the ability to create compelling user experiences, especially in small and mobile devices.”
Finally, there’s the “team experience: Let’s make the experience of collaborating together to deliver quality software better.”
“Visual Studio and Team Foundation Server developer previews are evolutionary,” said Todd Anglin, chief evangelist for Microsoft partner Telerik. “Windows 8 and the Metro runtime are more revolutionary.”
But do the evolutionary changes fall short of those required by natural selection? If the threats from the passionate C++ constituency to choose GCC over the polyglot IDE are any indication, they do.
Not native enough
The developer preview of Visual C++ was able to accommodate the recently ratified changes to the standard template library in the new C++11 standard, as well as adding three core areas: stateless lambdas, SCARY iterators, and scoped enumerations. But more newsworthy were the dozens of omissions, including variadic templates, range-based for loops, delegating constructors, non-static data members initializers, and many more that won’t be implemented in the next release—and possibly next two releases—of Visual Studio. That said, some of the missing pieces may themselves be buggy, and only a few competing compilers exceed Microsoft’s conformance, with the exception of GCC.
“There was a group of people who were unhappy with how much C++ 11 conformance we were able to achieve,” said Goodhew. “But another group said, ‘Look, this is the first time we’ve seen this much native code at a Microsoft conference.’ We were disappointed in the level of conformance with the C++ standard; we try to be very transparent about this.
“I’ve been doing tools marketing since 1991, and when you commit to something and then pull it from the product, that’s often worse than not committing at all. We are very committed to the C++ language and native development. We’re working out how we can get this stuff to market faster for a C++ developer and looking at how we can not make customers wait two more years to Visual Studio 2012.”
Goodhew’s promises did little to placate those who had been fired up by Herb Sutter, a Microsoft architect for native programming languages. He recently wrote that, “after a decade-long affair with managed languages where it became unfashionable to be interested in C++, C++’s power and efficiency are now getting very fashionable again.”
C++ did get extended airplay, however, for its new role in general-purpose GPUs, Sutter explained at BUILD. C++ AMP, which accelerates program execution by running data parallel across portions on a computer’s graphics processor. The programming model includes multidimensional arrays, indexing, memory transfer, tiling and a mathematical function library.
There are also new features for concurrency, which was the focus of Sutter’s groundbreaking 2005 paper, “The Free Lunch Is Over: A Fundamental Turn Toward Concurrency in Software.” These include two new windows for debugging parallel applications on the GPU or multiple CPU cores; the Concurrency Visualizer; Task Parallel Library Dataflow; and new C++ concurrency warnings that detect race conditions and common problems around locking and synchronization.
Close to the source
Speaking of refactoring, the code clone analysis for C# and Visual Basic proposed in the developer preview makes it possible to find near matches in duplicate code, places where names of variables and parameters may have been changed, but the method or fragment is essentially the same. This joins other search improvements, such as Quick command search to locate menu commands; open Options dialog box pages; or switch between open documents or Tool window search.
“The demo I saw was detection only, essentially a spotlight showing you the problem,” said Mark Miller, senior scientist at DevExpress. “We have been working in secret on a tool feature for the last almost two years. It’s called duplicate code detection and consolidation, abbreviated DCDC. It detects duplication, but also goes a step beyond and consolidates it, which is a very difficult problem… If the Visual Studio feature comes out and it’s only detection but not consolidation, that will be great for us.”
LightSwitch, Silverlight and XAML
Much of Windows 8’s hip new look is scaffolded on HTML5, which has made Silverlight developers and XAML adherents nervous. Would Silverlight soon be abandoned? Post Build conference, “Those fears are overblown,” said Anglin, whose Telerik RadControls for Silverlight includes more than 60 production-ready XAML controls for line-of-business applications. Another point of confusion has been over the positioning of LightSwitch, released in June.
According to Goodhew, “LightSwitch was a product we built to address a need that a segment of the market has for forms-over-data apps. When you build those types of development tools, you have to figure out what the rendering technology will be. We chose to do it initially in Silverlight. It was very similar XAML that we were rendering, so that was the technical choice. We could have made a decision to use some other rendering technology like HTML5. The rendering engine isn’t the interesting part of LightSwitch, it’s the part about putting these forms over data.”
To that end, Microsoft partner DevExpress offers XtraReports for LightSwitch, a US$99 product that creates business reports for LightSwitch ranging from contact lists to detailed sales reports. DXEditors for LightSwitch is a free download from DevExpress designed to enforce data-format rules, display images from URLs or fields, and more.
In contrast, Telerik is treading cautiously: “We made a choice not to build a tool specific for LightSwitch, but we do have hands-on guides to show how customers can incorporate our controls into LightSwitch,” said Anglin. “Will a business analyst in an enterprise want these LightSwitch plug-ins? We’re not yet convinced that market will exist.”
Ultimately, according to Microsoft, the rumors are premature. “We’ve invested in creating LightSwitch, it’s part of VS11 and not going away,” Goodhew said. “That’s orthogonal to the future of Silverlight. We’re clearly making an investment in XAML, and developers should be very confident they’ll be able to leverage the skills and assets they have in XAML.”
He did note that another version of Silverlight is coming up soon.
Team Foundation Server + Project Server = ALM
Meanwhile, another key piece of Microsoft’s developer story is Team Foundation Server, which as of Visual Studio 2010 was included in the MSDN subscription of VS users. TFS 2010 replaced the dated version control system Visual SourceSafe, and broadened its feature set to include everything from project and requirements management to build automation.
With TFS 2011, there are five major enhancements, a SaaS version plus a bridge to Project Server. The new features are code reviews, storyboarding, exploratory testing and feedback manager; the cloud offering is TFS as a service; and the bridge to Project Server creates what Microsoft calls an end-to-end ALM solution.
Starting with the TFS and PS Integration Feature Pack shipped in March 2011, there’s a bidirectional bridge connecting work items and tasks tracked in either tool, so that the project management organization and developer teams can connect. The integration even works with Team Explorer, Excel, Microsoft Project and SharePoint. Agile team progress is easily graphed and viewed with burn-down charts, open bugs per iteration, and stories/work item tracking.
The biggest news at BUILD around TFS was the porting to Azure of hosted TFS, which had been offered by other vendors as well as via a CodePlex unsupported open solution. Interestingly, because SQL Azure databases can’t currently exceed 50GB, some changes were made to the data tier, application tier and build agent, according to Microsoft’s Brian Harry, technical fellow and product unit manager for Team Foundation, who explained in October 2010 how these three layers morphed into SQL Azure, a Web role and a VM role, respectively.
“We gave out 4,000 TFS Service accounts at BUILD, and we’re going to progressively open up as we get feedback and understand where the bottlenecks are,” said Goodhew. “Generally, people quite like it; they like the whole concept of being able to get TFS but without needing to deploy it themselves. This is something that’s attractive to smaller-size companies; you don’t need to have an IT staff or a server.”
But with the cloud, will uptime be consistent? On Oct. 6, Harry reported the first system-wide Team Foundation Service incident, which lasted 4.5 hours and slowed the service enough to make it “difficult to use.” The cause was an as-yet-undetermined bug that congested the gateway servers to SQL Azure. “Part of the reason for running the service as a preview at this time is to learn from operating a service at scale and work out the kinks,” said Harry. “We’re committed to learning from every failure and ensuring that we converge on a very reliable service.”
Here, too, ISVs are eager to participate in the VS/TFS ecosystem. “What we see coming in Microsoft moving TFS toward cloud, creating these interactive dashboard-style task boards, actually reinforces the model for Telerik, because we provide TeamPulse through the cloud,” said Anglin. “TeamPulse is a perfect compliment to TFS, with both platforms running in the cloud.”
The company has created a TFS synchronization feature so that agile teams using TeamPulse—released last year and the first project management tool in Telerik’s product line—can work with TFS users seamlessly, or stand alone.
Team Foundation Server and Service aren’t the end of the ALM story for Microsoft in 2011: There’s more coming soon from Microsoft in vNext, announced earlier this year at TechEd by Jason Zander, corporate vice president of the Visual Studio team, as a way to improve collaboration; add more agility via the new backlog and task board; enable continuous testing; and encourage a DevOps approach where operations is no longer an afterthought.
“At the ALM Summit in Redmond, Nov. 14-18, we get a chance to talk about the process of making great software,” said Harry. “We intentionally had fairly light coverage of our vNext ALM plans at the BUILD conference because we heavily oriented it toward the new Windows 8 capabilities. The ALM Summit is really the next time where we’ll get to go deep on our future ALM plans.”
Feeding the ecosystem
It’s a truism that Microsoft is the leader in developer tools and partner relationships. Many comparisons have been made to the Adobe or Apple approaches to tools, platforms and partners.
“There is no question that Microsoft is one of the most successful companies at building a thriving ecosystem,” said Anglin. “Microsoft, at its core, is great at maintaining that developer relationship. They build a pathway to easy success, and they’re continually reinvesting in the platform.”
If you compare Microsoft to Adobe and its 20-year-old Flash platform, Anglin continued, “You can’t say Adobe is ineffective if you follow the money. Adobe has been a provider of tools, and in their early history they made money-selling tools to designers with Adobe Creative Suite. They don’t make money off platforms, Flash, those kinds of things.”
In contrast, Microsoft’s server and tools business is one of the company’s most profitable, “so they are severely motivated to create a great platform,” said Anglin. “There are two very different motivations in these companies, and that produces two different behaviors in how they cultivate their ecosystems.”
Where Microsoft “does a better job of creating a fresh and evolving developer experience, Adobe is more at the mercy of the platform,” said Anglin. Apple’s controlled, consumer-focused platform, coupled with its decision (off-putting to many developers) to use Objective C inside of iOS apps, creates a “different scale, vibe, energy,” he said.
Certainly the success of the iPad has been a game-changer, finally mainstreaming the tablet and launching a new wave of content consumption: e-books and untethered, cloud-based apps. Indeed, some are predicting the demise of the Web as we know it, and that suddenly seems not too bizarre a prediction as cloud storage and social networks obliterate old-fashioned Web pages.
While some rejoice at Microsoft’s embrace of smaller screens and less-powerful mobile devices, others are concerned that Redmond could get this wrong.
Is something the matter with Metro?
There’s a debate raging over whether Metro-style touch-screen apps are beautiful or awful. There’s plenty of concern around whether desktop touch-screens will ever be a significant market, but some also worry about the very design principles underpinning it all.
“I have mixed feelings about Metro,” said DevExpress’ Miller. “Parts of it are beautiful, and parts at this point seem to contradict the essence of what the UI should be.
“The essence of the tiles—the OS—should be clarity. If that is the No. 1 criterion for making UI decisions, then the very bright background color of the tiles with white text on top of them emphasizes the background, not the actual text. It contradicts the essence of clarity.”
Miller is also concerned that the icons won’t be quickly understood. That said, he liked other aspects of the UI.
“If you get past the main tiles and get into the applications, you get into some really beautiful, high-clarity presentations,” he said. “I feel that what’s missing are solid guidelines that say something like what the background color should be. They’re essentially saying, ‘Let’s throw a whole bunch of colors at the user.’ I’m concerned about that because I think that’s going to impact sales.”
If such details seem hair-splittingly minor, one need only remember Steve Jobs’ description of using the calligraphy skills he learned at Reed College to create the first computer with beautiful typography. Visuals must be impeccable to compete in today’s market.
The good news is that developers are eagerly exploring Metro via the developer preview, according to Goodhew: “We instrument our software so we can see what works and what doesn’t. We’re seeing a ton of people playing with Metro-style apps. The reality is, they have a lot more work to do. You’re not seeing a lot of people trying to build a business on this stuff now because it’s just a preview.”
As for design concerns, Goodhew touted Jensen Harris’ talk from BUILD, which outlines eight attributes of a Metro app. (Harris is Microsoft’s director of program management for the Windows user experience team.) “This isn’t just a hierarchy of dropdowns, renderers and controls. People who are afraid of change don’t see it this way, but this is a bold new reimagining of Windows, and it’s going to present a bunch of opportunity.”
Dancing with Microsoft
Indeed, every move the tools division makes ripples through the Visual Studio Industry Partner (VSIP) program, which currently boasts 180 ISVs ranging from JetBrains and Infragistics to Intel and Oracle.
“From our perspective, it’s never about whether Visual Studio is stepping on our feature, it’s always about shelf life,” said DevExpress’ Miller. “When you’re creating an add-in product, you’re thinking about what’s the delta, what do you have that they don’t. A product like CodeRush has got to be better than Visual Studio.
“Another part of the goal is for the integration to be seamless. Frequently we hear from customers who think Visual Studio is broken, and it turns out they’re on a machine that doesn’t have CodeRush installed.” As in nature, however, symbiosis is risky: Good solutions often end up subsumed, licensed or rendered obsolete by the evolving product.
Conversely, some ISVs rejoice when Microsoft turns its attention away from their particular expertise. “Last year, Microsoft dropped the Oslo project [which encompassed model-driven application development and the M language],” said Daniel Cohen-Zardi, CEO and founder of Paris-based SoftFluent, which has recently gone international with its CodeFluent Entities for model-driven .NET business applications. “To us, it validates our approach.
“We really think this model-driven approach is the only solution. We’re not model-driven for the sake of being model-driven. As a service company, we found that every year Microsoft made different changes, and we didn’t want to recode everything. We realized we had to work at a more abstract level. We think we have an opportunity to demonstrate that developers need to work at a higher abstraction level.”
But SoftFluent has had to refine its pursuit of those opportunities, first by expanding beyond France. “Part of the challenge for us is that the domestic market is Java-based. France is probably the worst country after Poland for .NET,” laughed Cohen-Zardi, who used to work for Microsoft and remembers viewing maps of which countries boasted the most—and which the fewest—Windows users.
The cloud, too, has been tricky, as European cloud adoption has lagged far behind the U.S. thanks to strict legal constraints. “We added support for Azure and we even got coverage from SD Times,” said Cohen-Zardi. “Unfortunately, what we did with Azure turned out to be only PR; it didn’t generate even one customer attention. We hear a lot about the cloud, there is a lot of interest, but for now it’s very futuristic and the timing is hard.”
Meanwhile, other tweaks have been more successful, such as adding support for Visual Basic as SoftFluent discovered a predilection for the language among its users.
Like most VSIP members, SoftFluent is eager to work closely with Redmond to refine its offerings and reap the rewards of the Visual Studio ecosystem. What new plug-ins will emerge once VS 2011 goes live next year? Will improvements to the .NET framework inspire new third-party templates? Will asynchronous design patterns unveiled in Visual Basic launch a new wave of hyper-responsive APIs and apps? It’s your turn to dive in and find out.