Is it bad that I just acheived inbox-zero by deleting all my emails?

follow me on

Umbraco UK Developer Meeting Summary of the Day

Sunday, July 20, 2008 by David Conlisk

In Attendance:

Julien Decaudin (SAS)
Neil Tootell (SAS)
Oli Long (SAS)
David Conlisk (Web Garden Limited)
Paul Symes (Connect Digital)
Digby Fields (Helix Software)
Hendy Racher (DoddRacher)       
Lesley Arnold (NW London Hospitals NHS Trust)
Iain Crossley (Teampoint/Momo)
Barney Hall (Teampoint/Momo)

At the meeting were a good mix of people, from Umbraco newbies through all levels of ability to expert. As always with a crowd of Umbracians there was a great atmosphere, very informal, with a focus on the sharing of knowledge. This is one of the best attributes of the Umbraco community.

Summary of the Day

After the initial meet and greet and a lovely breakfast of coffee and croissants and Danish pastries (thanks, SAS!) the SAS guys took us through a fairly large project that they have just recently completed. We were talked through some of the more advanced ideas of the site. We looked at some data-driven flash where some more advanced features were driven from Umbraco, for example client-managed clickable areas with popup messages to be overlaid over flash visuals.

The main focus was on the reusable content architecture that SAS had developed for the site. Reusable content 'modules' are placed in a separate folder. These are then placed on pages as required by content managers using multiple content pickers. The layout of the page then dynamically changes (using xslt with macros) depending on the exact choices made by the content managers. There was also a number of page templates on offer to the content manager for the site, resulting in an extremely flexible, dynamic way of reusing content and giving exceptional levels of control over the site layout to the content managers.
The search function on the site was a complex one, utilising the Lucene search dll to index docs and pdfs as the xsltsearch doesn't index these types of content. SAS developed a very bespoke system using Lucene for their client which is index-based and very fast.
SAS may release a simple email hashing package using xslt and .NET which converts email addresses on the site to ASCII to hide them from robot email harvesters.
The approach taken to this site was "what can we do with a website" and not "what can Umbraco do". The general opinion on the day was that Umbraco can be thought of as a framework rather than simply a CMS, and it can do whatever you want it to do.

Some issues that were touched on included the need to buy a commercial Umbraco license to get the Courier tool, as it's only possible to preview content that is already live. So in order to allow the client to preview content before it goes live on their site, a staging environment is required. Then when the changes are approved, you can use Courier to copy the changes to the live site.

Also, the point was made that the database structure in Umbraco is quite complex, and not something to be played with. The advice is to backup regularly and always use the UI to make changes to your content.

The SAS presentation was of a beautiful site, technically excellent and the SAS guys are happy to share their ideas with the community.

SAS then showcased a second site which they had built using the knowledge gained from the first site. Again, plenty of content-managed flash functionality and reusable content. Also touched on the use of shadowbox javascript libraries with Umbraco to achieve the lightbox effects on the site. Another nice touch was using the itechsharp pdf tool to allow site users to select chapters of an annual report, which were then stitched together and served as a pdf document.

Some of the ideas mentioned for discussion at this point in the morning were developing Umbraco best practice techniques, the idea of a base Umbraco install to save adding the same features every time you start a project, and interest in standards in Umbraco, for example the ubiquitous umbracoNaviHide. Are standards part of the purpose of boost/nitros?

The general open discussion covered lots of topics, such as:

  • How to train your content managers: should you use user documentation or screencasts?
  • Possible collaboration on a general content management user guide. This could be run as an open source mini-project in its own right, where any improvements made could be shared for general use by the community.
  • Sometimes you might develop a site using Umbraco and decide not to inform the client that you are using a CMS. This way the development would be faster than developing a flat html site (SAS estimate 30% faster using Umbraco than flat html) and also make it much easier to make changes for the client after the site is in production.
  • Foreign languages using strange character sets  - how does Umbraco cope with Mandarin or traditional Chinese for example?
  • What does [sendtotranslation] do - is it just a workflow thing?
  • Using actionhandlers to flag up new content for translation.
  • umbracoNaviHide goes much deeper in the Umbraco code base than just showing/hiding content and cannot be used for any other purposes, as the SAS team found out the hard way. It can be used to hide content so that even if the user requests it directly it will not be served (and the user will get a 404 page not found page instead).

After a long lunch, we had a demo of Umbraco version 4. Paul showed us a couple of sites that he has in development in v4:

  • using the Google chart API to create charts on the site.
  • using the javascript carousel with Yahoo's UI (YUI).
  • Good use of master pages to change content in many areas of the site (e.g. right hand column content can change depending on the area of the site you're browsing) - easily and cleanly.
  • Using the API to create login forms based on the membership attributes of the members in Umbraco. In this way, adding an extra attribute to a member is immediately reflected in the forms on the site.
  • Using a html writer to create the forms with very well marked up html (list items for form elements) to avoid the output from .NET controls.
  • Using Google API to determine from a postcode the nearest five locations of interest.
  • Good use of custom data types
  • Discussed the issues he's had using v4 (see section below)

Later in the afternoon (after plenty of coffee of course) we discussed the best way of adding an email feedback form to a site. There are a number of ways, such as using doc2form or a version of autoform, or using a .NET user control - with Umbraco you can choose your favourite way of solving this problem (and most other problems too!). Many of the developers weren't aware of the built-in notification feature which can be used to notify an Umbraco user whenever there is activity below a certain content node in the site - very useful, but with no documentation you have to stumble upon it to be aware of it!

A news package was suggested, similar to the blog package, which would include the xslt templates, and create the content structure by date, etc.

The final half hour of the day was spent getting Livewriter configured to work with an SAS staging site. Some trial and error and a version of extreme programming, but we got there eventually and got a taste of the power of it for content editors. To configure:

  1. Set up a content channel for a user (when you view a user there is a tab for this in the Umbraco user section). Give it a name, it's root node where the content will appear, the doctype that you want to create there, and the description field which must be a richtext editable field in the doctype. This is where the content will appear. You can also specify the category and excerpt fields here.
  2. Choose a media folder where any media included in your posts will be uploaded to. Specify this in your content channel.
  3. This bit was a bit tricky. In Livewriter, specify your home page, select metawebblogapi as the weblog type - see the "Using Livewriter" book online Use the full url to your site with /umbraco/channels.aspx to manually detect your channels page.
  4. Publish from Livewriter straight to your site!

You will need to create different Livewriter logins for different content - each content channel only allows one type of content, e.g. news item administrator, publications administrator, etc.

Any media included gets uploaded automatically to the media tab, with a thumbnail created as well, and gets linked into your content in Umbraco automatically. Very nice.

All in all a great day. Many thanks to SAS and the guys there (Neil, Julien and Oli) for organising everything, providing sustenance throughout the day, and for leading most of the day with their very interesting walkthroughs of some of their work. Looking forward to the next meeting!

David

>> Read on: Tips and Tricks

Bookmark and Share

1 comment(s) for “Umbraco UK Developer Meeting Summary of the Day”

  1. Gravatar of Neil Fenwick


    Neil Fenwick says:

    David,

    Just a short thank you for taking the time to write that all up for those of us that couldn't make it. Much better to have this than wondering what we missed!

    Cheers,
    Neil

Please leave a comment: