Julia Evans

"How was Hacker School?"

I got back from Hacker School 2 months ago, and people have been asking me “How was Hacker School?” pretty frequently.

Firstly, Hacker School was amazing. It was one of the best experiences I’ve had, and I owe so much to them. I find it a bit hard to articulate exactly why it was so great, but I’ll try.

Hacker School is welcoming. On the first day of Hacker School, Dave talked about how everyone is welcome at Hacker School. He asked us if anyone felt like they didn’t belong, and a bunch of people raised their hands. He talked about how everyone who was there belongs, and we talked about things that we were excited and scared about. It was an amazing way to start.

Hacker School is positive. When I had a bug that I didn’t understand and asked one of the facilitators to help me out, they would frequently say “Oh, interesting!“. The attitude was “Oh, is something not working? How delightful! A learning opportunity!“. People of course got frustrated by gnarly bugs, but the overall atmosphere was relentlessly positive.

At Hacker School, people say “yes, and!”. If you just learned to program and want to write a compiler, people will say “Great! Awesome!” and give you some suggestions of how to start. I don’t remember anyone ever being told that they couldn’t do something because they didn’t know enough. The answer is always “yes! And here is what you will need to know to do this thing!“.

Hacker School has amazing energy. Before I went, I worried that I wouldn’t be able to motivate myself to program today or wouldn’t have enough ideas to work. This was so wrong that it’s hilarious. Everyone has so many ideas and is working on so many interesting things that the difficult thing is saying no. I did more interesting projects in the 3 months of Hacker School than I did in the rest of my life combined.

At Hacker School, people do a lot of pairing, which is a fantastic way to learn, for a couple of reasons. It helps you focus, because it means you can’t go check Twitter instead of coding. It’s also a great way to learn things accidentally. I’ve learned so much by watching how other people code and learning new ways of thinking.

Hacker School’s resident program is fantastic. In my batch, I had great conversations with

  • Lindsey Kuper convinced me to use Rust to build an operating system
  • Yaron Minsky learned some of the basics of Rust with me
  • Philip Guo and I talked about tools for automatically discovering experts’ workflows, and I built this tool afterwards
  • Stefan Karpinski answered tons of my Julia questions, and gave a great presentation explaining how floating point numbers work
  • Mel Chua gave me great advice about preparing a workshop and gave a fantastic talk about how to structure your learning
  • Jessica McKellar helped me debug my TCP problems

The residents are all carefully chosen to be really approachable and positive and have tons of things to teach. It was amazing to have the opportunity to pair with all of them.

The Hacker School facilitators are wonderful at what they do. Alan, Allison, Mary, Tom, and Zach are all amazing. I can’t do them justice here, but I’m going to try to explain why.

  • They’re all relentlessly curious. If you have a problem, they genuinely want to understand it and how to fix it and will help you out
  • They have tons of practice at understanding why you don’t understand. They do tons of teaching, and if you don’t understand something they’re good at guessing why and working with you to help you get there.
  • They work really hard on being egoless – they’re very quick to admit if they’re wrong and care about understanding, not about being right
  • They have a ton of knowledge. If you’re having a gnarly Clojure problem or want to know about Python internals or want to learn how to do async programming in Javascript, they can help you out.
  • They’re also amazing at helping you with things they don’t know about! Allison is a Python internals fiend, but she didn’t have a ton of experience with operating systems or Rust. But if I needed help I would ask Allison to sit with me and she’d ask me super helpful leading questions and we’d fix my bugs! They are magicians.
  • They’ve all thought a lot about how to become a better programmer, and they’re very good at suggesting directions to go in if you’re stuck

The facilitators work incredibly hard at helping people become better programmers and it really shows.

Hacker School is an experiment. The founders and facilitators are constantly trying out new ideas and trying to make it better. Dave’s blog post on treating people like adults talks about one experiment that didn’t work out.

The Hacker School admissions process is one of the most important things. Hacker School works really hard on only admitting people who are curious and friendly and wonderful. The other people in my batch were amazing. I learned so much from them and I made some great friends.

Hacker School’s motto is “Never Graduate”. Always keep learning, keep being curious, keep building. There’s no such thing as a perfect place so it’s not perfect, but they work really hard on always improving, and I think they’re doing a great job.

If you want to learn more, the manual is great, the blog is great, the FAQ is great, and you can apply here.

A few blogs I really like Spying on ssh with strace