about 1 year ago
There were some great projects from the AI track in our second Facebook Online Hackathon. These winning teams wanted to pass along some hackathon tips to help you along the way:
The most useful lesson I learned from my Facebook AI hackathon journey is to work backwards from the end user. Spend time thinking about how you want your user to experience your project, and don't be afraid to think big. Put yourself in the user's shoes, who won't have knowledge of the inner workings of your product and possibly even the subject area you're working on (e.g. finance, machine learning, etc). And then use this ultimate vision as a starting point — develop "product requirements" for yourself/your team that embody this desired user experience, and then list out tasks needed to accomplish these requirements.
The second thing is to let your passion shine! It can be tempting to look at winning hackathon projects and think you should tackle those same issues or use the same approaches, but more likely than not those projects were valued for their originality. The parts of my web app, Otto, that received the strongest positive feedback from our judge were all things my cousin and I developed because we genuinely found it fun and engaging — the neural network builder, model visualizations, and conversational chatbot. When you develop features you're naturally motivated about, it'll reflect in your work!
We found that it's important to plan out a general timeline of the project before you start working, especially if you're working in a group. Get together with your teammates and get a rough idea of what features you want and how you want to implement them. Create tasks or issues on a task tracking tool and assign them to the group members so the work can be split up nicely, and it's easy to view progress.
It's exciting and fun to brainstorm new features, but don't go overboard with the number of features you want to include. Each feature is going to need bug-fixing and user-testing, so plan out your time accordingly.
Try to split up development into phases. Get a bare minimum version with only the absolutely essential, core functionalities done first. This way, you're prioritizing the must-have features and ensuring you'll have something that works to submit.
- Jonathan Dai, David Jin, Min Hwan Kim, Kevin Wang, and Jonathan Yiu, first place winners for their project, spilt coffee
Do you have a tip you’d like to share with your fellow devs? Be sure to share it in the Facebook Online Hackathons Facebook Group; we know they’ll appreciate it!