Category Archives: Tech

Performancing


I’m trying out a new blog posting extension to Firefox called Performancing. It lets you compose blog entries right inside Firefox, drag and drop text and images and stuff into the compose window, things like that. I’ll see how this entry turns out and let you know.

Update: Seems to work rather nicely!

Another Update: Or not. I tried to add the above update through the extension, but rather than updating the existing entry, it added a second one. Seems convenient for new entries, but maybe I’ll stil with the blogger.com interface for editing existing ones.

IPv6 and Thunderbird


I’ve been using Microsoft Outlook at work for a few years. The company uses Lotus Notes for email, but Notes sucks rocks, so I chucked that a few years ago. Outlook is pretty good, but has one or two little things that annoy me, so I thought I’d give Mozilla Thunderbird a try, since I love Firefox so much. Well, everything was going along just swimmingly, and then I tried sending an email to someone who wasn’t in my address book. It tried to connect to our LDAP server, and the whole program hung for about 5 seconds, and didn’t find anything. I did some more tests, and still had no luck with LDAP. I tried to install Thunderbird a couple of years ago, and ran into the same problem, but I figured it was a bug in Thunderbird, since it was version 0.8 or something at the time. I assumed that since it’s up to version 1.5 now, the bug would have been fixed.

I sent an email around to the department, asking if anyone else was using Thunderbird, and several people are, none of whom are having the same LDAP problems. Out of the blue, I suddenly wondered if IPv6 was related, since it seemed to be a networking issue, and I am probably one of the only people in engineering with IPv6 installed. I went to my second machine, which also had Thunderbird installed, and I saw the same problem. I uninstalled IPv6, rebooted the machine, and the problem vanished. I did another search on BugZilla, this time including IPv6 in the search criteria, and found the problem — LDAP doesn’t work if IPv6 is installed.

I briefly thought about downloading the Thunderbird source and development environment and attempting to find and fix the bug, but I don’t know when the hell I’d have time to do it. I’ll just have to stick with Outlook until the bug is fixed.

Why bad food is sometimes good


WARNING: Extreme Geek Alert!

I’ve been working through a weird issue with the database engine – sometimes, when trying to read a blob, I’d get a debug assertion, indicating that a condition that should never happen has happened. After looking it over for most of today, I found that the file number of the file it’s trying to read from was 61453. I assumed that this was just some garbage semi-random value, but the more I looked at it, I realized that it was exactly the same value every time. Repeatability in debugging is a very good thing. On a whim, I converted this value to hex: 0xf00d.

When Windows allocates memory, it fills the memory buffer with the hex values 0xbaadf00d, so that it’s obvious that this memory has been allocated but not yet used. The fact that this value was 0xf00d was a strong indication that the value was simply never set. A few more minutes of debugging and I found the problem.

Say all the nasty things about Windows that you want, but it would have taken a lot longer to find this problem on Unix. Unix doesn’t fill allocated memory with anything, so if I were to run the same test there, sometimes it would work, sometimes it wouldn’t, and the repeatability would be much lower, thereby making the problem harder to solve.

\/\/ind0wz r00lz!!!!1!!1!1!

(Not really, I just put that there for John-the-Mac-boy’s benefit.)

Rock lose in OT and Wireless G


Cool – a rhyming title. Gotta like that.

Lacrosse season is back! The Rock played their first game of the season on Saturday night, and lost to the Arizona Sting 14-13 in OT. It was a rematch of last year’s final, where the Rock won something like 19-13, but this time, the Sting were the dominant team. They had a 9-3 lead at one point (after an absolutely awful 2nd quarter), but the Rock battled back and tied it at 11, then 12, and then again at 13 with 36 seconds left in regulation. But 2 minutes into overtime, Andrew Guindon put a shot past Whipper to end it. The Rock were rather rusty – lots of dropped balls, passes that went nowhere, and even shots that missed the net by miles. Josh Sanderson looked like a rookie – taking a stupid penalty less than a minute in, and only ending up with 3 assists. Other than the 2nd, Whipper played pretty well, and Brad MacDonald, who came over in a trade with Calgary, made an amazing play to save a goal late in the game.

Arizona started Mike Miron in net, which kind of surprised me, considering they acquired Rob Blasdell in the off-season. I assumed Blazer would be the starting goalie, with Miron as a solid backup, but perhaps it’s the other way around, or maybe they’ll platoon, as Whipper and Cosmo did a couple of years ago in Toronto. Miron played a pretty good game though, so it’s possible that the Arizona GM and coaches know more about lacrosse than I do.

On an unrelated note, I finally managed to get my new wireless G router set up the way I want it – all of my machines can connect to the ‘net and each other, and no other machines can use it (using MAC filtering). I had to download a firmware upgrade and reset the router to factory defaults at least four times before I got this done, but it eventually worked. It’s kind of a waste though – the old wireless B router gave us 11 Mbs, while the new one gives 54 Mbs. Sounds great, except that the 2 machines upstairs only have 11 Mbs cards in them, so they don’t notice any difference, only our laptops (both from work) do. However, the cable modem coming into the house only gives about 3 1/2 Mbs, so the laptops don’t notice any difference either, unless they’re copying files between each other, which has never happened. Long story short – the new router gives exactly the same performance as the old router. I’ll have to look for cheap wireless G cards on eBay or Factory Direct.

