How we got $7250 bounties on ETHDenver. List of tips for a hackathon.

Learn the rules in details

For someone who is not familiar with rules, a hackathon is a competition where all people divided by teams and each team have to build something cool. Exact rules can be found on the website https://www.ethdenver.com/judging/, but in the nutshell, everyone starts to program on Friday and on the Sunday morning each team has to submit the final product to the special system. It’s usually devpost.com but this time it was a website from one of the sponsors kauri.io. The type of projects varied, from different mobile apps connected to the blockchain (so call dapps) to the something which have very remote relation to the blockchain at all, for example, 3d printing service. After the deadline, when all projects are submitted, all teams are waiting until a special group of judges approach them and evaluate the project based on different criteria. How original it is, how impactful, how well it made etc. At the end of the judging time, all scores are calculated and the best teams are invited to the stage to give a pitch. Apart from that, there are many sponsors who have their own list bounties for the teams who will use sponsor’s products in their projects. Like, use particular API or specific cryptocurrency.

Find a team with complementary skills

My team was Kirill, Artem, Nick from BUTTON Wallet and me. I met these guys on the hackathon at San Francisco last September and it was our first hackathon together. The fact that I never programmed with them before was a strong disadvantage but fortunately, guys knew each other very well and work in the same company. Kirill has a backend, telegram API and bot development experience, Nick — smart contacts, frontend, marketing, Artem — senior full stack, AWS, Redis, me — full stack, ReactJS (I pointed out only relevant for that hackathon skills).

Build something together before the hackathon

It’s very important to have the team with complementary skills that you actually able to build something useful together in a very short time. I’ve learned it hard way when the last year in EthSanFrancisco I joined 3 very smart people who were also passionate about zkSNARKs but having 4 mathematicians on the team isn’t the best strategy to build something fast. After that fail, I took the Udemy course for ReactJs and didn’t regret it. It’s a common issue for people from FAANG who consider themselves smart but can’t build anything useful because on the work they doing a complex but very little part of the actual product.

Make research before the hackathon

The first thing we did when we arrived was to compile the full list of bounties. Because each company had a separate page it was very complicated to properly evaluate the big picture. So I aggregated the size of bounties, type company, and requirements in the google spreadsheet.

Choose the optimal bounties to maximize chances

What can we realistically do in just 36 hours? We didn’t know the answer, so we decided to do something that we can implement part by part. So even if we weren’t able to complete all plan — already finished parts should be sufficient to present the project.

Choose project idea which you can implement step by step

We decide to do a telegram wallet. There were several reasons. The first reason was that guys already have extensive experience of building bots of telegram so was a good start. Bots have simple inference. Because very few blockchain projects use it despite telegram has about 200M users — makes it a very good platform for crypto. Another reason it easy extendable for adding new features.

Building things more, talk less

At 8 pm we started coding. Kirill was programming backend on nodejs, connect it to telegram bot by API, Nick was designing and programming frontend, Artem was reading specs for the Celer network, and I was reading about the Rhombus oracle system.

Start coding at the same time

In a couple of hours guys suddenly (they flew in from another continent)went to sleep due to the jetlag so I was trying to crank the Rhombus system alone. I tired until 3 am but I didn’t make anything workable and also went to sleep.

Rent a place together with other participants

I stayed at Airbnb which we rented with another friend and his friends. It’s very good lifehack to rent a place together with other participants, instead of a hostel, because you can meet new friends, chat about an interesting topic and in theory, it would be the comparable price per person as a hostel. My new friend ended up doing very cool project zDai.

If you can’t sleep healthy — at least eat healthily.

Another issue was food. Because every on the hackathon ate the fast food we suddenly learned that with stress and little sleep it can lead to the stomach ache. Which isn’t particularly helpful for fast programming. The orgs surprised us as well by having two toilets for the 5 story building with 1500 people. So taking pills for abdominal pain on the hackathon is a very good idea.

Evaluate the midterm progress and pivot, if necessary

What did we have at 3 pm on Saturday? We had a working bot, it could sign transactions, call shapeshift for exchange and … that’s basically it. Backend often crashed, for Celer integration we only made a demo project that helps us to try all possible features, but haven’t even a line of code that allows using of Celer in our main project, I totally fucked up my tasks for Rhombus.

Meet organizers and sponsors

With new tasks distributed the progress started to move much faster, however, the issue with Celer still wasn’t resolve. So we went to the actual Celer team to ask what might be the problem. It turned out that they understand that production ready integration is not possible at the moment, but the concept is right, and our idea is still viable with upcoming from Celer, so it was totally okay to use it in a much-simplified way. Same with Rhombus. It was a big concern for me that I use their Oracle system directly from JavaScript without having any sort of Dapp. My thought was that because I don’t use dapp, I don’t pay fees, therefore, they can’t earn money from this usage. After the conversation, it turned out that my concerns were false. They were totally okay that more people use their oracle even if they don’t earn from it directly. As I understand they have indirect benefits out of it for the adoption, but it’s a totally different story. The important part here that it’s totally okay to speak with orgs and sponsors and clarify their requirements. Or even simply ask what they are looking for? At the end of the day this event not only about coding but networking as well and this is a great opportunity to meet more people from the industry.

Master your tools to build things fast

While I was building my front end part of online QR scanner which can parse specific code everyone used for paying for food and connected to the backend in a very non-trivial way I thinking: wow, I build the big and important chunk of the project without really feeling exhausted as I did the night before. The reason for it that I was really interested in what I was building and I could actually see the progress. Not because the task was easier but because I had prior experience with ReactJs so it was much more fun to actually build something rather just to read docs and try to understand why toolchain doesn’t work. So have prior experience with programming tools, languages, frameworks, is very important and help not only deliver the project faster but actually to have lots of fun.

Don’t make presentation in the last minute

At the about 10 pm Nick started to build pitch deck. After some time close to midnight he got an excellent idea to make the video of the prototype, how a user can pay for the track food on the street using our wallet. Because judges surely wouldn’t have enough time to go outside and stay the line for the food and wait again for the demonstration it was a very good idea to record it. The problem that it was already midnight and all food tracks had left. Fortunately, it was still 8 hours before the submission time so we could do it 2 hours before the deadline in the morning. It’s always a good idea to finish presentation in advance to have a room for improvement. If we made the presentation closed to the submission deadline we wouldn’t have enough time for the video.

Pay for food in BUFF coins on xDai POA

Be sure that all judges had found you

After every judge came and we calc the number of the nomination we potentially got, something didn’t work out. We had 5 nominations but only 4 selfies with companies. It turns out we didn’t find MakerDao team so it was our last minute to finally find them. It’s always good practice to review who from judges saw your project and find the judge who didn’t. They might simply forget about you.

  • Celer — $1500
  • POA — $500
  • MakerDAO — $1250
  • ShapeShift — $3000
  • Rhombus — $1000

Have fun

But the most important of the hackathon are people you meet there. It’s a unique opportunity to meet highly motivated folks who share your interest to build cool things and change the world. Who knows how your new connections will work out? You might end up to find good friends, investors or partner to build the next unicorn together.

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Alex Lebed

Alex Lebed

Dev @ https://twitter.com/stableunitdao. ex 1inch, Amazon, Facebook. Math degree. Developed $1b+ smart-contracts. Prizewinner eth(Boston/NY/Denver/Lisbon)