Muse in Seattle 2007

Finally a review of Muse's September 2007 concert in Seattle! Now I'll give my own pseudo-review:

I drove down to Seattle to this concert to witness the amazing UK band called MUSE. Many Canadians have not heard of Muse and many would be surprised to learn that they are #4 on Last.FM's weekly play charts and have been there for quite some time. They have been around for a long time, but are so far only well-known in Europe. I downloaded just handful of their top songs about 1-2 years ago and was drawn to them because I thought a few of their songs sounded a bit like Radiohead. The more I listened to them I realized how different they are from Radiohead (at least the Radiohead of OK Computer, which is the only album I listen to). After more and more listens I grew to like them more and more and eventually I had to have all their albums. They have become somewhat of a Pink Floyd to me, where almost every song is awesome and worth listening too and I almost never skip a track. So back to the concert...

We drove down to Seattle for this concert because they aren't playing in Vancouver this year and I couldn't pass up on this opportunity. When they started with Knights of Cydonia a few guys two rows down stood up and blocked our view. Some people were telling them to sit down but the guys refused and told everyone to stand up. Eventually the entire section was standing up and getting into it and singing along to the chorus. Unfortunately I didn't write down their songs, nor did I memorize it. Invincible was particularly awesome and gave me goose bumps for some reason. City of Delusion (one of my favourites) was awesome of course. Starlight (the top Muse song on Last.FM) was also great. I actually get somewhat tired of the recorded version of Starlight but hearing it live was so much better. Butterflies and Hurricanes included the piano solo near the end which I love. Sadly they didn't play Space Dementia which also has some awesome piano. I also enjoyed the Feeling Good cover (another great piano song). Mostly it was a guitar and drum show though with some pre-recorded electronic stuff with a little bit of piano. They just can't play a bad song.

Matthew Bellamy was amazing and totally owned the show. Didn't talk at all, was totally focused on what he was doing. He went from one amazing song to another, playing piano, singing, and playing guitar. Their bass player and drummer are also amazing of course, but Matt kind of steals the show.

It Sucks Being David Grant

Because my name is so common I get at least 5 e-mails a month from people who think they are e-mailing a different David Grant. I sometimes get poked on Facebook by people who think I am a different David Grant. While I was in grad school in Waterloo, ON I got mixed up with a different David Grant many times and I was even awarded his scholarship by accident (it was rectified). Someone once ordered some products on the UK equivalent of BestBuy and used my email address (accidentally) so I received all the receipts, shipping notifications, etc... I sent him a snail mail letter informing him of his mistake. Recently a Dr. David Grant in Toronto used my email address in his Aeroplan (frequent flyer miles) account. I started receiving his monthly statements by email. The only way for me to find out who he is was to use the "I forgot my password feature" and change it. After doing that I found out his mailing address but I have yet to inform him. He has like 300,000 Aeroplan miles which I think is worth about $3,000 but I can't remember.

Getting e-mails from people who think I am a different David Grant is what bugs me the most. My inbox is almost completely free of spam. All my subscriptions to mailing lists are properly filtered into different labels (for those of you who don't know what I mean by a label you don't deserve to find out) so any email that appears in my inbox is usually important and is something I care about (by design). So when I get these "spams" from people who think I am a different David Grant it really pisses me off. The worst is when the email is to a large group of people and someone hits the reply all button. This usually sets of a chain reaction of reply-alls leading many people to have my email address in their address book, causing them to spam me at a later date.

I sometimes have a little fun with it. Once somebody emailed about 5 people (including me) some family photos. I chatted it up a bit and made some funny comments about the photos before letting them know that they had the wrong address, explaining that I thought I knew them but I was mistaken. Another time someone emailed me inquiring about a place to rent (that I knew nothing about). I replied that I needed to see photos first. The person sent some photos and I replied "I'm sorry based on these photos I just can't take you." I have gotten several work-related emails as well. My email address domain is so I got some emails from telus employees thinking they had emailed a felow employee. I think the company's employees use I haven't done that in a while but maybe I should start doing that again. It could be fun.

On the plus side, being David Grant means I will always be somewhat anonymous. At least more anonymous than others will less boring names.


Police Officers Pose as Protestors in Quebec

The Quebec police force is denying that they had undercover cops posing as protestors at the recent North American Security and Prosperity Partnership (SPP) meeting in Montbello, Quebec. Decide for yourself. The most interesting part is between 1:50 and 2:50. You can see the 3 masked protesters all of a sudden get nervous and allow themselves to get arrested. A CBC article goes into a lot more detail.

