Interested in hackathons?
Learn more about TAMUHack, one of the largest hackathons in Texas hosted by Aggies for Aggies!
For this blog post, I interviewed fellow Ph.D. student Tushar Pandey, who works primarily in low-dimensional topology and hyperbolic geometry in the Department of Mathematics at Texas A&M University. His research is theoretical, so he takes part in applied adventures like hackathons, events where people engage in rapid and collaborative engineering over a relatively short period of time. So far, Pandey has competed in six and hopes to increase it to 10 by the end of this year.
Why participate?
When I first participated in Fall 2019, it was to learn how people try to solve problems when given a dataset. The idea of trying to get some information from data overnight and make it presentable seemed intriguing to me. Our team didn’t win, but we talked to one of the judges and they said we mostly lacked an organized presentation. That was my motivation, because if I knew how to work my way through data, I only needed to improve my presentation skills. From that year onward, I have participated in at least two hackathons every year. Prizes are the best motivation!
Hackathon experiences have helped me improve my programming skills, and now I use them more frequently. I have connected with so many wonderful people who have diverse backgrounds with different approaches to the same problem. It opens up possibilities of viewpoints whenever you see a new problem in your career.
Preparing yourself
Don’t worry if this is your first time. At least a quarter of the participants are new. Be enthusiastic about learning. The first team I was on, everyone was a first-time participant. I learned so much from it that I still use those tips in every hackathon. Stay hydrated and keep walking around if it’s a one-day hackathon. Meet lots of people and ask them about their experience and how they approach hackathon problems. In the end, have a goal that your team will submit something, even if it’s not complete. Small results matter, because the next time you will have it as a record and will know how to save time.
For people at different levels, there can be different preparations involved. Of course the most important thing is motivation to learn and explore, but based on your experience, you can do a tutorial or two. If you’re a beginner, try writing a simple program to square an integer or run loops; if you’re an intermediate, try storing and merging data. If you’re experienced, try to learn dynamic visualization. Most if not all of these tutorials or ideas are available online.
Finding a team and defining your role
For my first hackathon, I found random people at the venue, asked them if they had a team, told them about my background, asked if they had space and we were rolling. Mostly, I have been part of a team consisting of people I met for the first time either online or at the hackathon event. My roles have been different based on the background of other members. I started off as the person who would collect and clean the data. Now, my role includes giving ideas and constructing features to help get a bigger level perspective of the problem.
Being a good team player is important, and you can be one by completing tasks and asking to help others. Managing an in-person team is easy because everyone is accountable for something. You can distribute tasks and have regular meetings to discuss progress. For online hackathons, it’s tricky. Get on a virtual call and try to discuss which person can do which task. Instead of assigning tasks individually, try assigning one big task to two people, and another big task to two to three people.
Picking your project
For a good project, you should try to understand the problem statement. Sometimes they are very precise in terms of what they want and other times it’s more open-ended. In the first case, you need a lot of data and have to make sure you are using most of it. In the second case, try to combine different, possibly only slightly-related datasets, and have a big picture as your result. Overall, it’s definitely important to have a good visualization. Always ask which dataset and submission format you can use. If there are workshops, try attending some that could be useful in the project.
Finding upcoming hackathons
The way to find out about different hackathons is through networking connections, which you build in previous hackathons. When you watch a programming video, check the description or comments. And if you are reading this, that means you are already somewhat interested in hackathons. I’d recommend searching online for hackathons at your university, in town or online. Currently, you are just one search away from unlocking the realm of hackathons you can join. Personally, I am looking forward to the TAMIDS data challenge and QHack Quantum hackathon.
Even if you are not 100% interested in participating, register. There is a chance you will show up just to look at the people, the challenges, the prizes and the SWAG. But once you are in, it’s a beautiful experience which will keep attracting you back. I can promise you that most hackathons are a lot of fun!
Electrical Engineering
If you found this blog post interesting, you may consider reading “Planning a research paper” and “A day in the life of a graduate student.”