I've been playing around a little more with the latest release candidate of Kentico CMS. After reading up more on Martin’s Hejtmanek’s post about the full set of changes and updates, I was inspired to blog about a few of the new features and changes that excited me. Don’t forget to check out my last post about the release of Kentico CMS 7.0 RC if you have not done so already.
Enhanced CMS.IO – Zip File Support
The CMS.IO namespace in Kentico CMS deals with any file system type interactions you might need to do, i.e. you can use CMS.IO to read and write files and folders just like the the normal System.IO namespace in ASP.NET. The reason that you might want to (and should) use CMS.IO is that it is not dependent on a particular file system (NTFS, FAT, XFS). CMS.IO is designed to work with just about any file system as long as the required provider is implemented. A great example of how it can be extended is the fact that since version 6.0.18 the CMS.IO library works natively with Windows Azure and Amazon S3.
In 7.0 Kentico has added .zip file support to CMS.IO. This gives Kentico developers the ability to have read-only access to any file or set of files compressed in a .zip file via code. That is a handy feature on it’s own if you think about it because, as a developer, working with .zip files is a very common thing. The more immediate benefit though is that, like Martin mentioned, Kentico CMS itself can now be delivered in a much smaller package. In terms of files here is what I measured on my local installations of Kentico.
Kentico CMS 5.5 R2 - 13,187 files and 2,838 folders
Kentico CMS 6.0 SP1 - 19,486 files and 3,739 folders
Kentico CMS 7.0 RC - 10,456 files and 1,345 folders
The numbers are really impressive in terms of file reduction. More importantly though, the fewer the files there are in your project, the faster Visual Studio loads, compiles, and deploys. The same benefit would be seen on a server deployment in IIS, the ASP.NET framework will be able to compile the site faster when it has to load fewer files. Speed is good right ?
Pro Tip: If you work with Kentico CMS or any other large ASP.NET project with Visual Studio, stop what you are doing and go purchase and install a Solid State Hard Drive (SSD) right now if you do not already have one. The performance increase over traditional Hard Drives is well worth the investment. I prefer Crucial’s M4 SSDs myself. I have used them for over a year now and am quite happy with the performance, and they are reasonably priced.
Your Clones are Very Impressive. You Must Be Very Proud.
Bonus points to you if you get the reference above in this section’s title. Version 7 introduces the concept of Object Cloning. This is a feature that has long been asked for, especially for Kentico developers that utilize the Form Engine of Kentico (BizForms). I can’t tell you how many times I have created a generic Contact Us form in Kentico, and then right after that the need arises for another online form that is almost a complete copy of the first one but has just one or two more unique questions.
This feature is not just for top level objects though, it can be used for items as well. Again I like this option because setting up some data in the CMSDesk ahead of time is sometimes needed.
It’s also worth mentioning the the UI consistency change is very nice to work with. There are no longer popup windows on top of popup windows. Those have been replaced with modals that contain the dialogs that you need to modify objects with. Also all of the button text and styles have been made consistent and moved to the top of each screen.
Documentation: A Developers First Line of Defense
I was also spending more time reading through the new documentation on Kentico CMS 7 as well. There are a few new topics and new code examples. The format and functionality of the documentation mostly remains the same, but the link at the bottom of each page has changed.
Clicking on the Generate Permalink or Bookmark Topic is a new option. When you click that a modal dialog appears that looks like this:
The new option Copy Permalink makes it easier to get back to the exact spot in the documentation that you want to, or to pass a link to a certain topic to one of your colleges. The Bookmark Topic button is also new. Just like it says, clicking this button will automatically add the permalink to your browsers favorites. These new options are really just small tweaks, but sometimes small tweaks make a world of difference. I send documentation links out all the time and this new method is a little easier.
That’s All For Now
I really am enjoying playing around with the new changes in 7.0. Oh and In case you didn’t catch it, the cloning reference was to Stars Wars Episode 2, I just couldn’t resist.