As if that wasn't enough evidence, check out this high-res photo showing the protesters wearing the same boots as the police officers.

What are the odds of the two protesters having the same boots? Secondly what are the odds of them also have the same boots as a police officer? The FAR more likely explanation is that they are all police officers! (Another one of the pictures in that gallery shows a third protester wearing the same boots).

Update: The cops caved.


Firefox Memory Usage Through the Roof

Firefox's memory usage has just gone nuts lately on my work machine, approaching 1 Gigabyte of RAM usage:
[img_assist|nid=263|title=Firefox Memory Consumption|desc=|link=node|align=center|width=485|height=159]
I have no idea what is causing it. The most likely culprit is either some javascript leak on a page I leave open all the time (like GMail for instance) or a leaky extension/add-on. Here are the add-ons that I use:
[img_assist|nid=266|title=My Firefox Add-Ons|desc=|link=node|align=center|width=50|height=100]
My suspicion is that it might be Fasterfox that is causing the problem. I will disable it and see what happens over the next few days.


Finally got rid of Spam Thanks to Captcha

Finally got rid of spam from my site. It had caused me problems to no end. I have been using Akismet, but it is not perfect and has the odd false positive so I can't have it delete messages it thinks are spam. I have to have it put them in a spam moderation queue. But unfortunately I have to scan through them quickly before deleting which takes some time. When I was on holidays in May the spam actually caused my disk space on the server to run out.

Finally the Drupal Captcha module actually works and can do image captchas, not just text captchas. Now I have gone 2 days spam free so far.


Updated Theme

Just upgraded my site to the latest amadou theme. Thanks Jay Wolf! It Doesn't it look great now? I'd rather have some sort of logo at the top rather than plain text, but oh well, I don't feel like wasting any time on that.


Flickr you scared me

Flickr just gave me a scare. Suddenly it appeared as if the thousands of photos I had uploaded were gone. Finally I went to my Flickr home page, and noticed the warning: "Hi david - An important note from FlickrHQ. Don't panic, but your Pro account has expired. Go to our upgrade page if you'd like to renew it, and if you choose not to, you should be aware of the limits of our free accounts."

Phew. I hope by "don't panic" they mean that my photos are still on their servers and will appear momentarily (as I have since renewed). Yep, it looks like my photos have not been deleted according to the Flickr FAQ.


Electronics Recyling Now Available in BC

Although there have been a few places to recycle electronics in BC, here and there, for some time now (but if I remember correctly only 1 of them was certified by a 3rd part, according to the Recycling Council of BC), true electronics recycling is now here. Encorp "Return-It" depots now take electronics (as of August 1st), and have an "Electronics Recycling in BC" website site devoted to it. Here's what it says at the top of the page: "Starting in August 1st, (2007) a province-wide used electronics recycling program will be available to consumers and business in British Columbia. You will be able to drop off any of the regulated products at the identified collection locations without charge, and be assured they will be recycled responsibly."

Apparently all of their 7 Vancouver locations (most of which are Salvation Armys) now accept electronics.

How is this funded? Just like it should be, through environmental handling changes added on directly to the product's purchase price: "Starting August 1, 2007, an environmental handling fee (EHF) will be levied on the sale of new products in the designated categories. 100% of the program revenue will be used for the administration, collection, transportation, and responsible recycling of end-of-life electronics."

There are a lot of Acceptable items but also a lot of unacceptable items.


rsnapshot or flexbackup?

My backup solution used to be flexbackup. In fact I am still using it while I evaluate rsnapshot. I recently had bought 2 320G drives and used them in a RAID1 configuration. These eventually appeared to fail (they have since been "repaired" by using Seagate's SeaTools software; apparently RAID arrays don't like bad blocks too much) and I reverted back to the old 120G drive that I was using before I went to the RAID1 configuration. Anyways, during the period that I thought my drives or motherboard were totally screwed up (thanks for SeaTools Desktop which is not very good, unlike SeaTools for DOS which is) I bought a new computer since I sort of needed one anyways.

In my new computer I got another 320G hard drive (no RAID1 this time). So I have two extra 320G drives laying around (that had since been repaired using SeaTools for DOS). I decided to use these two drives as backups. For a while I kept my flexbackup nightly cron jobs going, which tarball up my user data and puts it on my MythTV box (which has lots of free space). And I used my 320G drives as an rsync backup of my entire drive. This was kind of lame, but I liked how all the data was right there. No tarballs to unpack. It sucks not having nightly or weekly backups though.

