Older blog entries for walters (starting at number 34)

Free Software

I hacked a bit on apt with SyntaxPolice tonight; we got a bit farther on our project to add secure updates. It involves a lot of conceptual changes to the code, and the apt source tree is confusing as hell. I mean, really...is it necessary to have two classes named "Type"? Grrr. As far as I can tell these classes just create other ones; that seems like the Factory pattern to me. I would have named them like SourceListFactory and IndexFileFactory.

Also got a bit farther packaging Gnopernicus and gnome-speech. Both had fairly broken build systems, but I fixed gnome-speech's, and I'm mostly done fixing Gnopernicus'.

I didn't get any netRhythmbox hacking done so far this weekend, unfortunately.

Life

Watched Jesus Christ Superstar with some friends. It was fairly entertaining. I especially liked the Jewish guy with the glasses, the gut, and the gold.

Advogato

So, now that I'm putting more time into writing these diaries, I'm starting to wonder; what will I do if Advogato dies? Anyone know if there's a good way to back them up? Also, I think it would be neat to have a diary-like thing on my main website and just mirror it here. Anyone know if I can do that automagically somehow? What (free) software do people use to do stuff like this?

School

This math class is really killing me. I have spent at least 12 hours so far on a single homework that was assigned just for a week. But I think I'm finally getting it. There was one question that asked about computing the chromatic polynomial of the cube graph (Q3), and since that would have taken way too long to do by hand on paper, I ended up writing an OCaml program to compute it. It probably took me longer to write the program and get the answer rather than to just do it by hand, but writing the program was a lot more fun.

Speaking of OCaml, I am getting back into it. It's a very very cool language. A few weeks ago I wrote this simple Lisp interpreter in OCaml for CIS 755. It weighs in at about 375 lines. OCaml is amazingly powerful at stuff like interpreters (and in general, manipulation of highly structured data).

Teaching

I went over class inheritance yesterday. This time I decided not to use the prepackaged slides; instead I just taught it my way. I think that ended up working out pretty well; the slides are just too boring. One person asked some good questions, and that's always a good sign. I am getting much more comfortable with teaching, and with my students.

Free Software

School has been keeping me so insanely busy that I haven't had much time to hack on the stuff I want to. My email queue is getting depressingly long. I'm going to devote a lot of this weekend to catching up. netRhythmbox, creating a GNOME stream API, packaging Gnopernicus for Debian, hacking on apt with SyntaxPolice, and more.

Life

Just got back from lunch with SyntaxPolice. I had forgotten how good Mark Pi's is. I am resolved to try their tofu stuff next time I go.

I am getting more interested in snowboarding recently. I just wish that buying equipment wasn't so insanely expensive. Getting an OK board, bindings, and boots will run you generally at least $500. Probably I will save up some money over the summer, and see about next winter.

Last week was pretty crazy, and I didn't go to the gym at all until yesterday. It felt great though to finally get some good exercise in. I am going to try to get back into going every other day, instead of just two times a week or so.

I've been getting a number of netRhythmbox crash bugs, but they've resisted my attempts to track them down. Very frustrating.

So, my most recent project is to try to get a decent stream API into GNOME. I wanted to be able to load .pls files over HTTP in netRhythmbox, and parsing just became an enormous pain using the straight GnomeVFS API.

I finally got Gnopernicus to build; I am planning to get it uploaded to Debian RSN. It requires a CVS version of at-spi, though. It would be nice if these people made releases.

Added two new email addresses to my collection: walters@penguinppc.org and cwalters@gnome.org. I love collecting email addresses! Although, I guess there is a drawback to this: someone recently decided to send a bug report to every single one, because they couldn't decide which one to pick. Hm.

I am totally in love with both the "Smokey Blue" and "Spheres and Crystals" GNOME 2.2 themes! A big kudos to their authors for making my desktop look sweet.

School has been going fairly well. This math class has turned out to be much harder than I thought it would be, though. I thought medium-level graph theory and combinatorics would be easy, but there's some subtle stuff there.

Teaching is still fun. My students are particpating in class a lot more, which is nice. They seem to be learning things faster; I felt they understood arrays right away. It's really a gratifying experience to help people learn.

Well, back to math homework...

A whole lot of stuff has happened since my last diary entry here. Wow. I really wish I kept more up to date with this.

Way back in October I started The Debian Desktop subproject. Now it's a while later, and it's been a mixed success. Some patches have been made, and maintainers are now much more aware of end-users. But we haven't made the killer breakthrough that I was hoping for.

I got a job in grad school: teaching an introduction to Java. I don't like Java that much personally, but it is a lot of fun to try to get people interested in programming. I couldn't argue with free tuition or the stipend, either :)

