Blog Posts

Jul 14

Introducing the Kentico Cache Doctor NuGet Package

Over the past many years, there is one pretty important thing I have learned while working with Kentico (and most other Web based CMS platforms out there). That one thing I have learned is that when it comes to problems with a page not showing the right results, or the code not working, or the content not quite lining up the right way; it almost always boils down to one of three things. Those three things in Kentico EMS are macros for dynamic content (and all the fun macro security issues that come with them), client side browser cache (where the latest Javascript file is not being loaded or is stale), and server side caching (where the CMS has placed data in the server memory and the latest page is not being sent down to the user's browser).

With Kentico's focus on MVC first for the latest Kentico 12 SP1, that last one, server side caching, is actually more important and fun to deal with than ever. The thing is with MVC, the caching strategy you use is up to you, and there are many different ways to do it. One of the most powerful ways is add what's called Output Caching into the solution. Output Caching is excellently detailed out over on Michal Samuhel's blog post on fixing a slow Kentico MVC site. If you have not read that post, STOP, and go read it right now. Then come back over here.  

In working with Kentico MVC sites for over 3 years, I have seen many issues during project development cycles that were resolved by simply clearing the page's Output Cache and/or restarting the app pool for the MVC live site. This is fine and all, but it does take a bit of time to do this and slows down the development process. To combat this I have decided to work on a little add-on for Kentico MVC development that gives the developer a quick short cut to clear the Cache without having to restart the site. Enter the Kentico Cache Doctor.

Read more »

Feb 24

Why a Kentico MVC Upgrade Should Not be One Hour of Work - Part 2

In the second part of the series, I am going to continue on with the reasons why Kentico Upgrades take what they take and answer the $64,000 question as to what should an upgrade take for a Kentico MVC Site. Be sure to read part one first of the this two part mini blog post series about Why a Kentico MVC Upgrade Should Not be One Hour before continuing on.

Read more »

Feb 24

Why a Kentico MVC Upgrade Should Not be One Hour of Work

Recently, I have been involved in multiple Kentico MVC Upgrades and Hotfixes for versions 10, 11, and 12 of Kentico. Some have went really well, and some have went not so well.  This hasn't really surprised me as, this is typical of any complex software upgrade. Raise your hand if you have even seen a Visual Studio or MS Office installation completely crap out due to user permissions, mis-matched .Net framework components, or even in the old days dll hell. Yep, I've been there too.
 
But here's the deal, sometimes customers, and even developers, expect an upgrade to hit all three points on the magic business triangle of the speed: fast, the cost: cheap, and quality: good. Over the many years of working with Kentico and end clients, I have been told by Digital Marketers, IT Directors, and CEO's that why can't this upgrade "just" be finished tomorrow? Why is it so hard? Can't it "just" be done in an hour or two?
 

Pro Tip: Just is the most evilest word in I.T. Can't we just add this feature? Can't we just deploy right now? Can't the code just work as I told showed you in my napkin drawing? If I had nickel for every time someone used the word Just…I'd have a lot of nickels.

 

My answer to all of these questions never beats around the bush. I always look the person directly in the eye, take a small deep breath and simply say "No". 
 
Keep reading after the jump to find out why a Kentico MVC upgrade really does take more than an hour or two.
 

Read more »

Dec 28

How to Create an XML Sitemap in Kentico 12 MVC

Wow, it is nearly the end of 2018 already. It is amazing that the older I get, time seems to move faster and faster. I can't believe how fast the time has went this year. In fact, time has went by so fast that I didn’t really have time to join in on the buzz of the Kentico 12.0 release that happened last month (well other than having some fun on Twitter celebrating the launch of Raptor).

In case you didn’t hear, the Kentico 12 release focuses 100% on moving the Kentico platform to an MVC first development methodology. This is great news for ASP.Net developers out there who want to move into more modern technologies and tooling. Kentico is even working on updating the platform to have support for Dot Net Core in the near future. If you are interested in more on the technology roadmap I would recommend checking out the Kentico MVC transition guide and definitely watch Michal’s video towards the bottom of the page.

Now, I could sit here all day and write about the benefits of MVC and how it is flat out a better choice for any Kentico web project these days, but I am not going to do that today. Instead I am going to focus a bit on the argument that I have heard from some Kentico developers, Kentico partners, and even some end clients against the move to MVC. I have heard the point that many of them say: “Why would we move to MVC? We have a CMS with a Portal Engine and pre-built Web parts that gives us so much built in functionality and moving to MVC means that you have to give up that functionality and do everything 100% in code”.

While this is a somewhat valid point, there is indeed more code involved in a Kentico MVC solution, I want to point out that the opposite of this statement is also true, and almost never said by that side of the argument. When you implement in MVC you are opening the door to using solutions that are part of the whole .Net community and not just Kentico specific. Developing your site in MVC gives you the ability to use things like NuGet packages that are well known, secure, and maintained over time. These packages can easily add in a ton of functionality to any ASP.Net site, just like web parts could for the Kentico Portal Engine.

To illustrate my point, I am going to use a concrete example of building out an XML Google Sitemap for a Kentico MVC based website. I think this makes sense as a comparison because yes, the Kentico Portal Engine has this feature built in to it, and the MVC starter site that ships with Kentico 12.0 does not.

Keep reading after the jump to see one option for How to Create an XML Sitemap in your Kentico MVC site.

Read more »

Nov 18

How to Configure Kentico MVC Sites for Azure Blob Storage with Media Libraries

In this How To guide, I will show you how to connect your Kentico MVC site to leverage Azure Blob storage for hosting and providing media library files. This process is not exactly new, it has been around since Kentico 8.0 or so, however, with the new focus on the MVC development methodology, it is not exactly as straight forward as the Kentico documentation mentions. Don't get me wrong, each small part of the Kentico documentation is 100% correct, but there is no great 100% holistic walkthrough for MVC based sites.

Plus, the trend of hosting Kentico sites on Azure PaaS via Azure App Services is very much increasing. I would say at this point it is the most common way that we deploy Kentico sites at BizStream (sorry AWS and Rackspace lovers). The only down side of hosting on an Azure App Service is that each App Service filesystem is limited to 50 GB in total size. That's where Azure Blob storage comes to the rescue. You can offload your media libraries to get those site images, pdfs, and other downloads to a storage mechanism that does not have this size constraint. After all, the largest benefit of utilizing the Microsoft Azure cloud for hosting your Kentico MVC site really boils down to added performance and scalability that the cloud gives you.  

Keep reading to see the whole process step by step of how to connect an external storage provider for Azure Blog storage on your Kentico MVC site.

Read more »

Oct 06

I'm Speaking at Kentico Connection 2018 Chicago

Wow I can't believe that I almost forgot to mention it here on my blog, but in little less than a week from now, October 10th-11th, Kentico developers, partners, employees, and customers will be meeting up in Chicago, IL for the 2018 version of Kentico Connection. I'm happy to announce that this will be the 7th time that I am speaking at the conference.

The good thing is that I am just as excited about it as I was back in 2012. Why, you might ask? Well that is because this year's conference is centered around one of my favorite topics, the fact that Kentico 12.0 is about to release with first class support for ASP.NET MVC.

This time I will be giving a session on how my team at BizStream has been utilizing Kentico EMS with the MVC development framework for a few years now, and what we were able to do with it for one of our customers, National Heritage Academies. Keep reading after the jump for the full abstract of my session.

Read more »

Aug 31

Kentico Rocks Podcast Episode 18

In this episode of Kentico Rocks, Brian McKeiver and Bryan Soltis review the state of using ASP.NET MVC in the upcoming release of Kentico 12. Yes, that's right after a small hiatus, we are looking to revive the podcast. This time Brian and Bryan talk about why Kentico MVC is a first class citizen now in 2018, how an agency might start to transition from the legacy Portal Engine to MVC, and behind the scenes in BizStream's journey into MVC development. And for an extra special bonus, this time we recorded the session with live video as well. Listen and/or watch on to find out how you can start MVC in your own Kentico website development process now.

Read more »

Jun 30

Kentico 12 Beta 2: Chasing the Raptor

In case you were not aware, the second beta release of Kentico Raptor dropped last week ("Raptor" is the code name for the Kentico 12.0 beta releases). I have been keeping my eye on the first two releases of Raptor for one main reason, and that reason is the proclamation that Kentico made  earlier this year that announced ASP.NET MVC would be the main development model supported in Kentico 12 and later. This announcement was music to my ears as my team and I at BizStream have been pushing MVC in Kentico for the past two years.

Since we are such big fans of the MVC development style in Kentico getting the installation of Kentico Raptor up and running was the second highest priority of the week for me (sorry Kentico, coffee is always, and will always be the highest priority for me). And actually one of the newest features of the Kentico platform in version 12 is the updated installer that allows you to seamlessly install an ASP.NET MVC based solution and project type on your development machine. But that is not the most interesting part of the story here. The biggest star of the show in Kentico 12 is the new MVC Page Builder that allows content authors to use a drag and drop method of building content pages on MVC sites. Trust me this feature does not disappoint. It comes with many abilities including the long awaited MVC widgets that most developers have wanted for a while now. 

Keep reading after the jump to hear my impressions of Kentico Raptor and whether or not this Raptor is better than "Blue" in Jurassic World: Fallen Kingdom, or just another box office flop.

Read more »

Mar 10

.Net Core in Kentico MVC?

Lately I have been asked by quite a few developers, quite a few times, if it is possible to use .Net Core 2.0 with Kentico? This is especially true with developers who are going down the path of using MVC with Kentico. So I though instead of repeating the same story over and over, I would make my opinion known publicly on my blog. 

The official short answer to this question is unfortunately no. Currently with both Kentico 10 and Kentico 11 you need to still use the full ASP.NET Framework versions 4.6.x or 4.7.x. These framework versions basically set you up to also only use MVC 5 and not anything far along than that (sorry Razor Pages).

However, there is actually a little bit more to the story, and a bit longer answer to consider. Keep reading after the jump to get the full picture and maybe learn a bit more about where this is all going.

Read more »