Planet Jeffro

I am a NYC entrepreneur working on Patient Communicator and part of the Blueprint Health accelerator. Email me at jeff [at] patientcommunicator [dot] com.

Previous companies:
Fare/Share | iOS app for sharing taxis
VocabSushi | learn vocab from news
Cnvrge | meet people via SMS
Supermarket Classroom | teach your child while shopping
Poorsquare.us | foursquare for the 99%
IngeniousOwl.com | online SAT prep
Recent Tweets @jeffnovich
Posts I Like
Who I Follow

Google hosted a hackathon yesterday.  I found out about it via the meetup group GTUG (Google Technologies User Group).

I wanted to list some of the amusing things I observed. I’m obviously grateful to Google (and Vic Fryzel) for putting this together, so I hope they don’t take this the wrong way.  But there was a lot of room for improvement and tweaking for the next time.

Scroll down for the hack we did. Enjoy the rant…

Prep:

  1. Describing a hackathon on a Blogspot blog sure makes the affair seem pretty dull.  Google products are powerful but are so damn boring to look at, especially Blogspot, which reminds me of WebTV or a 56K modem. Take a page from GA’s playbook here and make it just a tad more exciting.  This isn’t a big deal though… just wait.
  2. The hackathon was 1pm-8pm on a Thursday. A hackathon when most normal people are at work. Odd, but who am I to complain. Clearly enough people have odd hours - there were 141 people who signed up.
  3. How do I know there were 141 people? Oh because this google doc with the rules of the event was sent out to all of us. The emails weren’t BCC’d. Really, Google? Where have I seen this BCC fail happen before?
  4. Next up: Prizes.  This is my favorite part of the doc:

Each member of the winning teams will receive a prize, with a maximum of 4 prizes per team. Prizes will be valued $10 to $30 each, and will be given to the winners at the event.

I cracked up when I saw this.  Google routinely gives out $100 AdWords cards literally in newspapers.  IN NEWSPAPERS!  But the best they can offer winners of a hackathon is a prize valued at between $10 and $30.  I’d prefer not to even know the value! (This reminds me of when I was waiting at the 2/3 stop at 110th St and the announcer says “The next uptown train will arrive in 16 minutes”, and the guy standing next me kind of flips and went on a funny rant to me about how “I’d prefer if you [the MTA] kept that shit to yourself! That ain’t helpful right now.  I’d just as well not even know.”  In the moment, this was pretty hysterical and the guy was funny. I totally understood what he meant.)

Anyway… $30?  Seriously?  Twilio gave me $250 in credit just for building a hack that used Twilio!  There were several $2,000 prizes at the Amex hackathon (we won one of them).  Startup weekend even gave away an Xbox plus a ton of freebies.  Come on man!

But it’s not just “the best you can get is a $30 prize.” I especially love that there’s a CAP on how many you can win!  So if your team has 5 people, well, only 4 will be taking home the prize, for a grand total of $120 of winnings for taking a day off work. Oy.

Hackathon: Before we started

  1. The hackathon was slated to start at 1pm - 7pm.  That’s 6 hours.  I’ve never been to a hackathon with so little time to hack.  But ok.
  2. Food - or the lack thereof.  Google is best known (to me at least) for a rule that there must be food within 100 ft of employees all the time. So I basically didn’t eat before I came, assuming that 1pm meant there’d be lunch.  Holy cow was I wrong.  There was nothing but cookies, fruit and coffee.  They said dinner would be served at 5:30pm. WTF!? I thought it couldn’t happen, but I starved at Google. Up until 5:30 all I had to eat was a few cookies, some slices of pineapple, a cup of coffee, and 2 sodas. S-T-A-R-V-I-N-G.
  3. NDAs: Google is a stickler about NDAs. At the beginning of the event, someone said we all needed to sign one and handed out paper to everyone. Seriously Google???  You’re putting on a hackathon. You’re a massive tech company.  You know every participant’s name and email address.  I hate paper and inefficiency.  This was both.  Email everyone a digital version beforehand to digitally sign.  What a huge waste of time and paper. (Yes, this took about 15 minutes to accomplish - 15 minutes less of hacking time.)
  4. But then we literally spent the next 2 hours listening to people talk. It didn’t start until 1:30, Google guys spoke for an hour about APIs (useful, and cool, but just ate into coding time), and then lots of people came up to do team building (pitch their ideas in the hopes that someone would join them).  By the time the mic stopped being used, it was 3pm.  We had 4 hours to get shit done.
  5. I think my favorite part was when the actual prizes were revealed at the beginning (at this point we didn’t know what exactly was valued at $10-$30).  First prize was an RC helicopter (a medium size box). But second prize was a GIGANTIC nerf gun - so big, in fact, that the host was like “can someone help me lift this, it’s kind of heavy”.  Third prize: zombie survival book.  OMG.  I took one look at the big stuff and said to James “I pray we don’t win that gun… No effing way we’re carrying that crap out of this room.”  So, in a room full of nerds already carrying heavy laptops, many of whom traveled on the subway (one guy even came from Boston), you thought the best prize to give would be a gigantic box that weighs 30lbs that obviously can’t fit into a backpack or even a large shopping bag, so a scrawny geek can carry that plus their belongings home on the crowded subway at 8pm.  I mean, it’s a fun prize, but logistically it’s a pretty poor choice.  A gift card would have sufficed.
  6. We were prompted to post our projects at the start of the hackathon. Why is this bad? Posting our teams/projects before we’ve hacked kind of defeats the purpose. Because teams haven’t fully been formed, projects aren’t spec’d out and often change under pressure, and a lot can happen in the time frame.  Plus, this form wasn’t editable like a Wiki page (which is, at minimum, how all other Hackathons handle submissions). Nor was it public so I still have no idea what the teams and hacks were.

