Microsoft had to skip 9 because programmers are lazy.
A lot of programs refused to work if there was a `9` in the version name.
That was of course because those programs needed something newer than Windows 95 or Windows 98. So they just did a string search for `9` in the version name.
There may be a few programs that wouldn't work on `8.9` or `10.9` if they were released for the same reason.