Bill Joy on Linux and Mac OS X
(rfm)2 writes "In a Wired interview, Bill Joy mentions he just got a new dual 2GHz G5 Power Mac with 8 GB RAM and half a terabyte of internal disk. He is clearly underwhelmed by Linux: 'Re-implementing what I designed in 1979 is not interesting to me personally. For kids who are 20 years younger than me, Linux is a great way to cut your teeth. It's a cultural phenomenon and a business phenomenon. Mac OS X is a rock-solid system that's beautifully designed. I much prefer it to Linux.'"
After all, Mac OS has got solid user oriented UI... We're working on that with linux - but we've got years to go before it's set for the home user -> linux trounces for business of course :-D
oh, and fp!
What he was doing in 1979 was academic work, and the source code was available. In the years since then, Unix has been locked away by various companies (e.g. SCO). Linux isn't about making the best user experience, it's about a return to making improvements based on freely shared knowledge.
David.
What made Apple successful (if you can call it that) a strong set of UI guidelines that everyone is supposed to follow. Thus there are two key questions:
1. Does the Linux community have a set of UI guidelines?
2. Do Linux app developers follow them?
If the answer to either question is "no" then Linux is not likely to take over the desktops of average (= your grandma) users.
Two wrongs don't make a right, but three lefts do.
as much as it pains me to say this... linux needs to drift much more to the windows/MacOS way of doing things... point and drool works for the majority of the people out there. If u need a windows driver... click on it and it goes (most of the time :P )... I think Linux has the foundation to be the ultimate OS if there is an easy setup and configuration, along with the power to drop to the command line and change anything. I recently had a chance to try out the new MacOS, and was very impressed... if I could have a windowing system like that, with all the configuration abilities of linux... the world would be a happier place for me. as it is now.. the only reason i run windows now is because im a hard core gamer.. and too many games use DirectX(in my opinion, one of the greatest things MSoft has ever made (and free :P) ), but if i could game on linux and have the ease of use for others in my household that windows provides... I'd make the full switch no prob.
Wouldnt you like to be a pepper too?
And if Linux was entirely about re-implementing what Bill Joy designed in 1979, then he might have a point.
But the things Bill Joy designed and partially wrote back in the 1970s are functionally inferior to features found in modern Linux.
Sure, Linux and BSD share similar APIs, but it is more than a little deceptive to claim that BSD and Linux are the same design. Internally they're completely different.
This is like a 100 year old Mr Ford looking at a modern V8 EFI car with independent suspension and AWD and ABS and saying "pfft, it's not very interesting, I designed all this back in the early 1900s". It shows a complete lack of comprehension regarding the modern state-of-the-art.
Well, Bill, you may be right, but just keep in mind that re-implementing what ken and dennis designed before you probably didn't impress them so much, either.
seriously, he's spot on here. there's lots of good things about linux, but few of them are technical. OS X is doing real new stuff.
i speak for myself and those who like what i say.
A: Re-implementing what I designed in 1979 is not interesting to me personally.
[...]
Q: All right, you win. What are you doing for fun these days?
A: I'm figuring out a meditation wall for my apartment in New York. Eight feet high by 12 feet wide, with an array of overlapping rear projectors, each with a tiny Linux box and connected by gigabit Ethernet.
Fascinating.
Linux is 1979 technology and yet runs the projectors for his meditation wall -- built by a Walt Disney Imagineer and the inventor of massively parallel supercomputing.
I should like to ask Mr. Joy why these projectors are not running Mac OS X or even Solaris. Perhaps he owes a greater debt to those kids 20 years his junior than he imagines?
Thomas
Of course he's totally right.
Why should he be totally into Linux given his background. And why shouldn't he enjoy OS X on this droolproof hardware?
Give the man a good gui or go whine about something else.
I think Linux *could* one day make a comprehensive home user system - if that were a goal in itself - but I'm pretty sure most linux contributors are not the ones you should ask about the hi/gui guidelines. They don't care.
And as long as that's the situation, it's totally understandable someone prefers OS X for the everyday stuff and Linux for doing rocksolid stupid stuff like meditation walls - as long as he doesn't have to set it up himself.
I can dig linux for servers, since you expect the thing to not give you a head-ache *once you set it up*, but to do this constant maintenance on your main machine without the benefits a windows or os x machine gives you, ffff that takes guts and balls, not for me...
- The Mach+BSD server design is a kludge creating unneccessary bloat,
complexity and performance overhead without exploiting any of the
potential advantages of a microkernel design like better portability or
Hurd-style hack value like filesystems running as daemons in userspace
etc.
- In any case, Linux 2.4 and all the more 2.6 should beat, in terms of
performance and scalability, the crap out
of MacOS X' combination of vintage Mach with vintage BSD and a bloated
GUI on top
- Debian and NetBSD don't have compatibility bloat like the "Classic"
virtual machine, m68k-CPU-Emulation and "Carbon"-API in MacOS X
- They have much cleaner filesystem layouts
than OS X with its inconsistency of Unix directories (/bin,
/etc) which
are hidden on the GUI level and application folders inherited from
NextStep
- They have a more consistent and robust configuration system than
MacOS X with its horrible Registry-like "Netinfo" database that
replaces some, but not all configuration files in
/etc
- They come with a more complete (and especially in Debian's case
thanks to GNU) powerful set of classical Unix commandline applications
- For the software which is not installed by default, they have consistent package management while MacOS X has a
number of simultaneous/incompatible package managers and databases which
don't know each other's dependencies: MacOS X install images, fink,
GNU/Darwin, BSD-style pkgs/ports...
- They install programs like vim, mutt, shells etc. with sensible default
configurations while I find the commandline userland and MacOS X almost
unusable they way it is configured out of the box
For someone who primarily works on the commandline and needs graphical programs only for the occasional web browsing, graphics/pdf and video viewing (for all of which excellent free, X11-based solutions like mozilla-firebird and mplayer do exist), MacOS X offers no advantages over a GNU/Linux or NetBSD system in which all the system- and commandline-level things are done cleaner and better. So it seems Bill Joy doesn't write in vi and work the Unix way anymore, otherwise he would have better things to say about Linux.gopher://cramer.plaintext.cc http://cramer.plaintext.cc:70
I don't agree. Even geeks (me included) like some "confortable" environments now and then. Thats why I'm migrating all my Linux (Gentoo and Debian boxes) to MacOS X shortly. I can keep doing my OSS work and have a great OS (or UI). I've used FreeBSD (which OS X is based) and I always liked it. The only reason I migrated to Linux was that Linux was more... agile. You surely can work the Unix way on the MacOS X. only prettier :)
"For someone who primarily works on the commandline and needs graphical programs only for the occasional web browsing, graphics/pdf and video viewing (for all of which excellent free, X11-based solutions like mozilla-firebird and mplayer do exist), MacOS X offers no advantages over a GNU/Linux or NetBSD system in which all the system- and commandline-level things are done cleaner and better."
Heheh. It's precisely this type of attitude about *nix why it's no surprise that Linux just isn't "there" yet. I still find it amusing that it was Apple that brought *nix to the masses.
I'm sorry, but you're kind of 'out of it'
/Applications, home spaces in /Users, OS X specific System files in /Library and /System. I find the layout quit logical and quit consistent. As for the unix stuff in OS X, it's where you'd guess most of the time. BTW, why should /bin be shown in the GUI when you can't run command line apps from the GUI?
- Classic is not bloat. It's a feature to allow compatability. Classic doesn't introduce overhead to a system unless you NEED to run an old app. I didn't have Classic installed for over a year and never missed it. It's only on my machine now because I did a clean install of panther.
- Carbon API is an equal partner with Cocoa on OS X. It is based (heavily) off of the Classic Mac APIs but it isn't bloat. It's another enviornment that has benefits and disadvantages compared to Cocoa (or standard BSD libraries). The is a reason why the Finder isn't Cocoa.. it works better as a Carbon app.
- "Vintage BSD" is often a lot faster than your vaunted Linux. I know 2.4 and the upcomming 2.6 have made big strides, but the Linux compat in FreeBSD was faster than Linux for a long time, and as far as I know, still occasionally is faster than real linux.
- Linux files systems are anything but clean. Different distros put stuff in different areas, Major apps switch install and config locations between versions. For the most part, you rarely ever need to dig into the filesystem on OS X. Apps go in
- Netinfo was depreciated in 10.2 and it's pretty much not used in 10.3. Apples moved everything into the BSD files and/or LDAP. Anyway, There really wasn't much in Netinfo. Comparing Netinfo to The Registry is total flamebait and it shows your lack of knowledge.
- consistent package management on Linux??? HAHAHA If I could count all the problems I've had with RPMs..
Fink automatically handles dependencies. The system software updater tracks packages. In general, the software install tools for OS X work fantastic. Package Manager is way better than anything on linux. And don't forget the use of Bundles. It makes a lot of software installs as easy as copying over an icon [which is a directory with all the goodies inside, but looks to the user like an app]
- haha, you consider the Mac OS unusable out of the box, yet you love linux. With so many distributions of Linux, do you really believe you wouldn't have to apply as much configuration to a distro you weren't intimately familiar with?
Give OS X 10.3 a real try and come back with a comparison to Linux. You'll find a quick, responsive machine. A great bundled development environment, best of class bundled apps, and a hardware accellerated X11 right out of the box.
ffakr.
I'm not feeling witty so bite me
I would say what made Apple successful was the whole ease of use factor. Put the CD in the drive, hold down the "C" key, turn machine on. Machine boots off of CD. Click the install icon, provide a few simple responses and info, and your OS is installed. No "detecting hardware...found something...don't know what it is...do you have a driver for this ? piece of hardware?" that you get with windows, and certainly not like linux installs. Configuring the network has always been straightforward as well, with all the relevant fields in one place, and easily accessible. Appletalk was self configuring, as is the new Rendezvous technology. No BIOS settings to mess around with, and you don't NEED to know the command line aspect of OS X. How many Windows users actually know how to maintain Windows properly (ie msconfig, the registry, etc). With the mac OS, you had the extensions folder before OS X, and the extensions manager made managing extensions easy for even the novices. OS X takes care of it's own maintenance. The whole UI guideline is just an extension of Apple's commitment to delivering highly complicated and advanced technology in an easy to use package. If you want Linux to take over the desktops of the average user, you need to make it easy to use. This means making it like an appliance! You turn it on, you click to check your mail, click to surf the web, click to type a document, click to check your appointments, click to print, and then turn it off. Want to add a (video conferencing camera/scanner/DVD burner/joystick)? Great! Plug it in, pop in the CD, click the icon, and it's installed. Windows has the edge over Linux because it's a giant bag of drivers and installers so that most users can usually install their own peripherals. Linux is more stable, more secure, faster, and cheaper, but it still isn't even remotely easy to use! The average user does not want to have to learn any type of CLI. Period.
After "cutting my teeth" with Linux for the last 8 years (from kernel 1.2 & first slackware), I finally got tired of the administration. I learned most of what I wanted to know about unix, and now I just want to use it. OSX to me is the dream system I've been waiting for since I went from Amiga to Unix.
Unfortunately I'm not the ambitious 20-something I was when I started with unix. I don't want to recompile my kernel every week any more. All the linux I run now is imbedded (net integrator box and dreambox satellite recievers), exactly because I want the power without the maintainence. I think OSX is going to become the burnout hacker's choice of desktop OS exactly for that reason. All the power, none of the fuss. The point is that it's a finished OS. My G5 gives me an experience superior to any desktop OS with superior power than the Sun, AIX, and OSF workstations of just a few years ago. And a full unix implementation to boot! I couldn't be more happy.
Granted there a few non-unix annoyances, but for the most part, it is what I waited and worked 8 years for linux to become, today. It amazes me how fast they threw it together and how well it came out. It is definately the best example of a successful non-open-source project coming together I have seen in a long time.
Actually that's about what I'd expect for a program like Photoshop and large files. Photoshop is not a typical home or small office application, it has much higher system and memory demands. If you notice what I said was:
When using programs such as Safari and Microsoft Office you are not likely to see much improvement with large amounts of memory. On the other hand someone who is a programmer, digital artist, filmmaker, database programmer, etc. is more likely to be doing the types of activities that can benefit from large amounts of RAM. With those people a couple of gigs of RAM is a good thing indeed.
Sapere aude!
While it certainly is interesting discussing the merits of *BSD, Linux and OSX, I don't think that that is what Bill Joy's problem is. While he has definitely been an important visionary in the world of computing, he seems for all the world to be one of those philosophical types who lose the connection to the real world. His big worries about machines running out of control in the future, while perhaps pertinent didn't seem to help Sun's bottom line and I remember an interview with Scott McNealy saying that he would have made some Sun people leave much earlier if he could go back in time. I wonder if he was referring to Bill Joy here?
His comment on Linux is simply demeaning to all the hundreds of thousands of developers who develop for it (and I use Mac OSX!). Linux has become more important than Solaris, HP-UX and AIX, like it or not, Mr Joy, and those (IBM) who saw this coming are now reaping the benefits and those who didn't (Sun) are now struggling to catch up. Mac OS X is hugely successful, precisely because it appeals to all the people that want the OS to just work, but that in no way means that Linux or the BSDs are worse. They are very good at what they do.
I had to take a bite on this, however, ffakr, covered most of what I wanted to troll on.
There is one more thing though...
MacOSX's kernel is more of a hybrid kernel, than a pure microkernel. There's only a single layer that messages get passed through to communicate with the kernel, and vice-versa. No one has been able to produce a microkernel that has a.) portability and b.) performance. L4 is by the far the best implementation of a microkernel that is somewhat comparable to the speed of a monolithic kernel and retains all the design goals of a true microkernel.
I believe microkernels ultimate goal was to create a portable operating system with a BSD operating system interface. It achieved that slowly, but performance was terrible. Linux has solved this problem, and people don't pay as much lip service to microkernels as they use to.
Microkernels also aren't as small and streamline as you believe. Mach was just as big a monolithic kernel, and to streamline any of its processes, you had to run kernel extensions in kernel space, not user space, nullifying the user-level kernel extensions goal.
Microkernels also inherently will have more overhead than monolithic kernels. They have to buffer and analyze messages that get passed through each layer in the operating system, just like a network architecture does.
Object-oriented frameworks like Java, Cocoa and Carbon, would crawl on a microkernel because of the number of interrupts generated in such systems.
But MacOS X has great Java support. Cocoa is heavilty object oriented, but is a fast API.
This fast/portable/small microkernel-stuff about MacOS X is a myth. It's a hybrid like NT.