-1

99% of software comes in different versions. And quite often developers like naming versions. Example - Android versions:

  • Froyo
  • Gingerbread
  • Ice Cream Sandwich
  • etc..

It really bothers me because it makes me remember which version is old, which one is new - I cannot tell it from the name. I know, I know: Android follows alphabet, but generally speaking - why not use simple number based versioning?

closed as primarily opinion-based by gnat, TZHX, Thomas Owens Aug 31 '16 at 9:49

Many good questions generate some degree of opinion based on expert experience, but answers to this question will tend to be almost entirely based on opinions, rather than facts, references, or specific expertise. If this question can be reworded to fit the rules in the help center, please edit the question.

  • 1
    "avoid asking subjective questions where … your question is just a rant in disguise: “______ sucks, am I right?”" (help center) – gnat Aug 31 '16 at 9:08
  • 1
    They do. But "Ice Cream Sandwich" is much easier to make marketing materials around than "Android 4.0". – TZHX Aug 31 '16 at 9:10
  • No, this is not a masked attempt to say "it sucks". My question is motivated by a wish to understand why developers do it this way. Fashion? Some need? Requirement? – Dima Aug 31 '16 at 9:10
  • What makes you think developers love this? – gnasher729 Aug 31 '16 at 10:08
  • Frequent usage. I try to find out why they do it. – Dima Aug 31 '16 at 10:38
8

why not use simple number based versioning?

Android, as most of the software, has also semantic versioning. But, numbers are abstract and hard to sell.

However, this does not happen only in the software world. It happens everywhere, the space programs (for example, the space shuttles were not named Space Shuttle 1/2/3.. but rather Columbia, Discovery, ...), cars, mobile phones to some extent. Names are simply easier for humans and create a sort of emotional attachment (even more if they convey some meaning).

  • Explaining it with "not only in the software world" is the best :) – Dima Aug 31 '16 at 9:22
3

why not use simple number based versioning?

For the same reason we give our children names instead of numbers. A name is something you can relate to more easily than a number. Code names like Gingerbread and Froyo connect each version to a concrete thing that you can imagine, and that connection aids memory.

One technique for rapidly memorizing a list of things (names, for example) is to connect each one to items in a list that you've previously memorized, so that the existing list becomes a memory aid. Code names work a little like that -- it's very easy to forget which set of changes occurred in each version if all you've got are a set of (often very similar) version numbers, but if the versions are associated with something you can think of, they become more distinct in your mind.

It really bothers me because it makes me remember which version is old, which one is new

Products that get code names are often major revisions, things that are spaced out over months or years, and you frequently don't have to deal with more than one or two such versions at a time. If you're giving different code names to your nightly builds you're probably not getting much benefit from the names. Use code names sparingly.

  • "you frequently don't have to deal with more than one or two such versions at a time" - Ironically not the case with the Android, where developers instead have to deal with all the names forever, because no devices ever get updated. (Roughly speaking...) – 8bittree Mar 13 '17 at 17:13

Not the answer you're looking for? Browse other questions tagged or ask your own question.