1999-10-13-MAEDS-OpenSource
Download
Report
Transcript 1999-10-13-MAEDS-OpenSource
The Open Source Movement
Mark Lachniet
Holt Public Schools
OR…...
How the “hippie” ethic
thrives in the 90’s
Agenda
•
•
•
•
•
•
•
•
•
•
•
About Me
Open Source Defined
History of Open Source
The efficacy of being “cHeAp”
The OSS Development Model
Motivating the Hacker
Economic Considerations
Moral Considerations
Worldwide Considerations
OSS and the scientific method
Discussion
About Me (the boring part)
•
•
•
•
•
Director of Information Systems @ Holt
Novell Master CNE certified
Microsoft MCSE certified
Linux self-certified (hey, why not?)
First stumbled on OSS in 1993 with Linux version 0.99
and have been with it ever since
• Not half the expert I should be to give this talk
• Interested in cultural issues as well as technical. How does
technology shape culture and vice-versa?
• I will be liberally re-using the ideas and terms of people
much smarter than me, which is 100% in line with the
concept of Open Source
Open Source Defined
• Source = Source Code (the programming text that is eventually
compiled into an executable binary program)
• Open = Viewable, modifiable, can’t be restricted! All derivative
works must also be open
• Free Software = Free Speech in the sense of liberty not cost
• Open Source Software may have a price attached to it, such as
the cost to distributed via. CD, the cost of support, or the cost of
branding (such as Red Hat)
• Software, according to Richard Stallman, is scientific
knowledge and must be shared and distributed if innovation is to
continue (more about this later)
• Open Source is a “grass roots” idea, motivated from the bottom
up. There is no central authority for OSS
History of Open Source
• There are many people who have contributed to
the effort. I can discuss only a few of them
• Richard Stallman of the FSF (Free Software
Foundation)
• Larry Wall (author of the PERL language)
• Paul Vixie (author of BIND - the original DNS
server)
• Linux Torvalds (author of the Linux Kernel)
• Eric Raymond (author and soapboxer)
• And thousands more among the dedicated masses
Back in the Sixties……
(Well, the seventies, anyway)
• Richard Stallman could conceivably be called the founder
of the Open Source Movement
• Worked at the MIT Artificial Intelligence Lab in 1971 on
the PDP-10
• Part of a community of programmers who designed a free
compiler for the PDP-10
• The AI group promoted the sharing and use of computer
resources and code - the early roots of OSS
• This eventually came to an end when the university
decided to use a non-free system and Stallman was forced
into the world of commercial software
Social Systems vs. Copyright
• Stallman took exception to the “proprietary software
social system”
“The idea that the proprietary software social system - the system
that says you are not allowed to share or change software - is
antisocial, that it is unethical, that it is simply wrong, may come as a
surprise to some readers. But what else could we say about a system
based on dividing the public and keeping users helpless? Readers
who find the idea surprising may have taken the proprietary social
system as a given, or judged it on the terms suggested by proprietary
software businesses. Software publishers have worked long and
hard to convince people that there is only one way to look at the
issue.” (Stallman, “Open Sources” pg. 54)
Software Copyright Assumptions
• Assumption: “Software companies have an unquestionable right to
own software and thus have power over all its users”
• Rebuttal: “the U.S. Constitution and legal tradition reject this view;
copyright is not a natural right but an artificial government-imposed
monopoly that limits the users’ natural rights to copy
• Assumption: “the only important thing about software is what jobs it
allows you to do”
• Rebuttal: but isn’t the type of society we create with technology an
even more important issue?
• Assumption: “we would have no usable software … if we did not
offer a company power over the users of the program”
• Rebuttal: Linux and the OS movement have already proven this
wrong. In fact, the reality is quite the contrary - Open Source Software
has consistently beaten out commercial software in terms of
functionality and stability in many areas
• Stallman elaborates on this reasoning at his web site:
http://www.gnu.org/philosophy/why-free.html
Ends and Beginnings
• Stallman left MIT shortly thereafter, citing a
“stark moral choice” not to capitulate to a
commercial software company
• Thus began his mission
• The first step towards creating the “utopian”
software society of his dreams was the creation
of the first free operating system
• he then began work on the GNU System
GNU and GNU/Linux
• Is a recursive acronym for “GNU’s Not Unix”
• GNU/Linux Is a combination of GNU software and software
written by other people such as X-Windows
• Is *not* the kernel, but is platform independent - it has been
ported to DOS, Linux, *BSD, and more
• In fact, GNU comprises much more of the Linux operating
system than the kernel which was written by Linus Torvalds
• Includes such things as the C compiler, system utilities,
editors, etc.
• GNU utilities, especially GCC (the C compiler) have a great
deal of “mindshare” with programmers coming from higher
education because that is what they have been trained to use
The Free Software Foundation
• Founded in 1985 as a kind of umbrella
organization for GNU software and its
programmers
• Provides services such as selling CD’s, teaching,
consulting, and of course the production of highquality free software
• Works as an advocacy group for software rights
• Specifically designed to create a complete Free
Software operating system
• In the 90’s, with Linux, FreeBSD and similar
operating systems, they have achieved this goal
Meanwhile, back in Finland...
• GNU was a great work in process, but the kernel (the real
brains of the OS - like command.com) was non-existent.
• A Finnish programmer name Linus Torvalds had been
working on creating a UNIX-compatible kernel for the 386
platform
• His kernel was actually an adaptation of the earlier MINIX
operating system for the 386
• Linus worked long and hard on coding the kernel,
according the the legend, sometimes releasing two or more
versions in a single day
• Around 1992, GNU and the LINUX kernel were combined
to create what we now think of as Linux
Momentum Builds….
• Once Linux was released, development began to grow
geometrically
• More and more programmers downloaded Linux from the
Internet or picked up the CD from trade shows, especially
the Yaggdrasil distribution
• At one time, you could download the entire Slackware
Linux operating system on 50 1.44mb floppy disks. I did.
It took days over a 14.4k modem. Corrupt floppy disks
could send a person into madness
• As hobbyists and programmers became aware of it, they
began writing software for it, formed groups, and began
what we now call the Open Source Movement
Being cHeAp
• In the online community that I grew up with, we had a
term for the kind of person who was into stuff like Linux:
CHEAP
• Cheap is not just a monetary term, though most people
were too poor to afford real software, so there is some truth
there as well
• Cheap refers more to the desire to learn, experiment, and
develop in new and clever ways
• Cheap means pretty much the same thing as the term
Hacker used to, or the term Geek currently does
• The concept of cHeAp, the “Hacker” and the “Geek”are
very important to understanding the culture of the Open
Source movement
Geek Defined
(from the offical geek homepage)
• A geek is someone who spends time being "social" on a computer.
This could mean chatting on irc or icb, playing multi-user games,
posting to alt.sex.bondage.particle.physics, or even writing shareware.
Someone who just uses their computer for work, but doesn't spend
their free time "on line" is not a geek. Most geeks are technically adept
and have a great love of computers, but not all geeks are programming
wizards. Some just know enough unix to read mail and telnet out to
their favorite MUD.
• Geeks are generally social outcasts from mainstream america. The
ranks of geekdom are swelled with gamers, ravers, science fictions
fans, punks, perverts, programmers, nerds, subgenii, and trekkies.
These are people who did not go to their high school proms, and many
would be offended by the suggestion that they should have even
wanted to. Geeks prefer to socialize with other geeks, the self
proclaimed weird. Therefore they go online to organize parties, food
runs, drink runs, and movie nights, and be assured that their
companions would rather talk about superheros as modern mythology
than the latest football scores.
Geeks Continued...
• Geeks are their own society: a literate, hyperinformed underground.
The community accepts people from all walks of life, assuming they
have access to the net and the skill to use it. Geeks are rather
openminded with regards to nonstandard lifestyles. Many geeks are
queer, more practice non-monogamy, and the most common religion is
neo-paganism. You can't tell if someone is a geek just by looking at
them, there is no dress code. Some dress casual, some prefer silk - but
few pay attention to current fashion. You are more likely to see a geek
in a renaissance bodice than a dress from glamour magazine; or a
tiedye instead of suit and tie.
• If you are not a geek yourself, you probably know one
• Geeks are not “nerds” - they are often normal folks who simply love
technology and the challenges and rewards that come with it
• Geeks are typically anti-authoritarian and free-thinking. Does this
remind you of any particular decade?
• Most importantly, Geek culture is at the heart of the Open Source
Movement
OSS development model
(or harnessing the geeks)
• It has been said that the most interesting thing about the Linux
kernel is not the software itself, but the developmental model
which was used to create it
• Because this is a collaborative endeavor, many (sometimes
hundreds) of people may be working on any given project at any
given time - frequently for no pay whatsoever - and from
locations all over the world
• One would think that this would be a logistical nightmare - after
all, isn’t that why we need managers, team leaders and
administrators to pull all of the pieces together?
• Surprisingly, projects such as the Linux kernel have a way of
sorting themselves out - a kind of “survival of the fittest” where
only the best programmers are selected by their peers to work on
a project
A Benign Dictatorship
• The oversight of the development of the Linux kernel has been likened
to a “Benign Dictatorship”
• Linus Torvalds, Alan Cox, and others at the core of the development
team act as delegators of work - they may assign a portion of the
kernel to a particular author who has proven their merit, or they may
choose to do it themselves
• If the programmer who volunteers for the work does a good job, they
maintain their portion of the code and continue working. If not,
someone else will volunteer to step in and take over the work
• In the end, the system works - not because of tight controls, or because
of centralized authority, but because people truly motivated in the work
they are doing
• This is very much the opposite way of doing things from companies
such as Microsoft which are “top heavy” in their approach
• Eric Raymond talks about these two different models of project
management in his paper entitled “The Cathedral and the Bazaar”
The Cathedral and the Bazaar
• Think of the way that a cathedral is built - it is overseen by
the church and takes lifetimes to build
• The end result is usually quite beautiful, and a testament to
the work, but it is slow in the making
• Commercial software is built in exactly this way - they take
their time, release a few versions only now and then, and try
very hard to make sure that the final product is beautiful
• In software, this means insulating end users from the process,
and working very hard to make sure that every possible bug
is found and fixed before it is released - just like making sure
that the cathedral is perfect before it is opened to the public
• Unfortunately, many software cathedrals built on “Internet
Time” will be out of date by the time it is done
Welcome to the Bazaar
• The bazaar, on the other hand, is a chaotic free-for-all
• Anyone can come to the bazaar if they bring the right currency
(skills) to the table
• The bazaar method makes all of the information available to all
of the people so that anyone with a knack or an interest can
tinker with whatever they want
• In the bazaar method, software is released frequently - with or
without bugs
• This invites the whole world to participate in the process - bugs
are found, people modify the code to suit them and contribute it
back to the project
• Even non-programmers such as myself can help in the process
by testing and documenting the software
• While this frequently means that a revision of software may
have a problem, it also means that it can be fixed very quickly
Access to the source
• Some people believe that this model doesn’t work because it doesn’t
hold anyone accountable for the software. After all, if it’s broken, the
bosses want somebody to bring suit against
• And, if nobody is being paid to support it, who is to say that anyone
will ever fix the bugs?
• The truth is that the bazaar is usually much better at providing support
solutions than a commercial vendor.
• After all, how often can you get a hold of the actual author of a piece
of Microsoft code?
• The people who develop free software have a vested interest in its
success - they want to see it do well. For this reason, they are usually
quite accommodating and will answer questions and bug reports over
email more quickly than any commercial company ever would
• I have even corresponded with Alan Cox on a few occasions - arguably
one of the hardest working and most important personalities in the
game - and yet he takes time to talk to regular folks
Motivating the Hacker
• A lot of people speculate on the reasons that people participate
in the development of programs such as Linux.
• One theory is that programmers write programs to “scratch an
itch” - that is to say, they write software to meet a specific need
of their own
• This is certainly partially true, but if this were the only reason,
you would see a lot of un-documented, shoddily constructed
programs that were ditched after initial completion
• In fact, most code of any value is not only written but
maintained. If the value of the software is recognized, the
software will continue to be developed, if not by the original
author, then by someone else who is willing to take up the torch
• This also doesn’t account for the thousands of programmers
who work diligently on projects that offer them no solutions to
immediate problems - making code run faster, for example
Coding for props (respect)
• Perhaps the biggest reason that programmers code for free is the
fact that they are staking their claim on some part of computer
history
• They may have only written a network driver, or a small piece
of code for an editor, but if the code lives on it is a testament to
their work
• Other geeks recognize the value of props as well - being a
contributor is kind of like being a celebrity, with all of the
bonuses and respect that if confers
• And besides that, OSS may prove to be one of the most
important developments of the 21st century. Who wouldn’t want
to contribute to that?
• Last, but not least, contributing to the movement is an act of
creation - a type of art - and the urge to create is within all
human beings. Finding venues for our creative urges is a reward
all its own
Economic Considerations
• Working on an OS project may frequently be less profitable than
working for a company in a monetary sense
• However, in survey after survey, people respond that non-monetary
considerations rank highest on their lists of priorities
• Some might even argue that monetary reward is contrary to happy,
productive workers - especially in jobs requiring creativity
• One study states that “if a reward - money, awards, praise, or winning
a contest - comes to be seen as the reason one is engaging in an
activity, that activity will be viewed as less enjoyable in its own right.”
• In other words, when money is introduced, creativity can suffer. After
all, how can you consider the creative urge a job? Doesn’t the
restrictive nature of a 9-5 job work contrary to the creative process?
• If this is the case, then many of the commercial programmers are
working with much less vigor than those who do so on a volunteer
basis, or to feed their creative need
• Perhaps that is why OS Software develops so quickly and works so
darn well
Business economics
• Much could be said about running a company based on the OS model,
but that is not the area I am most interested in
• Some companies, such as Red Hat, have had wonderful success
• Others, like Netscape, still haven’t gotten a product out the door
despite their good intentions
• One thing is clear, however, and this is that Open Source is not a
magical cure for bad software or bad business practices. It is still
difficult (though in a different way) to manage a huge software project
• It is, on the other hand, a great way for companies to tap into the
creative energies of individuals (geeks) who live on Internet time
• Companies such as IBM, Oracle, Apple, and Compaq have made this
realization and begun incorporating it into their business practices
• Others, such as Microsoft, have fought tooth-and-nail against it, as
exemplified by the infamous Halloween documents (which are truly
scary from a monopolistic perspective)
Moral Considerations
• Economic concerns aside, there is a much more important reason to
contemplate how we deal with (and think about) technology
• Technology is integrally meshed with western culture - the Internet is
now ubiquitous, especially for those of the middle class and above
• Technology is in many cases our portal to the world - a source of
information, as well as a means of processing it
• Information is truly the commodity of the 21st century, and how we are
able to manage and manipulate information and communicate with
others will be the new frontier of our age.
• This is why the whole question of Free Software is so important - do
we want to live in a world where the means to our most important
resource - INFORMATION - is controlled by software companies?
• Do we want to live in a world where we cannot peer “inside the box”
to see the true workings of the technology we use on a daily basis?
• Do we want to be reliant upon a company to provide us with a limited
number of ways to harness this most precious of resources?
Worldwide considerations
• It is not just the western world that will be affected by the
decisions we make, because the path we take will set the
environment for other countries and places making the transition
to information societies
• Consider the “third world” countries in our southern
hemisphere. They can barely afford the hardware to establish an
information infrastructure, let alone purchase a copy of
Windows NT workstation and Microsoft Office for every box
• The “Community Aid Abroad” organization points out that
“Information and Communication Technologies are now
fundamental to dealing with all development issues in
developing countries.”
• In essence, technology is now the crux of improvement and aid
efforts worldwide. The very difference in monetary price alone
could theoretically be equated to human lives
Western-Centric technopolitics
• Besides money, the CAA also makes the point that commercial
software creates an external dependence that is volatile and
subject to political whims.
• What if, for example, the entire country of Columbia
standardized on Windows NT. Then say, for example that a
major security bug was found in said operating system. To
further complicate the matter, say that the CIA was angry with
Columbia over some issue such as the Drug trade and decided to
impose a complete embargo. Columbia could potentially be in
the unenviable position of having a completely insecure network
infrastructure and no way to obtain patches. This is probably
not a very good example - they could just illegally obtain the
patches - but there are many other ways that this dependence
could work against them
Technology and Culture
• In addition, its worth noting that modern software and the Internet
itself is Anglo-centric. It is primarily written in English.
• Language itself plays some factor in cultural development, as the
western history of Imperialism has shown - embedded in language are
the values, mores, and assumptions of the originating culture
• In this way, technology can serve to introduce external cultural
influences on other cultures. What does this do to these other cultures?
• With free software, this risk is somewhat reduced
• Free software is written by a world-wide audience - although the
language of discourse is English, the participants are diverse
• Free software, such as Linux, is more frequently adapted to other
languages such as Kanji, Spanish, and Thai - because it is possible to
do so. They do not have to rely on the altruism of a company to
release a version - they can obtain the source code and do the work
themselves
The Scientific Method
•
•
•
•
•
•
•
There are strong parallels between computer software and scientific discovery
Both are built upon the works of others - where one researcher or programmer
is unable or unwilling to take the work further, someone else will
In science, theories are not conclusive unless they are replicable - that is to say,
the scientist must publish a paper laying out their ideas, methods, data and
conclusions to the community. Other scientists then take this data and attempt
to replicate and understand it. If the results can be replicated, the work is
accepted and built upon
In commercial software, this isn’t the case. Having a binary without the source
code is like being presented with a summary and conclusion to a scientific
paper without being given any data. One may be able to “reverse engineer”
the project to discover the methods, but it is difficult and costly to do so.
In this sense, commercial ownership of software serves to hinder the progress
of software (our vital national interest) in general
With Open Source, all of the data is there for the taking - the methods can be
improved, the assumptions corrected, and the conclusions modified
All software serves as a building block for the next generation of software to
follow. With open source, this provides a rapid development path towards
better software (and hence better manipulation of our information commodity).
A Satire: “Fire”
As most of you are aware, congress has recently passed as law to allow copyright
to be applied to individual works of fire, both in terms of actual fires and in
terms of manufactured oxidation potential like matches and lighters.
I, for one, am glad to see justice finally served. I mean, think about it. You go
through all the work to create a fire, and someone comes up to your fire and
pokes a stick in it. They can then walk away, having stolen your fire, and use it
for anything. Say they use it to light the ore smelter at a metals processing
plant. They'd be making millions off of your fire without having to give you a
DIME! Unauthorized fire transfer is exactly like walking into the original
firestarter's home, stealing their VCR, TV, and all their tapes of "Earth 2," then
sexually violating their household pets on the way out. It's exactly the same,
and should be prosecuted as such.
There are a few drawbacks, of course. To begin with, you can't buy matches
anymore; you'll license them. And of course most licenses will forbid you to
give anyone else a light without first extinguishing anything you lit with the
same book of matches. But isn't that worth it to protect the rights of the
original firemakers?
“Fire” Continued
Well, the employers of the original firemakers, actually. Most ignition is done on a
"Fire for Hire" basis, meaning that the company that comissioned the
firemaker gets the copyright. But still.
Now, the real problem is that of enforcement. Given all the fire out there, it's
going to be nearly impossible for holders of fire copyright to track down the
billions of dollars worth of pirated fire stolen every year. Lots of companies
are working on developing fire that will only work with their proprietary
ignition materials, but you and I both know that those ruthless fire pirates will
find away around any protections. Already they're starting to whine about how
"conflagration wants to be free." Godless socialists.
The only answer, of course, is the force of law. That's why I encourage you all to
write to your representatives, encouraging them pass strict legislation
outlawing the possession of any unlicensed flammable materials. The only
way to stop the immoral hordes of fire pirates is to keep the tools of their
brutal trade -- paper, wood, charcoal briquettes -- out of their hands. Only then
can we insure a warm and well-lit future.
Discussion
Questions
Comments
Flames :)
this presentation to be available at:
http://www.lachniet.com
email: [email protected]