Today, VP of Product at Kentico, Karol Jarkovsky, shares his insights and tips concerning MVC and how to make the transition. But being a bit of a traditionalist, I started looking at the initial decisions to drop Web Forms and move instead to the MVC development model.
Web Forms, It’s Nothing Personal!
Microsoft’s plans to abandon ASP.NET Web Forms have been on the cards for a while, so the decision wasn’t just to jump ship to MVC, but instead have a release-by-release approach towards transitioning to a full .NET Core MVC development model by 2020. As Karol explains, “The original Kentico was created when we were switching from ASP Classic to ASP.NET Web Forms. It was exciting times and great technology back then meeting all of the developer expectations at that time. People were more used to looking at relatively static sites, product-catalogs, and directories of items or articles, etc. But as applications moved from the desktop to web to mobile, developers wanted to replicate the fluid experiences users were having with native apps. And that’s what’s driving the need for a kind of technology that helps to satisfy the needs of front-end developers’ requirement to build better experiences.”
He adds, “So the problem is that you can’t really achieve this kind of flexibility and freedom to build unique experiences with Web Forms. Web technology has become, or is becoming, irrelevant. Just look at how expensive it is to process requests coming through the browser, hitting a Web Forms-based CMS going through the multiple processing pipelines to figure out what content you actually want to display.”
It Was No Longer Cut out for the Task
Developers are constantly encountering performance implications with Web Forms. A Web Forms-based web app has typically higher demands on the hardware running it. So, the total cost of ownership is increasing. Together with factors limiting developers when crafting experiences, you get a couple of key contributing factors as for why this technology has been dying for the last five years or so. Now, although we did have some form of MVC support prior to Kentico 9, Kentico 9 was really where we first properly introduced the concept of MVC development to counteract the restrictions and performance issues we were seeing with Web Forms.
Of course, additional to this, Microsoft made the call a couple of years ago saying they would no longer develop Web Forms and that MVC is the future. There was, of course, a huge push back, so they eventually went back on this, but with the latest set of announcements, it’s finally time to admit it, the end of Web Forms is coming, and Microsoft openly concedes .NET Core and Core MVC will be the future. And that was why we knew we should adopt the MVC-only approach and help our partners and end-users future proof their valuable work.
Rip It Up and Start Again?
The biggest challenge I see for partners and clients that have been developing projects on Portal Engine and Web Forms for the last 10 years or so is how they’re going to transition the libraries of reusable components they use in their projects and the templates they use as archetypes for their projects—which a lot of these partners built out so they can speed up their delivery. Since MVC is a completely different kind of animal regarding the technology and how you develop with it, they basically will have to recreate those components again. This can be a major concern for making this switch for them.
Start Small, Build Big
Important to note, in reality, it is not such a big problem in terms of the fact you don’t need to stop what you’re doing and invest 6-12 months into doing nothing other than building components. Instead, you can make the transition gradually.
A good practice is to pick a pilot project, perhaps, starting with something smaller, which a lot of our partners have been suggesting too. Agencies are sitting on a technology time bomb. So, to assist them in making the leap, we have prepared the MVC Transition Guide. The goal of the transition guide is to help them make that first step with a pilot project so that when that Web Forms rug is pulled from under them, they will not be left high and dry! We have plenty of best practices there and other useful resources, which are constantly being updated, and we have already created MVC courses to help you, with more coming soon. The important thing is, you’re not alone. You can count on our support!
As we can see from this first part of this mini blog series, there are many factors for why you need to embrace the MVC approach to avoid falling prey to Microsoft’s dropping of Web Forms. And because we value our partners and end-users in everything we develop, we are continuing in our educational approach to help you make those first, yet successful, steps with us. As always, we would welcome any comments or thoughts you might have about this article. See you in the next part!