Don't use version names, use numbers

Quick! Tell me right now which Android version number this is:

  • Froyo
  • Eclair
  • Gingerbread
  • Honeycomb
  • Cupcake
  • Nougat
  • KitKat

And now, quick, tell me which Debian version these are:

  • Bo
  • Woody
  • Buster
  • Lenny
  • Stretch
  • Jessie
  • Etch
  • Sarge

And don’t even get me started on Canonical’s choices for Ubuntu:

  • Quantal Quetzal
  • Maverick Meerkat
  • Dapper Drake
  • Hardy Heron
  • Gusty Gibbon
  • Eoan Ermine
  • Xenial Xerus
  • Bionic Beaver

Even Apple fell victim to this after OS X:

  • Mojave
  • Big Sur
  • Mountain Lion
  • Sierra
  • Mavericks
  • Yosemite
  • El Capitan
  • Jaguar
  • Snow Leopard
  • High Sierra

It wasn’t too bad with Windows because: (a) there weren’t too many releases, (b) they were kiiinda numerically ordered, and (c) the names were short and used numbers as the version differentiator.

  • Windows 1
  • Windows 2
  • Windows 3
  • Windows 3.11
  • Windows 95
  • Windows 98
  • Windows 2000
  • Windows Me
  • Windows XP
  • Windows 7
  • Windows 8
  • Windows 10

To those closely involved with the projects, cute version names are fun and make sense. But to someone without such intimate knowledge of the system, it takes a lot of work to memorize what versions correspond to which names.

I’m a pretty hardcore Debian user and supporter – I have it running on a few dozen machines – but I regularly find myself doubting if I’m using Stretch or Buster. By the time I get it memorized, the next version comes out, and I have to start remembering again. (I do approve of the name Sid being used for the unstable version, because it doesn’t change and is thematically-appropriate.)

I think a much more sensible naming scheme goes like this:

  • FreeBSD 1
  • FreeBSD 2
  • FreeBSD 3
  • FreeBSD 4
  • FreeBSD 5
  • FreeBSD 6
  • FreeBSD 7
  • FreeBSD 8
  • FreeBSD 9
  • FreeBSD 10
  • FreeBSD 11
  • FreeBSD 12

No ambiguity. Nothing complex to remember. Easy math to understand differences in releases.

Don’t use version names. Use version numbers.