Long Live MVC Core
There is a dramatic shift away from developing traditional ASP.NET web applications … and we couldn’t be happier about it. Of course, we’re talking about the surging demand for websites and applications built upon ASP.NET MVC Core. MVC Core is a new development framework from Microsoft that we think is going to impact web app development for years.
Version 1.0 of ASP.NET MVC Core was released in August of 2016. Just one year later, they released version 2.0 in August of 2017. In between, the sheer velocity of iterative development has come at a blistering pace with high quality minor releases arriving every few months. That’s a level of commitment and resource allocation we haven’t seen out of Redmond in … well, just about as long as we can remember. Microsoft knows that they are on to something BIG.
But that’s just the history of it all. It’s what it “does” that makes this new development framework revolutionary. Let’s talk about why we’re so excited by this framework and why we think it’s important for you and your next website or app.
Why MVC Core, and Why Now?
The (Real) Cross Platform Microsoft Framework
If your application is built on MVC Core it will run on every major operating system – including Windows, Linux, and even Mac. Windows and Linux dominate in the internet server market an everyone has their favorite. But as websites and apps entered the age of the cloud, the fact that we had different OS platforms ceased being a partisan exercise in technological preference ... it started slowing everything down.
The reasons and causes can get deep into the technical weeds, but the basics are easy to understand. Over the years, a large majority of global websites were developed on the Linux platform – including the largest Content Management Systems (CMS). But the world’s largest enterprises still needed to have interoperability with Microsoft tools and other related systems. And while all those enterprises ran their Windows apps with abandon, some of the most innovative work in security was running on lightweight Linux networks.
In order to innovate, the world’s entrepreneurial coders had to first choose their operating system religion first. And that was an important decision because you were not “just” choosing the platform that might be technically better for your application, in many cases you were also limiting your market and the costs associated with running your app.
Systems admins had to work around the problem by installing multiple OS environments on physical and virtual servers. Then developers wrote specialized hooks and APIs across programming languages to get the whole complex thing to work. Now with MVC Core, we can write all our code in one framework and install all our apps directly on the web server, no matter what operating system it’s using. In fact, the “brand” of operating system just doesn’t matter anymore. This is huge.
Built from the Ground Up to Reach the Cloud
There’s usually a LOT of trade-off between simplicity/speed and security. Not in this case. MVC Core code is clean, efficient and built to make calling micro-services and APIs easy. It makes the web-service calls of yesterday feel like sending Morse Code in comparison. MVC Core is designed for the cloud.
Now I know what you’re thinking … “everything” is cloud these days. But we’re not fooled by buzzword bingo and marketing spin. Previous development frameworks had to have services and APIs wedged into them. ASP.NET MVC Core was rebuilt to make them a primary element of the framework. It was purpose-built to support them. And if you read our blog post from a few months ago about micro-services and server-less computing (and we hope that you did) then you can see how this approach is ideal for where the cloud seems to be heading – especially Azure.
And one more thing … you can skip the intermediate steps of building install packages and uploading files. You can deploy all MVC Core apps from Visual Studio directly into cloud and local production environments.
Performance, Performance, Performance
OK … if you want to, you can forget all the other reasons we’ve listed to embrace ASP.NET MVC Core for your next website or app so far. Because the biggest reason to build your next website or web app using MVC Core is increased performance.
Over the last several months in the run up to the release of ASP.NET Core v2.0, Microsoft has been posting test results like this one to prove their case. You can even find benchmarks posted by the community on GitHub. We’ve been around the technology world a long time. We are used to hyperbole flowing out of the marketing and PR departments of technology companies, especially when it comes to performance. So, we understand why some people have been skeptical. Heck, we were skeptical too at first.
But we have been testing ASP.NET MVC Core since nearly day one. We have since even moved our proprietary applications to the framework. And when we did, we noticed improvements in performance that were so significant – double the throughput was common – that it made us question the validity of our benchmark testing.
Every implementation of MVC Core we’ve done so far has demonstrated similar results. Faster websites and apps mean higher volumes, happier end users/customers, fewer errors, and reduced load on system resources. By every measure we’ve tested so far, it’s a win across the board. And all that improvement in performance results in real cost savings as well.
And By the Way … Developers Are Loving MVC Core
There are a lot of developer-centric reasons to build on MVC Core. But we’ll leave the discussion of things like NuGet packages and the slick way the framework helps you build out web apps and APIs to the technical team. However, some of those wonky technical benefits have positive business benefits too. Let’s take a minute and review just a few of them.
The .NET Core framework supports true side-by-side app versioning. This lets developers test updates and new versions within the same development environment (calling on the same data sets and code libraries in real time). It’s much more accurate, efficient, and saves resources. In short, it reduces both development time and surprises when it’s time to go live. Gone are the days where you’re unable move one application forward due to the limitations of another application hosted on the same server.
In addition, not only will MVC Core apps and sites run cross-platform, they can also be developed cross-platform – meaning that development is no longer limited to Windows pc workstations. Coders can use whatever systems are at hand, including Windows computers, Macs, and Linux machines.
Finally, MVC Core is open-source. This not only makes developers happy in a warm and fuzzy, philosophical way, but it garners greatly increased support and adoption from the development community as a whole. This gives MVC Core the benefit of not only being a superior development framework to work from and implement apps, but it inspires a broader user and install base. And the more development that happens on the platform, the better it becomes.
ASP.NET MVC Core is the Future of Web Development – for Microsoft and Beyond
No one can predict the course of development technology five years out. Things change way too fast. But Microsoft ASP.NET MVC Core 2.0 was just released in August of 2017 and it’s already getting rave reviews for performance, interoperability, and its cloud-friendly structure. If you’re wondering if you should take the step of building or updating your websites and apps to MVC core, we think now’s the time.
As always, if you have more questions about MVC Core or want to discuss the details of your project, give us a call or send us an email. We are always happy to help.