Let me kick this blog post on what annoys me about certain Kentico sites?
Well, you must be thinking you are a Kentico MVP and you are slagging Kentico off already! No, this is not what I am saying, what I am saying is that what annoys me about Kentico sites I have seen and heard about in the Kentico Community is that the sites that are being delivered are hard to content manage or the client is no longer using Kentico because it seems impossible to use and it is clunky and slow etc...
These are the comments and views that put a bad impression on our favourite CMS, Kentico. This can then spread across to potential clients or partners looking to use Kentico CMS and we need to make sure the correct messages are passed on and shared, not the bad ones.
We all love Kentico right? So let's make sure we deliver the Kentico sites properly to our clients who then start singing and dancing about Kentico.
Making sure we deliver client sites successfully in an usable and efficient manner is so important. It is essential for your company reputation on the service you provide, but it is more important to the clients that you provide this to, on how easy their site is to use and content manage. Remember we are using one of the best CMS's out there and should be making sure what we deliver is going to make the clients keep wanting to use Kentico!
Ok let's get everyone into the Kentico spirit, I have listed 10 things not to do to keep our lovely Kentico CMS clients happy ...
1) The client said: The old site URL worked, but it does not work now!
Mapping old or other URLs that exist for the client are so important for SEO and marketing reasons, so make sure you do this before going live and get some Page Aliases set up. This would also help to reduce the number of 404's / page not found messages.
2) The client said: Arggg, I can't see this module or that module, you showed me in the training session! And I have lots of content editors, some think they are the world's greatest designers and create these awful blocks of texts with different fonts, colours and sizes. They think they are creative geniuses, but they are messing my site up!
When you provide training to the client on their site make sure you create them appropriate roles and permissions. Provide the training on the same level/role they would be using so they don't get confused with everything in Kentico CMS as it is really a big system and the client would only really care about specific bits.
Also, when you have a wonderful CMS like Kentico that provides so much to you, you may not need to use all of its features and modules. There are times when you want to limit what's available. In this case, a good example of this is to use Kentico UI Personlisation to hide items from the Editing Toolbar. You can also use it to hide specific modules.
3) The client said: I can make a cup of tea in the time it takes for my website to load!
Making sure you look at the Performance on your website is essential. Nobody wants to spend ages waiting for things to load, time is too precious.
Look at making sure you front end is optimised, your back end code is lean and the web parts and modules you use are tip top with Kentico performance best practices. Using KInspector and SQL Debugger would help too.
Also don't forget caching and explaining to the client the first load will be a bit slower, but after that it will be faster :)
4) The client said: My site was ranked second in Google and now it has dropped, what have you done!
Make sure you look into SEO settings in Kentico. Along with that don't forget the metadata properties for the major landing / content rich pages. Additional metadata information can help, so remember to look into Canonical links and Open Graph Facebook and Twitter Card.
Using the Google sitemaps can help SEO. Making sure you don't leave the dreaded robots.txt set to disallow for production websites will also help.
5) The client said: All I want to do is change this bit of text, but I can't!
Making sure you make everything content managed in some form of way is really important in keeping clients happy. After all, they are using a CMS, so why lock the content away from them?
Some good practices are to create widgets, make sure the Form tab is used to manage the text or even utilising the Localisation Resource Strings can help with this.
6) The client said: In the footer the copyright information is correct, apart from the year still shows as last year. It's been 2 months into the new year, but still it hasn't come through. I know it must be cached!
Things like this are small bity changes, that may come through for you as a developer to amend. However, why not make life easy for yourselves and make sure that the year in the footer auto increments according to the current date? Well, you should be doing this and not letting something like this be a manual change, utilising Kentico Macro's can help with this.
7) The client developer said: I'm a HTML king, I rule the world and I can change page templates in the Design tab without any issues and I am so proud of it. My boss loves me, but the other day he said someone has completely knackered a few pages on our Live website. I know I am the best, so that person who made those changes, must be an idoit!
Well, thinking about this, you have to be really careful when exposing the Design tab to clients, as things can go wrong, even if they think they are the HTML king! So making sure this tab is hidden from the client does help.
Along with UI Personalisation, you can complement it with Version History, which would allow you to rollback to a previous version and also help you identify the person who made the last change.
Another reason it is not really recommended is because you would have potential Continuous Integration and Source Control e.g. GIT running when you are developing and a change on the Live site can cause mismatches with other development environments. To help with this, you can run a tool created by a Kentico partner, BizStream, which is called Compare for Kentico. It is highly recommended to use this.
8) Your developer said: Kentico is so easy, I can do it with my eyes closed!
You have to be careful, there are too many sites out there, where you see lots of web parts created for no reason or widgets created for everything. It is always recommended to see and use the right tools for the right job and don't over complicate things.
9) Your developer said: It's really good Kentico provides us with the source code for most of the features, I can just go and amend or adjust them to how I see fit. I love to make sure the client is happy with my speedy response times. I get really good feedback from the client about my efficiency. I have been working on this site for nearly half a year now. However, the other day I heard the client talking to our project manager about really high Kentico Upgrade Costs we provided. Maybe they should get me to do it, I am really fast and can save them money!
Updating Kentico Core files is really bad practice, you should avoid it at all costs. We all know there will be some scenarios, where you can't avoid, for those you would need to create some kind of tracking mechanism, whether it is a spreadsheet tracker or something else. This will help you when you come to upgrade the website. Even though updating the Kentico Core files are quicker to do, we should really consider cloning them and working on the cloned files.
10) Your developer said: I created this awesome web part, it loops through the items I have and I can show it in a cool HTML jazzy way. It took me a few days to build it. Actually, it took me a little longer as I had to work on it outside hours. It is a little flaky and works 90% of the time.
Creating Custom Webparts are good, however, it is always worth noting whether there is something in Kentico that is out of the box to help you avoid creating custom work. If you don't know what is available, then ask Kentico Support or contact a friendly Kentico MVP who would be happy to help.
As you can see I have only listed a few things that you shouldn't do or allow the client to do when delivering Kentico sites. There are many more examples of bad practices and bad sites being delivered to clients. Remember to follow Kentico Best Practices and also the Kentico Site Delivery Checklist when working in Kentico and delivering sites to your clients. A happy client means they can spread the word more and therefore help the Kentico community and increase Kentico awareness :)!