Where are the hobbyist mobile operating systems?

Almost exactly three years ago, I wrote about why OSNews was no longer OSNews: the alternative operating system scene had died, and OSNews, too, had to go with the times and move towards reporting on a new wave of operating systems – mobile, and all the repercussions that the explosion of smartphones and tablets have caused. Still, I was wondering something today: why aren’t we seeing alternative operating systems on mobile?

First, let me make clear what I mean by alternative operating systems. I’m not talking about desktop Linux, FreeBSD, or NetBSD; those, and similar systems, are well-established, have lots of developers and users, and, in my view, can’t really be classified as ‘alternative’ by any stretch of the imagination. Development is steady, on-going, and they are not in danger of dying.

When I say ‘alternative’, I mean truly alternative (hobbyist might be a better term for some of these): SkyOS, AtheOS, Syllable, ReactOS, AROS, MorphOS, AmigaOS, TriangleOS, and god knows what else we’ve debated and ran these past 16 years since OSNews was founded. Aside from the Amiga-like operating systems, which see some modicum of development, virtually everything else has either died out, is on life support, or only sees the very occasional step forward. We’ve discussed this at length before, but suffice it to say, the vibrant alternative operating systems scene of the early 2000s has all but fizzled out.

I had high hopes that we’d see the mobile space play out differently than the PC world, but by now we have to face the facts and accept that it’s not happening. Android is dominating, and its dominance is only growing worldwide. iOS will do just fine with the remainder 10-20% worldwide market share. You can point to the US all you want, but even if all Americans bought iOS, they still only make up 5% of the world’s population. Face the music: mobile is following the PC world, and will settle on Android as the dominant player, and iOS raking in loads of money with the remainder share.

Lucky for us, we still have several large and established organisations working on alternatives to iOS and Android, providing us with interesting things to look forward to when our contracts are up and we get to pick a new phone – Windows Phone, BB10, and in the near future, FirefoxOS, Ubuntu, Tizen, and Sailfish. With the exception of possibly Sailfish, these are the desktop Linux and BSDs of mobile. They won’t go away any time soon, they’ll see steady development, but they’ll have to settle for scraps – a few percent market share, tops.

So far, the current mobile market looks very similar to the PC space, operating system-wise. However, I’ve been missing one thing. I’ve been missing what used to be OSNews’ bread and butter: alternative, sometimes hobbyist operating systems. One or a small group of incredibly talented and gifted programmers pulling off what I consider to be the grand slam of programming: writing a kernel, drivers, frameworks, and everything else that’s needed to breathe meaningful life into a computer.

At first glance, it would appear the mobile space is perfectly suited for developers of alternative operating systems. There are several very popular models of smartphones and tablets out there that are all exactly the same – quite a far cry from the ever-moving target that is the average x86 PC. This should make it easier for talented programmers to target a single or a few devices – say, a Nexus or Galaxy SII – and focus entirely on getting it working there.

It is true that several hardware aspects of modern mobile devices are locked, without open driver code or documentation. As problematic as that may be for a programmer, the fact of the matter is that that’s not very different from what developers had to deal with a decade ago. Both ATI and NVIDIA graphics cards were sealed silos, and many sound chips, wireless cards, and god knows what else were just as closed.

It could be that ARM – the x86 of the mobile world – is harder to target. I’m no developer, so I cannot make any definitive statements about this, but as I understand it, virtually every ARM SoC is unique, and there really isn’t a common target as exists for x86. While that may be true, every Nexus 4 is exactly the same, and could act as a perfect target. Even something as the Galaxy SII, while sporting multiple versions, is still relatively consistent compared to what we see in the PC world.

So, what is the cause? I personally think it has to do with how we perceive our smartphones and tablets. They are much more personal, and I think we are less open to messing with them than we were to messing with our PCs a decade ago. Most of us have only one modern smartphone, and we use it every day, so we can’t live with a hobbyist operating system where, say, 3G doesn’t work or WiFi disconnects every five seconds due to undocumented stuff in the chip. Android ROMs may sound like an exception, but they really aren’t; virtually all of them support your hardware fully.

With people unwilling to sacrifice their smartphone to play with alternative systems, it makes sense that fewer people are interested in developing these alternative systems. It is, perhaps, telling that Robert Szeleney, the programmer behind SkyOS, moved to developing mobile games. And that Wim Cools, the developer of TriangleOS, moved towards developing web applications for small businesses. Hard work that puts food on the table, sure, and as people get older priorities shift, but you would expect new people to step up to the plate and take over.

So far, this hasn’t happened. All we can hope for is that the mobile revolution is still young, and that we should give it some more time for a new, younger generation of gifted programmers to go for that grand slam.

I sincerely hope so.

