June 4th, 2008 — customerservice, banking, td, wtf
Dear TD Customer Service,
I emailed you because of concerns of fraud. An ATM that collects PIN numbers is a known attack vector.
Telling me to call instead is lame. Especially a day later.
You should know if I’m a customer that uses online banking (I do).
You should know if there were sufficient funds in my account (there were, and I made a withdrawal at another ABM).
So an ATM that doesn’t let me withdraw is suspicious. Especially when the error message does not correspond to the reality.
I emailed you because of the 5 minute wait on the phone.
Next time I just won’t bother.
Thanks for nothing,
Daniel.
Hello Daniel,
I appreciate your concern that you are unable to withdraw funds from your
TD Canada Trust using a Triton machine. Thank you for taking the time to
write, and I apologize for the delay in responding to your email. We
strive to respond to all email received in a timely fashion and we wish to
assure you that this delay is not typical of the level of service we aim to
provide. I regret any inconvenience or frustration this delay may have
caused.
If you are confident that there are funds available in your account for
withdrawal but continue to receive an “insufficient funds” message at an
ATM (ABM), it’s a likely indication that you have reached your daily
withdrawal limits placed on your card. Every Access Card is set with daily
and weekly limits for both ATM withdrawals and Interac purchases.
To have this situation investigated, I encourage you to contact EasyLine at
1-866-222-3456 or collect at (416)-983-5393, available 24 hours a day, 7
days a week. If you are not registered for EasyLine, please press option 2
when you call.
Alternatively, you can contact your branch for assistance. Branch
information, including phone numbers, can be located here:
http://www.tdcanadatrust.com/locator/
As email is not a secure channel for transmitting information, I regret
that I’m unable to assist you via this medium. I apologize for any
inconvenience this situation may present.
I hope this direction is helpful. Thank you once again for writing.
Best regards,
<name removed>
Internet Correspondence Representative
June 1st, 2008 — rubyonrails, tech
Two and a half weeks at Canada’s best known rails consultancy taught me a few lessons.
Test less
The folks at Unspace haven’t jumped on the testing bandwagon. They do have a human that does a pretty thorough job of going through their sites and reporting bugs. Yes, a flesh-bot. How quaint, eh?
This works for Unspace because they only build very simple applications. Rather than a limitation, this is actually a design goal. Layers and libraries can get abstracted, but the web application itself must remain simple.
At that point, most bugs are pretty obvious with even minor amounts of smoke-testing. Worse yet, some bugs are for functionality that was specified by a client but just doesn’t make sense, and it’s only when you’ve implemented it that it gets discovered by a human tester.
My first inclination was to think they were crazy to not test. I don’t personally feel comfortable with such a style, preferring heavy unit tests with light or automated functional tests. Simpler applications however are now one of my design goals: web apps just shouldn’t be that complex.
If your helpers need testing, you’re probably doing something that should be done in the model or some other hack.
No Contracts
In a bit over 2 weeks, there were several meetings with the client. Things got re-prioritized, items were added and dropped. Contracts bind both client and provider; it’s easier to work by the hour.
Work less
3 to 4 hours a day of billable time on average. They only bill for work they do when in the zone - even if that means not even showing up at the office on some days.
Some would say that’s unprofessional. Code will suck if you’re tired or not feeling well, and that’s a lot less professional.
Work on fun projects
You can’t always do projects for clients. Complainy took only a few hours for them to write and launch, and they had much fun with it. Visiting them after the end of my contract, they were hacking a Facebook app for playing cards.
It’s fun, and it’s a way to learn and test out libraries and speculative technology. That kind of stuff keeps you sharp - and now they can tell a client they have experience with a facebook app.
Party!
If you work for work’s sake, you FAIL. If you’re ever in Toronto, try to wrangle an invite to their Friday “Tea Party”. Rubyfringe attendees should see some pretty amazing partying.
May 15th, 2008 — Uncategorized
Heri rants justifiably about Tourisme Montreal spending $1.5 million on a yet another crappy flashy brochure website.
Before an agency embarks on such a high budget exercise ($1.5 for a website is a gigantic budget), I’d want to ask the following:
- How will they measure ROI?
- Who is the audience?
- What are the key metrics?
- What budget is there for iterating and adjusting the site?
While ‘user-generated content’ is no panacea, I’d suggest there are good uses for it, especially if we target those people I call Ambassadors.
Montreal has a lot to offer. When a friend told me he was considering a visit, I sent him Jazz Festival information, because he’s a jazz fanatic. Montreal has a festival, event or point of interest for just about every taste. I was effectively acting as an ambassador. An ambassador can be a local, or a person that visited your city and loved it so much they tell others.
One key metric I’d suggest for a Tourism promotion site is how many ambassadors used it to invite friends and family with targeted content.
For people that come visit me, I have created a google map (with the ‘My Maps’ feature) with recommended spots in my neighbourhood, places to see and public transit information. Combine the implicit data from many of those mash-ups, and you can have a list of ‘most recommended’ places and events.
Considering you can’t properly bookmark a page and that there’s no ‘tell a friend’ feature, I’d venture that idea was never even considered. Tourisme Montreal’s project hasn’t even caught up with staples of the 1990’s web marketing.
One nit to pick with Heri: I would squarely blame the agency for this failure. They should know the web if that’s their medium, and be ready to educate clients or refuse work that reflects so poorly on them.
May 13th, 2008 — startup, rubyonrails
My first freelancing gig is with the folks at Unspace. Hampton convinced me to move to Toronto for a couple of weeks to work on CommunityLend. It’s an exciting project, check it out.
Email me if you are in Toronto and would like to meet up.
May 5th, 2008 — montreal, startup, personal
I’m no longer an employee at Standout Jobs; They will be my first freelance client.
Going freelance will let me work fewer hours, spend most of my time learning about the ‘next big thing’ and contribute to open source in the process. Here are a few things that are on my radar:
- IM as command line: Jabber + twitter
- Semantic web: micro-formats and freebase
- Collaborative filtering
- API design
- Authentication
These are interesting times for net heads, with many simultaneous inflection points, lots of freely usable data and ridiculously cheap on-demand computing.
Rails was that ‘next big thing’ about two years ago. I fell in love. After traveling across Canada and South to California, I spent months learning and prototyping. My parents thought I was crazy, spending months without a job. Maybe they’re right, and going freelance certainly won’t dispel that notion.
I fell in love a few times this past year. I’m willing to bet heavily that one of those muses is going to be the ‘next big thing’. Going freelance will afford me the time to pursue them that I just couldn’t have in a startup. It’s exciting, even if I’ll miss working as closely with the world-class team back at Standout Jobs headquarters.
May 1st, 2008 — quebec, montreal, culture, wtf, politics
“A man, working in a laundromat?” It wasn’t really a question, nor a rhetorical device. She was just floored I’d ask why the help wanted sign on the window explicitly said “Woman wanted for 3 evening shifts per week”.
When I indicated the laundromat on Duluth St. had 2 men working there, she told me that when they hired a man at their previous location, they lost a lot of customers.
See also a blog entry from a year ago: Women can’t lift heavy weights.
What should I do? Report, boycott, ignore or try and cajole?
April 30th, 2008 — environment, carbon footprint, futurism, politics
On Earth Day, I announced I’d be be spending some time thinking about a ’sexy’ vision of the (bright green) future. When Jamais Cascio blooged about Feedback, Tipping Points, and Hard Choices I asked him about a better vision than the one offered by Monbiot. He pointed me to Joseph Romm’s Is 450 ppm (or less) politically possible? Part 2: The Solution.
Romm builds upon Stabilization Wedges: Solving the Climate Problem for the Next 50 Years with Current Technologies. I don’t particularly like Romm’s proposal, and since he asks dissenters to read the Stabilization wedges paper before critiquing him, I gave it another read.
Now, the first time I read about stabilization wedges, the idea was very exciting. By breaking down the problem of carbon emissions into smaller, tractable problem, the authors gave us a credible, positive vision. While no single element or ‘wedge’ could solve even half the problem, any 7 of the many they proposed could do so.
The 15 proposed wedges are summarized on the Carbon Mitigation Initiative’s website, broken down into the four categories of Efficiency, Decarbonization of power, Decarbonization of fuel and Forests and agricultural soils
David Weinberger’s excellent book Everything is Miscellaneous has made me suspicious of such neat classification systems. It is one of those deceptively profound books that will permanently warp the way you see the world. Now I read about climate policy and think about the Dewey decimal classification system, or Linnaean taxonomy.
These classification systems not only fail at classifying important things (the inevitable ‘miscellaneous’), they also imply a certain worldview, which has political consequences.
Here’s a miscellaneous: sometimes planting a tree is not simply a mechanism for CO2 sequestration, but also a way to cut air conditioning costs. Does that fit under “Forests and agricultural soils” or “Efficiency”?
Another unclassifiable wedge is population. Yes, it’s a politically sensitive issue, yet right now there are governments encouraging higher birth rates, and others not giving women access to contraceptives.
There are other problems with the wedges. As the authors put it, wedges can not be combined willy-nilly:
Because the same BAU [business as usual] carbon emissions cannot be displaced twice, achieving one wedge often interacts with achieving another. The more the electricity system becomes decarbonized, for example, the less the available savings from greater efficiency of electricity use, and vice versa.
The wedge concept assumes linearity:
A wedge represents an activity that reduces emissions to the atmosphere that starts at zero today and increases linearly until it accounts for 1 GtC/year of reduced carbon emissions in 50 years. It thus represents a cumulative total of 25 GtC of reduced emissions over 50 years.
Of course, wind and solar have been growing at rates above 30%: not exactly linear.
Along with linearity, the very classification and sheer size of wedges, as well as the examples given favour bureaucratic solutions and state intervention. In fact, bureaucracies often can’t handle solutions like planting trees which have multiple benefits for health, environment, water management and energy use.
There’s a lot to like in Pacala and Socolow’s original paper: breaking down the problem into manageable chunks, insisting on stabilization with existing, ready technologies and a framework with which we can more sanely compare the cost of strategies.
What would be useful now is a way to think about solutions from the bottom-up. Maybe there’s a way to account for strategies with non-linear and multiple benefits.
April 23rd, 2008 — Uncategorized

