I have always considered version number schemes somewhat of a minor issue and have always been surprised by how passionate many people get about this; often more passionate than they are about religion, politics, operating systems, and text editors all put together. That really surprised me when I got hit upside the head by it.
I've always thought of version number schemes as a way to distinguish one version from the next. 1, 2, 3, ..., A, B, C ... but there are an infinite number of variations. Major, minor numbers, years, names with some sort of related theme, or random names even. I've personally never liked the random names because unless you are really involved in a project, you have no idea what's old, what's new, what's stable, what's development, etc. But people like branding I guess which is maybe why Fedora 18 is named spherical cow. People also seem to assign expectations to a product based on the way it's version number looks. Commercial companies realize this and try to leverage it to a competitive advantage (my version number is higher or better than your version number!) FlightGear doesn't compete commercially so we don't have to play dumb psychological games with consumers -- we could, we just don't have to if we don't want to.
When considering version numbers for my own projects I've always been tempted to use A, B, C ... just to be different. But then maybe that's just too different for most people to get a grip on. I look at all the various schemes and kind of chuckle in a light-hearted way. It's not a big deal to me in most cases as long as there are reasonably consistent rules we can explain to people.
I know people can line up and beat the flightgear developers over the head with all the reasons 2.10 doesn't make sense and you are all right -- you are explaining sources of confusion that are valid. But at the same time I can turn right back around and explain the logic of our numbering scheme to you. So there you go. If this confusion leads to a plague of asteroids hitting the earth, then I will humbly apologize on behalf of the entire FlightGear project. But I can point out that you can always go to
www.flightgear.org and find the newest version.
Oh, one other thing I've learned -- maybe it's a piece of advice for other developers too -- never start out calling your first version 0.00 -- that is what we did with FlightGear and it was a ***HUGE*** mistake!!!! (I smile when I say that, see above explanation for a hint at why I am smiling.) The problem was that v1.0 means something to people. It means "finished". If your current version is < 1.0 you are not finished, and moving the version to 1.0 means you think you are finished. No longer is a version number simply a way distinguish one version from the next, now if you call your program 1.0 and it's not fully finished by everyone's definition of 'finished', you are liars, LIARS I say -- it's not finished! But the reality is that software is *never* finished. That's one of the very first things I learned when I started writing my first programs in basic on an Apple II.
Always, always call the first version number of your first release (even if nothing works yet) call it v1.0. That will save you a lot of headaches later. It will save you from being a LIAR and a FRAUD if you try to move from < 1.0 to 1.0 and some user doesn't think the code is ready to have full v1.0 honors bestowed upon it. Start out with v1.0 and everyone will love you.
So right or wrong, for better or worse, my personal viewpoint is that version #'s are there to distinguish one version from the next. From my view point, exactly what scheme is chosen and how it's implemented is a pretty minor point as long as there are consistent rules, and even if there aren't fully consistent rules, this is still a pretty minor point for anyone to get too whipped up about.
Again, it's fine to point out possible sources of confusion or inconsistency, it's fine to discuss these things. I am discussing these things right now. But my hope is that people keep it all in context and save their passion and energy for more important things.