Then I discovered rsnapshot. It essentially makes uncompressed incremental backups while still giving you a snapshot of your entire drive (except any "excludes"), through the magic of hard links. With the price of hard disks these days, it makes absolutely no sense to use compression. If network traffic is an issue, then maybe. But if you're mostly backing up photos like me, then compression won't help too much.

So I put each of my 2 320G hard drives in an enclosure (with eSATA). Every Sunday I will rotate them out and take one of them to work as an off-site backup. The is the first time ever that I have had true off-site backup. Normally I have backed up my stuff to the same machine, same hard drive, different hard drive, or a different machine in the same building. Recently after moving into a new place I became a bit more worried about a buglar making off with both my main machine and my mythtv box that had my flexbackup backups on it. rsnapshot and the fact that I have tons of space on 2 320G drives seems to be providing the perfect solution for me right now: incremental backups, nightly snapshots of all my data without compression, and off-site backup.


Stay Away from Cream/Vim for Windows

I have had endless problems since I tried using Cream (a bunch of crap on top of gvim). Here are some of them:

  • Disconnect between buffers and tabs; all buffers are not always shown.
  • The tabbed windows feature seems to stop working randomly and collapse to one tab, when I open a new document in Cream/Vim
  • Copy and paste from another windows program into Cream does not work nicely. CTRL-V is supposed to work but that spits out a weird character instead. Selecting "paste" from the edit menu does work.
  • cream-user.vim does not want to load my python.vim file for some reason (this is not a case of me not having it in the right directory or anyting, vim opens it just fine. Cream says "cannot open python.vim")
  • Repeatedly decides to tell me that a swap file already exists for some file when it doesn't. This has nothing to do with which file it is. Seems to happen whenever I open more than 1 document in the same Cream/Vim window.
  • Default cream mode sucks, there is no hjkl navigation. So I have to switch to Cream Lite mode. And in order to stop it from warning me about Cream Lite mode every time I boot it tells me to edit a .vim file somewhere in Program Files\vim-cream\?
  • I have to put my settings in a cream-user.vim file in some folder under Documents and Settings?

No cream with my Vim thanks. All the above problems disappear if I use plain gvim.


HP Officejet 5610 Works Great in Linux

I just bought an HP Officejet 5610 4-in-1 for home because we had a need for a copier and a fax machine. A scanner is something I also occasionally wish I had. So this thing does it all, and the best part is that it all works flawlessly in Linux, which is the reason I bought it (see "HP all-in-one device works great with Linux"). In fact, installing it was probably easier than it would have been in Windows for the following reasons:

  • No need to insert a CD
  • No need to reboot
  • No need to finick with Windows and the way it handles USB devices. (If you've ever accidentally plugged a device into the USB port before installing the drivers and had it not work in the end then you know what I mean).
  • No navigating through any install wizards

Photocopying and faxing (from the tray) worked right away without even plugging it into the computer.

Printing worked almost instantly (turns out that hpijs and hplip were already installed on my Ubuntu Feisty box, but I needed to install hpijs-ppds to get the HPLIP ppds) after adding the printer using KDE's printer management interface (I used to use the cups web interface but the KDE one is a bit easier to use nowadays). I haven't tried printing photos yet but there is a photo-quality option in the printer settings called "600 dpi, Photo, Full Bleed, Black + Color Cartr., Photo". I'm sure it works fine, just as it did for my old HP 710C and 920C.

I wasn't sure how to setup a fax queue in CUPS. It turns out the best way to do this (and to install a printer driver) is to just run "hp-setup". This installed a printer and a fax queue. So I just deleted the redundant printer that I had created in the paragraph above. The "hp-setup" wizard was maybe even a bit easier than the KDE Cups one. Now I have a fax and a printer in cups. I haven't tried faxing yet but printing to the fax queue works and I can see the faxes when I run "hp-sendfax" so it probably works.

Scanning was a breeze. No driver installation required, all I had to do was run kooka or xsane (better) and the scanner is detected automatically. xsane is really powerful and can do some automatic contrast and brightness adjustments as well as provide full manual control.

I would recommend this printer to anyone! I also use a Samsung ML-1740 laser printer by the way, and it is great and works well in Linux too. I have refilled the cartridge about 4 times now with cheap toner and the same cartridge works great. I was also able to get a backup refurbished cartridge for cheap.


Finally Hooked Up to the 'Net Again

I finally have the Internet at home again after our move to our new place and a switch to a new ISP (Telus - rant about that is forthcoming). Coincidentally it is 1am which is also the latest I've stayed up since moving to the new place. Maybe I'll post a couple blog entries soon...might even have some drafts that I didn't have time to finalize.

Google Maps Officially Rocks

Google Maps has always been awesome. But a feature that they just released today makes it even more awesome. You can now ask for driving directions and then change the route by literally dragging the route on the map.

Here is the original route

and now the
modified route

which is exactly the way I drive that route every couple weeks. This new ability to modify the route is great for giving people directions to things (and you want to correct Google Maps' mistakes) or for mapping out a route between several destinations. Combined with the new Street View (not available in most cities including Canada yet) I think Google Maps will remain the best mapping software for a while.


Save Zap2It Labs Free MythTV Schedules

To all you MythTV users out there, if you use Zap2It Labs' freely available TV listings, there was some potentially sad news today. Zap2It Labs announced that their free TV guide service would no longer be available. If you are like me and you rely on this data source in order for your MythTV box to function, go to Zap2It's forums and let them know that you do not want the service to stop and if you are willing to pay for it, let them know that as well. There are two threads of interest in the Announcements section.


Limit Size of Subversion Commits With this Hook

We have experienced some abuse of our subversion repository at work recently. Someone committed 400 MB of data all at once including many object files, libraries, and executables. I did not get very harsh with the person who did this. Because a) I have no objection to binaries in subversion in the first place, b) I don't really know what he's working on, c) disk space is cheap and we are no where near capacity, and d) his commit was still smaller than a few commits we had a long time ago (which were legit). Still, if you just allow people to commit whatever they want to your subversion repository, in the worst case, you could run out of disk space, necessitating an svn dump-and-load onto a new larger drive (pain). It would suck to have to do that just because some people were committing large binaries (without any legitimate reason to). There are other annoying consequences. Our tarball backups of svn currently fit on a DVD, which is cheap and easy, if we allowed this abuse to continue it would complicate our backup process.