Hacking: The API for Oauth and Gcal

  1. It took James some time and a bunch of help from Google engineers to get Oauth set up and working correctly.  He commented to me that a lot of this stuff seemed half baked and that Google was probably just using this event to update their documentation and find holes.  That’s basically how a lot of companies (providing their APIs) approach these things, but again, we expect a little more from Google.
  2. I was using the Gcal API and trying to search by date. Got an error.  The error was totally useless. The API tester had a box for date and simply said “this is a date field and takes a string.”  Uh, ok, so how about “2011-12-01 00:00:00”.  Nope, turns out it takes GMT shifted time (or whatever it’s called) that looks like this: “2011-12-01T00:00:00-0500”.  Yeah, that was really obvious. A very helpful engineer told us that.  I said, how is this at all clear in this documentation.  And why wouldn’t a simple mistake like that be corrected automatically and spit out a super helpful “I fixed it” message. Ugh.

Post game:

  1. I totally understand it’s a hackathon with a deadline. But there are subtle ways of reminding us and there are annoying ways.  The annoying way is to treat this like an SAT.  The guy went to the mic at 6pm and said “it’s 6pm. You have 1 hour left.”  That’s just annoying and breaks concentration. Also, the sound system was terrible and the mic was crackly. He then came back and announced 30 min left, and 15 min left, and then “pencils down.”  Seriously? There’s no need for that and it’s super annoying.
  2. No public list of teams/hacks. The best part of a hackathon is seeing (and tweeting) what other people created. We didn’t even know how many hacks there were!  So there was no sense of pacing. It just kept going.
  3. The most important part of a hackathon are the demos: and then need to be highly regulated.  A good hackathon has an MC who keeps careful time of how long teams present (usually a strict 2 minute demo) and ushers them off gracefully to make room for the next team and keep everyone on track.  Bad hackathons poorly manage this process and each team ends up going really long.  This happened at the Amex hackathon - some teams rambled for 7 or 8 minutes.  Terrible.  At Google, presentations were all over the place and ate up tons of time.  Remember, it was 7pm, with a scheduled end at 8pm.  I had plans, as I’m sure most people had to get home or catch a train or bus (as James did).  At 8pm they still had 6 teams left to present… so I left.  James said they ended at 8:45.  So out of a nearly 8 hour event, we coded for about 50% of it. That’s pretty poor.

Our project:

We already have an iOS app called Fare/Share that helps nearby riders find each other so they can split a cab.  We recently added “future ride requests” so, for example, it’s easy to post when you’re going to the airport or going to a concert or whatever.  But I had the idea that a more passive way to do this would be to authenticate your Gcal and we’d analyze your future (1 week window) events and suggest a bunch of intelligent ride requests you should post. So, judging from where you’re coming from or going to, the time differential between scheduled events, the time of day (ie a 9am probably means you’re leaving from ‘home’).

So James added the authentication into the app.  I installed Aptana and jumped right into Ruby code. I didn’t know anything but James was patient and showed me each step to take and I ran with it til I hit dead ends.  This was really helpful for me to get right into code and build out something I could envision clearly.

Some of the features we didn’t add but will:

  • Geo locate an address to a neighborhood
  • Set your ‘home’ neighborhood and default 4sq meeting venue. Same for ‘work’. Use these in suggesting the ‘from’ and ‘to’ fields for certain times of day.
  • Cron job to process new/changed cal entries
  • Push alerts “Hey, looks like you have 4 upcoming events that you could post a ride request for.”
  • Ability to change 4sq meeting location, start/end neighborhoods
  • Secret sauce: intelligently calculate start/end points based on your calendar (ie, if you have a 30 min window between a ‘lunch meeting’ and a ‘doctor appt’, then it should only make one request to link the two, rather than a request from lunch to home, and home to doctor.  This isn’t as easy as it sounds).

We won

There were two categories: best original hack and best integration to an existing product.  I had to leave at 8pm, but James took home two RC Helicopters.  Sweet.

Curiously, we were one of the very few hacks that integrated with our existing product, so it wasn’t exactly a huge competition.  But still, we kick ass.

That said, one hack that I loved (including the great presentation) was “The Wolf”, which basically was a function inside google spreadsheets that linked with Wolfram Alpha.  So you can just write into a cell “south american countries” and it’d populate a list into the cells. Then put an adjacent call like “GDP of & A1” to link it to each country, and it populates the field.  He even showed off “number of gold medals won by & A1 & in 2008” and it quickly listed that Brazil had 15 and filled in all the other fields.  This is a HUGE time saver for anyone processing data and wants to leverage the power of Wolframalpha into a document.

Unfortunately, because the website for the hackathon is so lame, there is literally no mention on the blogspot post, the rules list, or anywhere on a basic google search that tells me anything about the hacks that were done, who the teams were, or anything else.  I guess I can utilize that giant email list but I prefer not to spam.

Oh well.

Until the next one!

</rant>

Enhanced by Zemanta
  1. planetjeffro posted this