Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 1 Nov 2004 17:18:30 -0700
From:      Joe Warner <rootman22@comcast.net>
To:        Giorgos Keramidas <keramida@ceid.upatras.gr>
Cc:        freebsd-chat@freebsd.org
Subject:   Re: Why do you do it?
Message-ID:  <200411011718.30582.rootman22@comcast.net>
In-Reply-To: <20041101212824.GA35814@gothmog.gr>
References:  <200410300630.14877.rootman22@comcast.net> <20041101212824.GA35814@gothmog.gr>

next in thread | previous in thread | raw e-mail | index | archive | help
On Monday 01 November 2004 02:28 pm, Giorgos Keramidas wrote:
> On 2004-10-30 06:30, Joe Warner <rootman22@comcast.net> wrote:
> > As far as the FreeBSD user community goes it's a no-brainer for me,
> > FreeBSD touts a long list of reasons why someone interested in UNIX,
> > computing, programming and/or networking would want to use it.  However,
> > I've always wondered what motivates the FreeBSD Developers.  The general
> > explanation I've heard is "Because we get to work on projects we're
> > interested in as opposed to profit-based projects imposed by our
> > employers which we may or may not be interested in."  Is it that simple
> > or does it go deeper?  Why do you do it? What motivates you?
>
> I hope this isn't too long.  The quoted material is copied verbatim from
> Poul-Henning's article.  The comments below the quoted stuff are mine.
>
> : I guess the closest we get to anything of the sort is the "FreeBSD: tools
> : not policies" catchphrase which I coined some years ago (heavily inspired
> : by the Software Tools concept, which you can read more about in Peter's
> : book).
>
> To understand why someone would contribute to FreeBSD, it's first important
> to understand why someone would *use* FreeBSD.  The greatest majority of
> FreeBSD contributors are also users of the system itself.
>
> Here's a list of reasons for using FreeBSD that I have been able to write
> down during the last few days:
>
> - Appreciation of quality.  This works in multiple levels:
>
>   . As a user, for having a quality system to work with.  This includes a
> wide range of FreeBSD characteristics, but the most visible are: the
> excellent documentation (manpages, sgml docs, other documents), the
> featureful base system, are all important reasons why a user would prefer
> FreeBSD.
>
>   . As an administrator, for having a stable system that Just Works(TM).
>     The flexibility of the installation procedure, the documented detailed
>     instructions for updating or upgrading an installed system, are details
>     that make administering FreeBSD a lot more fun than other UNIX systems.
>
>   . As a developer for having a system that is organized in a logical
> manner. The clear separation of the base-system vs. third-part
> applications, machine dependent vs. machine independent features, the
> well-known BSD platform, and the availability of the system source are all
> details that make developing on or for FreeBSD a very pleasing experience.
>
>   . All the above together.  When combined, all the details listed above,
> the tiny little fragments of every day life with FreeBSD, make it the
> system of choise for many people.  I know they do for me.
>
> - Tools.  FreeBSD has been useful to me.
>
>   . As a workstation: I'm too addicted to the UNIX way of doing things --
> to the point of being frustrated when I have to sit in front of the pretty
> point-and-click randomness that some people like calling a 'desktop'.
> FreeBSD lets me work the way *I* want, any time.  When I feel like using a
> GUI, a GUI is there for me.  When I don't, it's gone.  Simple and nice.
>
>   . As a network server, firewall, NAT gateway, etc.  Some will argue that
> all these can be done with other UNIX systems too.  The advantages of
> FreeBSD in this area are many though, speed and stability being almost
> invariably the two most important ones, followed by the great number of
> network related features the system has (netgraph, ipfw, dummynet/natd,
> bridging, ipfilter/ipnat, pf, altq) or the excellent support of networking
> standards, etc.
>
> - Education.  Learning by reading the work of others.  Just having the
> source of some-random-kernel version 1.2.0 doesn't count.  The history and
> the rationale of the changes made, set forever in stone in a CVS tree,
> browsable and searchable with standard tools is very important too.
>
> - FreeBSD is UNIX.  I have used UNIX systems almost exclusively for doing
> my every day work since about 1994.
>
>   At times, I had to work in other environments too.  The comfort level of
>   UNIX beats all of those I've tried so far, any day, easily.
>
>   I hate it when I have to work with non-UNIX platforms, because I feel
> like being constantly delayed and put back by the limitations of the
> system: you can't use more than 13 characters for names of files,
> directories cannot nest more than a couple of levels, the filesystem is
> dog-slow unless you run a defragmenter, there is no way to create a disk
> image without specialized and very expensive software, you can't put more
> than a few hundred files in the same directory before the whole thing
> crawls to its knees, ... and the list goes on forever.
>
>   No, thanks!  I'll take my UNIX any day.
>
> - Licensing reasons.  GPL may be good if you plan to `conquer the world'.
>   Doing real work, in a real business environment, is easier if you don't
> have to worry about the possibility of being forced to open source
> everything your company has ever done.
>
> - Community.  I meant to write a post in my weblog entitled "Why Attitude
>   Matters", describing why I think the attitute of the FreeBSD users and
>   developers played an important role in my initial choise of FreeBSD as my
>   favorite OS.  I never quite finished it, but I'm still collecting notes,
>   searching for interesting messages in my mail archives and so on.
>
>   It will be a while before I have something resembling a complete article,
>   but in the mean-time let me say just this:
>
>         Apart from very rare cases, everyone I've corresponded in the years
>         I've used FreeBSD (both members of the team and not) has been very
>         gentle, understanding and *helpful*.  I can't stress the last word
> too much.  _Very_ helpful.  Despite the fact that they don't have to.
>
>   Giving back to a community like this feels absolutely great.  It's the
> best way to become a part of this group of talented, smart, gentle
> community that treats newcomers with respect.
>
> : Why am I sitting here at ten in the night, writing a column for an e-zine
> : that I don't know when will come out next?  Why did I even volunteer to
> : co-write this column in the first place ?
>
> Optimistic expectations.  Making a contribution to an open source project
> is always based a bit on the expectation of "making a positive difference".
>
> This is something that cannot be done so easily with commercial UNIX OSes.
> When you buy a UNIX system from a vendor like Sun, HP or whoever, you get a
> `product'.  The roadmap of improvements, the design of future directions,
> the changes that are made and the features that will eventually get
> implemented are usually chosen by the `big customers'.
>
> In FreeBSD, every user, even the newbie who has installed the system
> yesterday and tries to read through the Handbook but gets confused, has a
> chance to make a positive difference to the system: by submitting a
> question, by posting a bug report, by suggesting features, etc.
>
> Having the impression that the evolution of FreeBSD *can* be influenced by
> every user, if they put the time and effort to do something, is what works
> as a trigger to make the users really *do* something.
>
> : I have been close to quitting the project a couple of times over the
> : years. But each time, emails from friends and strangers and the soft
> : seducing song of code needing improvement have lured me back.
>
> The first part of the closing sentence above rings a familiar bell to many
> of us, the contributors to open source projects.  Some times, the reasons
> why one contributes are linked with social life.
>
> There is a great deal of truth in the last part of the above sentence too,
> which I'm sure Poul-Henning put there intentionally, but might go unnoticed
> if one hasn't worked with FreeBSD people for a while.  It can be put into
> words as a simple phrase that characterizes a great percentage -- the
> overwhelming majority -- of the developers that are members of the FreeBSD
> team:
>
>         The obsession with quality.
>
> If there is something that is broken (or, at least, that they consider
> broken) the FreeBSD developers have a huge, irresistible urge to fix it. 
> Here is then the second sort of motive for contributing to an open source
> project: all the technical reasons.
>
> : I guess that gives me personally an answer: I bother because I can make a
> : positive difference in FreeBSD and have some fun with friends and
> : likeminded individuals while doing so.
>
> That's the meat of it.  Technical and social reasons.
>
> : In the light of the increasing commercial momentum of Linux, not, by
> : definition, an entirely good thing for them, and with "Linux Standards
> : Base 2" looking like a strong contender for the long promised definitive
> : UNIX standard, we could find ourselves relegated to being "a better linux
> : than linux" if we are caught unprepared.
> :
> : Why do we bother?
>
> I bother because I like what I do as part of the FreeBSD project.  Both the
> technical and social part of it all.
>
> The technical part refers to working with a system that I can twist and
> bend to my will, that serves me as a workstation, server, or research
> machine, that includes all the UNIX features I have grown accustomed to
> during the 11 years I work with computers, a system whose source has
> educated me and increased my knowledge of the way computers work and a
> system that is hackable without having to pay hefty amounts of money for
> 'buying' the right to read the source.
>
> The social part refers to all those wonderful afternoons or nights that I
> hang out with my friends, doing things that I like, sharing our common
> interest in computers and the way they work and using FreeBSD as our
> vehicle to learn how to think, how to design and build things, as a tool to
> assist us in our (very interesting, to all of us) programming hobbies ;-)
>
> - Giorgos

Thanks Giorgos, it's really great to read your perspective and  it brings me a 
lot closer to understanding the overall motivation/s.

Would you mind if I shared this with our [1] list members?

Also, I was hoping to get responses from some of the other developers too but 
I hate to cross-post and I'm not sure which other list would be appropriate.  
Do you have any suggestions?  Advocacy, perhaps?

-Joe

[1] http://www.gubug.org



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200411011718.30582.rootman22>