January 27, 2008
I never quite made the transition from the Apple II series to the Mac. Instead, I migrated from my Apple II to a PC. I always thought the PC ecosystem, although deeply flawed, was more naturally analogous to the eclectic third party hardware and software hacker ecosystem that grew up around the semi-open Apple II hardware platform. This, to me, was the most enduring and beloved quality of the early Apple community. The Mac, in contrast, was underwritten and driven by primarily Apple software running on completely locked down Apple hardware. It's almost first party only-- about as close as you can get to a console platform and still call yourself a computer. I guess you'd say I chose Woz over Jobs. The way Jobs ruthlessly crushed the fledgling clone market in 1997 only reinforced this lesson for me.
So let's be completely clear: when you buy a new Mac, you're buying a giant hardware dongle that allows you to run OS X software.
You know, a dongle:
A dongle is a small hardware device that connects to a computer, often to authenticate a piece of software. When the dongle is not present, the software runs in a restricted mode or refuses to run. Dongles are used by some proprietary vendors as a form of copy prevention or digital rights management because it is much harder to copy the dongle than to copy the software it authenticates. Vendors of software protection dongles (and dongle-controlled software) often use terms such as hardware key, hardware token, or security device in their written literature. In day-to-day use however, the jargon word "dongle" is much more commonly used.
There's nothing harder to copy than an entire MacBook. When the dongle-- or, if you prefer, the "Apple Mac"-- is present, OS X and Apple software runs. It's a remarkably pretty, well-designed machine, to be sure. But let's not kid ourselves: it's also one hell of a dongle.
If the above sounds disapproving in tone, perhaps it is. There's something distasteful to me about dongles, no matter how cool they may be. But it's seductive, too. I wonder if the console model that Jobs is aping isn't some temporary evolutionary dead end, but in fact, the model for all future computing. People buy consoles like the Xbox 360 and Wii because they work with a minimum of fuss. Similarly, people buy Apple hardware because of the perfect synergy between the Apple hardware, OS X, iTunes, iLife, iMovie, iPhoto, and countless other software packages expressly designed to run on a closed hardware platform. "It just works." And why wouldn't it? There are no crude, selfish third parties to screw the experience up behind your back. No oddball hardware, no incompatible drivers, no more software which has to deal with a combinatorial explosion of potential configurations. Choosing to run proprietary software and hardware is just that, a choice. If it's working for consumers, who am I to judge?
I find Apple's brand of hardware lock-in particularly egregious. On the other hand, I run Windows, so I'm subject to my own flavor of self imposed software lock-in. Others have made different choices. In
of canaries and coal mines, Mark Pilgrim revisits his choice to abandon Apple's proprietary software model for the world of free software.
18 months later, Apple has sold 4 million crippled phones, billions of crippled songs, and people are predicting that Mac sales are up 40% year over year. And I wouldn't bet against their new movie rental venture either.
So after 18 months, I think we can safely say that no, Cory and I were not "canaries in the coal mine." There are not hordes of fed-up consumers rejecting Apple's vision of cryptographic lock-in. There are not mass graves where people ceremoniously dump their crippled, non-general-purpose computing devices. Outside of Planet Debian and my own personal echo chamber, nobody gives a sh*t about Freedom 0.
You knew this, of course, but I just wanted to let you know that I knew, too.
Maybe I'm a hypocrite. Maybe the issue cuts philosophically deeper than mere dongles. Maybe it's not only about the freedom to run your operating system on whatever hardware you wish, but also the freedom to run whatever software you want for whatever purpose you need, in perpetuity. That's Freedom Zero:
Freedom 0 is the freedom to run the program, for any purpose. WordPress gives me that freedom; Movable Type does not. It never really did, but it was free enough so we all looked the other way, myself included. But Movable Type 3.0 changes the rules, and prices me right out of the market. I do not have the freedom to run the program for any purpose; I only have the limited set of freedoms that Six Apart chooses to bestow upon me, and every new version seems to bestow fewer and fewer freedoms. With Movable Type 2.6, I was allowed to run 11 sites. In 3.0, that right will cost me $535.
WordPress is Free Software. Its rules will never change. In the event that the WordPress community disbands and development stops, a new community can form around the orphaned code. It's happened once already. In the extremely unlikely event that every single contributor (including every contributor to the original b2) agrees to relicense the code under a more restrictive license, I can still fork the current GPL-licensed code and start a new community around it. There is always a path forward. There are no dead ends.
Movable Type is a dead end. In the long run, the utility of all non-Free software approaches zero. All non-Free software is a dead end.
It's compelling rhetoric. As a software developer, there's no denying that open source software is a powerful and transformative force in modern software development.
The console model, and Apple's de-facto first party development model, are about as far as you can get from Mark's freedom zero-- instead, you get zero freedom. You hand the vendor a pile of cash and they allow you to do a handful of specific things with their device, for only so long as they're inclined to do so. It's hardly fair. In fact it's completely unfair; they can legally pull the rug out from under you at any time. But it can still result in some incredibly useful relationships with products that solve very real problems for the user. As Jaron Lanier notes, the iPhone was not a product of freedom zero:
Twenty-five years later, that concern seems to have been justified. Open wisdom-of-crowds software movements have become influential, but they haven't promoted the kind of radical creativity I love most in computer science. If anything, they've been hindrances. Some of the youngest, brightest minds have been trapped in a 1970s intellectual framework because they are hypnotized into accepting old software designs as if they were facts of nature. Linux is a superbly polished copy of an antique, shinier than the original, perhaps, but still defined by it.
Before you write me that angry e-mail, please know I'm not anti-open source. I frequently argue for it in various specific projects. But a politically correct dogma holds that open source is automatically the best path to creativity and innovation, and that claim is not borne out by the facts.
Why are so many of the more sophisticated examples of code in the online world-- like the page-rank algorithms in the top search engines or like Adobe's Flash-- the results of proprietary development? Why did the adored iPhone come out of what many regard as the most closed, tyrannically managed software-development shop on Earth? An honest empiricist must conclude that while the open approach has been able to create lovely, polished copies, it hasn't been so good at creating notable originals. Even though the open-source movement has a stinging countercultural rhetoric, it has in practice been a conservative force.
So I'll ask again, since Mark brought it up: why doesn't anyone give a crap about freedom zero?
Posted by Jeff Atwood
IMO, it's similar to David Heinemeier Hansson's thoughts on opinionated software: good software has an opinion on the best way to do things. Great software lets you keep the defaults (sound familiar), but override them if necessary. It may be that open source software projects are hard to have a singular vision of the best way to do something. Ergo, it dilutes the opinions of the software creators.
Does it have to be like this? I don't know.
"You can still board a plane in the US without a government-issued ID (in fact, most people do board planes without a federally-approved ID, since most states don't issue them, yet). In order to board a plane without any ID, though, you not only have to buy the ticket with cash, but submit to the more thorough security screening that some people are randomly subjected to anyway. In some cases, it's the fastest way to get on a plane if you don't mind people rifling through your carry-on luggage and patting you down. Besides that, the identification requirements haven't really changed much in the last 25 or more years."
Which is why I didn't say federally-approved. State governments are still governments. Homeland Security has at least twice threatened to disallow Utah drivers licenses (Utah is where I live) as valid ID in the last five years unless the state made changes in the way they were issued. I will grant that you can board without a valid ID because I did once with TSA doing the procedure you describe. However, I can remember traveling in the late '80s without anyone asking for any ID, and only getting asked sporadically in the early '90s. Requests for valid ID did not become consistent until the late '90s. Even then, I only needed it to board; if I was walking someone to the gate, or meeting them at the gate, no one asked for ID. Does the majority of people object to TSA requiring a boarding pass now to get to a gate?
"As for computers being required to be 'internet legal', it would require a few things that certainly would set off some alarms early in the process, especially since it would require changes to the protocol itself that would make not only the end-users' PCs incompatible, but most likely the servers and routers that make the internet worthwhile incompatible."
I think it will be gradual. I worked for one company for 17 years. They originally did not require virus software, or restrict what software you could run. When I left, virus software was a must, and you were on probation if you ran anything not on the approved list of applications (the joke for me was that some of the apps they sold were not on the list, and if you were a developer and modified a program, you got a warning). Most companies I interviewed with restricted their employees Internet access to websites, and have policies on what applications they can use. It's not a far leap to doing that with individual computers, servers, and routers. Intel tried a few years ago to put unique ID's in their Pentiums. The Utah legislature considered a bill last year that would impose fines on anyone with an unsecured WiFi network. It will happen, and few will object.
The more options you have, the more choices you must make.
Take Windows Vista. Most people don't really want to figure out which of the five versions they should buy. If you're a business owner, you're going to be dealing with important, sensitive data. Yet Bitlocker encryption isn't included business edition. You must buy the Ultimate Edition instead. So, as an end user, you actually have to read the list of features, figure out their intended purpose and then evaluate them in comparison to your needs as a business owner. This is in contrast to having the freedom to spend your time doing something else, such as run your business or spend time with your family.
I buy Apple hardware because Apple usually includes the kinds of features I want. In fact, it often includes features that I didn't know I wanted, such as the MagSafe power connector or backlit keyboard. I don't have to shop around and choose between thousands of laptop models to choose a set of features that will likely meet my needs and wants.
Compare this to "features" such as the Windows Sideshow found on some laptops. I don't want the extra cost, weight or all around clutter that it brings. Nor would it do me much good when my laptop is inside my bag. As a potential buyer, I either need to trust the that this feature actually adds value or I'm forced to analyze what it does and figure out if it's something I really need.
If my MacBook Pro is not in my bag, then it's open and I'm looking at it's high resolution screen. If I want to know how much charge I have left, I can push a button on the battery and get a simple LED visual display of power remaining. If I want to tell how many unread emails I have at a glance, I'll use a more portable and accessible device, such as my iPhone, instead of taking my laptop out of my bag. These are, IMHO, much better solutions to the same problems.
And you simply can't get anything like the iPhone or the MacBook Air anywhere else. In this case, Apple as a company is "dongle" for a specific set of features and level of design.
I wonder how many posters here actually used OS X. It just works, its rock solid, its refined a few orders of magnitude more than Windows XP and Vista. At work I program all day in Visual Studio, at home I use OS X for the rest of my life. My feeling is Microsoft will be relegated to the corporate sphere, Apple will dominate the consumer side. And I'm quite ok with that.
ldquo;Fact to the matter is Mac use DRM hardware to lock you into their overpriced commodity hardware. While MS Windows allow you to run on ANY commondity hardware even Mac without any speical hardware. How in the fucking hell is Mac more open? The COLD HARD FACT is you can run Windows on Mac while you CAN NOT run OS X on PC just show you how lock down Mac is!rdquo;
So what forces you to write to the Aqua (or Cocoa, or whateverthedevil Apple calls their proprietary user interface) published interface on the Mac? Can't you write code against the FreeBSD kernel interfaces and libraries that's there (and open-sourced), or against the horrid X11 interface that's also available for the thing? I use MacOS as one of my primary development environments, but the code I'm writing there moves seamlessly from MacOS to SLS Linux to FreeBSD.
If Apple imploded tomorrow and Microsoft bought the rights to MacOS so it could entomb the source code in concrete and sink them in the ocean, it would be annoying, but I wouldn't _lose_ anything other than access to a slick gui wrapped around my tty sessions. If I'd have been using Windows as my primary programming environment and Microsoft did the implode and entombment routine, I'd be in much worse shape.
So, boohoo, Turtleneck-Ego LLC doesn't want me to use their Unix gui on machines they don't sell. But it's still Unix. Being able to put Windows on random ia32 and ia64 PCs doesn't make it anything other than Windows, and that's a far nastier restraint than having an X-terminal vendor refuse to license their gui.
The original article and a lot of comments make essentially this point:
"OSX doesn't run without a Mac, therefore the Mac is a dongle for OSX. Simple, really."
Please get a clue. If you just want OS X (shiny!) then you have already locked yourself into an operating system and its vendor. That is how you lose your freedom. It is no different than deciding that your new PC must run Windows Vista. If you force yourself to use whatever Apple or Microsoft produces then you really can't complain. It's your decision.
But not all Mac users made that decision. Some people, myself included, bought a computer. We see OS X as part of the package, but we all know there will come a day when the machine won't run the newest version. Then what ? Well, I plan to run Linux. And I won't hesitate to switch sooner or not upgrade OS X if Apple pisses me off either. All my OS X programs will continue to work, or I can use Linux versions, or I can use Linux equivalents. So how does choosing a Mac cost me Freedom 0 ? It doesn't.
Anyone who locks themself into any platform can get stuck. It has *always* been this way. Don't lock yourself in. Not to programs, operating systems, or hardware. Mac hardware doesn't lock you in. Mac software can lock you in, just like Windows and Linux software can lock you in. Even open source software can lock you in, if the barrier to fixing it is too high. New versions might not do what you want and old versions might become too obsolete. If you can't fix it, then where is your Freedom 0 ?
The fact is, unless you are writing or maintaining your own software, you probably don't have Freedom 0. So please quit wanking if you just rely on others. It is perfectly possible to use proprietary software and not give up any freedom at all. It is only when you force yourself to use it or when you are locked into using it that your freedom is gone. Most people are a lot more sensible than that. That's why open file formats are popular and multi-platform applications are popular. Please figure it out.
Freedom 0 is great not so much for being free as in speech but free as in beer. Commercial software is expensive, and I do not like my programs checking up on me to see if I've paid up.
Some might consider *all* computers to be the Devil's dongles.
Mark makes a very good point above:
Why would Microsoft want to restrict which platforms Windows, Office, etc. run?
Let's face it - no one buys a Windows machine to run windows, but to run applications like games, Office, etc. As long as Microsoft gets you hooked into the applications, you will always be a Microsoft Junkie.
Because Microsoft makes money on LICENSES, if you bought an expensive Mac, but are willing to run Windows and Office on the _same_ computer via Parallels or dual boot, it _only_ benefits Microsoft!
Microsoft is HAPPY as LONG AS you buy Apple AND Windows, because it proves you are a "Microsoft Junkie" and MS is not losing market share! But the minute Apple gains more market share _from_ Windows and begins to develop alternatives to applications on Windows (e.g. Office, games, etc), that is when MS will go on the offensive.
(Most) People don't care about Freedom 0 because there's nothing wrong with "giving up" Freedom 0 to buy a product or service. There's also nothing wrong with someone offering a product or service to you and "taking away" Freedom 0, so long as the exchange is not coercive.
I'm primarily a Mac user, but also use Windows and Linux. I use what I want, when I want, and am thrilled that anyone else can (and does) do the same. The moral rhetoric surrounding software is distressing (and annoying), especially since people who decry software patents, "monopolies," and proprietary software will generally argue incessantly for the necessity of taxes, war, government control, and a host of other things that _actually_ restrict freedom.
So yes, my MacBook is a dongle in a sense, but it's the best-working dongle I've used in 18 years of owning computers. =]
Well, there's a whole heck of a lot more innovation coming out of apple then most companies...and I can leave my mac on for months at a time without worrying about security issues and all the other crap that comes with a lame windows based pc. So, in the grand scheme of things, who cares if I can't open up my computer and get all geek on it...the vast majority of people don't care at all.
Heh, I've said similar for a long time when debating if Apple is a hardware or software company: Apple is a software company that sells really stylish hardware dongles ;)
Jeff, I assumed better of you. Today, I lost all my respect for you. You clearly have never used a modern Mac. Go try using one for a week. You'll see what I mean.
(Oh, BTW, I've been using Windows all my life till now, and have been a Linux sysadmin for 2 years -- and have used Linux and Solaris machines for over 8 years now. No guesses for what computer I use today)
I had this argument many years ago with people who thought that open-source, free systems were going to drive proprietary MMOG's out of business. My argument against that ties in with what you're saying:
OSS does a very good job of creating free alternatives to "commodity software". The OpenOffice suite is pretty much just as good in every significant way as MS Office, Linux as good as Solaris, PostGres to MS SQL Server, and so on. Where there is a definite target to aim for, it can compete, and it's hard to compete with free.
But it doesn't do creativity, and it doesn't do aesthetics. As soon as there are choices to be made that do not have clear best logical answers, the OSS development effort will fork. And then fork again, and again, and again, until you no longer have an OSS development community, but hundreds of different (and duplicative) solo projects that can't be effectively merged.
I always wondered why Apple didn't consult you first on all this, Jeff. Seems crazy that they wouldn't. They really screwed up this time.
For what it's worth, I just gave up on full freedom software, dumping my Linux laptop in favor of a Mac laptop. Now, I still use Linux on my desktop, but the last time my Linux laptop went belly-up, and I was confronting the process of wrestling to get the Dell's hardware working with linux (the NVIDIA proprietary drivers need installation, the wifi needs an infinite amount of wrestling, and then there's the whole matter of hibernating to disk and RAM). I just couldn't face it again. My job is to write software and text on my laptop. My job is not to be a laptop tweaking hobbyist. And I don't *like* hassling with hardware and drivers.
Freedom as in freedom is worth a lot to me, but it turned out not to be worth that much.
When we get real commodity laptops, I'll be happy to go back to Linux. But for now I just want a laptop that *works* and that runs some Unix-alike.
"Flash is a piece of crap, it's just until recently been the ONLY browser ria option."
hmm. activex, javaapplet, silverlight, javafx, html+ajax...
flash is not crap. it's often abused.
Flash is a piece of crap, it's just until recently been the ONLY browser ria option. and the iPhone, like the iPod before it, is 80% marketing, 15% image, and only 5% functionality. Free thinkers of the world realise this.
Nevertheless I'm still pro-proprietary.
Many have said this above, but I will say it more concisely:
"When you buy a new Mac, you MAY BE buying a giant hardware dongle, BUT you are buying a giant hardware dongle THAT ALSO RUNS WINDOWS."
and apparently it runs Windows better than all the crappy PCs designed for poor people:
"PC World: Macbook Pro is the "Fastest Windows Vista Laptop" of 2007"
I know I'm a tad late in commenting, but I just found this post because of stackoverflow pointing to Douchebaggery (the post), pointing to here. I've noticed that people in computer science at universities and many developers seem to have this mac fetish. I thought about it, many times. The "just works" factor, and the sleekness that is their laptops, is very seductive. But then I think: What would the world be like if Apple and Microsoft switched positions? Not only would we have a desktop OS monopoly (I'm exaggerating things a little bit), but we'd have a desktop hardware monopoly, too.
I understand why a normal person would choose a mac. It "just works". I don't understand why computer programmers choose macs, because they should understand the ramifications of loosing freedom.
Macintosh == zero freedom?
This argument doesn't have anything to do with freedom; it has to do with someone too cheap to pay for someone else's work. Sure it's altruistic for me to contribute all my hard work for you to use without paying me anything but that doesn't pay my mortgage.
You want a superier experieance on your computer? Pay me to write better apps.
You want freedom? You are free to use WinDoze (and suffer).
I always thought the PC ecosystem, although deeply flawed, was more naturally
analogous to the eclectic third party hardware and software hacker ecosystem
that grew up around the semi-open Apple II hardware platform.
Did you ever go to the West Coast Computer Fairs? Before the PC? After? Conclusion? Bill and Micro$oft KILLED innovation.
Can't believe I wasted my time replying to this stupidity.
but I think there actually is a little dongle—the Mac ROM—inside Macs, that you need in order to run Mac OS X.
Yep, in the pre-iMac days, that was definitely the dongle, in fact the ROM was the dongle that made the IBM PC a IBM PC, except that it was a lot weaker than the version in the Mac (because there was much less code in the ROM), so weak that Compaq and Phoenix began reverse engineering it, which created the PC clones that looked much open than the Mac. In contrast, the Mac ROM stored core classic Mac OS code. Then the Mac clones came and the Mac ROM was beginning to make creating Mac clones harder. Thus for CHRP, the Mac ROM was moved to the disk. But by the time the CHRP-capable Mac OS finally came, Apple was already killing the Mac clones. They ended up using CHRP in the development of NewWorld, which was introduced with the iMac, and also moved the Mac ROM to disk. Eventually, Mac OS X made the Mac ROM unnecessary.
About Freedom 0 - as much as most people aren't philosophers, I think we tend to stick to the following principles:
1) If it is a freedom that I don't use, I won't care if it's there.
2) If I want to do something that has been restricted - crack it!
As much as Apple being a pain in the butt when it comes to customer lock-in, Microsoft has its fair share as well. But since most people are using a PC and run Windows, getting patches that would unlock / overcome certain degrees of freedom are much more readily available than in the Apple world.
Same goes with many other software / hardware products really.
I'm not sure Apple hardware, say PPC and Intel on, counts as much of a dongle. Especially Intel based hardware. You can freely install any OS you want on it, they [Apple] even bundle the Windows drivers for all the proprietary hardware, backlight keyboard, webcam, volume, eject button, etc.. on the Leopard install disc.
They promote a close ecosystem of tight integration of Software and Hardware with nice results and if you chose to use OS X you are bound to apple hardware but if you already have the hardware you are not bound to OS X and the hardware still functions.
In terms of the standard PC model of upgrading individual hardware components you are more restricted than a standard PC, especially in the realm of video cards ( see the recent top end card that only works on the latest Mac Pro).
The crux of the discussion though, and this goes back to the argument for consoles, i think usability and mass consumer devices is tightly bound and ultimately preferred by consumers who "just want it to work". That is the tradeoff between freedom and close systems.
I really wish you'd stop writing about OSX and Apple until you've bought one and used it. I love your shit brother, except for when you start talking about Apple.
I have a quad core Mac Pro. I put the ram in myself that I bought from a third party.
I use a third party e-sata card that isn't made by Apple.
I added a second video card, all by myself, so I can run quad monitors.
I added my own harddrives.
I added my own soundcard.
Most of the tools I use are open source and free, unless an obviously superior closed source commercial version exists (I'm looking, lovingly, at you Photoshop and Final Cut Pro).
I've also installed OSX on my Dell laptop and it works 99% flawlessly, certainly better than XP on the same laptop.
Seriously, I love you and your blog, but the veiled apple bashing wrapped in thinly stretched metaphors is a little tiring.
Choosing to run proprietary software and hardware is just that, a choice. If it's working for consumers, who am I to judge?
A Professional! You know more, not only about the technology, but about the industry and the issues of freedom.
The real question is: Why *should* anyone give a crap? Can anyone give a real-world example of why I should care, one which might actually have some remote chance of affecting me, one which extends beyond some tiny fringe group such as bloggers with over 11 blogs?
Somehow I'm not surprised that in a post mentioning FOSS I see numerous irrelevant and incoherent rants about how the U.S. is a police state and that many people are financing debt (the horror! Next time pay attention in Econ 101). If you ask me, this is precisely what's wrong with free software: There's potential there, sure, but it seems that most people engaged in it are too busy hating Corporate America to come up with any original ideas.
Depends on the market. All my professional work in the last five years has been on Linux systems.
I've worked for a major research university, a startup, and Intel. All ran Linux for their enterprise systems. The all ran Windows for their desktop systems. It's about who is making the best software for your needs.
On servers Linux/UNIX is ahead of Microsoft or Apple. On the corporate desktop Windows is ahead and for consumers Apple is the in the lead right now.
First, freedom zero is of little real use to a general consumer,
because consumers don't really _use_ software.
Nitpick: whether they "use" software or not is not entirely the issue. With that argument, it may be appropriate to say that freedom zero is of no -direct- use to the consumer. But "direct" is not identically equal to "real".
Standardizing on tools and parts in auto manufacturing can be argued as being of no direct use to consumers since most don't work on their cars anymore.
It can have a indirect, but -real- effect, however, by the effect it has on the people who maintain the cars for those consumers.
They may not understand this easily or without pain, but they will realize it in time. Just as certain car owners who had to pay $600 for a "headlamp array" may be driven to other cars, that use cheaper sealed-beam headlights, or even super-cheap replaceable bulbs.
It will affect -future- purchases.
Not to mention, open source software is just more fun to write.
For me, that intellectual hive of people all looking to build the
best software is addictive, especially to someone who has spent a
great deal of time surround by people purely interested in
getting a paycheck.
Amen, brother. Testify. More fun to build software with, too.