Recent blog entries for pcolijn

Our Industry

I don't think I've mentioned this before, but I tend to be a champion of getting more women interested in computer science. As Larry Page puts it, we're missing out on an incredibly large talent pool right now by having so few women in computer science. We could be solving more problems and more interesting problems if we had more people working on them, and over half the population is female, so the industry in its current state is clearly losing out.

According to Wikipedia, the number of women in computing the US declined from 35.2% in 1990 to 28.4% in 2000. Wow, talk about a step in the wrong direction. Why is this? There have been many studies, and the reasons can often be distilled down to feelings of exlusion and lack of respect. A principal source of both of the above is immature crude jokes.

Which is why when I saw this, I felt compelled to write this post. As immature jokes go, it is relatively mild. I have certainly seen and heard far worse. But it doesn't really matter; it's still inappropriate, and it's still bound to make people feel uncomfortable, and even more importantly, it's completely unnecessary! The poster could have made the same point using any number of other metaphors, and could have easily found another funny metaphor to use instead of the one he did choose, if he was hell bent on trying to make his post amusing.

Anyway, that's my rant for the day. I personally feel that as rude as it may be, attempts at public shaming like this may be the best way to get people to stop with these silly jokes. Pointing these things out isn't half as rude as starting them in the first place, and hopefully can help people realize how pointless and damaging they are.

Holidays 'n Such-like

Had a lot of fun. Spent most of the holidays with slatepelican, which was good. Usually I'm not a huge fan of Christmas and that whole time of year, because I find the shopping super stressful, things are always really rushed, airports and planes are packed, etc. But slatepelican made it a lot more fun.

We spent a couple days in Chatham, then headed west to Calgary to hang out with my family, and then returned to NY for New Year's with bugbearcub in tow. (Actually, technically we were in tow I guess, since we arrived a couple hours after he did.) mrwise and his sister also made an appearance for New Year's, which was good (and, as always, klASSy).

iPhone

Wow. This thing seriously looks awesome. Too bad it's super expensive and will only be available on Cingular. Now I have to decide whether the iPhone is worth getting a 2 year (blech) contract with Cingular, and if so, whether I can put up with my craptacular Tréo (see below) until then.

The remainder of this post is somewhat rant-y, so I'll leave a cut here for those who are all ranted out.

More Tréo Woes

It just keeps getting worse. Every time I try to get mail manually in VersaMail, the unit freezes and I have to manually restart it. Every once in a while when I try to get voicemail, the phone app crashes. Calls get dropped. Opening certain contacts entries causes the unit to restart. Blazer (the web browser) causes a restart when opening certain web pages.

I've actually just started giving up when the stupid thing crashes; I just forget about what I was trying to do and move on with my life. I really can't be bothered at this point.

The funny thing is that I thought maybe some of these bugs had been fixed, so I upgraded the software a while ago. Since then I think I've actually had more problems. Way to go. Paying $500 for a phone on a contract starts to look good when this is your alternative. Of course I suppose I could just join the masses and get a Razr, which seems to suck a lot less than Tréos. Though I suspect Google Maps on Razr wouldn't be nearly as good as on the Tréo. The other alternative is a CrackBerry, of course, but getting another smartphone if I'm planning to get the iPhone seems silly.

LiveJournal

While we're on the topic of things sucking, what is it with LJ asking you to login every time you post a comment? I swear it didn't use to be this braindead. But I just posted 3 comments on LJ, and each time I had to login again. WTF? Do they have some strange one-time login only for posting comments? That seems stupid.

15 Dec 2006 (updated 15 Dec 2006 at 21:20 UTC) »
On Notifications, continued

The latest Joel touches on notifications and software getting in your way. I love this paragraph. It had me screaming "yes! yes! exactly!" Ok, maybe not screaming. But I was bouncing up and down in my chair.

Every few days some crappy software I can't even remember installing pops up noisy bulletins asking me if I want to upgrade something or other. I could not care LESS. I'm doing something. Leave me alone! I'm sure that the team at Sun Microsystems who just released this fabulous new version of the Java virtual machine have been thinking about the incremental release night and day for months and months, but the other 5,000,000,000 of us here on the planet really don't give a flying monkey. You just cannot imagine how little I want to spend even three seconds of my life thinking about whether or not to install that new JVM. Somebody out there is already firing up Gmail to tell me that the JVM mustn't just upgrade itself because that "might break something." Yeah, if the entire collective wisdom of the Java development team doesn't know if it's going to break something, how am I supposed to know? Sheeesh.

