|
|
Subscribe / Log in / New account

Oh yeah, the secret so deep, the secret so hidden, the secret so unbelievable… that everyone knows about it.

Oh yeah, the secret so deep, the secret so hidden, the secret so unbelievable… that everyone knows about it.

Posted Jan 16, 2012 17:59 UTC (Mon) by khim (subscriber, #9252)
In reply to: SFLC: Microsoft confirms UEFI fears, locks down ARM devices by drag
Parent article: SFLC: Microsoft confirms UEFI fears, locks down ARM devices

A very careful examination why Android has succeeded while the traditional "Linux distribution" approach to making a smart phone OS failed utterly is in order, also.

Very careful examination? Didn't you mean "5 second glance"? You do remember this video, right? Where crazy Microsoft CEO dances on scene?

Well, he's right: developers make or break your platform. And developers want stability. Not UI stability, but ABI stability. They want to create binaries once and sell them for a long, long, time. What they absolutely don't want to do is to keep few versions of them, recompile them for all existing distributions, etc.

Linux (the kernel) actually is pretty good here: while it has "no stable API" policy this policy only cover kernel. User-space ABI is sacred and Linux developers take regressions very seriously. Thus, surprise, surprise, Linux (kernel) is used on billions of computers around the world - but only on tiny percentage of desktops.

Why? Well, desktop people (and ever in-kernel desktop-related people) are breaking everything regularly. It's not a new phenomenon (I've already discussed it few years ago) but it's still valid. When you read maemo 4.0.x is not API compatible with earlier releases you know that someone decided to shoot his foot again.

And if you shoot his foot again and again and again… then limping is kind of expected, right?

Note: stable ABI is strict requirement, but of course it's not enough to drive your platform to success. You need to do other things, too. But if you don't offer stable ABI then it does not matter what else you'll do.


to post comments

Oh yeah, the secret so deep, the secret so hidden, the secret so unbelievable… that everyone knows about it.

Posted Jan 20, 2012 1:39 UTC (Fri) by sorpigal (guest, #36106) [Link] (2 responses)

+1 million, the truth.

IMO API stability would be enough to begin with, but nobody does that either.

I like to say it like this: Microsoft succeeds by thinking about the platform first. In Linux there is no platform above libc (except maybe xlib).

Oh yeah, the secret so deep, the secret so hidden, the secret so unbelievable… that everyone knows about it.

Posted Feb 10, 2012 11:47 UTC (Fri) by mfedyk (guest, #55303) [Link] (1 responses)

You forgot about eglibc, dietlibc, etc. And for xlib there is xcb and xcb-xlib as well.

On another note, when are we going to get x protocol extensions that integrate the nx protocol and a module that does compositing into xorg? These would solve nearly all of the issues that make people want to work on wayland.

Long live X!

Oh yeah, the secret so deep, the secret so hidden, the secret so unbelievable… that everyone knows about it.

Posted Feb 10, 2012 13:21 UTC (Fri) by khim (subscriber, #9252) [Link]

You forgot about eglibc, dietlibc, etc. And for xlib there is xcb and xcb-xlib as well.

Which does not change anything. EGLIBC strives to be source and binary compatible with GLIBC and dietlibc is rarely used as glibc replacement. Microsoft, too, offered numerous version of MSVCRT: Windows 7 includes three or four "out of the box".

The important thing is not to decide when to add something but when to remove something. And the typical answer: years after the replacement is available. FCB was introduced in MS DOS 1.0 (in 1981) and deprecated in MS DOS 2.0 (in 1983). It was supported till "grand unification" of Windows (in 2001). And still some people complained because Windows XP broke their beloved WordStar.

Now, some interfaces are abandoned much faster (think DirectMusic) and then Microsoft is [rightfully] hated - but these are rare exceptions, not rules. In Linux world... yes, we have kernel, yes, we have glibc and xlib... and that's about it. Well, GTK+ comes close. Everything above is subject to sudden breakage. And while compatibility is possible (as someone pointed out you just need to pull bunch of old libraries from older versions of the distribution) it's not automatic: user must manually find and install these libraries, etc.

At some point it just becomes too tiresome and people switch to Windows or MacOS. Where things work "out of the box" and you desktop looks like a desktop not as Tamagotchi.

Oh yeah, the secret so deep, the secret so hidden, the secret so unbelievable… that everyone knows about it.

Posted Jan 20, 2012 4:33 UTC (Fri) by elanthis (guest, #6227) [Link]

> Well, he's right: developers make or break your platform. And developers want stability. Not UI stability, but ABI stability. They want to create binaries once and sell them for a long, long, time. What they absolutely don't want to do is to keep few versions of them, recompile them for all existing distributions, etc.

So very, very true. I'd argue this extends beyond the library ABIs as well, of course, to things like the software installers. It's still very frustrating that a developer has to build like 50 packages of the same application for major distros on the Linux desktop.

FOSS is nice and all, but regular people want to just be able to click and go without needing to dick around with building source, and regular developers don't want to have to spend their time working around a broken distribution platform and breaking ABIs.


Copyright © 2025, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds