A business making custom bushings for cars. It’s possible to get bushings that aren’t quite right for 12 bucks, so why not sell bushings that are perfect for 24?

A site that sells women’s jeans. Most women’s jeans on the market have unusuable pockets, bejazzling, and tasteless embroidery, and holes ripped in the knees because of “fashion”. I want to sell jeans with following goals:

1) Make your ass look awesome

2) Have pockets deep enough for your wallet and phone so that they complement your lines instead of ruining them.

3) Reinforce the crotch, because it constantly rips. Or find a way to make them fit so the crotch doesn’t rip.

4) Optional: Make a kevlar, kneepad version for motorcycles.

Convince someone to sponsor you as a racecar driver in hornet racing, and win as often as possible.

Build bicycle wheels.

Rent yourself out to people who are tired of their roommates. Live in their house rent free and make life uncomfortable for the unwanted housemate.


Would you like to receive updates by email?

Sell me this


A metal board, similar to a whiteboard. Strongly magnetized so that nuts and bolts stick to it. Grease pen to label nuts according to where they came from.


While doing an engine swap on a 1984 Corolla hatchback this weekend, I kept misplacing bolts. As much as I was careful to put them in a safe place or screw them back onto the motor, sometimes I would put bolts from one engine part in the same spot as nearly identical, but much higher grade, bolts from a different part. They would get mixed up. I want a better way to organize these things, so as to keep my work area orderly and keep track of pieces, for best results when putting the car back together.

Potential issues:

  • The board will be quite heavy, so it will need a sturdy backing, and will have to be mounted firmly.
  • The magnets must be quite strong, so that everything doesn’t fall off in a massive mess if it gets jostled (Think about slamming the refrigerator door).
  • Magnets are weird as all get out and often cause unforeseen problems.

Anything else? Let me know in the comments.

I would pay $50 for this item. A good size for me would be 100cm by 60cm.


Would you like to receive updates by email?

Look, I made a thing!

Racing cars is a lot of fun. What’s less fun is doing arithmetic by hand for an hour to find out how well people did. Fortunately, we now have the technology to ease this pain.

This guy I go out with, Quinn, is into drift racing. When he doesn’t have a car handy, he judges events. I’ve spent a fair bit of time chatting with him and other judges about how tedious the process is due to all the arithmetic required to add up scores during qualification rounds.

I wrote a program to make it easier. This is a Java applet which you can download at Github. You start an event, add drivers, score them, then click the big button to get a list of who made it through to competition, and who’s out. Simple, clean.

A screencap from the Capital Drift program.

Possibly too simple – currently, if you make a mistake in entering scores, there is no easy way to correct yourself. You have to delete the driver in question and start again. I’ve been thinking carefully about the best way to correct this issue, but I haven’t decided yet.

Nevertheless, the thing does what it is supposed to do and is available for beta testing. It will be tested this Saturday the 15th at Western Speedway, during Capital City Drift. If they like it well enough perhaps they’ll keep using it.

If you are in charge of any similar event, please feel free to download, recode for your own purposes, and let me know how it went.

Would you like to receive updates by email?

Getting Started With CakePHP

Here’s a couple of things I did wrong when trying to use CakePHP, for your benefit.

Several months ago I applied at a company called Radar Hill, which uses Cake as their main framework. Naturally I set about learning how to use it as soon as possible. I didn’t do very well. I it on Rocketships, but couldn’t figure out how to make it run – there were a variety of problems that I’m not quite experienced enough to recognize.

Then I tried it locally on my MacBook. I made progress, but the database part stumped me until I found out about MAMP, which got me a little further. But it still wasn’t what you’d call a success. Finally, the job interview at Radar Hill rolled around, and I was not hired, mainly because of my inexperience with PHP. Sigh. I tried!

However, the guys who interviewed me were very encouraging, and said to keep trying and stay in touch. One, Jamie, gave me some tips on how to run it on the Mac. His instructions worked perfectly.


First Mistake

.htaccess files sometimes don’t copy and paste in the Mac finder, because the . at the beginning of the file name renders them invisible (except when it doesn’t).

The solution was found here:

Probably the hardest to do but uses the least amount of work and has the most potential to go wrong, that is the Terminal Method. If you open up terminal (Applications > Utilities) and type the following:


defaults write AppleShowAllFiles TRUE
killall Finder


This will show you all of the hidden files and folders on your operating system. If you want to reverse the command replace TRUE with FALSE.

Then check the Cake files to make sure that all 3 .htaccess files are present – as detailed by this very helpful post on Stack Overflow. There should be one at the top level of your cake directory, one in /app, and one in /app/webroot.

Second Mistake

I was putting files in all sort of random places, trying to find a way that worked. Jamie said to unzip the Cake download into /MAMP/htdocs, replacing anything else in that directory. This is probably a dumb newb mistake, but I’m sure at least one other person has made it.

What Jamie Said

#1: Download and install MAMP:

It’s an “out-of-the-box” LAMP environment for the Mac. It’s all I ever use.

#2: Start MAMP, and then go to the homepage, which by default is:

#3: Click on the “phpMyAdmin” tab at the top. You can also get there

Create a new database and call it whatever you want – something descriptive.

#4: Download the latest version of CakePHP 2.2, currently RC1, from here:

#5: Extract the archive and put its contents into
/Applications/MAMP/htdocs (replace whatever’s there).

Open the database config file for editing, which is at (relative to htdocs):


#6: In the DATABASE_CONFIG class in the file you’ll see this array,
which is the default DB config:

Change it to this:

#7: IMPORTANTLY: don’t forget to replace “your_database_name” above with
the actual name of the DB that you created.

#8: save that file as database.php, rather than database.php.default

#9: Browse to: http://localhost:8888/

If all went well you should see the ‘vanilla’ Cake installation.

– Jamie




Would you like to receive updates by email?

Here’s What You Should Do This Weekend

Take a rusted, rotten shell of an old car.

An old car with weeds grown into the grille, probably hasn't moved in years. Source

Remove all the junk from inside of it.

A cleaned out race car shell painted black on the outside and red on the inside.Source


Set it under a nice maple tree.

Battered old truck under a maple treeSource


Bolt in a racing seat.

Corbeau racing seatSource


Remove the steering column, and replace it with a laptop desk on a swivel.

A mount that could be used to install a laptop on the dashboard.Source


Run an extension cord out from the house.

A beautiful extension cord, with fabric insulation instead of plastic.Source


Remove what’s left of the engine, and replace it with a refrigerator.

A small, portable chest stye refrigerator.Source


Hang out in your new fort and watch Top Gear.

Me, in a BMW, watching Top Gear on my laptop.Source


Would you like to receive updates by email?

Things No One Tells You

You have to reach down to loosen the strap on clip-style bicycle pedals. Who knew. No one ever mentioned this to me – they either weren’t aware or didn’t know. “Google it” isn’t a helpful answer. It never even occurred to me to ask the question. I found out by accdident while reading an article about the various advantages of different pedal styles – not research, just a link I happened to click on in /r/bicycling.

So what are the things that everyone knows?

When I tried to teach my mom how to use iPhoto, giving her instructions via Facebook chat, I didn’t understand why it took her so long to follow my instructions. It turns out that she thought you had to close the web browser to get it off the screen, then open iPhoto, then do the thing, then close iPhoto, then reopen the browser…etc. My mind was sblown when I saw her doing it in person. This isn’t an “Old people do dumb things” problem, though. I come up to it all the time, and my OWN stupidity catches me by surprise quite often. Staring at a Java if statement for several hours:

before realizing that it should be:

I’ve been trying to get the CakePHP framework running on my computer, without much success. The docs contain this sentence:

“For some reason or another, you might have obtained a copy of CakePHP without the needed .htaccess files. This sometimes happens because some operating systems treat files that start with ‘.’ as hidden, and don’t copy them.”

This was exactly the problem I was having, but the doc didn’t tell me what do about it. I found the answer from some other obscure blog, after dozens of Google queries. The Cake doc, though clear, easy to read, and fairly complete, seemed to assume that I would know what to do if these files didn’t turn up.

Am I an idiot? Well, yes, obviously. But we’re all idiots when we’re doing something new. Too many instruction manuals skip vast swaths of information, because they assume you already know how to do the things they’re telling you to do. And these bits of info are so hard to track down, because you don’t know what question to ask. Ever tried starting a standard transmission car, and it just wouldn’t?

The first question to ask, is “Did you push the clutch in?”. But I made that mistake tons of times when I was learning to drive, and people would offer me booster cables and jerry cans. They assumed…   and that’s the problem.

Don’t assume someone knows something just because they’ve made it to the age of 23, or 63, or whatever, without dying of idiocy. When you encounter a person being dumb, think of the last blindlingly dumb thing you did (if you can’t think of any, you aren’t paying enough attention), have sympathy, and just fill in the missing information without judgement or ridicule. It’s classier, and hopefully they’ll return the favor.

Would you like to receive updates by email?


I have to confess.

I’m too lazy. I should be working on finding a co-op position for the summer. Last year, my cousin was in the same position, and he didn’t find one. He left it till too late. I sneered at him behind his back.

Earlier in the year, last quarter, I was fired up and raring to go. I started doing research over Christmas break. I had sent out 7 resumes by mid-February. I was far ahead of my classmates. I got positive replies from several employers, and an interview from one. The interview yielded a job.

That job must have really burned me out, because I haven’t sent out another resume since then. The indifference of man who hired me, his lack of communication with me, the disinterest of the other employees in my department (they didn’t even introduce themselves, after 2 months), and finally, their failure to deliver my final pay check left me angry and disillusioned with a company that I had admired.

Far from daydreams about high paying jobs with prestigious companies, like I was, I now consider whether I should go back to my old job washing cars this summer, or maybe shoot a bit higher and try to get a job assembling bikes.

What brings me joy these days:

I still love writing code. As aggravating as it is, as lost as I feel, when I finally get something to work the rush is incredible. I love it when I know what I’m doing, fall into a groove and sit there banging out code for hours. Or when a problem gets stuck in my head, so I think about it in the shower in the morning, on the bus to school, during the lectures, and finally solve it in the lab after several hours of wrangling. The green bar in a JUnit test is probably my favourite thing in the entire world right now.

Programming is my passion. But am I good enough? When build something on my own I don’t have much success. One job I applied to involved a lot of PHP. It’s a company called Radar Hill. I really want to work there, it sounds brilliant. I like PHP too, despite the constant house-of-cards feeling I get when I code in it. But they use the Cake framework, which they say is easy to use. Well, I’ve been trying, off and on for months, to get the stupid thing running on my computer. Can’t. I’ve tried half a dozen times, made some progress, but have not yet even gotten to the point where I can actually write and install code. I’m still trying to figure out why the .htaccess files don’t work.

The internet says that the CakePHP documentation is pretty bad, which fires up in me the desire I feel every time I encounter incomplete docs, to fix them and make them right.  I could be a technical writer pretty happily.

I can chuck it and build wheels instead. I love building bicycle wheels. I may regret the lost time for awhile, but I always bounce back to happy. Instead, I’ll slog through, gasp with joy every time I see that green bar, try to motivate to build something, try to will myself to look for a job.

I don’t feel hopeful. Only bloody minded determination.


Would you like to receive updates by email?

How To Use Compression Ratios

An automobile manual will provide you with a list of numbers about your car or motorbike. One of them is the compression ratio. In the case of of my KZ 305 LTD, that number is 9.5.

The number that my compression tester gives me is 145 psi in each cylinder of the motorbike engine. Uh derp, what do I do with that?

Well, it turns out that atmospheric pressure is about 15 psi. 145 psi divided by 15 psi makes 9.6666. Rad! That means the engine works!

Would you like to receive updates by email?

School Again

Back at school for my third semester of Computer Systems Tech. I’m taking a moment on my lunch break to reflect on what, if anything, I learned last semester.

1. PHP. This is an interesting language. The constant feeling that you’re building a house out of string and twigs, and if you change the wrong thing it will collapse – and you can’t be sure what’s the wrong thing. Yet somehow I got top marks on all the exams? Makes no sense. I want to FEEL as if I’ve mastered it, not just outwardly appear so.

2. Database queries are not nearly as hard as I once thought, once you have a couple examples to work with. Normalization, on the other hand, never really made sense to me.

3. I am capable of extraordinary things under pressure. Not necessarily my best work, but good enough and on time, when I thought all was lost. On the other hand, the rest of my life suffers. Laundry and dishes go unwashed, appointments are forgotten, and my sometimes brusque manner gets worse.

I’m running low on money and questioning whether taking a part time job was a good decision, or if the company is a good fit. I get distracted by motorcycles and I’m still not as social as I want to be. But the semester is off to a good start and nothing major has actually gone wrong yet, even though I always feel as if disaster is lurking nearby. We’ll see.

Would you like to receive updates by email?

Trying to Make a jQuery Gallery

Edit: I figured it out. Here’s a tutorial that helped me.

Here’s my post about some further adventures.


I’ve got my little website, you’ve probably seen it if you’re reading this.

All the HTML and CSS skills they taught me in school went into making it look nice and modern, but of course if you look close, you’ll realize that it’s not significantly more complex than your basic 1996-era Geocities site. Better colour scheme maybe, and even that is a matter of opinion.

So I want to add some upgrades. The first one I have in mind is a nice gallery display page to show off the projects that I’ve been working on. It’ll be pretty thin at first, since this is, in fact, the project I’ve been working on, but never mind. I’m getting there.

This is the jQuery plugin I wanted to use: Lightbox, by the obviously brilliant Nick Stakenburg. As you can see by his examples, you click the thumbnail or text or what have you, and up pops a lovely lightbox to showcase the pic on it’s own. Then you click away, it’s gone, awesome. These are all over the internet these days, so of course I thought, how hard can it be? I download the download, pop it open, do some copy pasting, check that my url paths are alright, and hit F5. Nothing.

Everyone says jQuery is super easy to use, but I’m clearly at a more advanced level of dumb than everyone else.

I’m still working on it, and once I get it sorted I’ll post up a tutorial for the intelligence-impaired, like myself. In the meantime, if anyone wants to give me a hint, please do!

Here’s what I did:

Have website folder called Website.
Have php file called projects.php within Website (it’s just html, I haven’t added any php yet.)

Have pics in folder, one is called Cars.png.

Go to Nicks page, click big friendly Download button.

Unzip file.

Take scripts, css, and examples file out of archive.

Copypaste in the scripts from this page.

Check to make sure the paths are all correct.

Paste this in:

Result: The text “Show image” as a link, which links to the image, without a trace of lovely lightbox effect.

What’d I miss?




Would you like to receive updates by email?