I've said it before, and I'll say it again. Unless you have something earth-shatteringly important to tell me, do not pop random stupid crap up in my face!

On Banks

apenwarr claims that banks (in Canada, anyway) do not and cannot use any information about your spending patterns that they might have to do anything but "run their business."

First of all, even though banks do not have information about exactly what you bought, knowing how much you paid and where you bought it is still a significant amount of information; certainly enough to target ads. That I spend most of my money on my credit card on flights and restaurants no doubt makes me a good target for advertising, oh I don't know, maybe flights and restaurants?

The reason I suspect that some sort of advertising deal is going on is that with my credit card bills I always receive remarkably relevant advertisements for (you guessed it) flights and restaurants. Maybe this is purely coincidential; maybe they advertise flights and restaurants to all their credit card customers.

Is there any way that without actually giving away the data, they could do something with it? i.e. they tell some advertising companies "give us ads for travel, restaurants, luxury cars, and some other categories; we will make sure they go to the right people." The advertising companies never know who is seeing which ads, just that they're going to the right places. Remarkably like Google's ad system, when you think about it.

In any case, I have no evidence that this is, in fact, happening. It just seems likely. It's what I would do if I were a bank :P But I suppose my original assertion that banks are selling my personal data "to all kinds of sketchy advertising companies" is probably false; at most they're keeping it to themselves and enjoying the lucrative position of being an advertising middleman.

[Originally posted Dec. 02, 2006]

On Macs, continued

pphaneuf: I complained about FrontRow and the iTunes album art stuff not because I find their problems incredibly serious flaws of OS X as a whole, but because they are touted by Apple to be great new features, when they are actually decidedly half-baked. The fact that you cannot play DivX with FrontRow makes it pretty useless, IMO. There already is a DVD Player app that works ok, and 99% of your other video media is likely to be DivX. I use MPlayer OS X for playing stuff on Mac, and it too plays most things just fine (except some obscure Windows Media stuff). But it isn't integrated with FrontRow, and as far as I know, there's no way to integrate it with FrontRow, so the whole "Mac as the thing to hook up to your TV" concept is kinda lost on me. It's no better than a Linux or Windows machine for that purpose. It would be if FrontRow actually worked.

The album art thing, fine, it's actually not a trivial problem, and they probably wanted better accuracy than some of the open source programs, whose accuracy is somewhat wanting, as pmccurdy observed. Still, it doesn't download art for a lot of albums that Rhythmbox gets, so, as a newly-hyped feature it's pretty disappointing.

I guess my overall point in noting these two shortcomings was that, as Apple launches go, these two were very weak and left me unimpressed.

And again, it's not that I don't like Macs at all. I think they're great for what they're primarily designed for. My problem is that the design goals of a Mac do not really intersect very much with what I actually usually do with a computer, so they're not very good for me.

[Originally posted Nov. 29, 2006]

DS Lite

A while ago my gainful employer sent me some gift certificates to Best Buy. They sent them to the wrong address, but due to mrwise's resourcefulness I got them anyway.

In any case, I used them to buy a DS Lite. I must say, I'm very impressed with it. It's beautifully simple, suspends and resumes seamlessly so you can play for a few minutes on the subway and then slip it in your pocket, and the variety of games is great. The wireless gaming works flawlessly too, and the fact that you can play games you don't own is really cool. I really like Nintendo's strategy of sticking to what they do best: gaming. I feel like with all the other systems out there, they just try to be too many things, and end up getting them all wrong.

Tréo

I've gone from loving mine to hating it. When I liked it, I didn't have data at all, since Fido charges ridiculously for data. But one of my main reasons for getting a Tréo as opposed to something cheap and crappy was that I'd be able to read email on it, do Google Maps, etc. So after moving down to NYC, where T-mobile has a reasonable-ish unlimited data plan, I went for it, and promptly discovered that doing anything data-related on the Tréo sucks.