I love the luxury of it all. Every Wednesday, fresh veggies and fruits, in my fridge. Jardin des Anges has a key to my place and debits my account automatically twice a month.
The lettuce tastes like what my dad gets from his garden: not your anemic grocery store variety. At $34, it’s pricey (click the image for details of the contents, or check their site), but if it motivates me to cook more and eat out less, I will save money.
The ethical thing to do (organic, and either local or fair-trade) should always be this easy.
April 22nd, 2008 — environment, carbon footprint, politics
Google has a post up about Helping others go green, including news that Google Transit is continuing its expansion.
If any Googlers are reading this, I’d like three green additions to Google Maps:
- Lines connecting Metro stations.
- Bike lanes. In Montreal, they’re faster than the metro.
- Travel-time maps.
In the last couple weeks, I’ve finished reading Monbiot’s Heat and subscribed to organic food delivery by Le Jardin Des Anges. Today I asked Natasha for help with a vermicomposter, since I know I’ll have plenty of organic food scraps.
Still, it all feels inadequate given the enormity of the challenge. While scientists and the environmental movement have finally made us realize climate change is real and deadly, we have not yet seen a very compelling vision that could galvanize political change.
Talks of restraint, rationing and cuts aren’t sexy. And changing light bulbs to compact fluorescents or LEDs, eating less meat and offsetting air travel emissions - while necessary and good - just won’t cut it. In the coming months, I’ll be spending some time thinking about a ’sexy’ vision of the (bright green) future. If you have ideas to share, you can do so in comments. If you live in my neighbourhood, let’s meet up face to face.
April 21st, 2008 — usability, ui, quebec, tech
1- The forgotten password
We all forget passwords. So you click on that link on the login form, and you’re greeted with a blank text field for your email address.
And it’s usually blank, even if you already entered an email on the login page. How stupid is that?
2 - Is that VISA or MasterCard?
It happens every time I have to give my card information over the phone. On nearly every website with a checkout form, you usually have a drop-down.
That’s stupid, because if you have a credit card number, you already know who issued it. Wikipedia has a list of credit card prefixes. Mastercard starts with 51-55, VISA with 4.
3 - 90210, that’s in New York, right?
A simple search will tell you that’s Beverly Hills, CA. This one’s not nearly as trivial as my first two points to implement. Still, asking someone someone to input city, postal code and state is annoying, pointless and adds the possibility of error.
4 - English or Français on splash pages
Our browsers already tell servers what language they want pages served in. We have cookies to track these types of preferences. Yet the Canadian government still insists that every time I go to a department web site, I’m asked: Français / English?
Taking their cue from government, businesses do the same thing, which leads me to my last pet peeve.
5 - ATMs suck
Besides their outrageous fees, every time I visit another bank’s ATM, they ask me the language question. And then they ask me what operation I want to do, with only ONE choice: Withdrawal.
Pretty stupid, no? But my bank tops that. No language choice - but it asks me which account I want to withdraw money from. Even though I only have one chequing account with them.
There are a lot of small details that can add up to a pleasant, friction-less experience. Most of them don’t take that much effort. I believe it’s a responsibility on our part to create interfaces that are as simple as possible, so that people feel empowered.
Anyone have other examples they can share?