I’ve implemented a new comment spam program, so if you comment and your comment doesn’t appear or you get redirected to a page telling you it wasn’t accepted, please send me an email: aragirn [at] (You’ll have to format it into a correct email address yourself.)

What is Open Source?

Tim seemed to take exception to my statement that the Apple kernel is open source.

“So with that Open Sourced Kernel I’ll be able to get all of those nifty new things that Apple added in then right? I’ll believe it when I see it. Being a part of Open Source means giving back to the community, not just taking the ball and running with it.”

Actually, I never claimed that Apple was part of the open source community. They’re not and I don’t blame them for it. They don’t feel the “Open Source spirit” either. They do however, follow the licenses of the open source software they use. Yeah, the KHTML team may not be happy with them, but Cnet quotes one of the team members as saying:

“Another said that while Apple had stuck to the letter of the license in fulfilling its obligations to the KHTML project, the two groups were now all but estranged. … Apple is not all about Open Source; ask the KHTML development team if you are in doubt about that. Sure, you can use a lot of your favorite Linux apps on OS X, but you can do the same on Windows.”

Tim and I had a chat last night that lasted about an hour and a half. We both agree that Apple doesn’t relinquish their right to their software patents. He believes that since you would have to license Apple’s patents to use their code to implement those patented processes, it is not open source. I disagree, and I’ll explain why.

First, a clarification. When a company receives a software patent, they have the right to license that to who they see fit. Whether we talk about Apple’s spring-loaded folders or something else, even if you write your own code to implement that patented item, it must be licensed from the patent holder.

Now, I’ll present my arguement as to why Apple’s kernel is open source. The Open Source Initiative is an organization that was founded in 1998 by Bruce Perens and Eric S. Raymond. OSI has published a definition of what Open Source is that I agree with:

“The Open Source Definition


Open source doesn’t just mean access to the source code. The distribution terms of open-source software must comply with the following criteria:

1. Free Redistribution

The license shall not restrict any party from selling or giving away the software as a component of an aggregate software distribution containing programs from several different sources. The license shall not require a royalty or other fee for such sale.

2. Source Code

The program must include source code, and must allow distribution in source code as well as compiled form. Where some form of a product is not distributed with source code, there must be a well-publicized means of obtaining the source code for no more than a reasonable reproduction cost preferably, downloading via the Internet without charge. The source code must be the preferred form in which a programmer would modify the program. Deliberately obfuscated source code is not allowed. Intermediate forms such as the output of a preprocessor or translator are not allowed.

3. Derived Works

The license must allow modifications and derived works, and must allow them to be distributed under the same terms as the license of the original software.

4. Integrity of The Author’s Source Code

The license may restrict source-code from being distributed in modified form only if the license allows the distribution of “patch files” with the source code for the purpose of modifying the program at build time. The license must explicitly permit distribution of software built from modified source code. The license may require derived works to carry a different name or version number from the original software.

5. No Discrimination Against Persons or Groups

The license must not discriminate against any person or group of persons.

6. No Discrimination Against Fields of Endeavor

The license must not restrict anyone from making use of the program in a specific field of endeavor. For example, it may not restrict the program from being used in a business, or from being used for genetic research.

7. Distribution of License

The rights attached to the program must apply to all to whom the program is redistributed without the need for execution of an additional license by those parties.

8. License Must Not Be Specific to a Product

The rights attached to the program must not depend on the program’s being part of a particular software distribution. If the program is extracted from that distribution and used or distributed within the terms of the program’s license, all parties to whom the program is redistributed should have the same rights as those that are granted in conjunction with the original software distribution.

9. License Must Not Restrict Other Software

The license must not place restrictions on other software that is distributed along with the licensed software. For example, the license must not insist that all other programs distributed on the same medium must be open-source software.

*10. License Must Be Technology-Neutral

No provision of the license may be predicated on any individual technology or style of interface.”

Another thing that OSI does is vet licenses that claim to release code as, “Open Source.” They even publish a list of approved licenses. Right in the copy of the license that they display on their website is the section that Tim finds so contentious:

5. Limitations on Patent License. Except as expressly stated in
Section 2, no other patent rights, express or implied, are granted by
Apple herein. Modifications and/or Larger Works may require additional
patent licenses from Apple which Apple may grant in its sole

Open Source is about setting the terms of copyright so that your code can be modified, used and redistributed (among other things listed above). It is not about patents. While I believe that software patents should have a very short term (no more than a year or two as software is a fast moving field, much faster than say, manufacturing) they are valid, legal and useful.

Were Apple not to publish their code, as a programmer, you would still have to license the patent to implement that feature. But, code and licenses are covered by copyright law, patents have their own body of law.

“Where is my officially supported method of syncing my 2 iPods under Linux? Where is my iTunes Music Store access for Linux?”

Well, it’s a business. Why don’t you ask Steve Jobs to do a cost/benefit analysis on doing it? Don’t forget to ask what the RIAA’s affect on his decision is.

OS X… unworthy of respect?

Jorge had an interesting post today about OS X and open source advocates. It got me thinking, and when that happens, well… stuff like this shows up.

Yeah, OS X users do get a “Get Out of Jail Free” card in comparison to Windows users. I started wondering why this was, and here’s what I came up with:

  • For the technically capable, OS X is a choice that says, “I looked and decided this was the best choice for me.” Windows though, well… I’m just going to assume that you’re one 31337 k1dd13.
  • Open Source kernel. Flame the, “BSD underpinnings” remarks if you will, but the kernel is open.
  • Availability of open source utilities. OS X has stuff built in (openldap, gcc, etc) and it has plenty more easily available to it. Running them isn’t like getting Cygwin on Windows.
  • Command line… Windows doesn’t have a fully functioning command line. I’m sorry, but if I need to do something important, I want a command line with a text based login. Who knows where I’ll be and whether or not I’ll have the bandwidth to use a fancy GUI remote use package (RDP, terminal services, whatever)..
  • Security, OS X has it by default. Viruses, what are those?
  • Stability.
    elayne:~ kyle$ uptime
    23:31 up 28 days, 54 mins, 2 users, load averages: 0.44 0.37 0.53

    My laptop has been up a month… enough said.

  • Sane application installs. Hey look, the program is all in one file as far as the user is concerned. Granted, this is really only an advantage over Windows, I prefer Linux package management via apt. Then, I don’t even have to care where something gets installed to.
  • So, why don’t OS X users get ostracized like Windows users? An operating system is ultimately about choice. At ~5% of the market share, OS X is a choice, Windows is a default. Also, while Jorge says the goal wasn’t originally, “Linux on the Desktop,” maybe, just maybe it should be. Maybe people want usability out of their machine. I know that is where Ubuntu is headed and I sure as hell like what that group is using.

    My name is Kyle, I use both OS X and Ubuntu Linux; I believe the goal of Linux should be making it usable as a Desktop.

    Sauna Night

    Today I went to Calumet with a friend to get some of our arrows worked on. While we were waiting, we wandered around town and went into an art gallery. We browsed a bit, I saw a few paintings that I really like but can’t afford. We chatted with the person working and then I found this painting in the back:

    Sauna Night

    It spoke to me. This is my winter. This is what I love. A sauna, hot and inviting, the world covered in a blanket of snow, with naught but a pair of snowshoes for transportation.

    Now, I just need to figure out where I’m going to hang it.