Microsoft recently delivered the latest update to its Visual Studio integrated development environment (IDE) — Visual Studio 2017, bringing with it a number of productivity, performance and coding enhancements.
Among the most salient new piece of the Visual Studio 2017 story is the company’s focus improving DevOps for enterprise IT environments, allowing enterprise developers to build what Microsoft calls “Five-Star apps.”
Five-Star applications are, in essence, enterprise-grade apps that have the polished look and feel of the best consumer applications that people are used to using in their everyday lives, explained Mitra Azizirad, corporate vice president of cloud application development and data marketing at Microsoft.
Microsoft is redesigning Visual Studio to give developers more time to write code and spend less time worrying about how the application is built, delivered, and maintained.
In terms of building the app, it’s about having a native user interface and about having high-fidelity API access, whether that’s across Android, iOS or Windows, she said. It’s about performance, which is viewed as more of a feature than anything else.
“As we think about the complexity and handling from a mobile dev perspective you can have dozens of OS versions and thousands of form factors,” Azizirad said. “The ability to distribute this in a seamless fashion with one commit is critical.”
These applications also must be able to connect with users anywhere, any time on any platform — whether that’s a PC, a phone or a wearable. As a result, they must be scalable and adaptable. Even a few seconds of latency or disruption is costly for these enterprise applications.
To help ease the building of these applications Microsoft has added a number of things to help you code faster, such as Xamarin Inspector so that you can visualize your app live, you don’t have to stop debugging. There are also the Xamarin Profiler, Forms Previewer and the iOS simulator, which give developers the ability to target iOS, Android and Windows with a native experience.
Moreover, there are Xamarin application templates now for the first time in Visual Studio 2017 that are preconfigured with common application services powered by the Microsoft Azure cloud service, like DocumentDB storage, authentication, push notifications and monitoring. Microsoft also added a connected services UI that allows any app to easily add in Azure services and it takes care of the configurations required for the application.
Meanwhile, .NET Core 1.0 built-in with Visual Studio 2017 has been optimized for cloud and cross-platform running on Windows and Mac. And Microsoft also surfaced the .NET Core Microservices reference application, which is a good prescription for building .NET Core Microservices.
DevOps ‘Til We Drop
A key Microsoft goal with the Visual Studio 2017 family is enabling DevOps for all developers.
“We know that individual productivity matters, but the DevOps is really about changing the flow,” Azizirad said. “What we wanted to do with Visual Studio 2017 is give the developer more time to write great code and spend less time on the DevOps flow itself. It’s not just the building of the app, but it’s also the lifecycle management and the DevOps flow.”
Microsoft has clearly integrated DevOps more into the IDE with capabilities like live unit testing, so teams can write tests while a developer codes to shorten those loops. This is all part of the “shift left” approach of performing testing earlier in the software lifecycle. In addition, the new update to Visual Studio Team Foundation Server 2017 includes a bunch of new continuous integration/continuous delivery (CI/CD) services.
Microsoft’s new DevOps focus came out of developer need. “What we hear a lot from folks is how hard DevOps is and so as folks move away from waterfall processes, this capability will help provide a clearer approach to tightening up that DevOps flow,” Azizirad said.
Ironically, releasing developers from focusing on components so they can spend more time on the immersive experiences and the apps themselves has become almost 50 percent of the discussions Microsoft has with customers, Azizirad said.
“Folks say you’re not done with the application when you’re finished writing it; you’re done when you see a smile on your customer’s face,” she said. “And DevOps is the way that folks feel like there’s a continuous improvement. So, we want to make sure Visual Studio is not just seen as key to the building of that application but also to the entire scope of lifecycle management.”
Charles King, principal analyst at Pund-IT, said he believes many of the changes and improvements Microsoft has made to this 20th-anniversary update of Visual Studio reflect the fundamental importance and reality of DevOps.
“Given the increasing focus on building and altering applications to meet changing business objectives, DevOps processes that enhance the software application lifecycle and enable seamless interactions with IT operations have never been more important,” King said.
He noted that new Visual Studio features, including code navigation improvements and IntelliSense code completion, contribute to that, as do processes that improve the creation and deployment of applications to Microsoft’s Azure cloud.
“These and other features highlight Microsoft’s understanding of how important DevOps efficiency is to its customers, and the company’s intention of targeting those issues in Visual Studio and other developer tools,” King added.
With that in mind, Microsoft previewed the ability to configure a CI/CD pipeline directly from within Visual Studio. The Continuous Delivery Tools for Visual Studio is a new extension for Visual Studio 2017 that brings DevOps capabilities to the IDE, said John Montgomery, Microsoft’s director of program management for Visual Studio, in a blog post.
In addition, Microsoft is extending its new Enterprise DevOps Accelerator offer to mid-sized and large development teams looking to modernize their tool chains and focus on innovation. This offer incorporates tools including Visual Studio Enterprise and team based DevOps cloud services for both .Net and non .Net teams.
Leaving Folks Behind?
Mik Kersten, CEO of Tasktop Technologies, a Microsoft Visual Studio partner, said he is impressed with where Microsoft is taking Visual Studio but fear it may be leaving others behind.
“I am very impressed and slightly dismayed by what Microsoft has delivered in the Visual Studio 2017 launch, he said.
“With this launch, Microsoft has set the high-water mark for IDEs that combines cutting edge programming support for C# and TypeScript, connected to Agile integration via Team Foundation Services and even more importantly to the new DevOps support for Azure and Docker,” Kersten told The New Stack.
Moreover, the Visual Studio team is doing “amazing things” in making the IDE an on-ramp to Microsoft’s cloud platform, continuing in the company’s great tradition of investing heavily in the developer experience, he noted.
Yet, “The question now is whether Azure will become a legitimate destination for non-Microsoft platform centric workloads like Java,” Kersten said. “If not, Amazon and Google will need to start playing catch up on the IDE experience in order to capture the hearts and minds of the growing generation of cloud-native developers who are getting pushed back into the kludgy world of text editors.”
TNS Analyst Lawrence Hecht contributed the Stack Overflow analysis charts to this story.