The non-data stuff, like the phone, contacts and calendar, are solid, so if you just want a fancy phone that you can also run Palm software on, I'd still say it's a good machine, but if you want to do email, web, etc. I would recommend strongly against it:

  • Their built-in web browser, Blazer, has about the worse possible design I can imagine. The entire UI blocks all the time. You can't scroll a loading page until it's completely loaded. You can't scroll the current page as soon as you click something. There are no tabs. This makes my usual latency-hiding techniques, of (a) loading stuff in another tab while I read current stuff, and (b) clicking a link and then reading the current page until it loads, useless.
  • You can get Opera for it, but only the non-native Java version, not a Tréo-specific version. It's somewhat better than Blazer, in that it's faster and blocks less, but since it's Java, it crashes left and right, and sometimes locks up the machine completely, to the point where you have to hit the hardware reset button.
  • The built-in mail program, VersaMail, is also a complete piece of junk. It completely fails to handle non-7bit-ASCII encodings, randomly decides to re-download your entire mailbox, blocks while downloading, crashes often, etc.
  • The new Gmail phone app is Java-only right now, meaning that while it runs, it exhibits all the crashing and lock-up problems that Opera has. Using Gmail in a web browser is also a no-go due to the above browser problems.

The one bright light is the Google Maps for Mobile app, which is Palm native and rocks my socks off. But I went to the tech talk, and believe you me it was no easy task writing that sucker. Apparently modern Palms run PalmOS on an Xscale processor which is emulating some old 16-bit Motorola CPU or something? Sounds godawful.

I suspect the next PalmOS with Linux and GTK will be a lot better. Hopefully it will also come with tinymail, which is all kinds of awesome.

Anyway, one of the reasons I went Palm instead of Crackberry is that I thought Palm had a larger software library. This is true, but it seems that most new mobile apps are Java, because it's a lot heasier to support a bunch of phones at once that way. All of Google's mobile apps supported Crackberry right away or soon after launching, because Crackberry does Java, for example.

So, dear LazyWeb, how are Crackberries for non-data stuff? Do the phone, contacts and calendar work well? Are there 3rd-party apps for stuff like reading ebooks? How well does the email work with Gmail? I'm unlikely to want to pay for the special Crackberry "push" email, unless I can con Google into paying for it :)

Zune

Microsoft still doesn't get it. Ars does:

To unseat a player like the iPod and to convince users to ditch any PlaysforSure tracks they might own, Microsoft needed to hit a home run on launch day.

According to the same review, however, the Zune locked up right out of the box and there are pretty serious problems syncing, in addition to the much touted iPod-killing wifi feature being so severely limited that it's next to useless. If anyone is seriously going to "kill" the iPod now, they have to have something that works flawlessly and smoothly, in addition to having some cool new distinguishing feature that makes it so tempting that users just might be willing to throw away all their iPod FairPlay tracks. In short, it's next to impossible to "kill" the iPod at this stage, and MS doesn't get it.

Unfortunately for them, their anger at this situation, which is not unlike the situation they've created with Windows and Office, does not an iPod killer make.

1 Nov 2006 (updated 1 Nov 2006 at 07:37 UTC) »
Perspective

I just spent a delightful weekend with slatepelican in Montréal. We walked around in the ridiculously cold and wet but oh-so-Montréal weather, ate ridiculous quantities of unbelievably unhealthy food and saw some friends. So it was a great time.

But I found it a little odd being back. I remember when I first visited Montréal I thought it was such a big, modern city. And of course it still is a big, modern city. But after New York I feel "dirty" somehow, because the wonder was lost on me this time. Or if not lost, it was at least different. This time Montréal felt like a small, quaint town. Which is not really a bad thing; in some ways that's what Montréal's going for. But I was somewhat stunned with my own changing perception.

Nickel and Diming

In Montréal, slatepelican and I stayed in a fancy hotel. The room was very nice, and we enjoyed it a lot.

However, they charged ridiculously for lots of things. Access to the Internets, for example, would set you back $15 per day. The bottles of water in the room: $8.

Now I find myself in a somewhat less fancy (but still quite nice) hotel in Palo Alto. Fast Internet is included in the room, and the bottled water is free.

andukar and I had a similar experience in Seoul. We stayed at a hostel for a few nights and then moved to a fancy hotel. The hostel had free Internet access, lots of channels on TV (including a Starcraft channel!) and a modest, but free breakfast. The fancy hotel had neither free Internet nor free breakfast, and had a downright awful selection on TV.

Why is it that when you pay more for a place to stay, you get less? In both these cases it is true that the more expensive option had better location and better accomodation, but on the other hand there already is a price premium, so the nickel and diming seems obnoxious.

