Iâve been looking at CMS systems a lot recently. Here are some of my thoughts:
DotNetNuke
Iâm using DotNetNuke for a contract right now. Although itâs written in Asp.Net and I can code in that easily, itâs a pig to run. Even version 6, which was released last week, seems sluggish when run in the browser (even on my local machine with 8gb ram).
DNN is advancedâdonât get me wrong. There is no lazy-ness there. In fact, there is so much available in DNN, that it pains me that it runs so slowly.
Itâs an okay platform. But compared to MVC or PHP counterparts, the ASP.Net webforms are still far too slow and lack elegance. DNN will always have that Asp.Net webform dependency hanging around its neck.
Orchard
Orchard is a new CMS which was started by Microsoft. I fell in love with it last month. Itâs based on MVC3 with the razor engine. It supports multiple sites, just like DNN. There arenât many extensions or themes, but itâs written in C# so I can easily create what I need.
But, then . . .
But then I looked at the page source after it has been rendered in the browser. Although it doesnât have a lot of ugly ViewState like DNN (and all other webform pages have), it does include a lot of stuff that I didnât put there. There is huge amount of javascript added which would at least triple the size of my source. The beauty of MVC is that I have more control of the htmlâbut Orchard adds a stunning amount of code. Most of it is serialised model informationâbut Iâm not sure why it is on the client.
This really bothers me because I spent a lot of time working with Orchard. It is not easy to use as an Admin. While DNN is simple and I could give it to any client to customise, you have to really study Orchard just to add a few things onto a page. You canât just add something to a sidebar, for example, you have to create a layer and add a shape, and add some code so it only shows when a page uses that layer or shape. Really, it was ridiculously difficult.
So, Orchard adds too much to the source and is too difficult to use. But, in terms of speed, it is very fast.
Joomla
Okay, Joomla is PHP. Iâve done PHP projects for clients before, so Iâm fine with thatâbut I prefer C#. I looked at Joomla and Drupal just to see how they compare.
Joomla puts the .net CMS alternatives to shame. It is easy to set up, the code is very current, and it delivers pages super-fast. The admin interface is not as easy to use as DNN (in my opinion), but much easier than Orchard. There are loads of themes and extensions available. When I did a viewSource, all the html was what I expected it to be.
Why canât the .net projects be this good?
One thing I hear a lot in my contracts are developers comparing .Net, PHP, and Java (and sometimes Rails). DotNet developers always say .Net is better. PHP and Java developers talk about how sluggish .Net is and how it is inferior because it requires being hosted on Windows (except for Monoâbut who really uses that?). The truth is, all these languages pretty much do the same thingâthey deliver HTML to the browser. You can write a site in any language and it wouldnât matter. Iâve seen .Net sites outperform PHP sites (but unfortunately, it is the other way around).
Iâve looked at other .net CMS systems lately too (Umbraco, Sitefinity, etc) and didnât like the look of those enough to even install.
I might start using Joomla. Page speed is far more important than how easy it is to code. Hopefully, someone will write a decent .Net CMS system one of these days.
mjc says
I’m with you bro 🙂
volcanodeng says
我正在使用DNN构建我的应用系统,对于我而言,性能不是关键所在,而平台的功能和易用性是重点。
谢谢你的评论,我也承认在互联网上,网站的性能是极其重要的指标。
wroolie says
我非常同意!