Luckily, the router was on sale – after the $20 mail-in rebate, it only cost me $10. The mail-in rebate should come in 8-10 weeks – if it doesn’t, I’ll probably have long forgotten about it by then, and even if I haven’t, it’s not like there’s anything I can do. I was promised a mail-in rebate (something like $60) when I bought 3 seasons of Star Trek: The Next Generation on DVD, which I did (I eventually bought all 7), but 8-10 weeks later, I received a letter saying that I hadn’t included proof of purchase from each DVD package, which I had. But of course, I had no proof of that, so I was SOL.

Things are more like they are now than they ever used to be


I remember a time, not too long ago, when a 540 MB hard drive cost just over $500 – the rule of thumb for disk storage at the time was roughly a buck a meg. Right now at Factory Direct, you can get a 250 GB hard drive for $119, which is less than 50 cents a gig. Which means that in less than ten years, the price of hard disk storage has come down by a factor of two thousand.

Our first computer (in 1982) was a Commodore VIC-20, with 3.5 kB of usable RAM, and the only storage was tape casettes. It cost something like $400. After a while, we got a 16 kB expansion cartridge, and I didn’t know what to do with all the extra memory. Eventually (maybe 1985) we moved up to an XT with an 8 kHz processor, some terribly small amount of RAM (definitely measured in kB, not MB), and two floppy drives (no hard disk) – this machine cost over 2 grand. My dad bought a 10 MB hard disk a little while later, and we were on the leading edge of computing. Now, twenty years later, there’s a far more powerful computer embedded in your average vending machine, and I have a little two-inch-long thing that hangs on my key chain that can store 128 MB.

It’s almost scary to think what computing will be like 10 or 20 years from now. This post kind of reminds me of the book The Age of Spiritual Machines by Ray Kurzweil, which I read a year or two ago (and inspired the album Spiritual Machines by Our Lady Peace). Kurzweil talks about how much more powerful (and cheaper) computers are getting, and eventually, they will be as powerful and fast as the human brain — and what happens then? Will people start getting microprocessor implants to enhance memory, intelligence, or even things like strength or muscular endurance? How many such implants can one have before the line between human and machine gets blurry? A really interesting read.

New Toys and Psychic Nikki


On Mix 99.9 this morning, they had Psychic Nikki on as a guest – she comes on now and again and they get people to call in and ask her questions about their love life, job, financial situation, stuff like that. What a crock. Every single person who calls gets a positive response – yes, your money situation will improve. Yes, you will meet the person of your dreams within a few months. Yes, you will get promoted or get a new job. This morning she was also doing “past lives readings”. Humble Howard apparently was a German fighter pilot in WWI named Deiter. The funniest part was the very first caller – she asked about her past lives, and Nikki told her she was one of Henry VIII’s wives, who was beheaded. Puh-lease. There are approaching 6 billion people in the world today, and the first person to call the Mix this morning happened to be one of Henry VIII’s wives in a past life? Come on. I get a kick out of Psychic Nikki whenever she’s on – it’s such crap.

Now for the real fun stuff – toys! I went out to Factory Direct yesterday and picked up a PVR card and DVD burner for $60 each. I need to put a cable TV jack in the office now, but there’s one in Ryan’s room which is on the other side of the wall, so I could probably just cut a hole in the office wall opposite the jack in Ryan’s room and move the jack over. Then plug the cable into the card and voila! I can record TV shows on the computer, then burn them onto DVD. I have anothor thing called a Dazzle, which plugs into the computer, then you plug the video camera into that, and it allows you to transfer video tape to the computer. Now we can transfer our video tapes of the kids to the computer, and then onto DVD. This will obviously make watching them easier, but will also allow us to put the original video tapes in the safety deposit box – backup and offsite storage is a critical part of disaster recovery, dontcha know.

The PVR card also has a FM tuner in it, so I was able to listen to the radio through the computer yesterday as well. I’m sure I won’t use that feature all that often, but it’s cool nonetheless.

Cool stuff


