Brian McKeiver's Blog

25 Reasons to Move to Kentico Xperience MVC


Introduction

Even in 2021, I am still having multiple conversations with existing Kentico Xperience clients from a business, executive, and/or marketing standpoint about moving from Portal Engine to MVC. Most of my conversations revolve around people who are having difficulties to fully understand why a rebuild of a site in MVC is necessary. In fact, one response I received from a client after reviewing the Portal Engine to MVC migration topic was: “It is going to be a difficult advocacy for such a large project that is purely technical with little obvious experience changes (end users or editors)”. Thinking about the migration from Portal Engine to MVC as purely technical is actually a common response, as many of the benefits are stated in a technical way. However, I’m here to tell you that this technical only consideration should be broadened into multiple considerations.

In the rest of this blog post series I’d like to fully answer the question of “Why MVC?” once and for all. I figure that if I am having this conversation multiple times, there must be other people having it to with their clients. Why not answer it on my blog, and then all of us in the Kentico Xperience community are able to use it as a resource for clients out there who have Portal Engine based Kentico Xperience sites and are considering what to do next.

 

checklist_700.jpg

 

Business Benefits of a Modern Stack like ASP.NET Core MVC

I’m going to start my answer to the question “Why MVC?” with the list of benefits that I feel speak to the business side of the argument first. After all, most of my conversations these days are with the business, leadership, or decision making person(s) in the room. These benefits try to focus on the arguments for moving to MVC at a high level.

 

1. Vendor Support

Modernizing your website platform keeps your website in the supported lifecycle with Kentico Gold level Support and Microsoft Support and that is what you are doing when you moving from Portal Engine to MVC. If something goes wrong, tier 1 vendor support is available.

As the Kentico Xperience Product Support Lifecycle states Kentico Xperience Portal Engine is out to pasture already, and the platform is fully unsupported by 2023. This is similar with how Microsoft has put the ASP.NET Webforms technology that Portal Engine is built on out to pasture as well. This is as much a Microsoft thing as it is Kentico thing.

 

KX13-Support-Timeline.png

 

I’m not going to pull any punches any longer here, running a site in Portal Engine is akin to running the Windows 7 operating system or even Windows XP on your laptop in 2021 and thinking you can still get support for programs and features on it. I’m hoping we all know how unstable, unsecure, and risky that is.

 

2. Talent Acquisition

Luckily, the world seems to be on the verge of recovering from 2020, at least I sure hope so. That means that businesses are coming back, potentially looking to hire, and expand their workforce. I know BizStream is looking that’s for sure. Finding well trained development resources is easier when you offer a job responsibility list that includes working on a modern technology stuff. Because MVC allows you to have the most modern technology your sites and apps will most likely contain modern frameworks that developers are excited to work on. This stack also opens you up to a larger pool of candidates for development and maintenance work. Trust me it is simply easier to find and hire someone to do the work in tools they love. The reverse of the situation is also true. If your website is running on older technologies, there are simply not as many people around who know how to edit and maintain those legacy systems. I’ve known of multiple situations where candidates will turn down a great job if they have to work on things that don’t help them grow their skills.

 

3. Happier Staff 😃

This reason plays off of the last one but retaining your development team members becomes less of a challenge when you are on a modern stack. I’ve learned the hard way over the years that working on new tech trends tend to make developers happy. Allowing your staff to work in MVC and the latest and greatest coding frameworks should be motivating and even exciting for them. And motivated developers tend to be effective developers.

I don’t know about you, but I would rather retain and encourage the staff I have, as opposed to continually keep having to hire new staff.

 

happy-coder_700.jpg

 

4. Enhanced Security

Running Kentico Xperience MVC is more secure than legacy technology like what the Xperience Portal Engine is based on. There are multiple documented security-centric features in the MVC platform, from preventing open redirection on log on actions, to preventing cross site request forgery (CSRF) attacks, and even having a straightforward process to prevent JavaScript injection & cross-site scripting (XSS). These concepts don’t really exist in the legacy world.

Really MVC has less surface area for attacks than previous frameworks, is more maintained and patched than previous frameworks, and has an ongoing focus on security and protections against modern attack mechanisms.

 

5. Reduced Maintenance Cost