Random (potentially NY-related) Tangent

Ok, what is it with the giant sunglasses, people? The 70s are calling and asking if we got the memo that giant freakin' glasses are ugly. That is all.

Cycling

I finally got around to purchasing a bike this weekend. Yay me! I had forgotten how fun it is to blast between lanes on gridlocked streets at 40kph. Whee! In other news, I'm in pretty bad shape these days, having not biked in a while. Need to work on that...

Notifications

Not in the programming sense, but in the UI sense. IMO, notifications have become public enemy number one. There are way too many of them, and they're almost all for stuff I don't care about.

My music player just started a new song? You know what, I know that! I can bloody well hear it! No need to pop up a stupid, ugly yellow box in my face! My software update is complete? Who the fuck cares? Such-and-such program that I manually started needs to access the Internet, and you need me to click "yes"? Would I have started the stupid thing in the first place if I didn't want to use it?

No operating system is immune here: the above 3 examples came from Linux, Mac and Windows respectively.

The thing is, notifications are distracting to the user. If you're going to disrupt the user's train of thought and get in the way of what they're doing, it better be for a damn good reason. "Your battery is almost dead," for example. If I don't know that, my computer will die and that will be even more annoying than getting the notification. But if the notification does not help the user avoid something more annoying than the notification itself, it's not worth it.

BTW, Microsoft has an item about notifications in their new HIG. Though it recommends them for "non-critical" information; I strongly disagree with that. It does, however, say to use them "judiciously," whatever that means. As pphaneuf says, you can tell something is easy when it's done often, badly. Maybe vendors should make APIs that do annoying things like notifications exceptionally difficult to use :P

Shiny Thing

I became one of those people with a vanity domain recently. You can now reach me at caffeine@colijn.ca.

MTA Hates Me

The MTA (aka the NY transit people, aka the only people I know who actually use a .info TLD) hate me. The past few weeks, the train I take home (the L) train has not been running between midnight and 5am. For those who know me, you can understand that this seriously cramps my style. Bastards!

But now, to rub salt in an already painful wound, they've decided not to run the L train all weekend. So I'm essentially stranded in Brooklyn unless I want to spend an altogether rediculous amount of time taking the G and J trains. Grr!

Head First Design Patterns

I bought this a little while after GUADEC and being inspired by pvanhoof. It's pretty good. I've actually used most of the patterns in some way, shape or form before but it's good to put a name to them and get the formal definition in my head. However...

Rant: UnsupportedOperationException

So I touched on this a while earlier but today my hatred for UnsupportedOperationException got some more fuel when I was reading the design patterns book.

In the composite pattern they actually recommend using this exception so an implementation can avoid implementing some of the methods from the interface. They do mention that not implementing some of the interface methods is bad, it's a tradeoff, etc. Fine.

What's evil about UnsupportedOperationException is that it's unchecked. Meaning the compiler doesn't warn you about it if you don't try to catch it. So here you are, coding against some interface and unbeknownst to you some of the methods are just going to bail on you and your app will crash, and you would never know that this will happen by looking at the interface specification or from compiler warnings. Lovely!

Please, people: stop using UnsupportedOperationException! If you really need to leave some interface elements unimplemented make your own checked exception like UnimplementedException or something and explicitly indicate which interface elements are optional by using throws in the declaration.

Unchecked exceptions should really only be for serious runtime errors, like NullPointerException, ArrayIndexOutOfBoundsException or ClassNotFoundException. IMO UnsupportedOperationException is a gigantic hack that should never have existed in the first place. And now we're all screwed by it.. sigh.

Another One Bites the Dust

My iPod just died. It's very sad. It just won't turn on at all, even if it's connected to my machine (so it isn't just that the battery's dead).

Either I've had extremely bad luck with my iPod, or they just plain suck. I bought it less than a year ago and it's already been replaced once. In addition, it skips on mp3s that xmms, mplayer, rhythmbox and my Rio Karma all manage to play just fine.

slatepelican also had her iPod die recently. And I notice that everyone seems to have a pretty new iPod around here; either the nano or the video. You don't see very many minis or pre-video full-size pods. Either people really love upgrading their iPods all the time (Apple's marketing is really good, so this is possible, I suppose) or I'm not the only one experiencing iPod distress.

Is it unreasonable to expect a gadget to last more than a year? Or are iPods and the like just the latest thing to become disposable?

151 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!