Mar 282012
 
Android Robot. Français : le logo d'android 日本...

Android Robot. (Photo credit: Wikipedia)

Yeah, I know that I’ve been gone for a while, and no, this post won’t have anything to do with music, except to tell you that if you’re in Ljubljana tonight and missing Nils Frahm at Menza pri Koritu then I don’t know what to tell you.

No, today’s post is about finishing and what that means. I was going to start with a dictionary definition, but I think you all know what “finish” means. It means bringing a task or activity to an end; completing something that you started.

In truth, I don’t finish many of the things I start. When I was a kid I quit hockey. In middle school, The Boy Scouts. In high school I quit the swim team after one year. I started a company in college that we disbanded a few years later – in that time (Facebook‘s early days, when there was still space there) we built an entire social network that we never launched to more than a few hundred people. I remember when Facebook first opened their platform, and some of the proofs of concept Facebook apps that I came up with. I was also there with a handful of ideas and prototypes when Foursquare launched their API. Several years ago now, I wrote an entire autonomous Twitter bot platform that I’ve never officially done anything with. Before I moved to Slovenia I spent a few months screwing around with an Arduino, never to actually build anything long-standing or useful. In the last year and a half, I wrote the meat of a brilliant and complex social/gaming web application, working with an excellent UX person who is plugged into New York City’s thriving tech scene (she has friends at TechCrunch, in several influential tech startups, etc.), yet we still haven’t brought it across the finish line. When Android first came out I switched to TMobile and bought the G1. I was at all of the NYC Android meetups. In the last few years, I’ve written seven or eight interesting Android apps that are in a half-finished state sitting in my Eclipse workspace and/or on only my phone. I have all the excuses in the world (hockey got rough, boy scouts got boring, swimming wasn’t fun, no time, lost interest, etc.), but when all is said and done, what it boils down to is that I don’t finish things.

As a side note to any employers who think that they hired/are hiring/will hire a dud, I’m speaking strictly about things that I do/build in my free time; when it comes to a job and being professional, yes I do finish all of the tasks required of me. It is in my code of ethics to uphold my contractual obligations.

But why don’t I uphold that same code of ethics for things that I don’t get paid for? Why don’t I finish things?

I think that the answer lies in the fact that I love making a good proof of concept. I love mock ups. I love the kind of instant gratification that a prototype offers. I love spending enough time with a technology to learn about how it works, grasp it, and build something with it. Maybe my quest for knowledge is breadth-first? Back when I was a junior dev in my first startup, our chief architect (also a good friend) used to compare me and my colleague, saying that I’m like a sponge, soaking up all of the knowledge that I can about everything that I work on, while my colleague strived to finish each assignment as quickly as possible without needing to know why things worked, just that they did. I guess it’s good to have both types on your team. The yin and the yang.

Fast-forward to yesterday in the office: I was about to show off an Android app that I built this past weekend to a few coworkers, when my friend Drazen asked if it was the same app that I showed a few weeks before. I replied that it was something new that I cooked up from my bed this past Sunday morning. Drazen laughed and (rightfully) pointed out the fact that I don’t finish anything. At the time I was like “yeah, yeah” and shook it off, but his words stuck in my head for the remainder of the day. Last night at around midnight I fired up Eclipse, determined to finish what I started. At around 02:30 I had a fully working implementation of my gag app with basic functionality. I quickly read the release docs for the Android Market (now “Google Play”), registered for a developer account, paid the $25, signed my .apk file, posted a couple of shitty screen grabs and descriptions, and by 03:30 I officially had a finished product sitting on the Android Market, available to the masses!

I now present to you, Talking James! A proof of concept of finishing.

QR code for Talking James on the Android Market

QR code for "Talking James" on the Android Market

 

Enhanced by Zemanta

Jan 172012
 

Now Playing: Dark Was The Night

I’ve had this cough for about a week now – ever since we got back from spending New Years Eve in Prague and the cold moved into my lungs, and just about every night I’m awakened by coughing, and the only way to fix it is to sit upright for a bit, despite how tired I may be. Oh well, it makes for some interesting late-night hacks.

As for tonight’s project, I’ve been trying to figure out a way to more seamlessly curate this blog with content from my Google Reader subscription…

Image representing Google Reader as depicted i...

Image via CrunchBase

My first approach was to Google around for “Google Reader API” – the results: garbage. Google is really (surprisingly) behind on their API writing. As a side note, I first realized how lacking Google is in their API writing when I had to figure out how many Plus Ones any given blog entry had received for work. As of that time we first found that there is no Google Plus API, then tried to reverse-engineer a Plus One button, and then eventually learned that we could use a remote procedure call to get the Plus One data. Ugly, ugh.

My next thought was that maybe I could share the data to some common link sharing service like Digg or Delicious and then hit their API to get the data here. That would work, but I’d love to cut down on the middleman if possible, so I kept looking.

It turns out, Google Reader provides this really interesting custom “Send To” service. If you go to “Settings” in Google Reader and click the “Send To” tab, at the bottom you can click “Create a custom link” where you can create a link in your Reader that will hit some external URL with the story data. Perfect!

Wow that description of what I’ve been up to got long fast… Oh well, if you were curious, that’s how I’m doing this thing lately. That’s all for now, stay tuned for a music post…

Enhanced by Zemanta