Well, I don't think there is any hardened rule or RFC on this but there
a standard as far as what your versioning is supposed to mean.
That of course being the all-known major.minor.minor_minor.etc. However, I
believe that the versioning is really up to the developer. It's ultimately
up to you if you want to name your first version of a program as
version 5. I wouldn't really recommend that but how is the end user
supposed to know? I believe it really is just a way for the developer(s)
to maintain the code and to be able to handle revision control a
little easier. I have seen some people release their first versions as
0.x probably in anticipation of coming out soon with a better version or
perhaps that is just how they want to version their software.
Some people let their revision control software do the versioning for them.
eg. RCS or CVS. I like this because unless you tell the revision control
to version your rev differently it just minors it up one (ie 4.1 to 4.2 etc).
In summary, I believe it is up to you. That's how I've done mine. And
I do my versioning with the intent to be able to control my revs a bit
better.
----------
- Jim