A while back I mentioned that I was starting on Internet Radio support for Rhythmbox. However, after I had the rough outlines of the code committed, the Rhythmbox maintaine committed on a completely new user interface; this made my code not work at all. So I kind of stopped hacking on it for a while; about a month maybe. But I kept wanting to listen to internet radio, so after a week or two I grabbed snapshot of CVS from before his UI rewrite commit, and started using it. Then I got annoyed by some bugs, and fixed those. My changes started to get large enough that I wanted to use version control. During all of this time, the Rhythmbox maintainer's only focus was finding the perfect UI. I kept working, because I personally wanted a working music player to replace xmms. It was not long after that I realized it was turning into a very different branch, almost a fork, although I hated to use that word. But now the worst scenario has occurred: the Rhythmbox maintainer has retired, leaving me with the branch. I really wish things had turned out differently. I think there is still hope that we will merge. Having two music players for GNOME is stupid. I certainly didn't imagine ending up as the defacto maintainer for Rhythmbox, and I'm not sure I have the requisite skill to even do it. I just wish jorn had accepted releasing the branch as Rhythmbox 0.4.5, and then we could have focused on merging all of our work in CVS. But now we kind of have the worst of both worlds. It is a big mess. I don't know what's going to happen from here.

Well, the last two days have been some intense hacking. I finally finished the Debian GNOME 1 -> GNOME 2 transition scripts. It even asks you now when you log in if you want to keep your settings. See a screenshot here.

Well, grad school is interesting. I was originally thinking about doing research on programming language macro systems (I wrote a paper on this topic). However, I had to attend this mandatory seminar class, which I thought was going to be really boring, like professors blathering on about their boring research. Some of the presentations were, in fact. However, some were interesting, and this one on data mining in particular was totally fascinating. I asked the professor the next day if he had any research positions available, and we're due to meet tomorrow. Hopefully something good will come of that.

It's unfortunately getting a bit cold to rollerblade, which is disappointing. I like the fall a lot otherwise.

Lately I've been hacking on the Debian GNOME 1 -> GNOME 2 transition scripts. Somewhat boring work, but someone's gotta do it. I think I'll be done in the next few days, and then after that GNOME 2 can move into sid. Woot!

Whee. Long time no diary entry. Well, I've been busy :) Since the job market sucked so bad, I took most of the summer since graduating off, and I've spent a lot of time hacking. I've really gotten back into GNOME, in a big way. I'm trying to get away from using Emacs for everything.

So what have I been hacking on? Well, my current favorite project is Rhythmbox, which kicks XMMS' ass all over town. I'm presently working on internet radio support, for which I've had to hack GStreamer. Let me just say that GStreamer is an amazing piece of software.

However, during the above project, I've been distracted by NetHack more than once. While playing using the GNOME frontend, I realized that it was one of the few remaining GNOME 1 apps left on my desktop. So I started porting it to GNOME 2, and I'm pretty much done.

Other than that I've been excercising a lot, especially skating. I got new detachable rollerskates that just totally rule. Many people on campus have asked me about them.

That's it for now. It's about 5am, and time to sleep....

So, I graduated. Hire me.

Gah. My todo list is getting insane. I have promised myself I will get a new version of browse-kill-ring.el out today.

I was reading this article on CNN about how they're using cloning to revive an extinct species. The thought of being able to bring an animal back into the world that hasn't existed for over 60 years, just based on a chemical encoding, gave me this weird vision of life as a swirling collection of information. That's all DNA is; coded information. And we're the result of that code. I of course have "known" this for a long time, but today was the first time it really hit me.

I've finally gotten back into going to the gym on a regular basis, and as I did some rollerblading around campus today, I noticed more girls looking at me. Now, I don't work out solely for that reason, but it is a nice bonus. What I finally realized is that people in general give more respect to someone who has some muscles. It's usually a fairly subtle effect, but it is extremely pervasive.

My dad convinced me to go the YMCA with him one day, and after I stepped outside again, tired and sore, I felt a lot better. That feeling has kept me going back pretty much every other day for the last three years. Before that, I used to think that bodybuilders and the like were just egotistic and stupid, and while that's true of a few, most people think of a toned body as a mark of self-respect. Your body reflects the state of your mind in many ways. Some people, when they're nervous, chew their fingernails. Shy people will probably tend to hunch over a bit. So when you take the time to excercise, it shows that you care about your body, and you're not going to let it go unmaintained. It shows that you have confidence and self-respect.

How much time do you spend doing system administration on your GNU/Linux or BSD machine? How long did it take you to set up RAID 5, upgrade your kernel, or to install the latest version of GNOME 2? Don't you think you should spend at least a fraction of that time (e.g. an hour every few days) doing "system administration" on your body, which keeps you alive? So stop reading this, and go apply for a membership at your local gym. You'll be glad you did.

25 older entries...

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!