Ongoing future upgrades to the newest version of Kentico Xperience 12, 13, and 14 are less expensive and quicker to complete. There are multiple technical reasons why upgrades are easier and faster, so you’ll have to trust me a little, or read my post on Kentico MVC Upgrades if you really want to know. I won’t re-list them all here as a result, but bottom line, recently we have seen a 30% to 40% reduction in upgrade costs when compared to earlier versions of Kentico Xperience. Ongoing future hotfixes / security patches are less expensive and quicker to complete as well.

I won’t sugar coat it though, there will be a single larger upfront cost to migrate to MVC from Portal Engine because you are rebuilding the majority of what you have, but over time, the total cost of ownership could potentially be much lower on maintaining the code base.

 

6. Reduced Hosting Cost

Another point about cost is the hosting cost. Because Kentico Xperience 13 can run on ASP.NET Core MVC that means you can move to a Linux based hosting platform as opposed to running on Windows based hosting platforms. This is especially useful if you are running on Microsoft Azure with Platform as a Service (PaaS) resources. The beauty of Linux based resources in Azure is that they can now do the same thing as Windows based resources yet cost about 20% - 40% less than Windows based resources. Wouldn’t it be nice to bring down your monthly Azure spend?

 

server-hosting_700.jpg

 

7. More Accessible (ADA Compliant)

Leveraging MVC gives your site the ability to achieve ADA Compliance for WCAG 2.1 AA and AAA standards much easier. That’s because you have complete control of the webpages you render on your site from both a content and code standpoint. Previously it was actually extra work to make the Portal Engine render code that was ADA compliant. In fact, there were some components that you even couldn’t make ADA compliant.

ADA compliance is becoming more and more important for website owners to consider as a must have as they operate their websites. If you are not sure what ADA compliance really means I recommend reading up on what does ADA compliance mean for my website.

 

8. Project Reusability

MVC gives you the ability to leverage past investments in developed website features and functionality across multiple different projects, brands, or additional sites. For example, if you need to create a login / authentication scenario that needs to function the same across 3 sites like your public .com website, dealer portal website, and customer portal website. You can now write that functionality just once and quickly re-use it in all 3. The ability to use packages to distribute reusable functionality should lower cost and increase speed of delivery for your projects.

Even though Kentico Experience has always had this concept of packaging and sharing functionality across Portal Engine sites, it was never quite perfect. There was always a struggle of how to combine the front-end HTML, CSS, and JavaScript user interface portions with the backend C# coding logic in a way where you could add it into a new site with one click, and uninstall it with one click as well. Now you can at much finer level of control because of the advances in .Net.

 

Packages_700.png

 

9. Go Global

Translating content into multiple languages and region specifc culture codes has long been a main pillar and strength of Kentico Xperience. In fact, I feel that Kentico Xperience has one of the best translation experiences for editors and developers alike when compared to other DXPs on the market. Even though the Portal Engine did this well, it was always still a little bit of a battle to get it 100% correct.

Modern development methodologies like MVC are setup well for creating global sites. You are not fighting the framework to translate and localize content. Frequently the older components in webforms were hard to translate as they didn’t have a goal of supporting multiple languages originally. Multiple translations and multi-language support is easier to accomplish in MVC because again, you have complete control over what you render on your live website.

 

10. Greater Innovation (Feature Adoption)

The pace of technology changes is unrelenting. There are always new features coming out for delivering smarter websites, better user experience, deeper integrations, increased performance, and higher stability. These innovations happen in the modern stack of ASP.NET Core MVC and not in Webforms. If you are staying in the Portal Engine world, innovation isn’t really happening there. This is also a rock-solid fact because now both Microsoft and Kentico have stated no new features will be delivered on the legacy platforms.

 

Xperience-Innovation_622.png

 

Keep Reading More Reasons

This is the first post of the series that focuses on answering the question of “Why MVC?” once and for all. It has focused on the business reasons of migrating to MVC from a Portal Engine based Kentico Xperience website. Up next in the second part of the series, I am going to continue the list as it pertains to the Marketing / Content Editor role at an organization in part 2 and part 3 will contain some technical reasons. The full list of 25 Reasons to Move to Kentico MVC will be published by the end of this week (so don't forget to subscribe!).