Slashdot Log In
The Cathedral And The Bizarre
Posted by
CmdrTaco
on Fri Jul 07, 2000 11:42 AM
from the gee-whiz-never-heard-that-pun-before dept.
from the gee-whiz-never-heard-that-pun-before dept.
Euro writes: "Jeff Lewis has written
an interesting article for
macopinion.com that discusses why Open Source hasn't taken off that well among the Mac enthusiasts. Interesting reading, as well as some excellent commentary on why the Bazaar development model isn't always a great idea." (timothy butts in: You might also want to revisit the recent Ask Slashdot about promoting Open Source on the Mac.)
This discussion has been archived.
No new comments can be posted.
The Cathedral and the Bizarre
|
Log In/Create an Account
| Top
| 260 comments
(Spill at 50!) | Index Only
| Search Discussion
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.

Re:Here's why: (Score:5)
Since Apple products are the monolithic beasts they are, I think they actually inspire more curiosity. Ever since ResEdit and MacsBug were written, neophites have been introducing themselves to the wonderful world of OS hacking. One early example that comes to mind is the classic shareware game, "Spaceward, Ho!". It lacked a few keyboard shortcuts that some people wanted... a quick edit of the resource fork, and viola! Command-T suddenly advances the turn. The new keystroke even shows up on the right side of the menu option, just like in all other MacOS keystroke options. Make one minor change like this to one program and you get sucked in.
Hardware is also tinkered with. The original iMac had a "Mezzanene" slot on the mobo (left over from when that board was meant to become a thin client). A clever German company saw it as a potential unsupported PDS slot to make up for the lack of PCI expansion. They made a combo card of video-out and SCSI.
Mac hacking is possible, you just need to know the platform. Since most hackers cut their eyeteeth on x86 boxes, a lot of the Apple world seems strange and impenetrable, but it's not so bad once you learn it. For example, the LinuxPPC group had an iMac port within weeks of the release, USB support and all.
Okay, okay... enough cheerleading. I'll stop now.
The story was interesting, and almost as one-sided as ESR's speech. It would be cool to get JL and ESR on a debate panel together. (After they each make a quick pass through a metal detector. No need for bloodshed.)
Here's why: (Score:5)
No really--the hood is almost literally welded shut on every Mac. This style of computer doesn't breed much curiosity in the user, so Open Source is unlikely to interest them. That doesn't mean they couldn't benefit from it, it just means that the two groups don't have much overlap.
--
Hobbyist faction (Score:4)
Imagine my surprise, as an Apple II, II+, and IIe user, when I first looked at a Mac. "How do you open this (*&$ thing?" It was the single most disappointing thing that I'd ever seen in the world of computers.
That is, until I tried to figure out how to program for them, and found out that
1. There was no command line.
2. You had to buy additional software, as far as I could tell, just to program the damn things.
3. Apple didn't want you developing for the Mac unless you werre a commercial licenser.
4. Hardware upgrades? Pshaw!
5. There were 15 books you had to read in their damn developer's guide.
In fact, Apple put up so many barriers to entry, relative to the Apple II line, that I'm surprised that anyone ended up programming for their sealed-box, crappy-spec'ed, proprietary bull&(*t.
It was shortly thereafter I switched to x86, and so far, I have no regrets whatsoever. As far as I'm concerned, Apple is basically the antithesis of everything the Open Source philosophy represents.
The Mac Construction (Score:5)
There's something strange about writing Open Source software on a platform when the development tools are Closed Source. It's kind of hard to write Open Source in Microsoft Visual C++, and it's also kind of hard to do it in Metrowerks Codewarrior. Why? You obviously paid for those tools - and so you don't necessarily want to give it away for free. With MacOSX, the development tools are now free, both as in beer an in speech. It makes it much easier to develop Open source applications.
Secondly, there just wasn't enough Open Source software to leverage on the MacOS environment. Most free software on Linux is built around free libraries, and couldn't exist without them. On MacOS (pre-X), there weren't enough free software libraries available. On MacOSX, the BSD subsystem garuntees easy ports of libraries like guile and glib, upon which many applications depends.
It's quite probable that when MacOS X arrives, there'll be an outpouring of Open Source software just for those reasons. Once some of the GNU libraries are ported, people will start to use them - and Open Source what they create.
Lack of Critical Mass (Score:3)
The bottom line is that it is just too damned hard to port most stuff to the MacOS, simply because there is no infrastructure for porting (and then maintaining the port). For example, the most recent port of GCC to MacOS is ancient, and from that comes obstacles to maintain anything else in the OSS community.
The lack of a solid command line environment is only partially an explanation -- MPW is free (at least now it is), and could have been a springboard for free development. But we just never had the technogeeks interested enough in these fundamental infrastructure tools to move forward.
Absent a compiler, makesystem and uniform libraries to use other code, there never was the critical mass to do serious builds of serious software. The absent of the serious stuff meant the benefit of OSS was never felt or perceived by MacTech community -- including those of us who live to breathe in U*ix on other platforms.
There needed to be a core of beautiful tools before a core of beautiful applications could be found. Build that (on any platform) and they will come.
MacOS X has this basis built-in. Perhaps things will change soon. Time will tell.
Re:Ignorant (Score:4)
Well, maybe that is why there aren't that many devlopers for MAC. Maybe that is why there is such a small base of software for the MAC.
A MAC is an ID number found on ethernet cards. To get to your point, I've never had trouble finding software for my Mac, and there seem to be plenty of developers around.
The other serious mistake the author makes is somehow equating Linux as a GUI, then the GUI is xfree86. Ironically, X Windows is one of the oldest GUI's in existance, and the author is trying to make the point that it is too "new" to be mature and compete.
It depends on what you mean by "mature and complete." If you mean that it's technically flushed out, sure. It's old and stable and has a lot of work behind it. However, as a GUI, it falls pretty much flat on its face. It's not easy to use, and nearly every program has its own little way of doing things. Gnome and KDE may be pretty, but they don't address that fundamental problem.
And yet it's one of the most popular OSS programs today. Not a very good example of OSS failing is it?
Windows is one of the most popular pieces of software in existance today. Not a very good example of Microsoft failing, is it?
We all know that popularity is a bad metric to judge things by. Perl is amazingly free and powerful. It's also a write-only language, and allows me far too much leeway in how I do things. Personally, I do much better when my language enforces things on me. The perl syntax is a hopeless mishmash. At my place of employment, when somebody needs help with Perl, it's almost always about syntax. Some of us have been using it for quite a long time, too. Perl may be powerful, but it is a very poor design.
Don't get me wrong, I love *BSD, but what qualifies it as the fruit of OSS? I would put Apache or Linux in that slot, hell Perl has more of a claim to that title.
Er, I dunno. Maybe because BSD is OSS, and has been worked on as an OSS project for years? What's so hard to understand about this?
This same 'elitism' is what pulled us into a GUI based world of computing.
I believe Xerox was the one who did that. You "elitism" is showing simply by insuating that Apple invented the GUI.
He never claimed Apple invented the GUI. He said that Apple popularized the GUI. There is a big difference. Xerox may have made the first vaguely-practical GUI system, but they couldn't market it worth a damn. They didn't even try. There's a long, long road between having a proof-of-concept machine and having a system that sells millions of copies a year.
This guy really seems to have some deep anger towards OSS and the success of Linux, and while he makes one or two good points, they are overshadowed by his inaccurate claims.
This guy really seems to have some deep anger towards critics of OSS and the success of Apple, and while he makes one or two good points, they are overshadowed by his inaccurate claims.
There. I'm off the sarcasm bandwagon for today.
Re:Ignorant (Score:3)
Well, I have no figures, so I can't dispute your figures as far as number of developers. I would be interested in hearing any more specifics you might have about not being able to find Mac software.
What is the fundamental problem you speak of? That there isn't consistant interface? That is EXACTALLY what KDE and (to a lesser extent) GNOME address.
No, the fundamental problem is simply one of ease-of-use. Usability isn't graphics, it's underlying design, and KDE and Gnome do not address it. Neither KDE nor Gnome will fix the problem that I have to learn four different ways to use copy and paste, depending on which programs I'm working with. With a Mac, every program is the same for fundamental things like that.
I think the underlying problem here is the assumption that everything has to be simple and easy to be "good". Perl was DESIGNED to be powerful, the trade off us ease of use. You don't buy a S/390 to do word processing, so why use Perl if you want a simple, easy to learn/understand scripting language? Use VB if that is your need.
I disagree: the underlying problem is the assumption that usability and power vary inversely. I run across this assumption more times than I care to think about, and it is patently false. For any given design, the ratio of power to ease-of-use tends to equal some constant k. HOWEVER, that constant can be changed by changing the design. I'm currently having loads of fun with Objective-C. It is far easier to mess with than C++, but fundamentally more powerful at the same time. There is no good reason why $_, @_, $@, etc. should be legal variable names in any language. They're pure nonsense. Why couldn't they be given more descriptive names? It wouldn't kill the power of the language, only reduce the ability to write incomprehensible statements. This is, of course, only a simple example.
Neither could Apple, that is why Microsoft REALLY made the computer the household appliance it is today and nearly destroyed Apple in the process. Sure Mac has it's nitch and it's even making a pretty impressive comeback, but for all it's userfriendlyness and technical superiourity, it was beaten by Microsoft's marketing machine.
Apple was the first to introduce the GUI to the masses. Apple enjoyed massive success for quite a while with it. The fact that Microsoft beat them at that game eventually is irrelevant: Apple did it first. Xerox didn't even try.
I do, when they use blatent false statements (Linus was the only one who wrote Linux, it wasn't reliased until 1995, commercial software is more customer driven, etc) as their basis for finding fault with it.
But those don't form his basis, they are simply examples. His point that the Linux kernel is tightly-controlled still stands. The fact that Linux is written by programmers FOR programmers is obvious to anyone who's tried to show a bash shell to somebody who's never seen an UNIX-style command line but is otherwise highly computer-literate.
That's a very humerous turnaround of my words, but humor aside, what innacurate claims did I make? Aside from correcting the author on his innacurate claims the only one I made that is questionable is about Mac not having many developers. By comparison to Windows and *nix, it doesn't.
Claiming that Xerox foisted the GUI upon the world would be one. I don't believe you really made too many false claims (I admit, I was just having fun with your words), but you are either misinterpreting, or having trouble seeing the issues from the writer's point of view.
Why little interest in Open Source on the Mac. (Score:5)
Most of the Mac people I know are artists, musicians and designers. In other words, not programmers. This is Apple's main market, and these folks probably couldn't care less about whether or not their programs have source code because they wouldn't know what to do with it even if it was available.
Me? I'm in with them: an HTML and graphics guy. I'm not a programmer by trade, but am enthusiastic about the Open Source movement as a whole. I have PHP3 installed on my server and will eventually figure it out because I want to make better Web pages. I'm also really looking forward to OS X to see what things like Apache will do for me.
I've used my share of OSes and platforms, and the current MacOS does what I want to right now. In the future, this may change, but I like what I have.
The general rancour I've seen from the so-called 'Open Source' community against people who aren't programmers will hardly lead the masses to the cause.
Pope
Freedom is Slavery! Ignorance is Strength! Monopolies offer Choice!
Re:Here's why: (Score:4)
The fact that the MacOS is so shrouded breeds more curiosity.
The real reason is that, for years, the Mac has been viewed as a 'toy' by 'real' computer users.
The funny thing is, this view became popular because of the Mac's GUI. For some reason, this perception has persisted, even after the command-line was jettisoned by the vast majority of users in favor of a MacOS ripoff.
Re:Grossly uninformed article (Score:3)
That's not what he's saying. He's saying that Linux has 1-3 central decision makers who have all say over what goes into the system. You can liken Linus to the Pope of the Church of Linux with people like Viro and Cox being Archbishops. The fact is that unless you get the approval of a small number of individuals, your patch doesn't go in in a successful Open Source project. This is to prevent crappy code from getting in. This is identical to the way it works in commercial companies. In fact, from what I've read, this makes Linux far more cathedral-like than Microsoft. Read the link provided by this [slashdot.org] old Slashdot story for more on that. Maybe that explains the creeping featuritis in MS software.
Now, the GUI issues. Apparently, he has never used GNOME or KDE....
Maybe he has. At least, I've used GNOME extensively, though I've never touched KDE. If it's anything like CDE, though I have serious issues with it.
The standard GNOME configuration provided with Red Hat gives you all sorts of chances to customize yourself into a corner, but does extremely little to address the key GUI needs of improving workflow and providing usability guidance to the user. The help program provided is of little practical use in learning how to move around, and the extreme level of customizability means that you will very rarely have any level of consistency in the behavior of mouse-focus and clickable actions from machine to machine.
The latter means that a user must relearn how to navigate the system each time they sit down at a differently configured machine. In Human-Computer Interface classes, they teach you that this is bad. Linux tries real hard to improve Ease of Use, which is important for frequent power-users, but they do it at the expense of Ease of Learning, which is important for inexpert users.
The high level of customizability means that every user is an inexpert the first time they sit down at someone else's configuration. Most GNOME setups don't provide good tooltips or other forms of help to let you learn this new system. Due to a lack of standards in application design, what one user learns from learning to use one application rarely applies to another application. This is also known as Bad HCI.
Pick a few simple tasks. How do you set a background in Red Hat's GNOME setup? Do you do it in the GNOME Control Panel, or do you do it in Enlightenment's configuration? If you do it in both, which has precedence? This is redundant and confusing functionality. This is what results from having no overseeing architect for all areas of design.
How do you launch an application? Ah, ah. No cheating and using the command line. Do it with the GUI. Now launch an application that is not part of the standard setup in the GNOME start menu clone. Was that honestly intuitive the first time you tried to figure out how to do it?
Open a file someone gave you. Can you do it without having to know what application to load first?
These are simple, common tasks that GNOME does inadequately because of no central overseer in the design of the system.
Oh, you mean vaporware. Sure... That's an example of a working, consistent GUI for Linux users today.
Not only that, but he fails to remember the overall crappiness of elder GUI's.
Like what? Smalltalk-80? Windows 1.0-3.11? Hmmmm... X11?
Mac OS 9 is the leader in modern GUIs. Find me something superior. Honestly. The closest competitor is the BeOS. Nothing in the Unix world comes even close.
He fails to see the original purpose of Linux (just a toy??)
Yes. Just a toy. Linus was a grad student who created a hobby project to better familiarize himself with the 386 archetecture and to provide himself with a hobbyist Unix for his PC. That it grew into something greater is a happy accident. The desire for security, stability, and networking came from the desire to make it a better clone of Unix, a commercial system which had figured out these issues first.
This is the only right way to design a system...
This is not the only correct way to design a system. You must first understand your users, a task that many Linux projects, often started by young, inexperienced college students, fail at. The Mac OS was designed for ground up with a different goal. Usability. This kind of hubris that "my needs are everyone's needs" is one of the core problems with Linux getting a good UI.
To be honest, most of the Mac OS's current instability came from the introduction of extensions into the archetecture. This was an attempt to give developers more access to and control of the system. Well, that and some bad code that seemed to get introduced in System 7. Mac OS 8 and 9 have a far more solid core than many give credit for. There are some lingering design limitations that came from trying to cram functionality into 128K of memory. They are paying the price today for being too clever back then. Unix has had 30 years to straighten itself out in a variety of backwards compatibility shattering ways. (I don't even want to get into what AIX alone has done to drive developers to dementia.)
The problem is that Apple isn't willing to risk insecure and buggy code like Microsoft was. They might be able to make all of the current Carbon codebase modern while leaving the older function in place in the same manner that Win32 does with Win16 and DOS calls. They aren't going to do that, though.
Of course, our talented (ahem) writer fails to point out that there is a good reason that MacOS X is being built on top of a BSD kernel.
He assumes that it's known. However, do you think that Linux as whole could shift to running the monolithic kernel over a capabilities-based microkernel for improved security reasons? No. Apple can afford to make this radical change precisely because of the Cathedral style of development.
That completely doesn't diminish his point. The weakness of OSS is HCI, which is the Mac's strong point. The fact that RMS had the utter gall to tell developers that focusing on UI was wrong shows how little the Open Source and Free Software movements seem to understand the user base.
Nothing gets my goat more than someone telling me that a flaw in a piece of GPL'ed software is nothing bad because I could always fix it myself. That kind of condenscending attitude towards the user is what hurts OSS the most.
Programmers _are_ the users (Score:4)
One of the reasons linux is insanely popular with it's users is that it is an operating system developed for, and by, the developer mindset. I love linux because I can do absolutely whatever I want with it, to it, and for it, without anyone telling me "no you can't". Mac and Windows are operating systems for "Everyone" and their dog.. so of course, they're not designed for the hard-core segment of the market that founded this industry - the geeks!
The crux of this is that do we really want linux to be mainstream? I don't really think that people are working to make linux mainstream - sure, the installers are getting better. Sure, we have gnome, kde, berlin - but these are still made for and by developers and the hard-core, just those that want it to look prettier. People are working to make linux better, and that's what makes it great.
This article misses that very key point that in many cases, the users are the programmers. There's no great divide between the two like in the Mac world - I would hazard a guess that the majority of Mac users have never compiled a program. I would hazard a guess that the majority of linux users HAVE compiled a program before, and in many cases, I'd guess they've even compiled the kernel - the OS itself!
Windows is fine for some people, it's not fine for me. I don't develop in Linux for the windows sheep. I use linux because I want a powerful OS that lets me do what I want. There just happen to be a lot more people like that than Bill Gates things, and because a lot of those people are developers, the end result is a whole shebang of software and "nifty stuff".
The french have it right: To each their own. Those that want linux, will come. I don't plan on ramming linux down anyone's throat (although it might be fun to ram up another orfice of one or two CEOs.. *grin*)
Targets? (Score:4)
"Sweet creeping zombie Jesus!"
Re:Why little interest in Open Source on the Mac. (Score:4)
I also agree with the idea that, "this is working for me now." Even as a programmer, OS programming doesn't interest me that much. I don't want to spend a lot of time monkeying with my OS if I don't have to. I want to pull it out of a box, install it and forget about it.
This was something that needed to be said... (Score:5)
Finally, a lucid explanation of how the Open Source model isn't necessarily the best development model all of the time. It generally makes a lot of sense, and there are a lot of things it's well-suited to, but the points made in this article are valid and real.
Commercial software is typically designed for the simple purpose of making money. Not to make the world a better place, and not to do "something cool for the community" in order to satisfy egos. It's written to provide a useful program that pays the salaries of the people involved. Sure, there's exceptions, but that's the basic gist of it.
That said, what Apple has done is finally come up with a model by which they can exchange something with the community (Darwin), and yet maintain what they feel is their proprietary asset (the consistency of the Mac UI "experience" so they can sell more Macs and make more money for the employees and stockholders. Even though I'd like a little more from them, I'll settle for this. I have Apple stock - I don't want anybody to be able to make a Mac (which is possible when it's all open), but I do want people to be able to take advantage of some of the cool stuff Apple's done to improve other products and systems. It's a decent compromise.
Not every program benefits from Open Source, either, though many do. I love Bungie and Id's giving away old game code to help jumpstart programmers and projects, but you don't see any of them opening up their latest and greatest engines, either. That's because the latest engine is something they can earn money licensing - they leave money on the table if they give the latest stuff away. But at least they share something, if not everything. Corel Linux may be open, but Corel WordPerfect isn't, and never will be, I bet. Companies need revenue somewhere, and unless you're in the systems support business, if you give away razors you need to be able to sell blades. The only reallt open commercial office suite, for instance, is StarOffice. But Sun isn't using StarOffice to make money - they're using it to try and sell Sun equipment and they're giving it away because it may help them towards that goal and because Scott McNealy has a personal vendetta against Bill Gates (but who doesn't?). StarOffice is a razor, and Sun workstations and servers (and their little bitty SunRays) are the blades in this scenario.
I think that the Mac overall will do just fine with no more Open Source contact than they have right now - but I would like to see more. Some programs will benefit from being opened, some will not. People like ESR (and a lot of the
- -Josh Turiel
Misunderstands the OS Drive (Score:3)
The articles misses the big driving factor for Open Source development. He states that there is none because OS is not driven by the monetary economy. While I think OS may actually be more monetarily efficient in the long run, he missed the driving factor behind Open Source.
Open Source developers are driven by pride. If you create or maintain an OS project, this is something you can take pride in. This is important because while you can make lots of money from producing a crappy product, you cannot take much pride in it when everyone can see how crappy it really is. This pride aspect actually drive OS creators to make better software more than money ever could.
He also states that OS programmers tend to write small efficient codes that do exactly what they need very well. Somehow he sees this as a disadvantage. When does bloated code become a selling point?
Re:The failure of the GPL. (Score:5)
If Linux fails COMPLETLY on the commerical front, who cares? RHAT, LNUX, Corel, they cal all disappear and it wouldn't affect the community that much. We already have a usable base of software and many of us have invested years of "fun" into devloping programs for Linux, those people wont stop.
Perhaps I get a little riled up when people judge Linux's success and future by corporate standards, but let's face it, we were here before the Linux commercialism and we will be here after it. I personally could care less about how Linux stocks are doing, I care about how my server is doing. That's MY movitation, and many others like me. If you believe that OSS will die if the corporate support vanishes, then you must not realise that OSS existed before RedHat and VA.
Finkployd