Sunday 05 September 2010

Is Umbraco easy to learn?

Back to Home 09 September 2009 by Raz

Umbraco

Umbraco is touted as the all seeing all doing CMS for the ASP.net platform. For a designer turned developer it poses a few obstacles in the learning curve required to integrate existing ASP.net objects.

This is a pity as the main stumbling point I have noticed is the Umbraco terminology or how it names and references aspects of the Umbraco architecture. I fully expect that for a seasoned ASP.net developer this poses no problems whatsoever, but the simplicity of creating web spaces with business logic has with the advent of Umbraco version 4 got a touch more difficult.

Is there a problem then? Well no not really, I have been banging away at Umbraco trying to figure it out and basically I think I am sort of there now. Well enough to be able to sell an Umbraco enabled website anyway.

What are the alternatives? I have tried a lot of them. Just when I thought all was dandy I found a major problem. Many of the other CMS do not separate design from business logic. They seem to be integrated or your need to create a complex skin or buy additional templates. Its just too much complexity and I think many of these CMS (DNN especially) are marketed at non designers. Hey I want artistic control over the look of the site. Too much to ask, I don't think so.

So I have stuck with Umbraco because it does make this demarcation between design and code. All my xHTML and CSS will work straight away which makes the process of learning a lot easier.

So the first of my problems began when I looked at migrating an existing ASP.net website to Umbraco. Search the Umbraco forum and didn't find a lot except a lot of half written so called Books (which is laughable) on the subject being a few lines of general notes. The first flag is hoisted. Umbraco support is rubbish, it's not thought out or implemented as you would expect. The geeks across the North Sea are more interested in playing with toys than writing how it works. The help videos are a good step forward but only a few are free and you need to subscribe to see the rest. Why one would do so is frankly beyond me. The support is so thin and low key you would exhaust your subscription rights in a few days. In contrast the shear weight of ASP.net support is overwhelming. You really don't have any excuses not to figure out what to do.

Anyway I am digressing because this post was supposed to be about Umbraco's ease of use. Lets face it the interface is good and slick. The Administrator controls are logical. Its easy to get started and the RUNWAY app does a good job of getting your started. So I want my own site now... where to start?

Well for me you need to understand that in the Umbraco world a document type is not the same as a document type. Your can forget "HTML 4.1 Transitional" cos it's got nothing to do with Umbraco.

Confusing… yes.

You could have called it anything else.

No, an Umbraco document type is really a content type. It defines the content you wish to incorporate on your CMS website. It is an collection that stores the objects (data fields, radio boxes, META etc) that you create when new content is created. When using Document types though, you are presented with a series of tabs that don't seem to have been logically placed at all. For example most of the work in document types seems to be based around the Generic Properties tab. But Umbraco in their wisdom have placed this on the third tab. A small point I know but suggests that the software has not been though any major user interoperability testing.

The second hurdle is Templates which are more intuitive. The templates hold the HTML defining the design and layout (yippee). As you would expect templates can be nested within templates using the standard ASP.net MASTER PAGES process which most ASP.net developers will be familiar with.

Indeed creating a Document Type (Content Type) automatically creates the template (if you let it have its way).

OK next step…incorporating existing ASP.net controls into an Umbraco website. You see if you can't have your Gridview's or third-party controls working too on the website then what's the point. This is another weak area for Umbraco because you can do this but frankly it's a fag.

Essentially you need to break up all you bits of ASP.net functionality into "User Controls" or usercontrols. This is really no big deal for any developer that has been coding for a while. In essence you identify the functionality you want to create and place inside Umbraco. Create a New Web Application in VS2005/8, Create a new UserControl, write you code as normal with code behind, build the code and transfer .ASCX file and DLL to Umbraco where you create a macro to access the functionality. You simply insert the Macro in the template or in the Content page to access the ASP.net control. A good article that explains it better than me is here :

http://umbraco.org/media/42a0202c-b0ba-4f84-bcf1-64dfd5230322-usingcontrolswithumbraco.pdf

So now I am going to start creating a new Website with Umbraco and see how far I get.

The point that I would like to leave with you is not that Umbraco is good or rubbish, it's the expectation of any software product these days. DNN has set the bar very high and the various PHP based CMSs such as Joomla and Drupal are very well established. I guessed I was expecting too much from Umbraco in retrospect. Perhaps I'll write a Step by Step user guide so that people after me get a quick step up.


5 comment(s) for “Is Umbraco easy to learn?”

  1. Gravatar of Rich
    Rich Says:
    Good post, have to agree that Umbraco's documentation is not great and the learning curve is steep.

    However as someone who's gone / going through the same learning process as you I can tell you Umbraco is a fantastic cms and has completely changed the way I develop for the web.

    The best thing about Umbraco is that I get 100% pure output as I want it, no nasty extra code. Plus you can truly separate data and presentation which is a real break through for me.

    You can 'skin' DNN to make it your site work with it however with Umbraco it's the opposite, start with your clean css and tell Umbraco where to put the content.


    Rich
  2. Gravatar of raz
    raz Says:
    Totally agree.

    I guess that's why I have stuck with Umbraco.

    I guess the support will get better. I sort of promised I'd write a starter guide, but I am not sure I know the product well enough.

  3. Gravatar of Winny Lockhead
    Winny Lockhead Says:
    DNN is the best ASP.net CMS. Easy to learn and skin. There is lots of support and third-party add-ons. I have written five sites in DNN from simple Blogs to full on eCommerce website and all without integration issues and css moans as you state.

    Will look into Umbraco though but I suspect its all a but too young for production use.
  4. Gravatar of Lexy Vestey
    Lexy Vestey Says:
    I have all sorts of DNN problems with IIS and Skinning. Its never as straight forward as it sounds. I spend twice as much time getting it right. Am looking at Umbraco and it looks cool.
  5. Gravatar of oavelaialen
    oavelaialen Says:
    Great Article thanks for that

What do you think?

Name:  
Email:
(not shown)
 
Website:  
Comment:  
   

 

Whilst we encourage your comments good and bad, all comments submitted are subject to our review and approval policy. Sorry, this is to cover our neck in case some nutter militant separatist mutant ninja turtle, uses this blog as a medium to spread jihad to all and sundry.

Well…we can't have that can we.