I’m two days into the engineering fellowship at Hackbright Academy, and while a lot of the computer science concepts have been overall a review, I’m still learning a ton.

These are some of my takeaways so far, in no particular order.

Pair Programming is The Best

Literally. I can’t imagine a better way to solidify concepts than by using a pair programming system. I often tend to sketch solutions to problems at a high level and then dive into the code, but when you’re driving in a pair programming scenario, you can’t just try all the things. When you’re navigating, you have to collect your thoughts and explain them so that someone else can understand your reasoning.

Pair programming really teaches you to step back, read the requirements for a project, plan your algorithm accordingly, and step through the code as you go. You might not get everything right the first time, but that’s okay. Having another full set of brain cells on the project makes debugging and refactoring much easier.

I’m really looking forward to learning from my peers like this for the rest of the fellowship!

The Linux Command Line Is Amazing

I haven’t done much with Linux in years, but between my own dabblings with Python, revisiting Hacking: The Art of Exploitation, and starting at Hackbright, I have a renwewed appreciation for the command line. It’s so much faster to just do everything from the keyboard that I’m starting to resent clicking icons a little bit.

Git Isn’t So Bad

Admittedly, I was intimidated by Git and GitHub before I started my freelance technical writing/editing work this summer. Using Git and GitHub for that helped ease me into version control, and while I’m still a little shaky at times whet it comes to getting things to GitHub, today’s lecture on Git won me over.

My pair programming partner and I managed to completely overwrite our awesome solution to the day’s lab challenge, seemingly with no way to get the original contents back. Fortunately, however, we’d committed our last working code file to our project repo. After entering a simple git reset --hard command, we were back in business.

Read the Docs

Stuck on a concept? Go to the docs. Man pages are great, the Python docs are really informative (if more than a little bit dense…I’m glad I have cheat sheets for syntax), and if those aren’t as helpful as you’d like, someone probably had your question on Stack Overflow already.

I learned to just suck it up and read the docs ages ago, mostly when building circuits (the docs are the only way to learn how a chip works!), but I’m relearning the concept in full force at the moment. And hey, now I know how try and except work. Thanks, docs!

Write Good Documentation

I knew this going in: I’ve edited plenty of programming books, and when I do code myself, I tend to comment things most of the time, especially when I’m learning a new language. But seriously, the only way you’re going to remember what your code does an hour from now when you come back to it (nevermind anyone else who needs to read it) is by commenting it up. To that end, I’m planning to make good use of docstrings.

Taking Care of Yourself is Key

On Day 1, I didn’t eat properly, I didn’t get enough sleep, and I felt…well, not great, at the end of the day. If you’re going to survive a bootcamp, you have to take care of yourself. Take time for breakfast, don’t skimp on lunch (include protein!), drink plenty of water, and if you know you’ll go stir crazy, take a walk during lunch break. And if you need a moment of alone time during lunch, take it.

You Don’t Need Your Devices

Putting my phone on “Do Not Disturb” from 10 AM to 6 PM is kind of amazing. I recommend it to anyone who wants to have a less distracting, more productive day. The emails and social media notifications will still be there at the end of the day, I promise.

Putting my laptop away for all of the daylight hours is pretty amazing, too. I thought I’d go crazy not being able to take notes on my computer, but honestly, I’m staying much more engaged than I could if I had my computer on. (Okay, friends, you can say “I told you so” now. You know who you are.)

Anyway, that’s the end of tonight’s braindump. Time to get some sleep!

Quote of the day: “And pair programming was hella chill.” –From an in-class demo