The Flying Developer Eats His Own Dogfood

There’s a term in the software industry called ‘Dogfooding’, or “To eat one’s own Dogfood”. It refers to the practice of using the products you develop. The term was coined in 1988 when:

“Microsoft manager Paul Maritz sent Brian Valentine, test manager for Microsoft LAN Manager, an email titled “Eating our own Dogfood”, challenging him to increase internal usage of the company’s product.” – Wikipedia

I’ve been at Shopify for the better part of a year now, so I thought it was about time that I engaged in some dogfooding of my own. The result has just gone live: The Noble Pony

Continue reading

The Flying Developer Dislikes Pando Media Booster

I’ve been playing League of Legends over the last month or so, and I rather like it. But that’s not what this post is about.

A couple of days after I installed the game, I noticed something strange. My network monitor gadget was showing an ongoing upload of about 1Mbit. Whaa? I don’t remember telling anything to upload large amounts of data. Time to investigate! Continue reading

Cool Gadget: Power Bag

I can’t remember who told me about this, but about a month ago someone sent me a link to Power Bag. It’s a series of backpacks, messenger bags and briefcases that come with a built-in battery pack that you can use to charge your phone, tablet, or other usb device while out and about. The idea is that you charge it at home from the mains, then plug your phone (or whatever) into it while you’re out so that it recharges while you’re in transit. Pretty clever!

I’d love to see this coupled with a dynamo accessory so that you could mount it to your bike and charge the bag while cycling. If I hadn’t recently bought a Thule messenger bag for my work laptop (which I love by the way), I’d definitely try one out.

What’s Next For Life Dial?

If you’re not familiar, Life Dial is my Magic: The Gathering life tracker app for android. I initially wrote it for personal use, but have since made it available on the Android Market for free.

I currently have just shy of 350 steady installs (which I’m really pleased with), but that seems to be where things have evened out. As the app is free I don’t want to spend money on advertising it at the moment, so I figure that if I want more people to install it I should work on making it appeal to a wider audience. Here’s how I plan on doing that.

The Plan

Multiple Players

Right now the app only supports a single player – The idea is that you use it to track your own life (and poison) total and let the other player track theirs. This works ok for casual play, but since then I’ve attended a couple of pre-release events that are a little more competitive and realized that you should always keep track of all players’ life. Therefore the first big feature I want to add is the ability to track multiple life totals simultaneously.

Poison and Other Counters

The app was written while Scars of Mirrodin was the current expansion. As a result, it gives equal billing to poison and life. Now that the game has moved on a little bit, infect decks are seen less often. At the same time I’ve had a lot of requests to track other totals: Mainly related to the Commander set Wizards released this summer. To kill as many birds as I can with a single stone, I’m going to be working on a setting that allows the user to display an arbitrary number of totals per player, which can be used for whatever they like. Life, poison, commander damage, or anything else you can think of.

Monetization

Finally, I want to experiment with monetizing the app. The current version will always be free, but the new features I mentioned above (the ’2.0′ features) will probably be made available as an in-app purchase. This is as much an experiment in using the Google Checkout API as anything else, but I’m also interested to see whether people will pay a dollar for a life tracking app.

Implementation Challenges

The big thing I have to figure out is how I’m going to display all this extra information on the screen. The current interface is designed to maximize the size of each of the elements so that they’re as easy to use as possible. If I add more players/counters then I have to either make everything smaller or move some of the data off-screen and have the user page through it. Neither of those is particularly appealing to me so I’ll definitely have to spend some time experimenting to see which one works better.

I’m hoping to work on all these changes over the next month, so with any luck Life Dial 2.0 will appear in the Market early November.

Google+ Hangouts for Enterprise?

Google Plus doesn’t support Apps accounts yet, but that hasn’t stopped everyone at work from adding one another. I have 32 people in my ‘colleagues’ circle (compared to a measly 25 in my ‘friends’). Surely there’s a way to harness this new platform in day-to-day business?

Turns out there is. Since Joey went back to Toronto last month the Apps team at Shopify (Myself, Joey deVilla and Edward Ocampo-Gooding) have been holding our regular morning meetings over Google Plus Hangouts. This has worked surprisingly well so far. The video and audio quality have both been great, even when we did a three-way connection on Friday. I like that there’s no associated contact list hovering in the background (like there would be with Skype) as well as the potential for drop-in, drop-out participants. We can just open the Hangout to everyone in our ‘colleagues’ circle and we’re good to go. The “whoever’s speaking gets center stage” feature is neat, but can get a bit annoying when the speaker changes rapidly. I’d really like to see an option to evenly split the screen between all participants, but other than that Hangouts are perfect for our short morning meetings.

Apps I’ll Never Make: Social Playlists for Public Places

Soundhound and Shazam are great, but what if you want to know about the song that just finished at the bar/coffeeshop/store you’re in? This app would allow people playing music in public places to upload/update their playlist to a site tagged with their location, and then users would connect to find out what’s playing near them.

From there you could do all kinds of interesting things, like having users request songs or foursquare integration that tailors the playlist for whoever’s checked in at the time based on their combined Last.fm history.

Maybe something like this already exists, I’m not sure. I’m not exactly the most prolific music listener ever. If it does, I’d love to hear about it!

The Flying Developer Moves

No proper post this week, as I’ve just moved into a new apartment and all my time is being spent on unpacking and setting up utility bills. It’s 100% worth it though, as I now live 5 minutes walk from work. Thanks to Dan, Edward, and Kim‘s family for helping me transport all my stuff across town.

Here’s a picture of my new TV :D

The Holy Trinity of Gmail Plugins

First of all: You’re all using gmail, right? Right. Good.

There are three features in the gmail web client that I absolutely cannot live without:

  1. Auto reply all
  2. Send and archive
  3. Undo send

Auto Reply All

I find this to be the most valuable of the three. I used to break untold numbers of email threads by hitting ‘reply’ instead of ‘reply all’. No longer! Especially in a business environment when you have multiple correspondents more often than not, this should be the default. I was using it a couple of years ago when it was mysteriously removed, and I nearly cried.

Send and Archive

The only thing more satisfying than archiving email is archiving it automatically. As far as I’m concerned once I’ve sent a reply to an email the responsibility lies with the other party, so I’m perfectly happy to banish the conversation from my inbox until they respond.

Undo Send

Perfect for when you neglect to remove the placeholders from a form email, or realize that you’ve forgotten to add the links you promised you were going to send.

Others

I also use other labs features in gmail, but I think the ones I’ve mentioned are the ones I rely on the most. Here are the others in no particular order:

  • Multiple inboxes – I keep my starred mail visible in another inbox directly under my regular one so that I don’t forget about it.
  • Custom date formats – Because the month comes after the date.
  • Title Tweaks – Somewhat redundant now thanks to App Tabs, but still useful in some cases.