(Hacker School: Week 2, Day 3)1

If Tuesday was frustrating in the lack of traditional or measurable productivity, yesterday was gratifying in actually completing defined steps of a project. But the question is, did I actually learn anything?

After my post yesterday, a few gracious Hacker Schoolers (HSers, for brevity’s sake) wholeheartedly recommended the book Make It Stick as a way to think about how I learn, and potentially more effective ways of learning than the traditionally understood techniques. I was convinced2 and got the eBook3 and started reading. In the first few pages4, the authors summarize their primary arguments - I’ll highlight two (especially relevant) quotes here:

“Rereading and massed practice give rise to feelings of fluency that are taken to be signs of mastery, but for true mastery or durability these strategies are largely a waste of time.”

“Learning is deeper and more durable when it’s effortful. Learning that’s easy is like writing in sand, here today and gone tomorrow.”

The first quote effectively captures my first few days here at HS. If you’ve read my first few posts5, you might be thinking to yourself, “hm, that sure sounds like the authors of this book are describing Jim’s first few days at HS as a quote unquote waste of time.” And it had the potential to be a waste of time. But last week, I also pair programmed on a small Python project, and in doing that had a - wait for it - effortful experience putting the concepts I’d read about and practiced into action in an unfamiliar situation (another technique the authors advocate). So I learned!

This week, I spent much of the first few days reading the documentation of Flask - a Python web framework that allows you to build small apps - and working through some Flask tutorials. And I felt like I didn’t really learn anything. I’d read a lot - and practiced a lot - but it felt like nothing truly stuck. But yesterday, I put what I’d learned into action in an unfamiliar situation - a web app that tracks my to-do list on a daily basis. It’s a simple concept, but it seriously solidified my learning - not only did I have to understand the specifics of Flask, but also had to generalize that learning to the concepts that underlie any web framework, and any web application.

And I actually finished some defined steps in building it! So, yesterday was doubly successful in that I had something to show for it - a small app that I can use (and am actually using) - and in building that app, I deepened my learning in a way that’s difficult to impossible when learning by rote, or working through tutorials. Hope to continue that progress today.6


1 I wrote an entire blog post, did not save a draft, and lost it in the Great Google Chrome Crash of 2015 (almost as bad as the Twig of ‘93). Note to future self - save your work. Note to Tumblr - automatic saving, or at least a way to save a draft without closing out of the post, would be nice! (I assume there’s a reason it’s not there, but man would it have helped here.)

2 I’m easily swayed.

3 In the process, I lost my library eBook of Infinite Jest - a book I borrowed 3+ months ago and now own the hardcopy of - because I turned on the WiFi. Yes, if you want, you can scam the library into never returning eBooks by just turning the WiFi off. Yes, if you do this, you should probably feel a little bad. But I bought it! It’s just so heavy to bring on the subway!a

4 I’m a slow reader.

5 Or are me in the future, looking back at how naive I was in the past.

6 Though I’ve already spent like two hours writing this blog post twice.

a Consider this my plug for Infinite Jest. I’ll try to never talk about it again - even mentioning it can sound super pretentious.