Would I do Hacker School Again?
Towards the end of our interview for the Hacker School study, Leah asked me an interesting question: Would you want to do Hacker School again?
And, my answer is: I loved it, but no, not right now. Programming is no longer the thing I struggle most with.
When I applied to Hacker School, my driving insecurity was that I wasn't a good enough programmer. I'd been in academia my whole life, and had struggled with producing code that would implement the algorithms I'd designed. As a graduate student in robotics, I put a lot of effort into fixing this (to the almost-derision of some professors, who saw programming as beside the point) because I didn't want my programming skills to be the thing holding me back as a roboticist. By the time I took time off and headed to Hacker School, implementation had stopped being so painful, but I still had never had a real job or worked with "real" programmers - only other academics, even if on admittedly-cool projects. I'd almost never had somebody look at my code and offer feedback.
So - Hacker School was a great fit for my goals at that point in life.
What did I get out of it?
- An awesome social atmosphere, very different from what I'd been used to. There was another student there who taught me a lot. She was quiet, and I had to give her space to talk because she would never take it. But, given the space, she turned out to be incredibly enthusiastic, intelligent and motivated. How many other awesome people have I missed, simply because I never gave them this space? This environment was very different from the louder and more aggressive places I'd learned to code. I've discovered that I prefer it that way.
- More confidence (reinforced by my subsequent internships) to just jump in and read the source code when something doesn't work as expected. I think that my tiny bit of work on byterun with Allison was a turning point for that.
- A better understanding of my own motivations. Somehow, simply reframing the thought from "What should I do today?" to "What do I most want to work on?" made me incredibly productive. As a graduate student, I have enough freedom to put this into practice!
- A small glimpse as to how computers actually work. I'd been insecure about my knowledge of their internals, but worked through NAND2Tetris with a friend. Now I at least have a framework for asking more detailed questions, and wound up having some great discussions about compilers that would have been absolutely over my head before doing this course.
Between Hacker School and a few awesome internships/jobs, I am more secure in my implementation skills. This has allowed me to discover new areas that I want to learn more about. My driving insecurities now include:
- Statistics. I want to feel better about quantifying errors on the data products I produce, and be able to rigorously interpret them.
- Ice-penetrating radar. I'm not directly working with it, but the data I'm working on will be compared with radar data products. I don't yet understand the nitty-gritty of the signal processing involved well enough to understand its limitations.
- How to effectively work as part of a team, with legacy code and very ambitious deadlines. What's worth dealing with vs. fixing (as a technical AND political decision)? Given high-level goals, how should we organize our efforts as a team to get there step-by-step?
My current position as both a roboticist and a scientist allows me to improve in these areas, and I couldn't be more excited.