Friday, January 26, 2007
Meeting Richard Stallman
I had the nice opportunity to speak at the Pacific Free and Open Source Software Convention (PFOSSCON 2007) in Honolulu, Hawai'i, last weekend. This was done as part of my job at Vyatta. While I managed to acquire a cold after coming home, earlier this week, the conference was great. Kudos to Scott Belford, Jim Thompson, and Julian Yap for putting everything together.
Along with me speaking, the infamous Richard Stallman, Free Software Foundation, and Barton George, Sun Microsystems, spoke as well.
The summary is that after meeting Stallman, I wasn't very impressed. I have been reading his writings, such as the GNU Manifesto, since the mid-1980s. I'm not sure what I was expecting, but I didn't get it. My reaction to both the man and the message fall into a few broad categories. I think I'll blog in more detail about these things in the future sometime, but here are the broad reactions:
- Richard is not the best spokesman for the FSF. Sure, he founded the organization. And I wasn't expecting him to wear a shirt and tie. But to be honest, he's just a shabby guy. If you ever wonder why generally Free Software went nowhere inside corporate circles until Linux came along, this is one reason. Just at a personal level, Linus is a better spokes-model than Richard. He's just as geeky, without looking shabby.
- I react very negatively to Richard's use of "GNU/Linux" versus "Linux." Richard's contention is that all the userland for Linux came from GNU and thus Linux is really just the kernel while the whole OS should be called "GNU/Linux." Whether that is true or not, the fact is, Linus built his own operating system and he should have the right to name it. If Free Software is truly as Free as Richard wants to claim it is, naming should be one of the things where the Freedom shows. Put another way, I have no issue if the FSF and GNU want to put out their own Linux distribution and name it "GNU/Linux," or even just "The GNU System," that's fine. I have big problems with Richard trying to convince me that I should tack "GNU" onto the front of "Linux" for some reason. I would worry that at any time Richard might claim that the use of GPL code might warrant changing the name of your application to "GNU/Foo." This is all the more annoying because Hurd still sucks and without Linux the overall goals of the original GNU project would still be unmet. Simply, this whole naming thing is a big case of sour grapes that Linux has been successful and has eclipsed GNU in terms of relevancy.
- My other big takeaway from the conference is that I don't agree with Richard on the fundamental philosophy of free software. There, I said it. HORRORS!. And here I am at an open source company. Sorry, while I like open source and believe there are certain advantages to it, I specifically reject Richard's moral basis for Free Software. Richard tries to portray access to source code and redistribution for no charge as abstract moral rights that every person should have, something akin to "life, liberty, and the pursuit of happiness." Using proprietary software, Richard says, is to make an immoral choice. I don't buy it. I like using Linux better than Windows for a variety of reasons, but I don't believe the people at Microsoft are immoral because they choose to keep their source code to themselves (I do think some of Microsoft's monopoly business practices are immoral, but those are another matter). In my opinion, this is why the FSF has been largely ineffectual in getting people to think about "Free Software" as opposed to "Open Source" (a term which Richard rejects as missing the point). Simply, I don't think most of the developers or users of software see a philosophical, moral argument to made with respect to closed software. Again, I think Linus here wins hands-down as the leader of a large software movement because he focuses on the real issue: the open-source development model allows users to have more control and harnesses the innovation of a larger number of creative developers.
Well, that's all for now. In spite of my disagreement with Richard, I bought a copy of Free Software, Free Society from him and had him autograph it.
Wednesday, January 03, 2007
D: By Jove, they almost have it!
When I first saw C++ back in the mid-1980s, it looked pretty interesting. Then it started to grow into a horrible monster. I was just reading about the D programming language today. All I can say is, "Wow!" I wish they had this way back when. This would seem to correct most of what I find distasteful about C, C++, and Java, while keeping most of the things I like--to the point where I would actually consider using it for certain projects.
The things I hate most about those programming languages are:
C
- No objects
- Manual memory management only
- Lame macros
- Having to define header files
C++
- Complex, obscure syntax that I can't ever remember completely without a copy of The C++ Programming Language sitting next to me
- Complex resource management schemes to avoid leading memory/etc. in the presence of exceptions
- Did I mention that I hate the complex syntax?
Java
- (Almost) Everything is an object (but not quite)
- Having to run in a VM with bytecodes even when you're writing something for a single platform and don't need or want to
- No ability for structures to overlay memory for efficient access to C and network data wire protocol data structures, forcing the programmer to do bit-twiddling with ByteArray and shifts and masks
In short, D looks interesting. Is it Lisp and would I go back to using D as my main programming language? No. It still doesn't have macros the way Lisp does and it doesn't have sexprs (yes, I really do like the parenthesis), but it is a better follow-on to C than C++ and still hits the system-programming domain that Java missed so bady. It seems like something to keep in one's hip pocket.
Hello 2007
Welcome to a new year. I have been swamped the past six months with work and family. I'm still getting a bit of time to work on Lisp-related stuff, but not nearly as much as I'd like.
The biggest casualty has been blogging. I just haven't had much time to sit down and compose something cogent. Back in October, Xach added the sparklines display to Planet Lisp. My first thought regarding my own sparkline was "Yikes! I've seen people at the morgue with better EEGs than that!" Hopefully, Xach won't de-list me.
So, to kick off a new year, here's a post to make my sparkline wiggle a bit.