10

Thursday, October 27, 2011 by Matt Brailsford


hackathon

Picture by Rick Helsen

Whilst October 21st marked the launch of Umbraco v5 Alpha 3, it also happened to coincide with the Dutch Umbraco Users Group's (DUUG) regular get together to talk about all things Umbraco, which on this occasion, was also set to be followed by a day long, community organised hackathon learning how to get started developing on v5. Well, with timing like that, how could we not go? 

DUUG Festival

The DUUG festival was held at the MediArena studios, and housed a total of 60 attendees. The day started with an intro to the event, swiftly followed by a session by our very own Tim Geyssens comparing Umbraco v4 with v5, highlighting some of the major differences between the two.

After a quick coffee break, it was my turn to get down and dirty with Property & Parameter Editors in v5, explaining what they are, how they work and how to go about making them.

But I wasn't finished there, and after a tasty lunch, I was back on stage diving straight into Hive Providers. Very much a coders session, I went through the Hive with a magnifying glass, highlighting everything a developer needed to know to start developing their own providers today.

At this point we thought we'd hogged the lime light enough for the day, so handed things over to the guys from Spindoctor to demo their behavioural targeting plugin for Umbraco (very impressive) followed by diehard Umbraco community member Sebastiaan Janssen to demo his own progress with v5 so far.

Throughout the day, there were also a series of Made in Holland sessions, where the local community demoed and showcased their own Umbraco projects. With Jeroen Breuer demoing the latest release of DAMP, Sander Felius from Indivirtual showcasing their use of Umbraco on the Heineken One web / mobile sites and Richard Soeteman demoing his very own Media Protect package, it was great to see the group celebrating their local talent.

And with that, day 1 came to end, as all days should end, at the bar talking even more about Umbraco.

Hackathon

The hackathon was held at the amazing offices of These Days, which was the perfect venue for it, and started with a group brainstorming session to discuss what things people would like to have a go at. Afterwards, everyone split into groups based on their topics of interest, and the hacking began. Now, I'm not going to lie, it was a bit of a slow start, with people hitting niggley little problems getting things running. After a little guidance, and perseverance from the developers though, things started to take shape. And after a spot of lunch (seriously, do the Dutch have satay sauce with everything?) things were well and truly steaming ahead. You could almost hear everyone's brains ticking away. It was buzzing. The sounds of keys tapping only stopping for the occasional cheer and round of applause as peoples projects began to come together. 

The next thing we knew, it was nearly 5 o'clock. We couldn't believe it, we could have kept going for hours, if not another day, but we finished off our projects as best we could, and presented them back to the group. The sheer diversity was immense, with people developing all sorts of things from Skins, Hive Providers and Property Editors and even a Surface Controller, which hasn't even been documented yet, it was really amazing to see. At the end, the feeling we got was that people were excited by it, and were keen to keep tinkering. But don't just taken our word for it though, check out the video below, and you can hear it straight from the horses mouth.


In all, they day itself was so much fun, and for us was a great way to get some much needed real and candid user feedback. It wasn't all positive, but then how would we improve if it was, but in the coming weeks, we hope to address many of the issues that were raised and make it much easier and clearer for new developers to get started experimenting with v5. Watch this space...

And with that, we would like to thank the organisers of DUUG (Richard Soeteman of Soeteman Software & Martijn Beumers of Axendo, sponsored by Indivirtual) and the hackathon (Dirk De Grave of Promex & the guys from These Days) for giving us the opportunity to join them, and the community members who joined us for their continued love for Umbraco. We are nothing without you.

PS. If you are attending the Umbraco UK Festival in London, there is still chance to join our UK hackathon session on the Thursday before. Simply fill in our form, and we'll select 24 people at random to join us. Good luck.

Thursday, October 27, 2011 by Niels Hartvig

We're hiring!

Early (read: January would be fantastic) 2012 we'd love to add a JavaScript developer / Frontend-engineer / what-ever-you-call-your-self-as-long-as-you-are-a-team-player-and-make-magic-and-want-to-be-even-greater-at-what-you-do to our team.

You'll be a part of a wonderfully talented, amazingly creative, relaxed but dedicated, distributed development team working on the fastest growing and most radical Web CMS on the Microsoft stack - Umbraco of course. And we're hungry for doing much better and change the world of building websites to the better.

You'll be working closely with me, Per Ploug Hansen, Alex Norcliffe and our wonderful friends at Mark Boulton Design.

