On wednesday, the real meat of the conference started. There were competitions and promos, nerds everywhere and stacks and stacks of sessions.
The Durban Convention Centre was swarming with nerds when we got there on Wednesday morning. Any time that a slightly interesting piece of swag appeared, the distributor was mobbed. The only decent coffee was available at two stands – one was a coffee company (Lavazzo) and the other was a the Gijima stand. Both were doing a roaring trade, with people queuing 20 deep (literally!) for coffee. I think another 2 or 5 coffee stands wouldn’t have gone amiss.
There were all sorts of competitions running, and one company (FlowGear) had a speaking area where they were promoting their product, and after every 1 hour session demo of their product, they drew a seat number and gave someone an iPad mini. Masterful marketing (lifted from the timeshare industry), they probably got their message to more ears than the rest of TechEd combined.
By the end of TechEd, the Lavazzo coffee makers had served over 4,000 cups of coffee. I hope they don’t have any repetitive strain injuries from making that much coffee!
Session 1 – Becoming Agile and Lean (Martin Cronjé)
This was a practical session where Martin shared some aspects of his methodology for lean / agile development, and stacks of examples of task boards and what they mean to the organisation that is running them. He had a few examples of agile gone bad too. Martin was an excellent speaker, and the examples he gave were engaging and interesting.
I was impressed by his pragmatic attitude and his contention that agile should be implemented as works for the organisation, not based on a textbook without consideration of the factors that matter to the organisation that is implementing it.
I don’t think that the industry is mature enough to use Agile throughout (especially when it comes to business to business engagements where one company is developing one half of the system and another company the other), but it’s interesting to keep an eye on and I think that the advantages of using Agile where it makes sense are real.
Session 2 – Introduction to open and flexible PaaS with Windows Azure (Beat Schwengler)
Beat presented some of the same strategic content that we had covered in the Cloud Strategy day on Tuesday, and then proceeded to give some demos of what Windows Azure can do for you. He demonstrated deploying cloud apps directly from Source Control (works for TFS and GitHub), and spent a bit of time demonstrating Microsoft’s Hadoop offering on Azure – called HDInsight. I was very interested by that last one, it definitely warrants some more attention.
He then demonstrated Windows Azure Mobile Services, which are a powerful mechanism for creating rich services for use with mobile apps (Windows Phone, Android, iOS or HTML5), with integrated push notifications for Windows Store apps (unfortunately not it seems for Android or iOS apps.)
The awesome thing about these mobile services is that you can run 10 of them for free on Azure (with the proviso that you don’t get a guaranteed uptime until you start paying and deploying more nodes)
Session 3 – ASP.NET MVC : Tips for improved maintainability (Peter Wilmot)
Peter seems to be in the same boat as me. He’s a back-end developer forced to participate in a world where most of the work is increasingly moving to the client. He put together this session about how to write MVC code that is maintainable. One highlight of the presenteation was when, coming at MVC from a code-centric perspective, he put together a brilliant slide depicting which parts of MVC development need what type of skills, and where more change will be vs where you want fewer changes.
He also had a few practical rules for how to structure your projects and which features of MVC to use to make things easier (use data annotations on your view models, etc)
This was one of the most valuable presentations that I attended in the Dev track, it was full of practical advice presented in an accessible manner. I will certainly be covering this content with the developers at my employer.
Session 4 – What did your last presentation die of? (Johan Klut, Blessing Sibanyoni, Jaco Benade, Robbi Laurenson, Rupert Nicolay)
Each participant told a story of where they had made a bad mistake in a presentation, and explained how they got there, and what they should have done (and since always do) to prevent that particular problem. It was very engaging.
The presenters covered a technique for story telling called the CAST process, as explained on http://storiesthatmovemountains.com/
Session 5 – Panel Discussion: Modern developer pratices the theory and the reality
This session was a group discussion by a few speakers around how development should be done, how developers must take personal responsibility etc. I didn’t really take anything away from it.
The Flowgear Challenge
End of Wednesday. While sitting down with my colleagues for a quick chat before we went for supper, I saw a tweet from Flowgear on how they will give an iPad mini to the person that writes the best implementation of a session reminder system for TechEd sessions that contain a particular keyword. That sounded like something right up my alley, so I decided to write a Windows Azure implementation of this challenge. I spent the evening getting to grips with Azure and writing a web site where someone could request reminders, and a worker role that inspected the data that the web site wrote and then periodically sent the requested reminders. I’ll post the details of my implementation, as well as some things that I learnt about Azure in the process, in a follow-up post.
The above took me until Thursday morning 1AM. I’ll tell you more about Thursday in the next blog post.