Josh Thompson     About     Archive

A Retrospective on Seven Months at Turing

Collection of thoughts on Turing

It’s the last week of Turing. I went through the backend software engineering program, and it’s been a journey.

In no particular order, I’m throwing down thoughts in three general categories:

  • What went well
  • What didn’t go well
  • What I might have done differently, were I to do it again

I believe there is a narrow window for me to capture this information well. As soon as I get a job, I’ll probably forget everything that didn’t go well, and if I were to never get a job, I’d forget anything that went well.

Went well


I’ve learned a ton, and my pace of learning has steadily climbed through Turing, as I build a more and more robust mental for existing information. It’s easier to add new information when the framework for the old stuff is strong.

I use Anki (a flashcard app) every day, so even on days when I don’t write any code, I’m still getting reps in of practice, and strengthening mental pathways. I’ve used Anki every day since Turing started, and have almost 1000 cards in my programming deck.

review stats

>> Read more

On Learning

As a student at Turing, I’ve recently been thinking about learning how to learn, specifically in the context of software development.

I am a bit hyperactive when it comes to trying to learn new things. Over the years, I’ve done plenty of ineffective learning, and at least a little bit of effective learning. The good news is that even as I’ve not learned most of the topics I’ve originally set out to learn, I have learned a bit about learning. (Does this make it “metalearning”?)

I’m defining “learning” or “learning a topic” as to be able to rearrange or reorganize or reuse the idea or pieces of the idea in new ways to resolve unstructured problems I face.

>> Read more

Workflow for developers (AKA My current tools)

I’m a huge fan of “a good workflow”. Makes you think better.

This is still under construction, but I’m fleshing out all the tools, tidbits, and other things that serve me well every day as I build my skills as a developer. It will always be a work in progress, but will hopefully serve others.

Last updated 06/02/17. If you’re curious, version history here

>> Read more

Asking experts, and gaining more than just answers

Recently, I co-led a session at Turing with Regis Boudinot, a Turing grad who works at GitLab.

We discussed two things:

  • asking good questions
  • having a good workflow

After the session, I promised an overview of what we discussed. Here’s that overview for “Asking good questions”. Get info on “having a good workflow” here

Why do questions matter?

Without getting too philosophical, the process of formulating questions and finding answers to them is a big part of what makes us human.

As developers, we’re asked to solve difficult problems. If we don’t happen to have all the knowledge we need for this problem readily accessible in our head, we turn to documentation and googling.

On many problems, this is sufficient. On the hard ones, this will not be sufficient.

We’ll need to ask for help.

Since the hardest problems are also the ones we’re most likely to need help with, if we can optimize how we get help, it’ll return outsized results at advancing our skills and helping us be useful contributors to a development team.

As a counterpoint, imagine you had terrible question-asking skills. In what aspects of your day-to-day would this have the largest impact?

  1. The things you already know how to do
  2. The things you don’t already know how to do
>> Read more