Long Cloud Technologies
"... A Yankee in the Land of the Long White Cloud, Aotearoa ..."

Working with Orchard from a Hard Programmers Prospective – Prologue

So after much research and study, our intrepid group of programmers at Red Jungle decided we would attempt to settle on the Orchard CMS as our Platform of choice for clients looking for a CMS solution.  We did this for many reasons, but here are the highlights as far as I’m concerned

  • Completely open source http://orchardproject.net/
  • ASP.NET MVC 3 base (with Razor)
  • Originally built by Microsoft, but no longer owned by Microsoft
  • Funded by Microsoft (with no strings attached) for the next two years
  • Principle Developers of Oxite, Erik Porter and Nathan Heskew joined team (outside MS perspective)
  • Plug-in Architecture and extensibility built on a simplified model.

Before I go much further, I think a quick retrospective on last Microsoft Opensource CMS system is in order.  It was built in ASP.NET 1.0 using what was then considered best practices.  During internal development it was known as IBuySpy, and was meant to showcase those best recommended practices when creating a n-tiered web platform.  The Main developer they had brought in for the example site took the core of the IBuySpy example and extended it to a Full Featured CMS system that we all know better as DotNetNuke.

I’ve used DotNetNuke in the past, I’ve even wrote a tutorial about making modules for DNN and explaining what is really going on under the hood as you develop the module: Creating a DNN Module and Understanding DNN Architectural Approach.  While DNN continues to be used and does a great job, it, like so many old systems, has a bit of a legacy built in that it can’t just drop, that at times can make it feel creaky and old.

The world has moved on quite a bit since IBuySpy, and sometimes it is for the best to sell the old house and start from a fresh new foundation, we at Red Jungle feel that Orchard is just such a candidate.  If it becomes even half as successful as DNN was before it, I think we will have made a VERY good choice.

Now that doesn’t mean that I don’t have some issues with Orchard, life is beautiful, la la la.  First up, the install, extension and maintenance of Orchard was made to be easy for people with minimal technical background. By default if you use the install provided by the The Microsoft Web Platform it uses the new Microsoft WebMatrix which in itself is a free-ware and geared towards open source development (you didn’t really expect Microsoft to let AMP be the only free option out there did you)?  While I think the WebMatrix is a great tool, and the price is right (free for everything to run a website) for a hard code monkey like myself it just doesn’t have the horse power and the shade tree mechanic capabilities I want.

Also the out of the box tutorials and instructions of how to extend Orchard are VERY easy, but they “hide” too much under the covers for my taste.  I may yet end up using the shortcuts and tools, but I want to understand exactly how all those helpers fit together to make the magic work.

So I have three main goals with this set of blog posts and two sub-goals. 

  1. I want to move Orchard (and document how) to run in a more robust development environment then WebMatrix, get it to run in IIS with full customization from within Visual Studio 2010 Universal, as a Web Application.
  2. Create the Hello World module using the CodeGen capablities as explained on the Orchard website here, then recreate the Module doing everything manually.
  3. Finally Recreate my “ToDo Task List” from my original DotNetNuke tutorial on codeproject to be applicable to Orchard and deconstruct the Architecture of the system as it applies to Module Creation.
  4. Sub-goals
    1. Package the ToDo Task list as a redistributable, and document how to do so
    2. Publish the ToDo module on NuGet feed for Orchard.
Posted on 13 Mar 11 13:16 by matthew.hintzen |

Bookmark this post with:

E-mail | Comments(0) | Comment RSS