Open Source CMS
For a long time, I have been watching the Microsoft Orchard project with great interest. It is the first Microsoft open source project that has provided a truly feature rich Content Management System that is blessed my Microsoft itself (unlike other offerings from DotNetNuke and others). While PHP-based systems like WordPress and Joomla still dominate open source CMS mindshare, Orchard provides a component based extensibility model that is only matched by Ruby’s Refinery CMS when it comes to its architecture, object model, and extensibility.
The key to making the greatest use of any open source CMS system is extending it to combine its content management features with general functionality needed for a particular vertical market or problem domain (e.g., running a company, interacting with users, building a web store, etc.) and making it look precisely the way you want it to using an expressive, dynamic theming engine. The following articles are new and provide a great starting point for learning how to extend Orchard, which can look like a daunting task to start with:
- Writing an Orchard Webshop Module from scratch–FINALLY, an up to date end to end series of articles showing how to correctly write Orchard modules!
- Orchard Extensibility–A great article on extensibility options by one of the creators of Orchard, Bertrand Le Roy.
What about performance?
Personally, I had a few issues with Orchard deployments being slow that, to this point, always had me going back to using solutions I liked much less architecturally–namely, WordPress. While .NET as a technology would seem to perform SO much faster on average than a PHP-based solution with an ugly mess of a code base and rigid architecture, you could almost FEEL Microsoft Orchard moving and churning on your content once deployed–not a good thing. Bertrand addresses this here, and I am ready to give Orchard another try–at least on my CloudMetal personal technology blog and consulting site. Stay tuned to see how that works out!