Expand Your Foundation

The strongest houses are built on the strongest foundations. So too are the strongest and most reliable apps. Reaching out beyond traditional foundations, however, can make them more capable -- that was the primary message during Adam Tuliper's general session keynote on Wednesday, June 14, at Visual Studio Live! in Washington, D.C.

Tuliper's keynote, entitled "Developing with Granite and Diamonds - New Productivity on Solid Foundations," took a more philosophical approach to development, even though he presented a handful of demos to emphasize his points during the session.

"The idea for today is to talk about the base," he says. "We have been doing .NET for some time. How can we take these solid foundations we've been building on and build them out a bit?" Tuliper is a principal software engineer with the DX group at Microsoft.

"We have at least eight different .NET platforms out there -- .NET Core, Xamarin, Mono, the full .NET Framework, Windows phone versions -- where does this lead you?" he says. "My goal is to have everybody understand .NET standard [the foundation] is going to affect everyone in this room."

He encouraged everyone gathered for the presentation to get to know their local Microsoft developer evangelist. "Our job is to work with developers," he says. "We're not just here to evangelize. We're here to help you. It's a good way to get plugged in to be better at your jobs."

He even backed that up by drawing an analogy to maintaining and updating software. "How are we helping you guys to grow? We're taking stuff you've been doing for a long time and polishing it a bit," he says. "I heard a nice analogy about development. Software development is like putting anything into the ocean. From the moment [a boat] goes into water, it takes added effort to maintain it. That's kind of like software."

Tuliper then described some of the enhancements and additions to Microsoft's development tools and libraries that can help developers expand on their foundation. "There's a broader range of things to look at here," he says. "You've been doing WinForms. You've been doing Xamarin. How can we build on that?"

He mentioned Microsoft had recently released the full .NET Framework version 4.7, as well as a preview of .NET Core 2.0. "On data side, we're really trying to meet you where you are with HDInsight, Azure, Mongo DB, iSQL on Azure. You have a lot of data storage options, all with the same protocols."

As more development tools work together, it becomes that much easier for developers to build in interoperability into business apps. "Modernizing desktop apps is pretty easy if you take those foundations and grow them; add on to them a little bit," he says.

"There are ways to integrate with your OS that you couldn't do previously," says Tuliper. "Now just by getting a simple NuGet package, you can build a modern environment with all these old apps. You don't want to take all those and compile them to a new .NET platform. We do have ways you can take all classic apps and call into them from UWP [Universal Windows Platform]. You can have an older app with all your business logic and you can deploy a new modern app that calls into that for you."

This all fits in with the overall move toward platform-agnostic and cross-platform apps and development. "There's an increasing need to take your code and run it in different places. You need to run .NET Framework on .NET Core and run .NET Core on .NET Framework. That's what this is about," says Tuliper. "If you have a class library, you can take that across those environments."

Tuliper also described several examples of how expanding the foundation can manifest, such as artificial intelligence and its many use cases, image recognition, voice recognition, as well as virtual and augmented reality. "What you can take on with some of these new things shows you how you can expand your horizons," he says.

The next Visual Studio Live! event will be held at Microsoft headquarters in Redmond, Wash., this Aug. 14-18. Check here for more information.