Sometimes I feel like everyone in this country is this guy.
If you use Mac OS X try:
In your .bashrc. Why this isn't on by default is a pretty huge mystery to me.
There's still lots of suckiness left. People often ask me why I don't like Mac OS X. I have some good reasons, but they're hard to articulate. I'm going to try anyway. Also note that I don't mind OS X for stuff like browsing the web, listening to music or managing photos. Since those kinds of things are where OS X is mostly targetted, I'm not claiming OS X sucks in general. I'm claiming it sucks for me.
This entry will be a rant. You've been warned :)
I finally got my new bank card from WAMU (that's Washington Mutual for those lucky enough not to know). This has been a long saga.
Step 1: learn from drheld that WAMU was replacing their VISA debit cards with MasterCard debit cards (which in itself sucks, since MasterCard is accepted in fewer places than VISA).
Step 2: have WAMU cancel the VISA part of my old card before I had received or activated the new card. Incidentally, this happened while slatepelican and I were in Spain. Not the best time.
Step 3: have WAMU assure me, very convincingly, that my card would continue to work in ATMs until I got the new one and activated it. Indeed it did work in an ATM. One more time. And then it stopped working entirely.
Step 5: activate the new card! Yay, money! Order stuff online from Amazon and PalmOne.
Step 6: orders from Amazon and PalmOne not working. Call WAMU. I thought I activated my card? No, we cancelled it. Ah, so when I said "activate" you thought I meant "cancel." I see. Well can I get a new one? Sure, it only takes two weeks.
Step 7: get new card finally today.
Step 8: activate new card. We'll see if they actually did it this time.
The thing that infuriates me the most about this is that to get a new card with WAMU they have to send it in the mail. Pretty much any Canadian bank that I know of will give you a new card on the spot if you go into a branch. WAMU claims they can't do that because all the cards have to come from some central MasterCard place. They should at least be able to give you a new ATM card on the spot. Not being able to get money, especially in a city like New York, really sucks hard.
Things I have learned so far:
Can you imagine the effect of combining exhibits A and B? Well let me tell you, it's glorious. Gloriously flatulent, that is. It also seems to be inducing hysteria:
Wrote my last exam Saturday night, and am now completely finished my degree. It was a long haul, and quite frankly I'm glad it's over. I do have a lot of good memories from this degree, but I'm also getting pretty sick of Waterloo and the whole assignment + exam scene.
In 2 days, I begin 2 months of pretty solid travelling that has me doing this:
YYZ -> YYC -> TYO -> TPE -> SEL -> HKG -> BKK -> CMB -> SIN -> KUL -> YYC -> YYZ -> JFK -> BCN -> JFK
At the end of it, I think I'll never want to see another plane again. But it should be lots of fun! I'm totally looking forward to it.
UW are changing disk quotas today. If you're like me and you're graduating, get anything you want off there quick!
I'm pretty excited about the product. Our hope was that it would really be the first calendar product ubiquitous enough to really get people using calendars in a big way, so wide-scale use was definitely one of our biggest goals. Some features that help with that:
The features I worked on, for the morbidly curious:
"Everything sucks." -- pphaneuf, circa 2003
This claim turns out to be mostly true. I've had some (minor) UI rants stored up for a while, and I really just need to get them off my chest.
I've been pretty happy with it, but it does have some UI nits that drive me crazy from time to time:
First off, the address book is pretty decent, in that it lets you store multiple numbers per person, their picture (which you can take with the builtin camera), address, birthday, etc. All the standard "address book" stuff you'd want. And it even has a type-ahead-find feature that lets you type "pu" and get all the punks in your address book (a rather large list on my phone).
Now comes the integration with the phone application. This is actually pretty poor. When you get a call from an unknown number, it asks if you want to add them to the address book. Fine. But you can't just add that number to an existing contact. It always creates a new contact for you if you choose to add them. Grr. So you create the contact, save it, try to remember the number, then go edit the actual person and add the number as their mobile or home number.
Then there's the phone log. It's not by reference. So you get a call from some punk one day, and add him to your address book. Then he calls you again. In call log you don't see the name twice, you see the number and then the name. Come on.. it wouldn't be that hard to do the call log by reference, and it would make it so much more useful.
Finally, memos. Memos is an incredibly simple application. You create memos (which are essentially text files) and then you save them, view them, edit them, delete them. Pretty basic. My only gripe is that the main UI lists all your memos by number, but you can't just push the corresponding number on the keypad to select a memo. A small gripe, but that feature would save a lot of time.
My god does LJ ever have some bad UI. My most major issue is that there's no login link (or indication that I'm not logged in) on the friends page. So when I go there I never know if I'm logged in, and I have to go to livejournal.com, see that I'm not, log in, and then reload my friends page. Seriously, people! Way to suck.
The "user info" and management pages are also hideously awful, but at least you don't use them that often. But seriously, stuff like "If you are this user, you can blah blah blah"? Hello! I'm logged in here! Of course I am this user!
The navigation bar at the top is also problematic. I mean it's ok, but it's not really all that discoverable. It took me a while to discover that I needed to use that thing and go to "Manage" and then "Friends" to add friends. I initially thought of the user info page as the "change your settings and manage stuff" page and was looking for links on there to edit friends and such.
Ok, phew. That felt good :) Be sure to join us next time on "bitching about random UI suckage."
This is a bit late, but I thought I'd mention a few things about it anyway. Andy Tanenbaum (of Minix fame) came to give a talk here the other day.
He motivated his discussion of Minix by saying that consumers want PCs that work like TVs; you buy one and plug it in and it works for 10 years. No patching, installing virus scanners, updating virus scanners, re-installing Windows, etc. The goal should be "it just works" for 10 years. Keep that in mind.
He then began to discuss Minix, and in so doing essentially described the OS everyone who takes trains implements. A couple things really stood out, though:
Numbers 1, 2 and 3 mean that Minix is completely unusable as a general-purpose consumer OS.
No virtual memory and no paging means you force users to have enough physical memory to fit all the applications they're going to want to use in RAM. Using a lot of memory and want to open another tab in Firefox? Close that terminal first!
A compile-time fixed-size process table means you say at compile time that users will never use more than n processes. Tanenbaum must really like Bill Gates and his "640k" philosophy. This one is funny, too, because his reasoning was mainly that he didn't want to do dynamic memory allocation in the kernel. Well in about 5 minutes I came up with a way to have the process tables managed in a user-space program with a fixed-size cache in the kernel (and I'm pretty stupid), so that's really a non-argument.
The last item, number 4, is more interesting. Specifying what hardware drivers can access is not a bad idea, but the implementation sounds really bad; he didn't get too detailed describing it, but essentially said that there are a bunch of config files that "the administrator" will have to set up. If you need "the administrator" to do anything, your OS will never be a general-purpose consumer OS.
Note that I am only holding Minix up to the "general-purpose consumer OS" ruler because Tanenbaum himself did, by motivating Minix in the way he did. For embedded or real-time applications, these design decisions make a lot more sense, of course.
He also spent a fair amount of time bashing Linux, which is to be expected I suppose. He definitely had some faulty reasoning, though: he claims that number of bugs is roughly proportional to lines of code. Ok, sure, could well be. He then claimed that because Linux keeps adding so many drivers, they're adding bugs faster than they can fix them (and even worse, these bugs can affect the entire system since drivers in Linux essentially get free reign). Well maybe, but you don't use every driver in existence on your system! You only use a few. When a new driver enters the kernel, it may well be buggy. But after some shake-down, it's fine, and then other new drivers that get added won't affect you, since you'll never even load them!
Today I had my last university lecture ever at the University of Waterloo. It's been a long haul, but I've had fun and met a lot of cool people along the way.
To celebrate, I've been coding pantsless in the graphics lab. While this has alarmed some people, I feel it's perfectly appropriate.
Much to my disappointment, however, the monkeys down in the real-time lab are all wearing pants. A disgrace I tell you, a disgrace!
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!