What I wanted was a way to limit the commit size for certain users automatically. There did not seem to be any hooks out there to do this, so I wrote one.

Just paste the following into your pre-commit hook:

/svn/repos/hooks/ "$REPOS" "$TXN" || exit 1

and paste the following into a file in your hooks directory and make it executable.

#!/usr/bin/env python
import sys,os,popen2
MAX_BYTES = 1024000
DEBUG = False
SVNLOOK = '/usr/bin/svnlook'
ALLOWED_USERS = ['david', 'ctang', 'vjain', 'mike', 'sbridges', 'tcirip']
ADMIN_EMAIL = '<a href=""></a>'
def printUsage():
  sys.stderr.write('Usage: %s "$REPOS" "$TXN" ' % sys.argv[0])
def getTransactionSize(repos, txn):
  txnRevPath = repos+'/db/transactions'+'/'+txn+'.txn'+'/rev'
  return os.stat(txnRevPath)[6]
def printDebugInfo(repos, txn):
  for root, dirs, files in os.walk(repos+'/db/transactions', topdown=False):
    sys.stderr.write(root+", filesize="+str(os.stat(root)[6])+"\n\n")
    for name in files:
      sys.stderr.write(name+", filesize="+str(os.stat(root+'/'+name)[6])+"\n")
def checkTransactionSize(repos, txn):
  size = getTransactionSize(repos, txn)
  if (size > MAX_BYTES):
    sys.stderr.write("Sorry, you are trying to commit %d bytes, which is larger than the limit of %d.\n" % (size, MAX_BYTES))
    sys.stderr.write("If you think you have a good reason to, email %s and ask for permission." % (ADMIN_EMAIL))
def getUser(repos, txn):
  cmd = SVNLOOK + " author " + repos + " -t " + txn
  out, x, y = popen2.popen3(cmd)
  cmd_out = out.readlines()
  return cmd_out[0][:-1]
if __name__ == "__main__":
  #Check that we got a repos and transaction with this script
  if len(sys.argv) != 3:
    repos = sys.argv[1]
    txn = sys.argv[2]
  if DEBUG: printDebugInfo(repos, txn)
  user=getUser(repos, txn)
  if DEBUG: sys.stderr.write("User:"+user)
  if DEBUG:
    if (user in ALLOWED_USERS):
      sys.stderr.write(user+" in allowed users")
      sys.stderr.write(user+" not in allowed users")
  if (user not in ALLOWED_USERS):
    checkTransactionSize(repos, txn)


Subscribe to David Grant RSS