Why There’s No iPhone 9
Naming things is hard. Products, code functions, dogs — they all need names, and trying to come up with good ones is tough. iPad and Ruffles seem fine, but once you lift the lid, iPad sounds a bit like a sanitary product and you can easily feel silly at 9 p.m. shouting “Ruffles!” into the darkness.
Say what you want about the Galactic Empire from Star Wars, but they really weren’t good at naming vehicles. The Death Star isn’t a star. It famously isn’t even a moon. Star Destroyers don’t destroy stars — they can’t even destroy planets. And don’t get me started on the “All Terrain” flavor of vehicles that slip on logs and trip over wires.
Given all of this, you can see why software engineers like numbers. You can’t go wrong with numbers: one, two, three, and so on — we learned it all at school. Come up with a single name, increase a number for each subsequent version, and you can call it a day. And yet, looking at products all around us, it seems that most companies can’t even get that to work.
Windows 1, Windows 2, Windows 3 — it all started so well. Then there was Windows 3.1, which I guess gets partial credit. After that they skipped a few and went straight to Windows 95, followed by Windows 98.
Windows ME was next. Or perhaps that didn’t count. There was also Windows 2000, but that was technically Windows NT 5.0 and on a different “branch” of numbers.
After Windows 98 came Windows XP and Windows Vista. At this point, it seemed like they’d given up on numbers and switched to fancy words. But then, just when you least expected it, we were back to numbers with Windows 7 and Windows 8.
At the time, I couldn’t quite work out how we got to seven. Did Vista not count? Microsoft’s explanation was that 95, 98, and ME were all Windows 4, 2000 and XP were Windows 5, and Vista was Windows 6. So there were secret numbers that worked properly behind the scenes that they didn’t tell us about? I’m not sure that helps their case much.
With Windows 7, we were at least back to numbers. Except on the next release we went straight from Windows 8 to Windows 10, skipping over Windows 9 completely.
Apple started with just iPhone (no “the”). That was a good start. But immediately after that came iPhone 3G. The name was explaining that it had 3G capabilities, but it’s annoying that the second device had a three in its name.
Next was iPhone 3GS. Now there was a 3, which was good, but it seemed more by luck than judgment. The S apparently stood for “speed,” which was a little weird as each new phone is always faster than the previous one.
Then came iPhone 4. Excellent, back on track with numbers. That was followed by iPhone 4S, only this time the S stood for “Siri.” After that was iPhone 5 (the sixth iPhone), then iPhone 5S, where the S stood for “security” because of the fingerprint reader. Was this just luck or were they trying to make alternate versions stand for something beginning with S? To have one iPhone with an S on the end is unfortunate, but to have three smacks of carelessness. There was also iPhone 5C, where C stands for “color” because it came in different colors. The 5S came in different colors too, but the 5C came in more colors, so that’s why it got the name.
Next was iPhone 6, the ninth iPhone. And the 6 Plus, which just counted as the 6, only bigger. Apple was starting to follow a regular pattern. The iPhone 6 was followed by the 6S. This time the S stood for “screen,” because it had a feature that definitely wasn’t a gimmick called 3D Touch. Some people started to say that maybe S should just stand for “successor” so they didn’t have to keep coming up with features beginning with the letter S every other year.
A few months later, the iPhone SE was announced. This stood for “special edition,” which was a bit of an oddball. But after it came iPhone 7, so we were back on track.
The next time there was an event, all hell broke loose and Apple launched the iPhone 8 and iPhone X (pronounced “10”) on the same day. No sign of iPhone 9 or iPhone 7S. What is it with these big companies avoiding the number nine? Do they just really love the joke “Why was six afraid? Because seven ‘eight’ nine?”
iPhone X was followed by iPhone XS (not pronounced iPhone “excess,” even though many thought that was a good description of its price tag). By this point everyone gave up trying to make the S stand for anything. Apple also released the XR (pronounced iPhone “10-er,” because it was the budget iPhone). Under pressure, Phil Schiller finally cracked and admitted that the letters didn’t stand for anything at all. “I love cars and things that go fast, and R and S are both letters used to denote sport cars that are really extra special,” he said. Oh, what’s in a name anyway! An iPhone XS by any other name would photo as sweet.
This year, Apple decided Roman numerals weren’t cool anymore so they went back to numbers with iPhone 11. All this from a company that got a round of applause when they renamed OS X to macOS so that it lined up nicely on a slide with iOS, tvOS, and watchOS.
I’m just going to list out the iPad versions because I’m not sure any commentary can further highlight the mess Apple has made. These are, genuinely, their official names:
- iPad 2
- The new iPad
- iPad with Retina display
- The new 9.7 inch iPad
- The new 10.2 inch iPad
And that’s without including the Airs and Minis and Pros.
PHP is a coding language, that either stands for “personal home page” or “PHP: Hypertext Preprocessor” — an acronym that includes itself. As I said, naming things is hard.
Once again, everything started normally enough with PHP 1, 2, 3, 4. Things got a bit weird after that: 4.1, 4.2, 4.3. At least that follows some sort of pattern. But then 5 came out, followed by 4.4.
We went back to normal with 5.1, 5.2, 5.3, 5.4, 5.5, 5.6. But then skipped straight to 7. There’s still no PHP 6.
Winamp 1, Winamp 2, Winamp3. It was all going so well, although it was a bit strange that the space disappeared in Winamp3. What came next? Winamp 5… oh. It’s okay, they said their numbering was following the Fibonacci sequence. Weird, but, at least they offered an explanation.
Then came Winamp 6. Oh, for crying out loud. They explained that Winamp 5 was called that because it was as good as Winamp 2 and Winamp3 added together. But that’s really not how quality or version numbering works. Presumably, Winamp 6 was therefore as good as Winamp 1 and Winamp 5 added together, or three times as good as Winamp 2?
Once again, everything started well with Android 1. But things immediately went south with Android 1.1 (API 2). By the time we got to Android 1.5 (API 3) everyone had enough and decided to use letters instead: Android C. But letters are no fun on their own, so each release was given a dessert-based title. Android Cupcake was followed by Android Donut. The rot set in at K: Android KitKat. Originally K was going to be Key Lime Pie, but no one liked that limey nonsense. Sensing an opportunity, Big Cocoa moved in. Once the capitalist genie is out of the bottle you can’t put it back. Android Oreo followed shortly after. Luckily, the alphabet got in the way of capitalism. When we reached API 29, Q, everyone looked at each other and shrugged: “Let’s just call it Android 10.”
The tech industry sure loves a good 10.
The Xbox somehow manages to do the impossible and have version numbers even more confusing than iPad:
- Xbox 360 (missed a few there)
- Xbox One (What?)
- Xbox One S (borrowing Apple’s S suffix, I see)
- Xbox One X
I can’t help but wonder if the next one will be the “Xbox One X-box” and we’ll work out what version we’ve up to by counting the words in the name.
While it’s fun mocking huge tech companies for being unable to count to nine, why does this keep happening? The examples I’ve given here aren’t exceptions, but just the tip of a huge, arithmetic-sinking iceberg. Why can’t we just call things iPhone, iPhone 2, iPhone 3, and so on?
Missing numbers aren’t mistakes. It’s not as if, in the panic to ship the software, the PHP team forgot about the existence of the number six and were then kicking themselves afterward. The omissions are the result of real people getting into conflicts and issues. PHP 6 ran into difficulties and was eventually abandoned. Deciding to be done with the whole sorry saga, they put it to one side, unreleased, and moved on. Similarly, Windows 8 had a poor reputation with customers. So it’s conceivable that Microsoft wanted to put some distance between that and their new operating system.
It all starts to get very structuralist. Lacan and Saussure would have a field day debating the meaning of iPhone 9, and how skipping it allowed something new to be formed.
It’s also the case, of course, that the number 10 (especially when styled X) is really cool. Humans like round numbers. When it was the year 2000, we built a Dome and set development goals. Meanwhile, we barely did anything for 2003. So you can see why both Apple and Microsoft wanted to align special releases with a round number. The fact that, in both cases, they were one number short must have been a real ball-ache for them.
In a way, I’m being unfair. When you look at the history of a product’s version names you can see with 20/20 hindsight all the strange decisions that happened along the way. Whoever named it iPhone 4S in 2011 would have been hard-pressed to predict frustrations six years later when they had to skip iPhone 9. But still, it’s strange how rarely companies manage to consistently name their products with consecutive version numbers.
Unlike products, applications tend to be numbered with more numerical accuracy. But there’s something about this type of version numbering that can be intimidating for non-technical users. What version of a piece of software am I running? Let’s say it’s version 12.5.6. That’s a pretty scary number. It’s those dots. Twelve point five point six. Why can’t we just call it version 206 and then follow that with version 207? With those dots, everything seems so… precise. It’s as if it’s implying I should know and remember the difference between 12.5.6 and 12.6.2. Should I know the difference? Numbering them like that seems to hint at significant specificity. It seems to suggest that one day I, as an end-user, may be called on to use those numbers for something.
For those in the know, the numbers probably do mean something. Most likely it’s what’s called semantic versioning, where the numbers convey meaning. The first number indicates a breaking change — that is something that is different than how it was before. The second number indicates a new feature — something in addition to what was there before, but which doesn’t change what was already there. And the third number indicates a patch — a fix to something that doesn’t change any features.
This is the official definition, but sometimes people play fast and loose, and the three numbers mean: major change, minor change, patch. That’s much vaguer. Where’s the line between a minor and major change? Who gets to decide? Some people don’t use semantic versioning at all and just change the numbers on a whim: “Oh, this seems like a pretty big deal, we should probably change the first number.”
As far back as 2007, blogger and software developer Jeff Atwood suggested using simple dates instead of version numbers. He is one of the founders of Stack Overflow, so he is as close to a patron saint of software engineering as we currently have. His point was that dates convey meaningful information for users. Apple seems to have taken this to a new level when it named one version of the iPad “The new iPad.” It’s as if they’re using the Friends episode naming convention. After all, they essentially did name one device “the one with Siri.” Maybe the new names will be “the one with Face ID,” “the one with five cameras,” or “the one that’s a thousand bucks.”
Ultimately, when we name things, we do so for humans. The computer doesn’t care whether a version is called Quince Tart, 10, or 29.1.6. But for humans, names are important. Branding means something to us. We expect version 10 to be special in some way; that the leap between nine and 10 should be bigger than the leap between seven and eight. Even in Terminator, Skynet sends back the T-1000 to destroy Arnie, rather than, say, the T-827.
This desire for specialness is the problem. As soon as you set up a pattern, each subsequent version is just another in a long line of versions. That’s hardly ideal for ambitious product managers looking to make their mark. Saying I was in charge of the release of Diphthong 67.4 doesn’t have the same ring as being in charge of Diphthong: Extreme Edition. Perhaps this is why we have Windows XP and iPhone X.
So we rarely get a procession of ever-growing numbers. As the numbers get bigger, the gap between them seems to sound less impressive. Is version 345 really any better than version 344? The one popular app that leaps to mind as not being shy about incrementing that first number is Google Chrome (as I write this I’m running version 77.0.3865.120, a number that just seems terrifying), but Chrome has become the infinity version. No one knows what version of Chrome they’re running anymore. Next time I look at that version screen, the number will be different.
Perhaps the Galactic Empire was on to something. Their names seem like the product of a digital marketing agency — an intergalactic pentagram that styled their names in serif block fonts, A/B testing them against Hoth and Alderaan to see which terrified the inhabitants more.
Darth Vader was hardly going to strike fear into the Rebel Alliance with the Death Small Moon, the Large-to-Medium-Ship Destroyer, and the Some-Terrain Transport. Numbers are great and all, but they’re not special enough. For the Empire, you could tell things were on a downward trajectory as soon as they started work on “The Second Death Star.” Maybe they’d have done better on Endor if they’d called it Death Star X: Cupcake Edition.