Concepts which refuse to be nailed down
Differentiating concrete concepts from fuzzy categories is an essential step to mastering a domain. This took me years in Computer Science, because practitioners often deny categories are ambiguous. Thus, for all the noobs out there, here is a list of unanswerable questions. I’ve wasted hours of my life searching for definite answers to each of them. Whether to taboo these words or embrace their subjectivity is a personal choice. But at the very least, you should know that if someone claims to have an unassailable answer to any of these questions, they’re a gosh-darned liar.
When you're computation-bound, what are your options?
[epistemic status: hastily written, high-level overview lacking practical grounding] Bottlenecks Python isn’t known for it’s speed. It has a purposefully dumb interpreter which gets blown out of the water (in terms of throughput, memory consumption, and start-up speed) by almost all compiled languages. This is usually fine, because you’re just trying to ship a gosh-darned website or quickly whip together a data-cleaning pipeline. Typically, other bottlenecks, such as network speed, memory access times, algorithmic approach, or the ability to scale across multiple machines take precedence.
Books 1 & 2
While I read “Strong Female Protagonist” books 1 and 2, I was relentlessly overcome with thoughts of my friend Zach. Zach is the person who’s been driving a lot of my reading habits recently. I was trying to engage with (and impress?) them by reading a bunch of the political philosopher Hannah Arendt (On Violence, The Last Interview, Three Escapes). The author of Strong Female Protagonist, Brendan Lee O’Malley, has an undergraduate degree in philosophy.
I keep seeing comic strips classifying programming languages. They’re unavoidably offensive, because it’s impossible to say anything about a programming language without offending the language’s users. Which makes sense, because you can’t help but get emotionally attached to the thing you’ve been using for years to weave your dreams. It’s also super fun to be hyper-critical about programming languages to the point of inaccuracy. All programmers have been wronged by their language of choice or found themselves in the depths of debugging hell with a foreign language.
The Power and Fragility of Networked Protest
At it’s core, Twitter and Tear Gas by Dr. Zeynep Tufekci is a delightful deep analysis of the structure of modern protest movements and the technologies that support them. It brought up a lot of things I knew were bad (grass roots organisation problems, “fake news”) and made them impossible to ignore by shoving them in my face. I. The meat of Twitter and Tear Gas comes from contrasting the modern protest movements of Occupy and Tahrir Square to more “classic” movements.