hmm, i'm not sure but the version before 0.9a was 0.86 or 0.85, was a long time ago, but i'm not sure.
Usually after .9x comes a 1.x, at least when you get paid for coding
And thx for the sarcasm?
Well, every dev can do as they want since there is no compliance to any standard needed. Just think how Windows has been counting ... But the usual approach is this:
First: the . are not decimal points but separators of different aspects.
Usually the first number before the separator indicates 0=work in progress, 1=finished program (2 or more: finished program got a major overhaul)
The second is a major revision, significant added content, significant rework
If there is a third, it indicates minor stuff - typo fixes, single bugs eradicated if going up.
And as c3p0 correctly pointed out, the usual way would be 0.9 -> 0.10 (if major enough to warrant). Then 0.99 -> 0.100 later on.
Again, you will have games (or other software) with 0.9 -> 0.91 (Hayley's Story) or 0.9 -> 1.0 (The Professor). But if you're really coding, that's uncommon. And nobody expects 1.x after 0.9, usually way too early in the development process.
And that is just when we see every release. If we don't it just may seem completely random.