Progressive .Net Tutorials

This week I attended the Progressive .Net Tutorials at Skillsmatter.  It’s a 3-day conference of hands-on tutorials focussing on the .Net Platform.

Day One

Don Syme talking about F# (Photo from @AnaisatSM)

On the morning of the first day I attended “Practical Functional-First Programming” starting with Don Syme giving a presentation of the benefits of using FSharp.  To me the presenation felt far too “sales-y” for my liking containing statements along the lines of F# will make you write robust code faster and with less bugs – I’m sure I’ve heard that said before about almost every language out there…  We then got our hands-on some F# with Phil Trelford introducing the F# Koans.  I’ve completed these before, and feel that they are a fantastic practical introduction and I recommend looking for Koans in any language you plan to learn.

After lunch I went to Liam Westley’s “Async and C# 5“.  This was very much the same talk I had seen at DDD9 in January last year, but as it was a tutorial we got our hands on trying out the Async ourselves – once I’d finally downloaded the VS2011 Beta of course.

Day Two

Look! It’s me in the audience 😀  (Photo from @AnaisatSM)  

For the first talk of the second day, I took a chance and saw Mark Rendle‘s “Introduction to Simple.Web“.  As Mark himself said, he’d not talked about Simple.Web before, so he was pleased that so many people came to see him talk about something no-one had heard of, but I had heard of Mark and his tool Simple.Data.  It turned out to be the beginnings of a REST framework, but unlike OpenRasta, which we use heavily at 7digital for our APIs, it has HTML representations as a main focus and works very nicely with Razor.

It’s still very much a fledgeling project which doesn’t handle errors or logging very well, and I daren’t ask about which IoC containers it integrated with, but it was only created at the end of Feb!  I’ve already taken my own fork of the repo and will see if there’s anything I can contribute.  You can read more about it on Mark’s Blog.

In the afternoon I chose Gary Short’s “End-to-End Javascript“.  I’m afraid that I’m one of those developers who shies away from the front-end and anything related to it.  As such, I’m quite perturbed by Javascript and it’s craziness and felt this talk would hopefully give me a kick up the backside to get it all figured out.  Sadly, it did not.  Instead, I felt inundated and lost track rather quickly.  It was a tall order – MongoDB as the data store, NodeJS for the middle tier and JQuery on the front end – all to be introduced and linked together in 3 hours.  I didn’t have MongoDB installed and soon got left behind trying to get that downloaded.  NodeJS installed quickly, but I couldn’t do anything without a data store.  By this point  Gary was already talking about JQuery and I gave up trying to catch up.

Day Three

I could not decide between Dan Thomas’ talk on “HTML5” or Dylan Beattie‘s tutorial on “Security and Identity in the .Net World“.  I went with Dylan as I wished to know more about OAuth as we use this for our APIs at 7digital, also with Skillsmatter recording all the talks I could catch up on the HTML5 one.

Dylan’s tutorial was probably the most organised.  He came fully prepared with printed out tutorial worksheets, also available online, which meant that everyone could move at their own pace and not get lost trying to keep up with the presenter’s typing on the projector.  He gave a quick presentation and description as to why it is important to consider identity and that it is probably best not to write your own solution when the built in tools from ASP.Net are so easy to set up – in fact he did just that whilst holding his breath to show how quick it can be done.

A third alternative, is to get someone else to do the identity checks for you, such as Google or Facebook, and use OpenID or OAuth to manage this.  The talk focused on OAuth 2.0 which seems far easier to grasp and more featured than the OAuth 1.0 we are using at 7digital.

After lunch I decided to attend Ashic Mahtab’s tutorial on “Messaging – It’s not just about Large Scale Integration“.  I had missed Ian Cooper’s talk on “Messaging 101“, plus the description included things such as dependency injection and aspect orientation – it promised to be a fun talk.  Unfortunately, it was impossible to keep up with Ashic as he typed away on the projector and many others also got lost along the way.

Coding makes us smile! (photo from @AnaisatSM)

He dived straight into coding with generics and actions, which can take a few moments to decipher if you’re not sure what the intent is.  It seemed as though he wanted to show the steps you would go through to grow a codebase which would implement dependency injection and aspect orientation from the ground up – therefore not needing any other frameworks.  He really seemed to really know what he was talking about, but it was presented in a hardcore lecture style at a very fast pace.  I got so lost that I decided to bail after the break and hang out in the breakout area getting to know the enemy guys at Huddle.

Thank you

It was a great conference, with great presenters, great talks and great attendees.  I have a lot to think about and play with now.  I also want to thank Skillsmatter for being great hosts (the food was wonderful!) and for recording the sessions I missed and making them available online.