Could this be you? Then send me a link to a profile which contains:

  • A maximum of 400 words. Anything above will go straight to the trash, unread.
  • Must include links to work you've done (beyond implementing sites) and are *proud* of and have source code available. It could be an open source project, it could be jQuery plugins or something else that shows what you're made of.
  • Bonus points for links to reputation profiles such as Stack Overflow, Codeplex or similar (but this is *not* a requirement so don't let this hold you back)
  • We don't care how old you are, who you've worked for or what degree from what university you have. We solely believe in craftsmanship. Make sure to let that shine!
  • Where you live and if you'd be willing to relocate to Denmark (not a requirement, most of us work remote!)
  • Deadline: November 30th 2011!

We know that you're out there and we'd love to have you on board on this crazy, exhausting but epically giving journey.

Love,
Niels…

Friday, October 21, 2011 by Alex Norcliffe

Hi everyone! It's time to release another Alpha of Umbraco 5 just in time for the weekend.

For a quick intro on what our Alphas have entailed so far, some background on the v5 effort, and some tips and tricks on getting Alphas up and running, check out the following posts:

- Umbraco 5 Alpha 1 Release

- Umbraco 5 Alpha 2 is out today

You can download the Alpha 3 web application zip from CodePlex, and within minutes of this blogpost going up our status page will reflect the latest updates too. I'll cut to the chase because this release has a massive amount of new features and improvements which we'll hope you'll enjoy testing!

What's in the Alpha 3

Here's a list of some of the improvements. As you can see, things are coming together pretty quickly lately - happy days.

  • Permissions!
    • Permissions grid on user groups editor (puts the permissions on the "system root" as a handy way of editing top-level permissions in one place)
    • Permissions grid on content & media.
    • Permissions are pluggable!
  • Rollback context menu on Content
  • Publish items from context menu
  • Move / Copy from context menu on Content & Media
  • Recycle bin
    • This is essentially a Move operation when you "delete" items - and the Recycle bin now also has permissions!
  • Templates tree shows Razor files as a tree with MVC layouts as a top node, and files that depend on the layout underneath
    • Click 'Create' on the context menu for an existing Layout to create a new template with auto-setup of Layout tag and Sections
  • New Languages tree including editing of fallbacks.
    • The Dictionary is not in Alpha 3 yet, but language fallbacks will be used when grabbing dictionary items. If a language is not found for an item it will use the language fallbacks to look elsewhere.
    • Languages are saved in a deep-config file at /App_Data/Umbraco/Config/umbraco.cms.languages.config, so compatible with continuous integration setups.
  • TinyMCE improvements
    • Insert hyperlinks to media items
    • New Insert Media dialog
  • A lot of other stuff under the hood, e.g. Hive relations & improvements, using Permissions to protect your own methods etc.

I hope you'll agree, it's quite a big list since Alpha 2! Let's have a quick scan at some of these new features.

Permissions

Permissions in Umbraco 5 are very powerful, and of course you can plug in your own permissions. We'll cover that in one of our upcoming tutorial posts. The intention for the Permissions model in v5 is to:

  • Let you inherit permissions from parent nodes
  • Let you override those inherited permissions - including denying a permission that is allowed further up the tree
  • Let you assign permissions to user groups so you can add/remove users from those groups at will to have the permissions apply to the users easily
  • Let you protect your own methods in your plugins with either built-in permissions, or even your own custom ones that come with your plugin

Umbraco 5 comes with an Administrators user group which has all permissions set to "Allow". Let's make a new user group:

image

Here I've clicked the "Allow" column to grant everything, and then denied the Create, Publish and Save permissions.

Let's make a new Dummy account and make it a member of that new group:

image

Now, logging on as that Dummy user, and right-clicking the Homepage, I don't have the Create, Publish or Save context menu items:

image

If I go to edit the Homepage and try to click Publish, I get told that I can't:

image

But those permissions were for all content, because I applied them directly to the user group. This sets up the "default" permissions between the User Group and the root System node to give you a handy way of setting system-wide permission sets.

Let's say I want to leave those defaults, but allow my Dummy user to create content under the Faq node. As an admin user, I'll go to the Faq node and choose "Permissions" from the context menu:

image

Here I've clicked on the Allow radio button for the Create permission. Let's save that and log back in as the Dummy user. Right-clicking on Homepage still shows no Create option, but right-clicking the Faq node allows me to Create:

image image

As you can see, Permissions in Alpha 3 are quite powerful already but we have more improvements on the way - the main one being speed. Right now (especially if you run on SqlCe) you'll notice some tree operations are a bit slow because we haven't optimised it fully yet, but performance of these items will massively improve as we get closer to a release.

Improvements to the Template editor

In Umbraco 4, there's a lot of lovely secret sauce to represent ASP.Net Master Pages (i.e., Templates in v4 terminology) as a hierarchical tree. It's an example of the Umbraco mantra: use regular technology for those who like it, but give a friendly GUI for those who don't need or want to know the details.

In Umbraco 5 as you may know we've switched to MVC3 rather than WebForms. What that means is the "Template" technology underpinning it is entirely different. It's taken some work, but in Alpha 3 we now have Template representing hierarchically. Here you can see the DevDataset layout which I was given as part of my installation, and I can expand it to see what Views (i.e. Templates) use that Layout:

image

Furthermore, if I right-click a Layout and choose "Create", and complete the wizard step, I get given a new template with the Layout property set and the @section elements available to me so I can get going quickly:

image

We'll be improving this further to add in some of the features in v4 around inserting fields and macros of course, but we think this is a great step in the right direction to give users similar tools even though we're now on top of the MVC stack. Let us know what you think!

Known issues / limitations

As usual, it's an Alpha, so there will be bugs and performance issues, but we really are grateful for you trying out the Alpha so that you can be a part of a stable Umbraco 5 release! We've put the issues list on the CodePlex release page to keep it in one place.

Collaboration

Today there's an Umbraco User-Group meetup in Amsterdam, and tomorrow (Sat 22nd October) they're having a hackday on Umbraco 5. On November 4th, there's the UK meetup and all the hacking that will ensue. On November 10th, I'll be in Brussels to talk about v5 too. We love being part of such an awesome community, and make no mistake - if you'd like to contribute to the codebase for Version 5, please do drop us a line! As I said last time, the best way is to grab the sourcecode from CodePlex, take a look at our developer Wiki (which is a work-in-progress), and once you feel acclimatised to the codebase or want to ask questions, we'll meet you on the Our forums to help you with your first pull request!

Alternatively, if there are ways in which you feel we could take steady, accessible steps to reducing any barriers for you to want to dig into Visual Studio and make that first pull request, please let us know too.

 

Happy bug-hunting and thanks again for helping!
Team 5