On Apr 1, 2014, at 10:46 AM, Eitan Adler <li...@eitanadler.com> wrote:

> That is why on this date I propose that we cease competing on the
> desktop market.  FreeBSD should declare 2014 to be "year of the Linux
> desktop" and start to rip out the pieces of the OS not needed for
> server or embedded use.
> Some of you may point to PCBSD and say that we have a chance, but I
> must ask you: how does one flavor stand up to the thousands in the
> Linux world?

The fact that this posting comes out on April 1st makes me wonder if it’s just 
an elaborate April Fool’s joke, but then the notion of *BSD (or Linux, for that 
matter) on the Desktop is just another long-running April fool’s joke, so I’m 
willing to postulate that two April Fools jokes would simply cancel each other 
out and make this posting a serious one again. :-)

I’ll choose to be serious and say what I’m about to say in spite of the fact 
that I work for the primary sponsor of PC-BSD and actually like the fact that 
it has created some interesting technologies like PBIs, the Jail Warden, 
Life-preserver and a ZFS boot environment menu.

There is no such thing as a desktop market for *BSD or Linux.  There never has 
been and there never will be.   Why do you think we chose “the power to serve” 
as FreeBSD’s first marketing slogan?  It makes a fine server OS and it’s easy 
to defend its role in the server room.  It’s also becoming easier to defend its 
role as an embedded OS, which is another excellent niche to pursue and I am 
happy to see all the recent developments there.

A desktop?  Unless you consider Mac OS X to be “BSD on the desktop” (and while 
they share some common technologies, it’s increasingly a stretch to say that), 
it’s just never going to happen for (at least) the following reasons:

1. Power.  As you point out, being truly power efficient is a complete 
top-to-bottom engineering effort and it takes a lot more than just trying to 
idle the processor whenever possible to achieve that.  You need to optimize all 
of the hot-spot routines in the system for power efficiency (which actually 
involves a fair amount of micro architecture knowledge), you need a kernel 
scheduler that is power management aware, you need a process management system 
that runs as few things as possible and knows how to schedule things during 
package wake-up intervals, you need timers to be coalesced at the level where 
applications consume them, the list just goes on and on.  It’s a lot of 
engineering work, and to drive that work you also need a lot of telemetry data 
and people with big sticks running around hitting people who write 
power-inefficient code.  FreeBSD has neither.

2. Multimedia.  A real end-user’s desktop is basically one big UI for watching 
things, listening to things, and running apps.  A decent audio / video 
subsystem is just one part of the picture, and one that has always been really 
weak - entire engineering teams can spend years working on codecs, performance 
optimizations, low and guaranteed latency support for audio I/O, etc.  What’s 
worse, the bar is only being raised.  You want to be part of the next wave of 
folks who can author and edit content for the new 4K video standard?  Not on 
FreeBSD or Linux, you’re not.

3. Applications.  A desktop without real and useful applications is not a 
desktop, it’s just an empty display surface.  Sure, there are users out there 
who are happy with just a mail client, a web browser and maybe a calendaring 
app, but those users are also arguably even better candidates for Chrome or 
other simplified environments where all of that simply happens in a fancy web 
browser and you get things like “software updates” and cloud integration 
essentially for free since it’s all just one cohesive picture there.  The 
ability to solve those user’s needs very simply makes them ripe targets for the 
web application delivery platforms.

For the other folks who want to do fancier stuff like mix audio, edit videos or 
even just play mainstream 3D games that were actually published sometime in the 
last year, they’ll use a real desktop OS and won't even bother looking at one 
of the free ones because guess what, the free ones just can’t do those things, 
or do them badly enough that their users feel like they’re perpetually living 
in a kind of self-selected ghetto.  Metaphorically speaking, sleeping on the 
floor in a sleeping bag in your one-room apartment is fine when you’re young, 
but as you get older, you want to be more comfortable and have a real bed in a 
real house!

Those are just three reasons.  There are lots more, not least of which among 
them is the fact that it’s damn hard even just to *create* significant 
applications with the weak-ass APIs that *BSD and Linux provide.  You have to 
stitch together some Frankenstein collection of libraries out of ports (or 
linux packages) and then hope the whole pile of multi-“vendor" bits will sort 
of work together, which of course they rarely do because they were written by 
several hundred different people with no mandate to interoperate.

April fool’s joke?  Yes, the desktop has always been one in the OSS space.  
It’s a lousy OSS problem to try and solve because all the hardest parts are 
things nobody wants to do for free, and there’s no money to be made just 
providing the OS (even Ubuntu, the current leader, seems to have “pledge 
drives” every other week).

- Jordan

freebsd-current@freebsd.org mailing list
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"

Reply via email to