I am writing this blog to share my experience on a SQL hackathon I was part of. A total of 26 teams with over a hundred participated in it. I led the team that was awarded the top rank in the hackathon. I enjoyed being part of this Hackathon and am excited to share the journey with you all. This was my first hackathon, and the experience is fresh in my neural network. I hope the journey I share, would help the wider audience embarking on their hackathon journey.
Hackathons are a great way to inject creativity and fun into a team’s work, explore unusual ideas, and identify promising avenues for further work or investigation. Essentially, Hackathons are a great way to empower people to challenge themselves to think outside the box and achieve great heights in a limited amount of time.— an ideation tool with team bonding and fun built in.
Let me introduce you to our hackathon. It was organized by a team of 6, who provisioned a hospital dataset for us to analyze. All the participants were divided into 26 teams. Each team had four developers and one product owner. We were given 80+ challenges to solve within the span of seven days. In the end, each team would need to present the journey and submit the results of the challenges. Any additional analysis and advanced function usage would earn the team extra credits. There was a score for query optimization techniques as well.
We were the “Ninja Hustlers.” As this was part of the NumPy Ninja initiative, we thought the name made sense.
The team followed the Agile methodology. We used the Trello board to assign tasks and track our progress. There was a daily scrum call with our more experienced product owner to make sure we get timely course corrections if needed, in addition to tracking updates on assigned tasks.
SQL can be less boring, of course, when you are doing challenging problems with your teammates. Approaching it the right way, everyone with basic SQL knowledge could have some fun doing SQL coding challenges and upgrade their SQL skills while doing so. Being able to draw out and list exactly what you need to get done gives you clear direction. Here is our Team workflow chart.
I feel blessed and glad to be a part of this wonderful team. We explored all the tasks together with our teammates and time-boxed solutioning of all the queries to 3 days. This design enabled us to be able to work on extra queries that can get us more exposure to the advanced analysis, and of course, the extra credits will help in the hackathon. In the end, we had a day dedicated to the presentation.
Tips to ace the data hackathons
1. Look at your data closely and understand your data
2. Draw out the ER Diagram
3. Understand the question clearly, it is halfway to solving it
4. Make sure you have time for extra credits
5. Use effective query optimization
6. Discuss! Collaborate!
EXPLAIN ANALYZE command shows the generated query plan but does not run the query. In order to see the results of actually executing the query, you can use this command. Here I used EXPLAIN ANALYZE command with subquery and CTE(common table expression) to check the optimization query runtime. Queries are written in less than optimal ways, causing slow response times. Because of this, it is important to be able to analyze how queries execute and find the most optimized ways to run them.
And here is the list of functions that we have used while
solving all the questions
Lastly, the blog will never be complete without mentioning the whole team behind “NumPy Ninja.” I am lucky enough to be a part of this beautiful family that has taught me more than books have and given me so many opportunities. Special thanks to my teammates @ Shoba Kaimal, @Deepa Rai, and @priyanka chitnis ; and the organizing team @Krishna Vidja, @Durgalakshmi Penugonda, @V Ramasita for their time and dedication.