124 Comments

  1. 2013-04-15 10:48 pm
    • 2013-04-15 11:07 pm
      • 2013-04-16 12:35 pm
        • 2013-04-20 7:42 pm
          • 2013-04-20 8:10 pm
          • 2013-04-22 4:56 pm
    • 2013-04-16 12:04 am
      • 2013-04-16 3:27 am
    • 2013-04-16 9:17 am
      • 2013-04-16 9:38 am
  2. 2013-04-15 10:57 pm
    • 2013-04-16 9:07 am
      • 2013-04-16 9:13 am
        • 2013-04-16 12:22 pm
          • 2013-04-16 7:38 pm
          • 2013-04-17 6:42 am
    • 2013-04-16 10:10 am
  3. 2013-04-15 11:08 pm
  4. 2013-04-15 11:19 pm
  5. 2013-04-15 11:56 pm
    • 2013-04-16 12:22 am
      • 2013-04-16 2:29 am
        • 2013-04-16 3:11 am
          • 2013-04-16 5:19 pm
    • 2013-04-16 7:29 am
      • 2013-04-16 8:10 am
      • 2013-04-16 8:20 am
        • 2013-04-16 8:32 am
          • 2013-04-16 8:38 am
          • 2013-04-16 2:00 pm
          • 2013-04-16 6:22 pm
          • 2013-04-16 6:38 pm
          • 2013-04-16 7:19 pm
          • 2013-04-16 7:46 pm
          • 2013-04-20 4:53 am
          • 2013-04-20 5:16 am
          • 2013-04-20 5:28 am
          • 2013-04-16 9:23 am
          • 2013-04-16 10:11 am
        • 2013-04-16 11:32 am
          • 2013-04-16 6:23 pm
      • 2013-04-16 3:22 pm
        • 2013-04-16 3:33 pm
        • 2013-04-16 5:04 pm
          • 2013-04-20 4:44 am
      • 2013-04-16 7:22 pm
      • 2013-04-20 4:42 am
  6. 2013-04-16 12:54 am
    • 2013-04-16 3:55 am
      • 2013-04-16 5:11 am
        • 2013-04-16 10:13 am
      • 2013-04-16 5:27 am
        • 2013-04-17 12:34 am
          • 2013-04-17 12:59 am
      • 2013-04-16 9:35 am
    • 2013-04-16 11:10 pm
  7. 2013-04-16 1:31 am
    • 2013-04-16 2:34 am
  8. 2013-04-16 2:42 am
  9. 2013-04-16 4:04 am
    • 2013-04-16 5:55 am
      • 2013-04-16 9:54 am
        • 2013-04-20 5:01 am
    • 2013-04-16 12:36 pm
      • 2013-04-16 2:38 pm
        • 2013-04-16 4:23 pm
  10. 2013-04-16 4:59 am
  11. 2013-04-16 5:20 am
    • 2013-04-16 4:37 pm
  12. 2013-04-16 5:34 am
    • 2013-04-16 11:52 pm
  13. 2013-04-16 5:35 am
    • 2013-04-16 2:30 pm
      • 2013-04-16 9:00 pm
  14. 2013-04-16 5:37 am
  15. 2013-04-16 5:39 am
  16. 2013-04-16 5:46 am
    • 2013-04-16 1:09 pm
    • 2013-04-16 2:38 pm
      • 2013-04-16 5:36 pm
    • 2013-04-20 6:52 pm
    • 2013-04-20 7:35 pm
  17. 2013-04-16 5:59 am
  18. 2013-04-16 6:27 am
    • 2013-04-16 6:46 am
      • 2013-04-16 2:46 pm
        • 2013-04-16 3:05 pm
          • 2013-04-16 5:01 pm
      • 2013-04-20 7:50 pm
        • 2013-04-20 8:17 pm
    • 2013-04-16 5:11 pm
  19. 2013-04-16 8:08 am
  20. 2013-04-16 8:31 am
  21. 2013-04-16 9:03 am
    • 2013-04-16 10:25 am
  22. 2013-04-16 11:05 am
  23. 2013-04-16 12:58 pm
    • 2013-04-16 1:16 pm
    • 2013-04-17 2:06 am
      • 2013-04-17 2:24 am
        • 2013-04-17 10:41 am
  24. 2013-04-16 2:16 pm
  25. 2013-04-16 2:54 pm
    • 2013-04-16 3:11 pm
  26. 2013-04-16 3:04 pm
  27. 2013-04-16 3:50 pm
  28. 2013-04-16 3:59 pm
  29. 2013-04-16 5:06 pm
    • 2013-04-17 2:01 pm
  30. 2013-04-16 5:06 pm
  31. 2013-04-16 5:27 pm
  32. 2013-04-16 6:11 pm
  33. 2013-04-16 10:03 pm
  34. 2013-04-16 10:53 pm
    • 2013-04-16 11:11 pm
  35. 2013-04-18 7:25 pm
    • 2013-04-18 9:48 pm
      • 2013-04-19 6:06 pm
        • 2013-04-20 1:37 am
  36. 2013-04-20 5:22 pm