Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!


Forgot your password?
GNU is Not Unix

The Gift Culture in Cyberspace 52

rleyton writes "Prospect Magazine has an interesting (albeit high level) article about the entire free software movement. Good quotes, but the most interesting is the end questions that might provoke a bit of debate. "
This discussion has been archived. No new comments can be posted.

The Gift Culture in Cyberspace

Comments Filter:
  • I think modularity is going to be essential to future code development for several reasons.

    First, to paraphrase Daniel's post, modularity allows developers to work asynchronously in a geographically dispersed environment. This is vital not only to traditional open source projects, but also to projects (open & closed source!) in the "business" world. As telecommuting and "remote officing" become the standard, rather than the exception, the efficiency of having a codebase broken down in more easily managed chunks becomes more desirable

    Second, having modular software components makes design of modular *hardware* components easier. This becomes vital as we "farm out" tasks to specialised devices that the CPU previously handled. ASICs (application specific integrated circuits) are typically much cheaper than CPUs; using them to take load off the processor (assuming the software works properly!) makes a lot of sense.

    Third, (and not so well thought out) I think that code complexity is not a linear function of the size of the code base. My feeling is that a modular code of N lines (N large) with a well defined interface is not nearly as complex as a non-modular program with N lines. I think someone academic has talked about this at some point but I don't really remember the reference. In any case, this is the other side of the equation from my first point. Modularity makes the time spent by developers more efficiently used both from the point of view of the actual mechanics of development AND the point of view of the "learning curve" associated with maintaining, modifying and extending the code.

  • Does it provide a new method of producing high-quality software, or does it apply to only some programme categories?

    I would argue that these are not necessarily exclusive. OSS certainly provides a new method of high-quality software-- there's no need to even argue this point with the audience here. However, it only applies to some types of development.

    For example, an OS is ideally suited for OSS development since the design is well-defined (as opposed to bleeding-edge creative development), and stability is paramount. (Yes, I'd like everything to be as stable as an OS should be, but I have to concede that many development projects simply don't have the time to be so careful.)

    As a counterexample, software which requires significant R&D for the development of new algorithms tends to be poorly suited to OSS. There would be no motivation to make the large up-front capital investment without assurances of getting a return on one's investment. These programs tend to be very expensive and with limited distribution. (E.g. some specialized sound/image processing software, Mathematica, etc.)

    By far the bulk of software development could easily go OSS. How many of us have spent days/weeks/months developing custom in-house software to solve some specialized problem? These generally do not involve any leaps in technology-- they just involve putting the right pieces together. There wouldn't be any harm in releasing this kind of software to the world, yet most companies refrain from it, simply because they are used to everything being closed-source.

    What does it mean for the economics of cyberspace?

    I don't really see OSS significantly reducing the number of programmers needed. Right now the software market is so massively labor-limited that many useful leading-edge projects are stalled due to lack of people to build them. At the same time, there are hundreds of thousands of programmers happily reinventing the same wheel over and over again. How many of us have switched companies, just to find ourselves re-developing the same programs in a new environment? Valuable developer time is being spent building up infrastructure that should be readily available.

    If instead, people were making their internal software available to anyone, much of the time spent reinventing the same thing would instead go towards important leading-edge projects. There are enough of these to keep the current software workforce busy well into the forseeable future. Developers: what percentage of your work is spent on the leading edge? What percentage seems likely to have already been built by someone, somewhere? (For me, it's about 20% leading, 80% redos and I think I get more leading edge stuff than usual...)

    How can free software coexist with hard-nosed profit-maximising companies?

    If there is no cost to distributing software, then it doesn't affect profits. Companies tend to be very conservative in spreading software, just because it's always been this way-- not because they've made any reasoned choice. Internal business applications take an unusually large amount of development time, and cost the company nothing to redistribute once they're done. (They had to build it anyway.) It could even turn into a revenue generator should they sell support for a product that they would not have released otherwise. The only concern would be possible liability, but all the OSS licenses I've seen cover this.

    Flagship products will be the last to go Open Source, and in some cases will never go this way. However, these tend to be a small portion of the actual development taking place inside a company. I'd settle for seeing the other 80-90% Open-Sourced.

  • The key for where open source works and is necessary is how much based on the system. That is, when you have a high level system for doing one thing that isn't highly critical, it doesn't matter whether it is open source. It doesn't make a big difference whether a game, or a web browser, or a page layout program is highly reliable.

    On the other hand, when I'm setting up a web server, I want it to run without any problems for a long time. I need a stable operating system, and stable server software.

    I think the real indicator for when open source is going to work is, if someone needs to set up something to do X, is it worth the time to modify some open source software to accomplish the task at hand, or is it better to just use off the shelf commercial software and worry about bugs?

    I don't think there are very many programmers in the OS movement who work on programs they don't see themselves using, and a program like Quake isn't worth writing for your own enjoyment. You need to be able to sell it for that type of software to get written.
  • Do the british spell "programs" differently? How odd... Nope, the journalist got it wrong.

    But when will you Americans learn to spell "colour" correctly? :)

    Whoever it was that said "England and America are two great nations seperated by a common language" got it spot on...

  • We do differentiate between 'programmes', what you sit and watch on the microwave^Wtelly, and programs, what you sit and write on the spodbox...

    Otherwise, yeah, it's arguably a different mentality where recognition for code-writing ability is more important than financial drive.

    Maybe there ought to be more emphasis on the training & support fronts, so that folks Out There get a chance to become slightly more net- and linux-enabled, as it were; I know it's not me, as I can't stand answering the same old questions (what's a url? mummy, what do I put in for the Name Server field??, blah) all day long; others don't mind doing that, though.
  • Right, the number of people is not the only thing that counts... Part of the problem of Microsoft is that they make a strict separation between support and programming - bugs that are reported to Microsoft are usually not even noticed by their programmers. Some of the common Windows crashes occur only on very specific hardware under very specific circumstances - if it's hardware that isn't used in Microsoft, or if nobody at Microsoft uses the functionality, the programmers don't even notice there's anything wrong. That's how bugs could survive from MS-DOS 1.0 to Windows 98... With Open Source Software, people who get a crash under very specific circumstances can either fix it, or get someone to look at it (the people on the various linux [support] mailing lists all have access to the source, and a lot of them are familiar enough with the code to fix something). Another thing that needs to be added is that people who work on Linux care about it - on the other hand, I've known a number of Microsoft programmers who say Windows sucks and use Linux or *BSD at home.
  • Take a simple example using IE on a Windows box. Say you want to set your default HTML editor to Notepad. You can't.

    Umm, I hate to be a downer, but, yes, you can. With IE5 it's easy enough to do from the Internet Options dialog. Older versions may require a bit of tweaking to the registry.

    ObAntiMSComplaint: That $%^@# IE5 GPFs on me at least once a day...

  • Or if you prefer more emotional point of view- this is the 'personal value', ie
    it matters what you give, not what you have.
    One has to be familiar with programming to bug-hunt, but everyone can read CREDITS or
    README and see who made this. And if my thingy is bad designed or implemented-
    dammit, that's a shame.
    People face the world with parts of their code, there's no
    logo to hide behind.
    Just imagine: late in the night, you, your machine and your code.... How can one be bad with that? :)
  • People are rewarded, for working on a small section, and haven't the time to look outside of that. I am quite sure that MS is more efficent at producing line of code per programmer than OSS, but that is of course part of the problem. There are people within MS that understand a large percentage of the OS, and in fact contribute to things far outside of their area. Management does't handle these people well, because it tries to promote them so that they end up tied up in meetings, unable to do much coding.
  • Another significant point is that in OSS, everyone has access to everyone's code - someone writing a driver for a graphics card won't have to know much about the internals of the kernel or the libraries (s)he's using, but can check the source of the kernel and libraries if (s)he needs a better understanding of a specific function.

    People trying to write a device driver for Windows have to rely on incomplete and partially bogus documentation - and a device driver can take the entire OS down with it...
  • While I'd agree with you that most of the OSS companies have been generally well-behaved, the "rift" does indeed exist, mainly between ESR and his camp and RMS and his camp. If you take a look at the license-discuss list that OSI runs, there's been some notable incidents, including:

    RMS (correctly) insisting that GNOME is Free Software, not Open Source (and being backed up by Miguel de Icaza, the GNOME project leader)

    ESR asserting that RMS could be a better spokesman, but isn't because he doesn't bathe often enough (an assertion that RMS calls exaggeration).
  • by Hrunting ( 2191 ) on Monday September 27, 1999 @08:32AM (#1656553) Homepage
    What really scares companies like Microsoft about open-source software is the fundamental shift in philosophy it will require them to make. It's not about how secure the software is or who has access to it. Fundamentally, Microsoft wants everyone to have access to its programs, just like OSS preachers. The difference is that Microsoft is primarily a product driven company which provides some limited service for its product, similar to a car dealer. OSS companies like Redhat are a service driven company that sell some product on the side. Service-oriented industries are, by and large, dependent on the product and what scares Microsoft is that if they must turn into a service oriented company, they won't have control over the product and thus fall under many more market influences. Redhat can succeed as long as the product is there since they don't have to sell it (what they sell for $80 now isn't Linux but technical support for Linux). Microsoft, on the other hand, sells Windows and tech support comes with it. If they were forced to open-source Windows or Office, they would lost a very, very large chunk of change, and honestly, do we really need Microsoft for technical support. There are much better avenues for that (like your local computer dealer or manufacturer).

    But that begs the question, will open-source survive or even thrive. Right now, OSS has made it because they haven't needed that service. The mainstream market (the people who need support organizations) haven't bought into it. Now that the masses are beginning to understand and accept this concept, you see companies like Redhat thriving because of their expertise, but currently, it's not enough. There's too many problems for the typical newbie to overcome. The support channels aren't strong enough to support it yet. When those support channels strengthen (and the product becomes easier to use, meaning the support channels don't have to necessarily be as strong), then you'll see greater acceptance. If, for some reason, the support level can never truly match customers' needs, then you'll see OSS flounder in minimal usage. OSS will only thrive as long as the service industry can support it. Windows thrives now partially because that service industry is already in place. Microsoft doesn't have to worry about it because they make the money off the product.

    The threat to Microsoft is the same as the challenge to OSS. Hopefully, more organizations like Redhat will come along (some may consider that blasphemous) and broaden the support (and customer) base. But OSS can't truly grow on its own unless the underlying infrastructure begins to also develop for the people that use it.
  • Actually, with that statement, they hit the nail right on the head. See: Why ``Free Software'' is better than ``Open Source'' [gnu.org] for more information.

    I think it amusing that they made such a point to mention Stallman, then completely neglected to talk about the deeper relationship between Linux and GNU. That's clueless. ;)

    As mentioned before, they mean free as in freedom, or free speech, not free beer. It seems as if fewer and fewer people realize what the term "free software" means these days.. See: What is Free Software? [gnu.org].

  • Ah. Makes sense. However, I have to develop for 4.0 because that's what most of my audience is using. I have 5.0 at home, but I rarely touch it since most of my home development is done in Linux on Netskink 4.61, then I test at work and tweak as necessary. I might have touched 5.0 all of 3 times ;-)
  • ESR asserting that RMS could be a better spokesman, but isn't because he doesn't bathe often enough (an assertion that RMS calls exaggeration).

    But that's great! It gives us a personality and a real sense of community. People with dysfunctional families always have the best stories to tell, and the one about RMS's hygeine will be a classic in 5 years. Hell, it's pretty good now!
    The Free Software thing is way overblown. The difference is a philosophical one, and one that if ever decided would result in the community becoming more complacent. As it is, the Open Source people are as resolved to keep things free just to prove to the FSF people that they're really just as commited to free software, and the FSF people are more resolute because they feel the Open Source contingency is right around the corner from corrupting the whole thing. It's a perfect balance.
  • Surprising for someone who loves to rip into "journalists" every chance I get.. Anything with a license can not be considered public domain because public domain is a legal term with a very specific definition: not copyrighted. Copyleft or any other "free software" license.. hardly counts..

    I think it's interesting that they actually noted two different factions amidst the community, as there clearly are. Personally, I fall somewhere between Torvalds and Stallman, which still puts me closer to Stallman than Raymond (ugh). I think the idea of applying free software to games is pretty silly, especially since if I design a whole crew of personalized characters, I'll be damned if I GPL them along with the entire game itself. :)

    At any rate, I doubt rivalries or other factional disputes between various groups in the free software community are likely to cause anything to collapse. We all have our personal beliefs (or lack thereof), disagreements, whatever. But that's to be expected of something as anarchic as this. Sure, a lot of Stallman's original message gets clouded a lot of the time, but the point is: it still works. And no one is likely to lay down and let their ideas go unnoticed, so each group is likely to remain rather formidable as far as numbers of people with like-minded beliefs go.

    In the end, however, we have better things to do than bicker and argue over the finer points: like code. ;)

  • One Idea I've thought of developing is that Open Source is not such a strange beast as people sometimes think. Rather, it's more akin to flying-wing or ultralight aircraft. It doesn't violate any "laws", but certain advances in technology were necessary before the fabrication and implementation became viable.

    Just as advances in flight control and alloys allowed for these planes, so too did advances in communications technology allow for the Open Source software development model.

    The proprietary model requires the entire value of the product to be amortized in a single fee. Where Open Source differs is that it enables the COMBINED values of each piece of the whole to be farmed out to people who find it valuable TO THEM. It's a kind of stone-soup, everyone contributes a piece and gets back a whole (which seems to be more than the sum of it's parts, though formally it isn't).

    - Seth Finkelstein

  • How many of the movement leaders actually have a 200+ IQ? How would these people know? And since when did our movement leaders get labeled as being dicks? They always seemed to be pretty nice people, for the most part, if you ask me.. ;)

    That said, I naturally agree with Signal 11 (what, you thought I wouldn't? :)

  • "We all know that the free software movement only benefits the upper(-IQ) crust of internet users. Those of us who are intelligent enough to know how to download Mandrake 6.1 from the FTP site."

    Um.. You don't have to be able to download GNU/Linux from an FTP to benefit from free software (which is how you would benefit from the free software movement), as you make implicitly clear in your next sentence:

    "The masses will continue to buy software which is where companies like Red Hat and Mandrake will make their money."

    Are you confusing free with gratis? Because even though Joe Public is spending some dough, that doesn't mean he isn't getting a better deal because of free software (it's not like free beer! ugh..). I know a lot of (mostly) clueless people who rather like having shell accounts (on GNU/Linux or *BSD systems), benefit from pine (most other email programs that Joe Public is aware of really suck..), etc. etc.

    So I'm not sure how you mean that the FSM isn't benefitting anyone but the most intelligent of us. Besides, you don't have to have a certain IQ to know the ins and outs of the free software community. You just have to be aware of it. Even people with low IQs can learn pretty much anything if they apply themselves. Learning comes down to dedication. You can't discriminate just because of some score on a piece of paper. Do we really look at people and guess their IQ? It never comes to mind for me. Ever. How creative they are? Maybe. How smart they /seem/? Perhaps. But an exact rating of their intelligence? No, because you never know..

    And my cheap shot of the day: Don't most of the "upper crust" use Debian? ;)

  • I'd say that you're correct, about modularity's importance to large projects and why.

    We shouldn't lose sight of the fact though that sometimes modularity must cut across the grain of a program. Sometimes with very complex software everything really is closely related to everything else, and you have to cut modules where it would be better to leave things whole. Modularity is something programmers are forced to do -- sometimes you get lucky and it also models the problem you're trying to solve -- but not always.
  • by Kitsune Sushi ( 87987 ) on Monday September 27, 1999 @02:05PM (#1656563)

    As was probably mentioned before (this post got a lot of responses.. ugh), GNU/Linux is modular. Windows is monolithic. Once a program gets too big (such as Win2k), being monolithic really sucks. It's easier to run a small program and test it extensively than a huge program because there are fewer variables.. not as many things that can go wrong.. less trash to run through the debugger. ;) It has been considered "proper form" to code modularly for quote some time now. The particular "edges" that Microsoft gives itself relies somewhat on being monolithic, however.

    Now, as far as Windows instability goes.. I happen to know a few people from good old Redmond, and though I obviously can't substantiate this claim past that (I don't trust MS programmers as far as.. well.. let's just say I don't ;).. From what I understand, Microsoft doesn't really do much of /any/ bug-testing "in-house". That's what their limited beta releases are for. If you ask me, that's kind of silly, but then again.. 1) It's always better to have people test your software that aren't "close to the source".. however.. 2) Since Windows is so monolithic, any one programmer at MS is only likely to know a very small part of it. No one person could hold all that information in their brain (unless they have a photographic memory.. yes I know that's not the correct term for it..).

    With free software (I refuse to use the term "open source") most developers release a stable version and a devel version.. That way people who are interested can get the devel version, see if it runs, poke around at the code.. And since they aren't the primary developers, they may notice a number of bugs that the people who actually designed it missed.. And since this happens on such a widespread level, you get a number of different points of view all staring at the same thing from different angles, each with their own coding style, skill level, etc. This kind of development squashes bugs at a rather, well, phenomenal rate. And since it is open to anyone, not just people who sign some kind of beta test agreement, it's a lot more likely to get a good number of interested volunteers helping out. :)

    With the Microsoft way(tm), most of the bug-testing is done by, you guessed it, the end-user! (Those limited beta tests just don't cut it..) Not something Joe Public is very fond of these days.. ;) Especially when they charge a $100 for a bug-fix upgrade! Argh..

  • "The accusations of communism really are not justified, even hard core free software people like RMS are NOT communists."

    I believe he once described himself as a combination of a leftist anarchist and a (?) libertarian (sp?). ;)

    "It is the SCIENTIFIC METHOD. The "Free Software" "OSS" movement comes directly from the modern scientific method of peer review."

    Actually, the free software movement is a direct result of Richard Stallman's ethical views. Yes, it's also a matter of practical concerns, but RMS would rather have free software even if it was technically inferior. See: Why Software Should Be Free [gnu.org] (a shorter version can be found here [gnu.org]).

    The open source movement stems from those like ESR who are.. well, I won't go into detail on my thoughts. The original advocates thought that the term free software scared big business. And it did. However, now the term is corrupted beyond recognition (by.. guess who!? big business..), and also appears to have become the norm these days. How sad. See: Why ``Free Software'' is better than ``Open Source'' [gnu.org].

    Perhaps "slave" is a rather strong term in this case, and I can't recall if Stallman ever described it that way or not, but it's closer to the truth than most. The free software movement, however, was /not begun due to practical concerns, but rather ethical ones!!/. See: The GNU Project [gnu.org].

  • by El Volio ( 40489 ) on Monday September 27, 1999 @07:15AM (#1656565) Homepage
    When software is just written as a tool or to accomplish a general task, OS works beautifully. Just as peer review in science tends to result in research that withstands scrutiny and means something, peer review in software development tends to result in higher-quality, more secure software (I definitely fall into the "pragmatic" group in the article).

    But it doesn't work for everything. In-house applications whose structure must reflect internal processes may not work as open source, because it reveals too much internal information. Additionally, as many have pointed out in the past, games have too short a life-cycle to really work as open source. The engines fit the model, but the game as a whole really doesn't.

    This isn't a slam on open source software. I prefer it in almost every arena, especially when I'm concerned about security. But we need to recognize that there are situations where it doesn't work. Closed software is not the same as slavery, folks: there are times when keeping the source hidden does work and is appropriate.
  • "They felt that "free software"
    sounded too frightening."

    Yeah, that really scares the shit out of me!! Seriously, they do confuse free software and OSS - software can be free without coming with source, surely.
  • by Anonymous Coward
    Nice to see an article not about Linux and marketshare, or Linux as a Microsoft kill but about the open source movement in general. They use the term hacker in its original sense which shows that they know what they are talking about unlike articles you would read on a site like zdnet where hacker is "bad" and confused with "cracker." I did a proposal last semester for companies to use open source instead of a traditional closed source development model and I did a lot of thinking and theorizing in order to put it all together. Most of those points were in this article. When You explain why open source works you need to do a lot of theoretical explanation for the uninitiated to understand. Us, being members of the community already know it works, and don't as often look to why. It can work in an economical model as well as scientific, it is just harder to show how and why it works economically to someone who is on the outside so to speak.
  • I'll agree with you that they are confusing the terms a little (not being up on every nuance of the FSF's current standpoint . . . but who is?!?), but the point they were trying to make still holds. Examine the "free speech, not free beer" statement we're all familiar with (particularly those of us who'd rather have free vodka).

    Free beer, as in the COST of the beer is nothing. You want beer, you take beer, you do not exchange any goods and services for beer. This is what they were saying corporations were scared of by "free software". Though there is a TON of software that is free in this sense, that's not exactly the point. And corporate philosophy suggests that this is a Bad Idea(tm).

    Free speech. There is no restrictions on what you say, or what you use your words for. Apply that concept to software. You can do what you want to the proggie, for whatever use. Take a simple example using IE on a Windows box. Say you want to set your default HTML editor to Notepad. You can't. And not only do you not have the option, you can't crack open the code and hack a few lines out so that you can. You are not free to do anything you want to. Whereas with Netskink, though it's packaged with composer, there is an option to set your default editor to whatever you want (whether it's a valid editor or not!). In that sense, Netskink is more FREE than Internet Exploiter.

    Yeah, the article may be using "free software" and "open source" interchangably (and I agree that they shouldn't be), but the point still holds, and in the context it still makes sense.
  • It was developed in the same collaborative style as Linux, is entirely in the public domain, and is reliable

    Software licensed under the GPL and BSD licenses are not at all in the public domain. The source code is available to the public, but not in the public domain.
    And will the movement, riven by tensions between Open Source pragmatists and free software fundamentalists, fall apart under the pressures of success?

    No. If anything, I'm seeing the whole open source/free software movement strengthened by success. Nothing RedHat, Cygnus, or any of the other OSS companies is doing is hurting the FSF ideal. With the success of RedHat, more and more companies are going to see that the FUD that free software companies can't be successful is just that. Maybe it'll take Corel doing well to really convince them, though.
  • This is true, for example, what I work on is a fifteen year old gargantuan piece of software where industry knowledge is essential to be able to work on it. (i.e. the code could be totally logic bug free but it still doesn't do what it's supposed to). I can't see how this sort of development could work in the open source model.
  • by Signal 11 ( 7608 ) on Monday September 27, 1999 @07:22AM (#1656571)
    Oooh, this article's parting comment about the movement leaders "not suffering anyone with a sub-200 IQ" is ridiculous and wrong!

    It's wrong because it presumes that you need to be intelligent to contribute to this movement. It's wrong because intelligence is NOT the primary attribute required to make a meaningful contribution to this culture, and it's wrong because ESR said it [tuxedo.org]. It is simply a wide misconception that you need to have a 180 IQ to program - Microsoft is proof of this. *rim shot*

    If you guys want to talk about the technical community, talk TO the technical community before you publish - don't go making blind assumptions about what you need, or do not need, to be a member of this community. When in doubt - ASK!

    Do I seem upset? Yes, that's because I am. That statement does more to undermine the free software movement than virtually any other - we accept contributions from anybody. If it's good, we'll take it. You don't need to be an Einstein to join us.. all you need is dedication, and time.


  • I have a question about Open Source projects that has been nagging at me lately. It's often said that one of the advantages of OSS is that you have, literally, thousands of eyes peering at your code, which makes 'all bugs shallow'. It seems to me there must be a deeper principle operating.

    Microsoft apparently has 4000 programmers working on Windows 2000, which has got to be close to the number of coders who regularly work on the linux kernel, yet the linux kernel seems to be much more stable. M$ doesn't appear to be benefiting from 1000s upon 1000s of eyes, so where do the differences in the models lie besides the sheer numbers? Can anyone enlighten me?

  • by deefer ( 82630 ) on Monday September 27, 1999 @07:48AM (#1656573) Homepage
    Does it provide a new method of producing high-quality software, or does it apply to only some programme categories?

    I'd say it suits all, but fits some better than others. As a general note, Open Source code is only released when it is correct - I can't bring to mind any new release of any OSS that is not a definite step forward, yet I can easily bring to mind many patches from commercial suppliers which exacerbate what they were trying to fix. I think this is because OSS programmers aren't under pressure to bang out the next version - proof that Sales & Marketing departments are inherently evil and counterproductive to good code. By this nature, OSS software is not suited to very fast moving technologies, yet is excellent at instances where programmers have the time and opportunity to get it right.

    What does it mean for the economics of cyberspace?

    I can see less & less commercial vendors out there flogging proprietary code, which could be dangerous. If there are less professional programmers, there will be less students, so who will actually write the Open Source Code? There will have to be a big shift in corporate attitude to prevent this. Companies will sell mostly services, and give away the applications free. So cost models will shift to reflect that; most of the cost models I have seen in industry are heavy on the "system" cost and mostly have support services bundled in. But will users pay heavily for something as ephemeral as support? If you buy a system, you have something shiny & new you can show your shareholders. If you buy support, you have a voice at the end of a phone line that shareholders never see.

    How can free software coexist with hard-nosed profit-maximising companies?

    Closed Source will almost always be the poor cousin of Open. Even if companies base their code on existing Open source and charge for any additional reworking, there will still exist a "free" version within a few months. Companies won't dare invest in innovation with Open source, in case someone picks up the idea, rewrites it and gives it away.

    Business which depends on Open Source (like RedHat) must keep the OSS community on side, or will rapidly perish.

  • The article is bland, but the questions interesting. I have thought this before releasing my own code as OS (cpuburn http://users.ev1.net/~redelm FYI).

    First, people will code to solve their problems. Second, if you've already written the SW, the cost of releasing it OS is minimal. Only if you could sell it for significant $$$ would you hold back. Or planned that all along (software companies).

    But the Unix design is very modular. While a whole Linux/*BSD OS _is_ worth alot of money, the components are worth very little sold individually. Fortunately, they are also easy to write.

    So I would argue that OS will work for modularizable code, but not for large monoliths such as MS-Windows applications. Even large Xapps become monoliths, and saleable. How much would you pay for Lotus 1-2-3 for Linux/X?

    Sometimes, strategic considerations cause companies to release otherwise saleable code as OS [Netscape]. I expect this is the exception, not the rule.

    -- Robert
  • Our world has been driving down the cost of virtually everything for as long as technology has existed. Add to that the prospect of nanotechnology, and I think it's quite plausible to anticipate a future (near or not) in which it's not worth the transaction costs to charge for food, shelter, clothing, etc. The Open Source movement looks intriguingly like the first hint of what that future might be like.
  • Perhaps the reason that Micrsoft errors are not so shallow is that Microsoft programmers don't even get to see the whole source code, they only work on assigned parts, and never get to see how they interact with other parts of the program or OS. Whereas the Open Source programmers can view the whole source code and see "oh my code may conflict with this part, I had better fix it".
  • Do the british spell "programs" differently? How odd...

    Anyway, the free software movement (IMHO) will survive as long as there is glory in it. If a programmer can get respect for code then that's a huge motivation right there.

    We all know that the free software movement only benefits the upper(-IQ) crust of internet users. Those of us who are intelligent enough to know how to download Mandrake 6.1 from the FTP site. The masses will continue to buy software which is where companies like Red Hat and Mandrake will make their money.
  • by Daniel ( 1678 ) <dburrows@deCOUGARbian.org minus cat> on Monday September 27, 1999 @08:54AM (#1656580)
    Since I obviously don't have access to the Windows source code, and in fact haven't even seen Windows 2000, I'm going out on a limb here :P However, I can answer in one word:

    Most free software projects I'm aware of are highly modular and compartmentalized. This is obviously nice aesthetically, but also necessary for the project to even exist: if the developers are geographically dispersed and working in their free time, no-one (well, almost no-one) can be an expert in every part of the system. It is therefore *essential* that the program be broken down into bite-sized pieces, or no-one will be able to comprehend it, much less work on it. Keeping a clean separation between components has the side effect of tending to contain bugs within a code module, therefore making debugging much easier.
    My feeling just from using Windows is that things are much more tied together -- 'integrated' if you will. There is an effort to divvy things up, but it feels like this division isn't clear enough, especially in Win9x (where you have all sorts of weird hacks involving DOS programs interacting in strange ways with Windows programs..)
    Small discrete programs lend themselves really well to free software development, perhaps one reason that free software has been traditionally associated with UNIX-like systems.
  • Damn - I lost half my post! Take a look at James Hogan's _Voyage from Yesteryear_, in which a future human colony develops its own customs in a world where material needs are essentially free. Hogan's not great at three-dimensional characters, but he knows his stuff and is usually fun to read. Anyway, the "gift culture" this article described really reminds me of this novel's world, where the "currency" that the economy operates on is competence, not ownership.
  • software can be free without coming with source, surely.

    Not really. The term 'free software', in places like Slashdot, refers to freedom, not price. You might pay money for the software, but it would still be free if you have freedom to use, distribute and change the software. You can't make changes without having source code, so all free software must include source.

    So there is a difference between free and 'FREE!!!'.

  • I have to agree, not every software project will benefit from Open Source, but I wouldn't be quite so quick to write off games JUST YET.

    Yes, games need a 'focus' and over-riding consistent plot/story, and that may not be possible due to the 'too many cooks spoil the stew'; fortunately there is progress:
    i.e. http://crystal.linuxgames.com/
    i.e. http://www.mesa3d.org/

    Notice that the above links are engines, not full games. Once people have some good free engines/tools to build a game, I think we'll start seeing some more open source games. As to the quality, now that is up for debate. I thought there was an article on slashdot a while back that discussed why games would never be open source. i.e. where will you find artists and musicians to work [for free] on an open source game?
    For the time being, a [proprietary] custom-coded engine designed specifically for a game will do a much better job then a generic open source engine, but who knows what the future holds?

    Slightly off-topic:
    I like this line: "Open Source works in practice; will it work in theory?"

    Yeah, and in theory, NT works, too bad it doesn't in practise. (and yes, I use NT _AND_ Linux at home, both have their place.)
  • The accusations of communism really are not justified, even hard core free software people like RMS are NOT communists.

    The article describes sharing software so we are not slaves to one another.

    It is the SCIENTIFIC METHOD. The "Free Software" "OSS" movement comes directly from the modern scientific method of peer review.

    How can I say I have the best software for the job if someone can't look at how I made it and propose better solutions? Most of us don't want the destruction of software companies and free market economies, we just want the BEST software that could possibly exist. There is no other way. Wether you are cathedral modeled like the FSF or bazzare modeled like the linux project, you still just want the best software the world has to offer.

    There is a loose tie here between Computer Science and Computer Engineering. In most scientific inquests we expose our results and methodology so other people and try it and verify wether we were correct or not. Anyone who does not release their methodology is not believed.

    In an engineering task, like writing software, we are not trying to find truth, but we are trying to find the best way to do things. We want it effecient (works on small resources), feauture complete (does all the things we would like it to), and robust (doesn't stop working just because the wrong thing happend). We cannot verify that we have the best peice of software if we can't look at the code and propose a better solution!

    Sure there is an ego trip of being the person who is always finding the best solution, or of showing off your code and having other people use it because it is the best.

    But most importantly we just want the best software! Peer review leeds to the best software.

    If you want a feature or a bug fix enough, you will learn how to do it, or find someone to do it.

    More libatarianism than communism.
  • I think a lot of this has to do with the basic design of both systems.

    The core of Linux was designed as a clone of the Unix core, a system that, whatever its faults, has undeniably stood the test of time.

    The core of Windows was a kludge, designed to give a crude graphical interface using hardware that really wasn't there yet. From inadequate disk space to insufficient memory, machines running Windows 3.x were not ready for any kind of elegant solution.

    Each subsequent version of Windows has attempted to add features to the original. For instance, Windows for Workgroups introduced networking, Windows95 introduced the 32-bit subsystem, and Windows98 introduced the abysmal web-based user interface. But the basic core - the use of DLLs in the C:\windows\system\ directory, the lame "multitasking", etc - remained. In other words, the new features attempted to paper over the deficiencies of the old system. What they did was like adding a remodelled kitchen with a Sub-Zero refrigerator to a house with a crumbling foundation.

    The result is, unsurprisingly, an unmaintainable mess. It's only partially upward-compatible and doesn't really work very well.

    The biggest strength of the Linux development model is that it would not allow an abomination such as Windows to exist; nobody would be willing to pour their love and/or spare time into such an effort. Instead, development proceeds in a modular fashion, and interactions between, say, X-Windows drivers and the basic operating system are avoided. That goes a long way towards avoiding crashes, too.


  • It was Winston Churchill.
  • Interesting to read this thinking about Kim Stanley Robinson's Mars Trilogy (which is you haven't read it is probably the greatest work of sci-fi this decade). On Robinson's Mars, the gift culture developed because people needed to rely on one another to survive... I wonder if not a simmilar reason has forced Academic Computing in general, and Unix (and it's brethern) in particular to also develop the gift culture we so lovingly call open source. It also interensting to note that the gift culture on Mars grew up in opposition to the big metacorps that originally held the power... can anyone here say Microsoft?
  • where will you find artists and musicians to work [for free] on an open source game?

    You could also say, "where will you find programmers to work [for free] on an open source game?" I think you might very well get artists doing some stuff in their spare time just as you get people coding OSS in their spare time. For the same reasons.
  • Yes. Eyeball count is only part of the story. The other parts are motivation and ability.

    If you're working in a software house, you've been given a chunk of code to write/debug. Probably a poorly defined target. You'll do that, and go home at 5pm if you can. Fixing problems in other people's code likely won't bring you much reward. Worst of all, you don't really have ownership of anything.

    Contrast that to OS: People have a problem they need to solve. They debug or write code to solve their problem, and share it because it's easy to do. They _own_ their work, even if Linus rejects the patch, they can still use it.

    Ability is a very controversial subject. Suffice it to say that I don't think you can hire contract programers as skillful as OS volunteers.

    -- Robert
  • There will always be those who charge for their proprietary software. The difference will be in the way it is sold.
    1) Crap won't be sold. OSS will take care of setting an excellent baseline for software.
    2) The term 'Value Added' will once again have meaning. Commercial software will be EXCELLENT compared to OSS (or nobody will buy it!)
    3) Licensing of commercial software will be very consumer friendly, not the other way around.

    My example for the day:
    Backup software. If a company provides GOOD backup and archival software for me, that does what *I* need it to do, and has a commitment to supporting *ALL* hardware that comes out, then I have no problem paying for it, provided it gives me real value compared to the OSS alternative. If this company fails to do their job at a fair price, and in an appropriate manner, the OSS world *WILL* catch up with it. This doesn't mean my definition of fair, or yours, but collectively, everyone who works on OSS. What I mean is, if people are happy and content with what they have, they won't seek to re-invent it.
    The software world today is certainly nothing like this.
  • by Arandir ( 19206 ) on Monday September 27, 1999 @09:20AM (#1656592) Homepage Journal
    "The free software movement raises some big questions. Does it provide a new method of producing high-quality software, or does it apply to only some programme categories?"

    It only applies to two categories well. First, it's very useful, and will most likely replace proprietary software altogether, in the area of infrastructure and "commodity" software. This includes web servers, text editors, kernels, compilers, etc. These are the projects that thousands of people code on. Some things that aren't "commodity" classed yet, could be in the future if an Open Source version makes it so. For example, office suites aren't a commodity yet, but the release of KOffice and Workspace could very well make it so.

    The second category is "hobby" software. Someone has an itch and scratches it. It's written because someone wanted to have fun writing it. This software doesn't get the benefit of ESR's thousand eyes peering at the source code. Often, only one or two people ever code on it. But sometimes these programs will mushroom out and take on a life of their own.

    Other categories of software will be a mix of Open and closed source programs. I don't see Open Source taking over more than a small minority of games or vertical apps.

    "What does it mean for the economics of cyberspace?"

    I hate buzzwords. If by 'cyberspace' you mean the internet and its sucessors, it has already changed the economics of it. The infrastructure of the internet is already Open Source. The commodity software of the internet (browsers, media players, commerce solutions) are rapidly becoming Open Source now. Javascript, perl, HTML and XML have open source code right now, it's only a small step to make them true Open Source.

    "How can free software coexist with hard-nosed profit-maximising companies?"

    For infrastructure/commodity software, it's the proprietary companies that will have to learn how to coexist. For other categories, Free Software developers are going to have to learn the rules of the game: marketing and targeting. People who buy vertical applications don't choose their application out of ideology. They choose based on suitability to their needs. This will mean that Open Source solutions will fail if the proprietary solutions are targeted and marketed better.

    "And will the movement, riven by tensions between Open Source pragmatists and free software fundamentalists, fall apart under the pressures of success?

    They movement may fall apart, the concept of open software will not. It existed with the first mainframe and will continue to exist until we replace the generalized computing device with something better.

    It's important to note that every movement has it's "true believers", the "core group", and the "hanger-ons". True believers are always in the tiny minority, whether it be a political party, a religion, or anything else. Hangers-on are always the largest group but they rarely contribute anything. The core is what drives the group. They aren't fanatics but they aren't followers either. If they feel that Open Source has to change, right or wrong, it will do so

    "Open Source works in practice; will it work in theory?"

    If it don't, change the theory.

"If it's not loud, it doesn't work!" -- Blank Reg, from "Max Headroom"