Where is FreeBSD going? (View from the trenches)

xaphod at freebsd.co.uk xaphod at freebsd.co.uk
Wed Jan 7 09:19:35 PST 2004


It seems to be accepted fact that original "Where is FreeBSD going?"
post is nothing but a Troll.  That said I've always felt that just
because something is being said by an idiot it doesn't necessarily
follow that what's being said is idiotic.

My perception of the responses to the original message is that it
touched a raw nerve or two.  As a result quite a lot of people have been
airing some opinions which, up to know, they've kept to themselves. My
opinion is that this is a good thing.  Getting stuff out in the open
lets people discuss it, and with a bit of luck something good can
result.  So, as everyone's doing it, I thought I'd lob my opinions into
the pot.  Apologies in advance if it turn's out that I'm actually lobing
around hand-grenades.

I've been a user of FreeBSD ever since 1996.  As of 1999 I've used
FreeBSD as my sole OS.  Today employed by a small ISP where all the unix
systems are FreeBSD.  Indeed, my decision to use FreeBSD has actually
had a profound impact on the course of my life.

I didn't pick FreeBSD at random, and I didn't pick it by accident.  I
sat down an invesigated every available alternative.  FreeBSD stuck me
as the most well documented, best supported, and the most powerful Unix
OS on the market.  Up to now I've not seen anything that has made me
think otherwise.  But now I'm finding myself getting a little uneasy.

A lot of my current fears stem from the current state of 5.  I run 5.1
on my desktop, laptop and servers.  I know 5 is not rated for server
use, but I evaluate each RELEASE on a case by case basis.  In testing
5.0 I discovered it has issues, so I didn't use it.  Whereas 5.1 was
perfectly stable.  So I started using it.  Looking at 5.2, without
testing it on any of my boxes as yet, my perception is that it's a bit
flaky.

Now, you could say this situation is entirely my fault, I should never
have touched a new technology release until it went STABLE.  Frankly,
you'd be right, it is my fault.  But again it comes back to my
perceptions.  In this case my perception of what would be happening in
the future.

When presented with a choice between 4.8-RELEASE, and 5.1-RELEASE I had
to consider future upgrades.  Upgrading major versions is a pain - a
complete reinstall is usually the best course of action.  In the case of
4 to 5, there were major changes in the filesystem - so a reinstall
would definitely be required.  The roadmaps implied that 5.2-RELEASE
would be released in September 2003.  Furthermore (I've tried to find
the evidence I found to suggest this but I can't, so I'm basing this on
my imprecise recollection) I did gain the impression that 5-STABLE would
be out by 2004.  So, all things considered, risking 5.1-RELEASE seemed
reasonable.

FreeBSD has always struck me as a conservative project.  Being a
conservative SysAdmin I like this.  I like it when changes happen in a
careful and considered manner.  So even though 5.2 is currently causing
me concern, I'm not overly concerned.  I can wait and see what the
initial reactions are, then investigate it on my laptop then try it on
my desktop.  When I'm 100% happy I can then go live with it on my
server.  So I'm not required to use 5.2, any concerns are of little
consequence to me, and of no consequence to the FreeBSD community.

However, what worries me is the way 5 seem to have become the battle
ground for more internecine conflicts amongst different areas of the
FreeBSD community than anything that's gone before.  GEOM, devd, SMP,
static root, etc., etc.  Somehow even advocacy is causing conflicts!

Okay, so not everybody has opinions on all of, or indeed any of, these
subjects.  But enough people have an opinion to cause a bikeshed style
disagreement.  Then sooner or later a member of -core gets involved, and
is instantly outnumbered.  People start sounding off questioning the
judgement made in deciding between two courses of action.  Without any
intention that it should do so, things then start to get personal.

The economic concept "utility" is measure of happiness or satisfaction.
Utility is a useful concept for me to use in trying to get my point
across.

Consider the GPL'd Linux.  In addition to any other utility, Linux
hackers gain utility by being part of a fight for "Freedom".  Whatever
the Linux community produces, good or bad, is taken to be a poke in the
eye for the likes of Microsoft - and having MS going at Linux gives them
the sort of positive feedback, a sort of kudos as it were, that makes
them feel good.  Which in turn gives them the push to overcome the odd
bump in the roadmap.

FreeBSD is an open-source project like Linux.  Other than what it is,
FreeBSD has no underlying ethos.  So where is the utility for FreeBSD
hackers?  Well, if you ask me utility is derived from the fact that
writing code is fun.  From the fact that by hacking FreeBSD you are
part of project that provides others with the best tool for the job.  By
bikeshedding all the time we are attacking the very thing that give
people their utility.  We are in away applying negative feedback.

Consider the point of view of a somebody who has put in a lot of
their own personal time and a lot of coding effort to bring us some new
kernel feature.  Attacking the efforts of such an individual deprives
him of their utility, deprives them of very thing that make their effort
worthwhile.  So, in the end, it's no different than expecting someone to
work for free.  Who among us would fail I'd get downright angry if their
boss decided not to pay them?

So it's not surprising the standard response from committer is "submit a
patch".  This is nothing more than the FreeBSD equivalent of a tetchy
"If you're so clever, do it yourself".

I dislike negative feedback.  Being dyslexic it takes one comment about
bad spelling to make me grumpy for days.  To some degree we are all the
same.  We all hate to hear negative comments, we'd much rather hear nice
things.  However, we accept that this is not always possible.  For
instance, I get paid to do my day job.  And during the day, my boss has
the right to give me any feedback he thinks is relevant.  Positive or
negative.  I can prevent negative feedback by listening to his opinions
and instructions, and doing my best to give him what he asks of me.  If
we disagree we discuss it and because I'm a wage-slave I leave my
personality out of it.

But FreeBSD does not have wage-slaves.  It has people who are trying to
have fun.  I'd say negative feedback which questions the assumptions
underlying a person's fundamental source of fun is a personal attack
(somebody correct me if I'm wrong).  Most people can rise above such
things, and mostly they do.  But when it's all you're getting, fairly
soon you'll feel entrenched, and ignore all criticism.  No matter how
well intentioned, or how valid, that criticism.

When you think about the motivations of everyone connected with FreeBSD
everyone is loosing utility.  When -core have their decisions questioned.
When -core blow cold on advocacy suggestions from users who feel that's
the only way they can contribute.  When a knowledgeable someone with no
time on their hands tries to pass on some suggestions to a commuter and
gets shot down in flames.  It's everywhere you look.

It's this negative feedback which is destroying FreeBSD.  From the
trenches, FreeBSD's future looks bleak.  I don't care if 5.2 is delayed
for however long it takes.  I don't really care if it's flaky.  Picking
5.x over 4.x is my decision and I'm willing to live with all the
consequences.  I don't care if 5-STABLE is postponed to 2005.  I don't
care if xyz is done this way, or that way - I'm willing to defer to them
that know more about such things than I do.

But I do care that when it arrives 5-STABLE is the best OS that money
can't buy.  However, we're all too busy bickering that nobody is having
fun any more.

I have no idea what the solution is.  All I know making FreeBSD more
democratic is not the answer.  If we listen to what everyone says
then If we're not careful FreeBSD 5-STABLE will be something we're all
responsible for, but which nobody wants.  An OS designed by committee...



More information about the freebsd-chat mailing list