There comes a time…

I read this blog entry from a hard-working former Gaim developer today. It’s sad, yet so familiar…

I’ve been holding back this blog entry for a long time, but given that I’m not the only one who has been mistreated, now might be a good time to describe what happened to me in what used to be an awesome project. It’s also a way to hopefully clear my name, so to speak, as some have been told some very negative things about me as of late.

As many know, I was a developer on Gaim for many years and wrote a bulk of the framework that it’s made of today. At least for a time, I was respected, and my work was appreciated. At one point, a number of users started messaging me asking why the lead developer or other senior developers were saying such negative things about me behind my back. I wasn’t sure I believed it at first until a trusted friend told me what was said to her about me. It was after that that things took a sharp turn downhill, and while I won’t go into details, it was enough to make me never want to contribute a line of code to the project again. I’ve been informed since that my name is synonymous with crap code, according to a couple senior developers. It was really hard to hear this.

Now, I know this has happened to other people. Users and developers. A number of people in the past who have wanted to contribute to the project have been strongly rejected. I hope I was never the cause of any of that, as I tried to work with most people and help them along. My apologies to everyone out there who has had a bad experience with the Gaim project.

I don’t know what Gaim’s future holds, but in the past year I’ve learned not to care. My work on Gaim has helped me to establish connections in the open source community, and for that I am grateful. It has also helped me to get a job that I absolutely love.

I’ll forever miss the project as it used to be, and hope someday it’ll reach that stage again.

Just A Little Easier, Please – Networks

The Linux desktop has progressed quite a bit in recent years. Ubuntu, out of the box, mainly just worked. I was able to quickly set up a nice desktop for my girlfriend using it. It was really nice to see the little things all fit together. For example, when we took a pic with her new camera and plugged it into the USB port, a dialog popped up asking us if we want to import the pictures. Now obviously, I expected that, and it’s not like that was invented in Linux, but it’s one of those nice touches that just makes life a little bit easier. Still, there is so much room for improvement.

I’ve been trying to think about what specifically I find annoying in day to day usage of Linux. I think my biggest gripe right now is how much of a pain it is just to move my laptop from network to network. I have five networks I tend to use. The first is my home network through my wireless router. The second is also the home network, but wired, through another router. The third is the network at work. The fourth is the wireless network back at my parents’ house, and the fifth is the wireless network at my grandparents’ house, which is next to my parents’ house.

Now, I don’t visit my parents that often, and I don’t connect to the wired portion of my network often either. However, I do switch twice a day between the wireless network at home and the wired network at work. And every time I do, I have to switch network interfaces, re-enable/disable the proxy servers, and change my Gaim account configurations (port numbers for going through the proxies, accounts I wish to auto-login, proxy settings, etc.). It’s just enough of a chore where I think to myself, “Ugh, must do this again.”

When I plug in a Windows computer into a wired network, a little bubble pops up saying that the Ethernet is connected, and it (usually) tries to configure my network settings. It doesn’t always work right, but hey, it’s an effort. It would be nice if we had such a thing in Linux. Maybe we do and I just don’t know about it, but if that’s the case, then we need an easier way for users to discover it and to configure it. Basically, when I plug in a network cable, I want my wifi connection to go down, my wired connection to go up, and a DHCP server to be scanned for. Now the wired-only portion of my network at home doesn’t use DHCP (yet), so it’d be nice for some kind of auto-discovery magic to happen, but really I should be using DHCP here anyway.

The little network selector in my panel is a nice start, really. It’s been buggy here, but it mostly works. However, it’d be much nicer if I could also configure proxy servers for each interface and network. Not tied to that applet, mind you. It would have to be a layer below it somewhere. When I change networks on the command line, the same magic should happen.

The Gaim auto-reconfiguration could happen via a Gaim plugin, which I’m very tempted to write. I don’t know what the easiest way would be to determine when a network changes on an interface, and when interfaces change. Perhaps some kind of D-BUS layer somewhere could intelligently broadcast this information in an easy-to-use form.

I don’t imagine a lot of this would be difficult to develop, and it’s largely a matter of putting the small pieces together (once written). It would certainly make this one aspect of my daily usage a lot easier. I’m sure I’m not the only one frustrated by this. I don’t know if there is work going on in this area or not, but hopefully someone will get the motivation to hack on a piece or two.

Panels Packed of People Presence

Calum’s blog post showing a bunch of talking heads on his panel is pretty cool. I have the presence part of this already done in Galago’s gnome-presence-applet. It doesn’t display a talking head, but it displays service indicators and first/last names. It wouldn’t be hard to make it optionally display an avatar instead. The messaging wouldn’t be there until a future release of Galago, though.

A Galago release is imminent now. Just a few things left to do.

Better than a kick in the pants

There’s nothing better than finally fixing a bug that has been a problem for over three months. Well, except finding a number of other bugs that would end up being hard to find down the road, and fixing them. Galago-daemon is now far stabler, and I would trust it to have my children, er, maintain my presence, or something. Yeah. Anyhow, one major step closer to a release. There’s just one important thing left, which is username normalization.

Also, it seems IBM has shipped my new ThinkPad. Hurray! Can’t wait. Except I have to. So, perhaps sleep is in order, since I’m starting to become delusional. I will be pissed if it turns out I dreamt fixing those bugs. 🙂

Picnic in the Park. Er, College.

So Sunday was the VMware picnic, which turned out to be a blast. Mainly because my little sister was there, along with my mom and one of my brothers. Although at first shy and a bit nervous, as my sister Jenna said, she soon warmed up and started participating in the events. The bounce house was of course one of her favorites, although she was quite thrilled to get a hole in one in the little golf game booth and to get two balls in a row in the ball toss game. She picked out her prizes and proudly showed me what she had won. Unfortunately, it seems her bag got switched with someone else’s during the day, and she lost her prizes.

Jenna didn’t want the day to end, but we eventually dragged her back to the car (not kicking and screaming, though, as she’s pretty good about that). Soon it was time for them to head back home, which is always a sad moment, but it was a fun visit. Jenna called just a short while ago and told me how much fun she had. Apparently, she wouldn’t stop talking about it at daycare today.

Oh, and she drew me a picture as a present. Such a cutie. I’m going to have to get pictures of the fair put up, and scan in her drawing at some point.

Various Updates

I don’t blog as often as I should anymore. So, here’s another general update on stuff.

I released 0.4 of the Desktop Notifications Spec tonight. No, people, it does not allow XML + CSS or XSLT or XEMBED or sound or anything else. It does support enough to be useful, without going overboard. I think it’s getting to be a very good spec, and I’m about ready to call it done, after a few more (sane) discussions.

Galago .NET bindings are coming along nicely. Galago# itself works rather well, and I’m working on GalagoGtk# now. The one problem is that Gtk# supports Gtk 2.2, not 2.4, and I have some 2.4-only widgets in libgalago-gtk. So, I’m going to have to provide 2.2 alternatives. *sigh* Once that’s all done, GalagoGtk# should be ready as well, and the Beagle and Tomboy guys can have some fun with them.

I must say, Tomboy is very cool. It Just Works (TM) and I’m already finding it very handy. Kudos, guys! Now if only I could auto-link #123456 to Bugzilla entries at work. Hmm…

Keys be gone

Oops, somehow I managed to leave my keys on the table this morning when I headed to work. I didn’t realize this until I was at my door, just an hour ago. I went to the nearby Albertsons and picked up an eye glass repair kit to try to pick the lock, but it seems I’m a bit rusty… Luckily, on the way to the office (in search of a number to call), I ran into one of the maintenance guys here that I know, and got a spare key to use. So I’m back home! Must not do that again.