ALT.NET for dummies

ALT.NET is a wonderful movement. It’s a bunch of very smart and open minded people valuing good practices and using common set of tools. It’s discussion group is a great place to share ideas and ask for tips and help.

It’s all great, however there’s one thing that bothers me. The site says:

We are a self-organizing, ad-hoc community of developers bound by a desire to improve ourselves, challenge assumptions, and help each other pursue excellence in the practice of software development.

It’s true. However, as much as I feel strongly about patterns, practices and tools advocated by the movement, I still don’t think that jumping onto that wagon is easy for newcomers. Almost always right, means going against route of least resistance, but still – I don’t think we do enough to introduce the tools and concepts to those who hesitate.

One of the reasons why Ruby on Rails gained so much popularity is the amount of books (some of them are even free in pdf form) for beginners. One of the reasons why non-ALT.NET way of doing things is so popular is the amount of introductory books for each and every technology provided by Microsoft. There are samples, hands-on-labs, tutorials, step by step guides, screencasts, webcasts, podcasts, what have you…

On the other hand, I was trying to recommend to my friend, who wants to learn about IoC, Castle Windsor and loosely coupled design. I looked here and there, and I was disappointed with what I found.

There are blogposts, but they are mostly short, and touch upon single, random, small problem. They aren’t really good for introduction.

There are discussion groups, but they are geared towards people who have specific problems with technology. Someone who comes and asks “how do I use it” would most likely not get much help.

There are articles on codeproject, or some other portals, but they are brief, and try to cover either the very basics, or small subset of technology.

There are even multi-part tutorials, that try to touch upon more or less every aspect of the framework, but they too are brief and don’t provide firm foundation for someone to really grasp the concepts and start using the technology with confidence.

Finally there’s the documentation, but it documents the product, not introduces it to the newcomers.

So, what CAN we do to ease the pain of conversion for unbelievers on the way to become ALT.NETers? Is there hope?

Certainly! I can think of two solutions here:

  • Wikis proved to work as good medium to transfer knowledge. By creating Wikibooks dedicated to specific topics tools (TDD, NHibernate, MonoRail, NAnt, etc) we could collectively contribute and share our knowledge and experience with those who could benefit from it.
  • Or/And develop standard way of tagging posts aka ADN-code ( code smile_wink) on blogs, and create an aggregator that would make all that knowledge easily searchable and accessible from one place. For example if post is tagged with:

altnet://type{tutorial}/level{1}/technology{mbunit}/keywords{row tests,unit tests}

it would mean that this is special post (as opposed to normal post), that is a tutorial, level 1 (meaning geared towards very beginners) regarding tool/technology called “mbunit” and its topic is “row tests” and “unit tests”.

That’s just my suggestions, I’m sure someone will come up with more, better ones.

All in all I’m just hoping, that we, as a community will find a way to make it easier to start with ALT.NET.

Technorati Tags: