Archive for the ‘Rants’ Category

GPU Fail

Thursday, November 12th, 2009

I’m getting screen corruption issues on my Macbook Pro; the one I’m using to run the study upon which I’m basing my thesis; the one I’m using to demo my project at next week’s RIA Showcase.

It’s a 3 year old machine with a battery that still lasts at least 4 hours. Unfortunately, it has the failure-prone nVidia 8600M GT soldered to the logic board.

I haven’t confirmed the GPU is the culprit. I’m currently backing up the drive (thank you Apple for Target Disk mode and Firewire 800).

I can’t take it to the Apple Store any time soon. I’m still anxiously waiting for my mom to be discharged from the hospital.

Aaaaaaaaaaargh >_<

Damn you, Murphy’s Law!

Off to Vancouver

Friday, May 15th, 2009

9:56 - I’m at YYZ, watching the staff wash windows.

“Click here to skip this welcome screen”. Welcome? They just stuffed an ad into my face. Despite that, they want to charge me for ‘net access.

Bell’s hotspot also reroutes me to Boingo. WTF?

Ok, apparently, Boingo is a portal site that lets me log into some other WiFi provider. They all want to charge me.

10:04 - Fail fail fail. I can’t even connect to their price page.

10:10 - Ok, I bought a month’s worth of access. That’ll get me connectivity at my hotel too so I guess that’s not bad. Note to self: Access charges reoccur unless I explicitly cancel.

Another world

Friday, March 20th, 2009

The great thing about living in an area as diverse as the GTA is that you end up with pockets of microcivilizations.

I was reliving my high school years loitering at a grocery store with a friend when I stumbled across this sign:

img_0158.jpg

Yes, only one aisle out of about a dozen had 西人食品; i.e. Western person food.

Anyway, that vinegar, lemon juice and canola oil on the opposite aisle sure looks Canadian to me, eh?

This is why…

Wednesday, March 18th, 2009

I don’t usually check my Twitter account.

Patterns

Monday, March 9th, 2009

What’s the next image in the following sequence?

1 May 2008
2 December 2008
3 March 2009
4 ?

Here’s a hint—the three images are:

When Victim Culprit
1 May 2008 Rear left tire Construction site nail
2 December 2008 Front left tire Spontaneous rim unsealing
3 This morning Front right tire Roadside rock

I’ve spent about $750 over the past year on flats. 280 days until I’m living car-free along the subway line—just a little longer…

Here’s the play-by-play:

800h Woke up
845h Out the door; on the road
930h 404/401 junction; felt something get lodged in tire—roll, thump, roll, thump
931h Lost all air; roll on the rim! (to lose)
934h Pulled over
950h Finished changing tire; if you saw a guy rolling a wheel along the York Mills ramp this morning, that was me
1100h Dropped car off at dealership; shuttle dropped me off at mall
1100h-1530h Ate lunch; talked to random mall workers; did a mall lap; did some work; desperately waited for dealership to tell me the shuttle’s coming; why don’t malls have free wifi??

Backup woes: oh, the irony

Sunday, March 8th, 2009

Backing up your data is a good thing. Having your backup system die is not.

After being burned by data loss quite recently, I’ve started doing regular backups of the various systems I manage. It’s been easiest with my OSX machines because of this nifty little feature called Time Machine.

Unfortunately, Time Machine isn’t immune to hardware failure. And that’s exactly what happened. I just put in an order for a Time Capsule. I hope my data stays intact until it arrives.

Soon, I’ll have to do backups of my backup system.

If anyone knows of a good, free, simple and solid automated backup system for Linux (no Amanda or Bacula, please) or Windows, please let me know.

The joys of JDBC

Tuesday, November 4th, 2008

Just Doesn’t Behave Consistently.

I’m using JDBC and Hibernate for one of my projects. The backend is MySQL. We want our users (predominantly biologists and researchers of the non-computational variety) to pick up our product and run with it with as little effort as possible. MySQL isn’t trivial to set-up so we opted to package the product with a preconfigured embedded Derby database. They won’t even know it’s there ’cause it’s that easy.

Right?

Well, not quite. Hibernate supports a variety of different SQL dialects but there are still some bugs. I tracked down the problem to the way Hibernate generates the DDL for Derby databases. By default, it forces Derby to take full control over identity columns. That means you can’t explicitly set the unique IDs manually.

That really really sucks if you’re trying to copy an entire object graph over verbatim from MySQL to Derby. Trying to remap the 300k IDs from the old values to the new Derby-generated ones isn’t an option either. That’s just the sample data set. The full version (so far) has over 50M entries.

You’d think that an object model over a relational database would make it easy to swap out different database back ends. Sadly, this isn’t the case. All the popular abstractions for database connectivity still require you to speak whatever SQL dialect your backend speaks.

Free beer/dinner for the first person who does a proper abstraction of SQL that incorporates the full semantics of the language in a nice API form that’s portable enough that you could use the same front end with any database back end with no modifications.

I’ll throw in dessert if you actually implement it.

Crunch time

Wednesday, October 15th, 2008

Yes, it’s that time of year already.

I feel like the guy in yellow and blue during the first couple of seconds of this clip:

Ah, negative free time…

The hashing function at the polls…

Tuesday, October 14th, 2008

…was less than ideal.

–but in a good sense! I got hashed to a bucket–err, queue–with no line up. All the other queues had at least 20 meatbags in ‘em.

Yay, democracy!

Lost time

Thursday, September 18th, 2008

My subway commute took 30 minutes longer than usual—at least according to my phone’s clock. I barely made it in time for my 10am class.

When I got there, no one was around. So I fired up my laptop to see if the room changed.

I quickly learned that my laptop was either 30 minutes behind, or my phone was 30 minutes ahead.

My phone’s clock is set to sync with my cell provider’s time server. I thought it’d be safe to assume that a huge national communication services company would at least know what time it is.

Not only are they taking my money—they’re also trying to steal my time.