First time here? You are looking at the most recent posts. You may also want to check out older archives or the tag cloud. Please leave a comment, ask a question and consider subscribing to the latest posts via RSS. Thank you for visiting! (hide this)

October 2011 Blog Posts

Fix the date and call for presenters: 7th UGIALT.net Conf, 21 January 2012

The usual annual UGIALT.net conference will take place on the 21 of January (21/1/12… another palindrome day) in Milano, in the same place it’s being held since 4 years: in the offices of Avanade Italy, near Milano Central Railway Station.

logo_big

Registration will open sometime in December, but for the moment we are opening the call for presenter: if you want to share an ALT.NET experience or topic with other people, don’t hesitate to propose a session for the conference. The call will close around mid/end November and if we receive more proposals than slot available we’ll setup a public voting.

Just to give you a taste of what we usually cover, here are the agenda and comments of the previous UGIALT.net conferences:

Hope to see your proposals flowing in, and hopefully see you in January.

Please visit the website of the event more more information about the location and the logistics.

What I liked of Agile.NET 2011 Europe

A few weeks ago I attended the Agile.NET 2011 Europe conference, in Gent. In this post I just want collect some links to the slides of the event, and give some personal comments on the sessions and topics.

Agile from A to Z

It all started very early on Monday (probably it’s standard here in Belgium, but it’s my first conference that starts with the first session at 9:00am) with a nice keynote from Jon Jagger, titled “Agile from A to Z”. It was a nice collections of quotes and facts about Agile. My favorite were one about tests

You need brakes to go faster, Cars have brakes so you can drive faster. Tests are the brakes of development

And one about bureaucracy:

Bureaucrat One who has the power to say “no”, but none to say “yes”.
Bureaucracy Can be measured by how much people don’t know why their doing what their doing.

Creating a kanban process flow in TFS2010

I then attended a workshop about how to configure TFS2010 to support a kind of Kanban process, with a very flexible yet powerful ASP.NET based kanban board. Apart for the quirks with copying and using a 30Gb VM, it was an interesting talk, showing a very easy approach to a Kanban board. I think it was the same demo Adam Gilmore showed at TechDays BE in April. Here you can get the demo code and a video of the session at TechDays.

Lean Production - Coin Flipping Game

After a quick lunch, there was a session labeled as “serious game”. With a very simple collaborative game, it showed the difference between waterfall and lean/agile workflow:

  1. Optimizing the performance of an individual is useless if the whole process is not organized correctly. And that aiming at a process where everybody is performing at his maximum is counterproductive
  2. The most efficient organization is where people are handling the batch of the right size.

Very difficult to explain in words, but if Jurgen agrees I will propose the game at the next ugialtnet conf in January, or if you are in Belgium you can go to his GameStorming retreat in December.

Baby Steps with Node.js and Timesaving tools for .net developers

To complete the day other two workshops: the first about Node.js and the second about libraries that can help developing web applications with .NET.

I have mixed feelings about Node.js: speaker said it is not a general purpose library, but serves a very specific goal. But I see that most modules for Node.js are for adding “standard” functionalities like being able to serve web pages, MVC libraries and so on… at the end transforming it into an asynchronous general purpose web framework.

The timesaving tools session was basically a high level overview of the various libraries to use together with ASP.NET MVC: NHibernate, Automapper, Windsor. It also reminded me how complex Windsor is compared to other IoC containers, like Ninject. Probably it is more powerful, but at which cost? It also helped me decide that probably the best solution to handle the NH Session is to have it injected via DI by your IoC container.

Why Lean UX matters

Second day started with a very interesting talk by Leslie Cottenje about how they do UX design at PurePlexity. You can have a look at the slides on her UX blog: A plead for Lean UX – Agile.net conference.

A fun movie she showed as example of a powerful UI but impossible to learn, is the short movie from Pixar: Lifted. I recommend you to watch it: really funny, and reminds me of some backoffice I saw in my career.

But I still see a lot of misunderstanding about the differences between UX and graphic design, and this is pretty scary, especially since the audience was formed by developers. I heard about the usual complains: “oh, I know how to design an interface, they just do nice buttons”. The sad truth is that 95% of developers don’t know how to design an interface, and the ones that do nice buttons are the graphic designers, not the UX guys/gals.

Architecting for agility

This was probably among the highlights of the conference: where the timesaving tools talked about the libraries, Sander Hoogendoorn started with the sentence:

Libraries are not your architecture: first design your architecture and then find the tools that fit into your vision, not the other way around.

The main points of the workshop are nicely summed up in this list of points taken from the flipchart.

architectingforagility

Kanban 1's game

Another “serious game”, this time emulating the flow of tasks in a Kanban board. Different game, but same outcome: tasks have to be of the right size. Too big and it will stay forever in the pipeline, to small and you’ll have efficiency problem.

Database Change Management with RoundhousE

This is the session that probably game me the most, in term of practical tools I can bring home, experiment and possibly apply to my ALM process.

It was a session explaining how to use RoundhousE, a DB change management solution that relies on SQL code instead of another language (like FluentMigration that uses C# and is not very welcome by DBAs).

The workshop was really well thought and well organized. You can see the slide online, and also get the code of the workshops.

The following image, taken from the slides, show the transition from the “ancient times” where developers where all using the same development db, and “magic” happened to bring schema changes across the different environments, to an intermediate stage where developer sandboxes and CI brought a bit of isolation, but magic still happened at a later stage, to the time of DB migrations where magic is not needed any more. I guess most teams are still in the “ancient times”.

fromOldtoRoundhousE

Conclusion

All in all it was a pretty good conference, and also helped by the limited number of attendees it was possible to have very small and focused sessions and discussions with the speakers.

I hope they will do it again next year.

Stay hungry, stay foolish – RIP Steve Jobs

RIPSteve

You changed our industry, our world and our lifes. Today it’s a sad day for. Thank you for everything you did. We’ll miss you.

Series of webcasts about ASP.NET MVC 3 (in Italian)

screencasts

After a long gestation period, today it was published on Channel9 a series of webcasts about ASP.NET MVC 3. This webcasts Ugo Lattanzi, a fellow ASP.NET Italian MVP, and I recorded (in Italian) covers the following topics:

They are in Italian, but, especially the last 3 are code heavy so if you want to have a look at them you should not have many problems following what is being discussed.

MVP for another year

Yesterday, while I was enjoying this strange beginning of October on the beach, I received the email from Microsoft notifying me about the renewal of my MVP award: this time for the 4th time.

I want to thank the Belgian community and the Italian for community for making that possible. And now, looking forward to a higher engagement with the Belgian .NET community.