NHibernate vs. NEO

NHibernate (.NET O/R mapping tool) is still in Alpha, but it seems that beta will appear soon. I have a quick look at this Java clone. Well, this tool may be an alternative to NEO (another open source O/R mapping tool).

NHibernate lack of code generation for now, but it will be added in further versions. XML mapping file are more clear in NHibernate, but in general NEO and NHibernate have very similar concepts in their cores. I think NHibernate will be more popular and grow up faster, since there are many contributors behind. But for now NEO is better.

P.S. Good NHibernate intro article by Justin Gehtland.

Why ReSharper rocks.

Guys from JetBrains have created really fascinating product – ReSharper.

It provides many very useful features, but this is not a case by the way. The most important thing for me is an instantaneous feedback. When you are doing something, feedback helps you. And quick feedback helps ten times better.

Really. Just let’s check why Extreme Programming so successful.

  • TDD gives you quick feedback about code (within minutes). Push button – see results.
  • Continuous integration provides info about project correctness several times a day
  • Acceptance tests give notion about system functionality every day

So quick feedback significantly improves our performance as developers, and greatly affects overall project success. And any tool, that can provide instantaneous feedback, will be the king of the market.

ReSharper reads assemblies and able to give you real-time info about errors, dependencies, etc. (compiler gives feedback within a minute or so). I just compile rare. I love it.

Tasks and User Stories in XP

Some thoughts about user stories and tasks. I think tasks are bad in most cases. Disadvantages are clear:

  • It is an additional level of refinement
  • Break down user stories into tasks isn’t a pain, but it takes time
  • It is less comfortable to measure project progress

Solution? Just create user stories from 1 to 3 ideal days of effort. Sure, for really big systems and large teams this can be extremely hard. But for small to average size projects short user stories are better than user stories + tasks.