I saw an article today on the 100 best (computer-related) products of 2005, so I thought I’d come up with my own list of products that I can’t live without. Well, OK, maybe “can’t live without” is a little strong, but here are some products that I really like.

  • Mozilla Firefox. It blocks most pop-up windows, allows multiple pages in tabs, has a google search feature built-in, and allows smart keywords (i.e. I can enter “wiki ” in the address bar, and it will load wikipedia and search for the “anything” that I entered. And it doesn’t allow useless and dangerous ActiveX controls. And it supports web standards like CSS way better than IE. In short, it just rocks.
  • A few extensions for Firefox: Adblock, Web Developer, and Add Bookmark Here are all very useful.
  • The MP3 player in my car. When the CD player in my Grand Prix got flaky, I replaced it with one that also plays MP3s. I quickly created a few disks with lots of albums on them, and now I’m hooked. I can put in a disk in, hit shuffle, and not hear the same song twice for days or weeks. I have a single CD with the entire Tragically Hip collection, plus one or two other albums, since there’s room.
  • IrfanView. It’s an image file utility that can do things like display slideshows and stuff, but the only thing I use it for is batch image conversion. For example, I had a directory containing 25 .jpg files that I wanted to scale down — they were all something like 3300×4800 pixels, and 800 dpi. For the web, I only wanted maybe 150dpi and 800×1200 or thereabouts. With IrfanView, I selected the images, told it what I wanted it to do, and it did it to each one in turn. Very cool.
  • My universal remote control. I use it to control the following components in our family room: TV, DVD player, VCR, receiver, CD player, and even the ceiling fan.
  • Wireless networking. We bought a wireless router about 4 years ago (cost something like $350 for the router and $150 for a wireless card – way cheaper now), and I don’t know how we survived without it. I guess before Gail and I had laptops, we just used our PC, which was always in the same place, so there was no problem. Now, I bring my laptop home from work and turn it on, and it immediately connects to the internet, and I can do this in any room in the house.
  • My cell phone. I don’t get a lot of calls; about 90% are from Gail, asking me to pick up dinner on the way home from work, or stop off at the grocery store, or whatever, but I always make sure I have my phone with me whenever I go anywhere.

One more item that’s on the very cool list, though I’ve never really used it, is Mac OS X. I’ve never been a Mac guy at all, but I did work at a company that did NeXTStep development. NeXTStep was the best development environment I’ve ever worked in. Once NeXT was bought by Apple, they kind of based OS X on NeXTStep, and made it even cooler. I’ve only seen it a couple of times at work when John (a faithful reader of this blog, and quite possibly the only reader of this blog) shows me the cool stuff his Mac can do. It’s basically your standard Unix system, but the GUI is far cooler than any other Unix GUI I’ve seen. It does cool things like being able to temporarily tile all of the windows, allowing you to pick one, and them moving all the windows back to where they were. The Windows UI team could learn a thing or two from OS X.

Creating gradient images


So I’m working on this web site I mentioned before, and it’s got a purple gradient image down the left side — i.e. it’s purple right at the edge, and then it gradually fades to white, like this:

I like it, so I put it on the new site. Stacy also likes it, but says she’d rather have it green, not purple. Well, I’m not a graphic designer, I just know HTML, CSS, PHP, stuff like that, so I have no idea how to change it from purple to green, or to create one from scratch. I do some googling and asked Gail, and she suggested that Microsoft Word has a thing called WordArt which does this sort of thing. So I played with Word until I found it. I managed to create the green gradient following these steps:

  1. Used WordArt to create a word that changes from green to white. It can only do this in the background of the word, so I made the word “WWWWWW”, just as wide as the old image. (I figured that W takes up more room than any other letter, so I would have the least amount of playing to do. Thinking about it later, I think using “IIIIII” would work better.)
  2. Save the document as an HTML page. Word saved the document as a gif.
  3. Load the gif into Microsoft Paint, and copy pixel colours until I have a single line of pixels that goes from green to white. Save as a png, otherwise Paint messes the colours up.
  4. Create an html file that contains the style “background: url(images/greengradient.png); background-repeat: repeat-y;”, so that the image is repeated down the left side of the page.
  5. Load this html file in a browser, maximize the browser, and use the PrtScrn key to copy the desktop onto the clipboard.
  6. Chop up the image until I have an image that’s the size of the gradient on the original image (with the heart logo and the purple gradient), then copy it to the clipboard.
  7. Load the original image in IrfanView, select the old gradient, and paste the new one on top.
  8. Save the new image as a new gif.

Whew! Lots of steps, but it ended up looking pretty good. Unfortunately, Gail thinks the green at the left is too bright, which means I’ll have to do the whole thing again, starting with a different green. Groan.

Win some, lose some


I’ve abandoned my http://www.stelcoball.com web site – the one for my Wednesday night baseball league. The convener wouldn’t give me updated rosters or game results, so the site is hopelessly out of date, and almost nobody in the league was looking at it, so I dumped it.

Then this week, I offered to build a new web site for my friends Stacy and John, who are running a golf tournament in memory of their son Deiter, who died at the age of six months while waiting for a bowel and liver transplant. This is almost the same transplant as our friend Sarah had when she was six months old. Sarah is now a happy and healthy eight-year-old, who’s in the Guiness Book of Records, as the youngest ever multi-organ transplant recipient. Anyway, I’m playing in the golf tournament in September, and I suggested to Stacy that I could create a web site for the tournament. She said that they already have one, but it’s out-of-date, and she would be happy to let me build a new one. I’ve already done a prototype site that looks very similar to the old site, and Stacy’s going to get me some pictures of Deiter to put up, and possibly some pictures from previous tournaments (this is the third one, I think).

Important note: If you haven’t signed your organ donor card, please make sure you do! There’s absolutely no downside, and you could save more than one life.