A Little Explanation

Well considering the amount of talking I’ve done about “free software” and “GNU/Linux” over the past few weeks, it’s about time I explain myself. During the past 6 months or so, I’ve learned a lot about a little thing called free software. I’d like to take a few minutes and explain what free software is and why I find it so exciting. I will try to do this in “laymen’s terms” so that everyone can follow me, if they want to. [UPDATE: This post got a little lengthy. If you'd like to just skip to the final thoughts, click here.]

Free software is all over the place, and you probably use it (at least in a sense) every single day. Most web servers are run on GNU/Linux, so almost every web page you view is displayed by free software. This blog is powered by WordPress, which is free software, and being free software is what has made WordPress the most powerful and widespread blogging platform in the world. It’s so good that proprietary software can’t even come close to competing anymore. But what is free software?

In 1983 (n.b. the year I was born), a man named Richard Stallman became fed up with his situation. Back then, computers were mainly only found at universities and large companies and the main operating system (MS Windows is an operating system) that computers ran on was called Unix. Unix was a proprietary operating system (created by AT&T employees), meaning that AT&T owned the computer code that made up Unix. Other computer programmers were not able to edit this code or change anything about the way Unix worked. If you didn’t like the way Unix did something, tough cookies. This is very similar to the way Microsoft Windows and Mac OS X work today.

Stallman, then a programmer for the MIT AI Lab, decided he didn’t like this way of doing business. For him, computer software was just a way to make a computer do what he wanted it to. But what if you didn’t like Unix or if a Unix (or one of it’s programs) didn’t work the way you thought it should? You should be able to change that program and “fix” it to suit your needs. Since Unix was proprietary, Stallman couldn’t “fix” it or change it at all without infringing on copyrights and patents.

Rather than face prison, Stallman decided to write his own operating system. It would be just like Unix in many ways, except not Unix. He quit his job at MIT (to keep them from claiming any right to what he was going to write) and founded a project called GNU (say guh-NEW) in 1983. GNU was to be an operating system, just like Unix, except that all of it’s code would be open and free to anyone who wanted to examine it. Futhermore, if you wanted to change it to fit your needs, go right ahead! Thus the concept of free software was born. With it was born the Free Software Foundation (FSF)

When you hear the term “free software”, Stallman warns that you need to think of “free” as in “free speech” (liberty) and not as in “free beer” (no cost). This becomes a confusing definition, since many free software projects are also available at no cost. He states that in order for software to be completely free, it must comply with 4 rules. 1. The freedom to run the program, for any purpose. 2. The freedom to study how the program works, and adapt it to your needs. 3. The freedom to redistribute copies so you can help your neighbor. 4. The freedom to improve the program, and release your improvements to the public, so that the whole community benefits.

Thus, you should be free to redistribute copies, either with or without modifications, either gratis or charging a fee for distribution, to anyone anywhere. Being free to do these things means (among other things) that you do not have to ask or pay for permission. You should also have the freedom to make modifications and use them privately in your own work or play, without even mentioning that they exist. If you do publish your changes, you should not be required to notify anyone in particular, or in any particular way. -GNU.org

Now, you might be saying to yourself, “Who cares? I’m not a programmer”. Fair enough. Most end users do not have the knowledge or desire to modify a program (but for anyone who does, this is a major issue). But even end users have two very good reasons to want free software. First and foremost it gives you permission to use it. You can install it on your computer, everyone in your family’s computers, and your friend’s computers. You never have to ask anyone for permission to use it, and you can use it for whatever purpose you want. If I were to “buy” a song on iTunes, the program limits how much I am able to use it: “iTunes DRM-protected music includes audio with a bit rate of 128 kbps and allows users to transfer songs and videos to up to five computers, burn seven copies of the same playlist to CD, and sync to an unlimited number of iPods.” (Apple). The craziest part of that is that I can only burn 7 copies of the same playlist to a CD. With how easily cd’s get scratched, broken, or lost, are you kidding me iTunes?!

The second freedom available to end users is the ability to invoke change. Just because you do not know how to program or how to change something about a program, does not mean you shouldn’t be able to. There are plenty of freelance computer programmers out there. If you’d like a program to be able to do something new or change the way it works, you can always pay a programmer to change it. If you’d like to share your changes with the community, you may find you have a following, and your changes could make it in to the next version. If others do the same, you’ve got a lot of new features! Additionally, free software projects tend to have a strong programmer backing. This means that merely requesting a useful feature can often get it incorporated into a future release, assuming the author(s) think it’s a good idea. But again, you always have the choice to make changes yourself (or through a surrogate programmer).

Overall though, the point of the free software movement is that it’s a matter of principle. It’s a philosophy. The two most popular responses in defense of proprietary software are “I don’t have any problems with [software]” and “There’s no free software that does what [software] does (or it doesn’t do as good of a job).” The fact of the matter is that no matter how “good” a piece of non-free software is, it is inherently flawed by being non-free. It is the free software philosophy that “[software] might be great, but it restricts my freedoms. As such, I’m choosing not to use it, and/or I will wait until a free version is available.” This can be a hard dish to swallow for most people (including me). This attitude can be especially difficult when the software you’re talking about is used for something like work or school. I think the point (at least for me) is that a concerted effort must be made to choose free software when at all possible. This might mean making a few sacrifices, but understand that it comes with many more advantages.

I know a lot of you reading this (if you’re even still reading it) are still not too concerned with your software freedom. The main purpose of this article was just to let you know that free software exists and what it is. I don’t hope to necessarily persuade you to use free software, but rather to make your decision to use proprietary software a conscious one. To illustrate my point, take this crude example. A slave’s life is easier than a free man’s in some respects. After all, one could argue that being told when to work, rest, bathe, and eat would be simpler than having to keep track of everything for yourself. But alas, not too many people volunteer to be slaves or to go to prison. My point is that freedom is something you have to want and more importantly something you have to fight to preserve every day because it’s always going to be easier for someone to rule you. And they’ll always be willing to do it, especially if you’re going to pay them for it.

I know not what course others may take; but as for me, give me liberty or give me death! -Patrick Henry to the Virginia House of Burgesses (1775)

Thanks for reading!

Score one for OO.o

Finally, someone has developed a plug-in for OpenOffice.org that will allow you to open Microsoft Office 2007 documents in .*x format (e.g. .docx, pptx, etc.). If you’re not familiar, OpenOffice.org is a free software office suite that operates similarly to Microsoft Office except that it’s available on all operating systems, you don’t have to pay a dime for it, and it’s freely modifiable and distributable. The same cannot be said for MS Office ($500 to install on 1 computer). Microsoft Office has been the bane of free software office packages by deciding that instead of abiding by industry and international standards, they would develop their own standards, which everyone should adopt. This is why you should say No to OOXML.

Up until this point, there was no way to open MS Office 2007 files without owning a copy of MS Office. This is a major roadblock for users trying to use alternative office suites like OO.o regularly (like me) but who work with files from users who use MS Office. Unfortunately, this plug-in is only available on GNU/Linux currently, but due to the fact that both are free software, I would expect a port to the Windows and Mac versions of OO.o to appear within the next few days. Thanks GetDeb and Ubuntu!

Across the Universe

Across the Universe coverSadie bought me Across the Universe on DVD for Valentine’s Day. We finally got around to watching it last night, and I have to say I was pleased. Of course, I doubt it would’ve taken much on their part to please me. The movie centers around a few main characters, most notably Jude and Lucy. Jude is a dock worker from Liverpool who decides to take a trip to America to find his father. He meets Lucy‘s brother, Max(well), and they become quick friends. The story spirals out from there to include a whole cast of Beatles-inspired character names. In fact, there were very few (if any) characters actually named in the movie that were not some reference to a character in the Beatles’ music. Much like Forrest Gump, this movie also gives a powerful social history of the time.

The soundtrack was pretty awesome. While the singing was sometimes noticeably computer-altered, the arrangements of the music were amazingly original. Also, there were a few notable celebrity performances such as Bono (as Dr. Robert) singing I am the Walrus. Another great thing about the soundtrack is that it sampled music from The Beatles’ entire run, with pretty much equal representation from their earlier and later stuff.

The reason this movie was so successful was that it combined many aspects of The Beatles’ catalog with some history and a good story. Although I am a huge Beatles fan, they were before my time. I have always listened to their music out of the context of its time period, which was undoubtedly influential in their writing. Putting the music together with a picture of the time helped open my eyes to some additional meanings to some of my favorite music. Another fun aspect of the movie was picking out all the references to Beatles songs. Much like the character’s names, there were a number of nonchalant references in the dialog, such as Jude’s boss saying “when I’m 64.” (I found a nice list of all The Beatles references on Wikipedia, but I’d recommend only looking at them after you’ve seen the movie.)

If you’re not as in love with The Beatles’ catalog as I am (shame on you!), this movie may not be as significant for you. There are a few “trippy” sequences near the middle of the movie that seem to get off plot, but then again this is somewhat reflective of their music. Overall, it’s the music that drives this movie. If it wasn’t for The Beatles’ amazing songwriting abilities, this movie would have just been “ok.” But as I pointed out to Sadie multiple times last night, “Man, did those guys know how to write some music!” I’ve been listening to them for years, and their songs continue to set the bar for any music I encounter.

If you like even a few Beatles’ songs, this movie comes highly recommended.

5/5

The premise of education

I read a very interesting article today, linked from an article on ifacethoughts (a blog I read). The article itself is about undergraduate Computer Science majors, but I felt like the premise goes far beyond that specific example. In reality it speaks to the terms of higher education in general, and I’m going to try to take it to heart in my own education.

See, I seldom think about the professional nature of the physician anymore. The way they throw facts at you in Anatomy and Physiology (not to mention Pharmacology and the rest to come), it seems like anyone with half a brain and a whole lot of hard work can memorize them all and become a successful physician. After all, there are government recommendations and guidelines for treating almost everything. While this may be true, I’m reminded of something I heard here at Rush (although I can’t remember where) that was reflected in that article. In it, Braithwaite probes at the nature of the undergrad CS major, who claims that more class time should be devoted to teaching more computer languages and detail in programming. If most of their students simply go to work for businesses who want them to be programmers who can produce solutions for them, why isn’t more time spent on teaching the ins and outs of various programming languages?

You are describing a vocational job to me. The rote application of practical principles is nothing more and nothing less. How is what you’re describing any different than a job as an accounts receivable clerk or a dental technician? Or a land surveyor? Or a architectural draftsperson?

He goes on to point out that there’s nothing wrong with vocational work or being a technician as long as you’re not lying to yourself about it. His greater point is to emphasize that it is not incredibly difficult to earn a degree, even with high marks, while understanding very little about the field.

The reality is that your degree is only a pacifier, a way to make you feel good about yourself. The industry is selling you the illusion of respect. I’m telling you this because the sooner you figure out the game, the sooner you can start playing instead of being played. If you really want to be more than a clerk, you can pay more attention to what is to be done and how much freedom you have to do it and less attention to whether there is a title or a degree involved.

It’s easy to get lost in the minutiae of details presented in class every day and forget about the bigger picture. But the point is that it’s not enough to just know the facts. If you do, then you are just a form of “clerk”. You need to understand the processes, why things are done (and even taught) the way they are, and why the field is going where it’s going. Otherwise you’ll not be in charge of your professional career and where it’s leading you. This is one of the main goals of education, although it’s often lost somewhere along the way.

On a sort of tangential note, this is an aspect of being a full-time practicing physician that worries me. In a linked article to the one above, he speaks about the role of academics in progressing the field, citing that most of their advances come from academia. I worry about becoming a person who only practices a craft as opposed to being a developer.

The cost of medical education

Hi. I know most people think that doctors make a lot of money and therefore don’t need to worry about the cost of their education. However, in reality I (like most med students) am likely going to graduate over $200,000 in debt. Your reaction may be “yeah but you’ll be making the big bucks then, and you can pay it all back”. While it may be true that I’ll be making a decent living at some point, I will not be doing so when I graduate from medical school. In fact I will be making about $40,000/year for the next 3-5 years of my life in residency, which is for an 80 hour work week and therefore is actually closer to minimum wage (not bad for someone with a professional degree). Previously, I (like most medical students) was eligible to claim economic hardship for the first 3 years and have my $200,000 bill wait for me until I could afford to pay it and the government would pay any interest accruing. Approximately 67% of medical residents qualified for economic hardship. This past September, Congress and the President passed a bill that disqualifies almost all medical residents from being able to claim economic hardship during this period. This means that medical residents will be left with a choice. Foot a $2,000+ bill every month or go into forbearance. When in forbearance, we will accrue interest on our entire $200,000+ loan for the entire 3-5 years while in residency. This is a lot of money! In a country that needs more doctors, our government should not be making someone’s choice to go into medicine more difficult with a hefty financial burden.

If you’d like to read more about this issue, the AMA has written up a good outline of the events. If you’d like to contact your Congress-people (like I did) and let them know you’re outraged they would do such a thing to the country’s future physicians, the AMA made an easy form to do it for you. Spread the word if you care to.