Earlier last week, the Microsoft Global Hackathon 2021 kicked off with a lot of folks at MSR India being excited about it! I've been hearing how previous hackathon winners in various tracks have managed to turn it into an actual, actionable project which have since being continued or even completed! This sounded both exciting and a lot of expectations to live up to! But, in the end for me I entered it with the intention of learning various (hopefully non-technical) perspectives that goes in building solutions for people (spoiler alert - it was more than I expected and learned beyond what I imagined).
To begin with, I joined the Democratization of Sports and AI led by Sameer for one very simple reason - it looked fun! "Standard research" in neural networks for computer vision doesn't often involve datasets beyond the standard benchmarks. Watching them run in real-time provides an intuitive sense to the "vision" aspects and it's possible points of failure. For example, if I were to mention that a neural networks' runtime latency is 50ms, 50 ms looks like such a small number. Now, on a 2 minute video(i.e. 120s) containing 120 * 30 FPS = 3600 frames/images - running this model on this on an edge device would be 1800 seconds or 30 minutes! Based on the context, all sorts of tricks come into the play (I'd call this engineering finesse - tricks which research doesn't encounter/seem worthy a problem but can make or break your pipeline).
Our hackathon schedule everyday went something like this: Wake up -> Morning sync -> Work/Research on the hackathon code -> Do your day to day stuff -> Nightly sync. We had 2 syncs everyday to cater for people from different timezones. While the developing team was mostly from MSR India, this year there were roles for people who are not developers but can help in various other important aspects i.e. ideating, designing, advising, etc., all officially grouped as advisors. Contrary to my previous hackathons - the team we had was a lot diverse in term of skillsets. While I'm not very used to explaining computing concepts to non-programmers, this was definitely the easy-wording perspective always helps, regardless of the kind of audience you have.
Leading the team was definitely a tough experience - I'm not fully aware of each of my teammates' expertise, their comfort level with the task at hand, their communication preference, etc. which makes it easier to understand and co-ordinate in-person. But, we finally did it and had a decent working prototype. I'm currently en-route making it a demoable Streamlit app for everyone to use. Here' a sneak peak:
Having said that, working and leading a technical team fully understanding needs from running coaches/experts and alongside our star designer Manjusha was a growing experience for me. This might have been more fun in-person, but hey, this is the best we can do now and I am eternally grateful for Akshay for encouraging me to join this team. Hopefully, I'll add a public demo link, but meanwhile, hope you had a good read.