• Matt Burrell

Why Has There Been a Decline In Demand for ASP.NET?

Updated: Aug 7

Source: ITJobsWatch

The graph above shows an apparent decline in demand for ASP.NET. In this post, we give our view on why we think this decline has taken place.

First of all, ASP.NET MVC is a great server-side technology. ASP.NET Core has been a welcomed improvement providing an open-source, cross-platform framework for building modern cloud-based applications. Our developers have used ASP.NET Core for many projects and have enjoyed the experience.

So why might there be a decline in ASP.NET across the permanent and contract market?

Firstly, we would say that it has nothing to do with it being a 'bad' technology or because (ASP.NET Core aside) it is not completely open-source. It also has little to do with ASP.NET not being seen as a cool technology.

It's more simple than this. Ultimately, the decline is because of the rise of the front-end stack.

Rise of the front end

It's no coincidence that the decline of ASP.NET started at the time when Single Page Applications (SPA) were becoming popular around 2009 onwards.

Single Page Applications are web applications that load a single HTML page and then dynamically update it as a user interacts with the page. This gives the user a much better experience, more like using a traditional desktop application.

Once SPAs became popular, backends became less about generating HTML and more about simply providing data to the front end. There was no longer as much need for a heavy backend technology like ASP.NET MVC.

AngularJS was also released around the time demand for ASP.NET started to decline. Client-side frameworks like Angular, Ember, and React made building SPAs much easier. They also contributed massively to the rise in popularity of JavaScript and 'doing more stuff in the front end'.

Once SPA frameworks took hold of the market there was no stopping them, as we can see from the demand for JavaScript skills today. When Node.js was released in 2009, JavaScript's dominance only grew stronger.

Server-side JavaScript

Node.js made the next leap in web applications much easier: isomorphic (or server-rendered) applications. The problem with SPAs is that they often have a slow initial page load because of the amount of code being downloaded and then run by the browser. Bootstrapping web apps can take a long time compared with static sites. SPAs are also terrible at SEO.

Isomorphic web applications solve the page load speed problem by rendering the SPA on the server. Node.js means JavaScript can be run on the server so code can be shared across the client and server. Less context-switching between technologies and more code reuse. Even ASP.NET Core's isomorphic pre-rendering framework (JavaScriptServices) uses Node.js under the hood.

Of course, Node.js isn't the right technology for all web applications but it fulfilled the need for a lot of companies that were building modern web apps in the start-up world. All of this meant that ASP.NET just wasn't as relevant as it used to be simply because it wasn't the right tool for the job.

The future of front-end

So what's the next step in the evolution of web applications? Many would say Progressive Web Applications. Progressive web apps bring features we expect from native mobile apps (such as the ability to 'install' onto a smart phone and offline capability) to the web world. Yet more JavaScript power to behold and perhaps more misery for ASP.NET as a framework for building modern web apps.

That said, most web apps still need to get data from the server and for many, ASP.NET Core is a great choice to provide just that.

Need help building a web application? Get in touch today for a free consultation.