The first hackathon I ever participated in was actually just in 2013 when I built an app called Curb Call at the Retsly / Realogy Hackathon in SF. I got second place at that one which won me an oversized novelty check (plus a smaller sized real one) but it also was a nice excuse to sit down for about 30 straight hours and build an app that I had an idea for. I ended up actually launching that app, raised some VC for it, signed up some brokerages and sold it all a couple of years later. Needless to say, it was a positive experience and I rarely miss a real estate related hackathon now.
When Retsly co-founder, Josh Lopour told me about a new one that he was helping to organize, I immediately knew that I would be in. RESO, the real estate data standards organization, was partnering with technology providers who offer RESO standard compliant MLS data API’s to offer a total purse of $25k and a full 30 days to build something (more info here). Presentations would need to be made in-person at the RESO conference in San Diego on Oct 17th and there were four categories that could be won: best use of listings data, best use of public records data, crowd favorite and overall winner. The prizes were $5k each except for the overall winner category which was a $10k prize.
As luck would have it, I happen to live in San Diego, so that part would work out nicely. As luck would NOT have it, my wife and I were expecting our first baby and her due date was October 16th, the day before the presentation. I knew that there was a very good possibility that I was not going to be able to present my build but decided that it was worth it to build something anyway, just in case.
Data was available from Bridge Interactive, RPR and Spark by FBS and we were required to use at least one of the listings feeds from one of these providers. The $25 entry fees were donated to Coder Dojo in Los Angeles where they teach young people to code. Win-win for everyone!
The Build(s)
When deciding on a hackathon project, I like to try to do something with technology I’ve never used before but been meaning to try. This time, I wanted to do something with blockchain. I had recently built a mining rig for mining cryptocurrencies (Monero or Ethereum, depending on their current values and difficulty levels) so I have been pretty immersed in the technology surrounding them, namely blockchain. It seemed so buzz-wordy though but it actually is pretty cool. I’m not interested in doing anything with transactions, which is really blockchain’s wheelhouse. I settled on trying to build a different take on an MLS itself but making it run on a private version of the Ethereum blockchain, utilizing the built-in storage decentralized module called Swarm. It was massively technical, geeky and super hard. I spent about two weeks building it which involved learning a lot about the Go language, which is quite popular in that community. I got pretty far and then abruptly abandoned the entire thing…
After re-visiting the scoring criteria, I knew that it was a bit of a stretch to use data from an MLS API (which was a requirement) while building an MLS… I didn’t think there would be a way to make it look flashy or cool either.
Luckily I had another idea. Unfortunately I only had about 10 days left until the presentation date and I also knew that our baby could be coming at any moment now. So I might miss some of those 10 days… My new idea would have to be built in ruby on rails and iOS, which are the things I do best and most frequently. One reason I like hackathons is because I think I can get a lot of work done in a short amount of time. I was off and running, again…
I decided to build a tool for real estate agents to do a remote showing for buyers living overseas. The idea is agents would use an iphone app to stream video during a home tour to buyers who can watch the video from their browser while they are in their home country. In addition to the p2p video stream, I wanted to do something about the language barrier so I planned some realtime language translation (so the agent can effectively talk to the buyer during the remote tour) and of course, integration of MLS data via one of the sponsor api’s to show details about the listing that they’re remotely touring. I called it “Inflection”.
I started working on it at about 4:00 pm and worked deep into the night on that first day. I knew I needed to get as far as I could each day before I inevitably got the call from my wife that she was going into labor. Days went by though and I was able to check all the boxes on my functionality list. I used WebRTC protocol for the video streaming and a complicated menagerie of api’s to make the language translation work. I built the web and API parts in rails 5 (I actually hadn’t used v5 of rails yet!) and built the iOS app in swift, which was a nice departure from rubymotion, which I always lazily default to if I’m in a rush. One cool thing about Rails 5 is that it has a built-in socket / pub-sub sort of thing now called Action Cable. This worked well for connecting the iOS app to the api without having to poll for changes.
I had a very, very un-styled, working platform and about 3 days left. Being a 30-day hackathon, I knew a polished front end would be important. Sadly, front end work tends to take me way longer than back end work. Also, as I began my quest to make it look good for the judges, I found myself adding more features. And still, I had one even larger potential issue… since the baby wasn’t here yet, it was looking more and more likely that he could arrive on the day of the presentations.
Presentation Day
Though early contractions had begun, luck was smiling upon us and my wife was still not in labor, even though our due date was the day before. Our baby was officially late BUT I had a shot to present!
I made my way to the very cool Pendry hotel in downtown San Diego, checked into the event, got my free t-shirt and drew the fourth presentation slot (of 12). When I test ran my demo, of course it didn’t work. There was some crazy issue with the SSL certificate that I installed the day before and that was stopping the video from streaming. I quickly changed a few things in my code, pushed it to the server and hoped for the best.
While the first three demos were going on, I kept checking my phone, hoping not to get “the” call from my wife. “Stay in there for another hour, future son!” As luck would have it, one of the first three presenters showed off a blockchain app. It wasn’t visually stunning but of course, I liked it. Hopefully I had made the right choice though..
When it was my turn to go, I walked towards the stage and spent that time wishing I had a bit more time to have practiced my actual pitch. I tend to present best with a minimal structure though and hoped that that was still the case. We had seven minutes to present at this event – way longer than usual.
I started with a caveat that I might bolt in the middle of my presentation if I get the call from my wife and the crowd’s chuckle chilled me out a little bit. Then I began my demo and noticed that my computer had disconnected itself from the wifi. Good start…
In the end, my demo went okay but I think my very last second SSL fix broke a tiny something in my real-time translation layer and people didn’t get to hear the voices speaking what I was saying, post-translation. That was a serious bummer.
But after I sat back down, I heard some mumblings from people in the audience about it being a good idea, which was validating. And at the end of the day, I was super lucky to have been able to actually get to build this thing in 10 uninterrupted (by a baby) days and make it to the prezo day.
The winners list did not include me or my project. The Blockchian app (doh!) won the “best use of listings data” category, a beautiful mobile app called My Butterfly (which made CMA’s) won the “crowd choice” category, and a cool web app that allowed investors for large commercial buildings to find opportunities won the overall prize and the “best use of public data” category.
Now What?
As I said, I tend to use hackathons to learn about a new technology and also to build an idea I’ve had on the shelf. This was one I thought about with my parents in mind. They’re agents in Miami and deal with overseas investor clients all the time. They could really use something like this and so I plan to finish it up in the coming weeks and put it out there for agents and brokerages to sign up. So though I didn’t win any novelty sized checks, hopefully I can still provide some value for agents and earn some service fees in exchange.
Oh, and that baby finally arrived on Oct 22nd. A beautiful little boy named Bowie
No comments:
Post a Comment