Talks I watched and loved in 2019

(talks I discovered in 2019, not necessarily published in 2019)

13 Jan '20

James Mickens: Why Do Keynote Speakers Keep Suggesting That Improving Security Is Possible? (USENIX Security ‘18)

Scathing, funny, insightful - Why Do Keynote Speakers Keep Suggesting That Improving Security Is Possible? is a tour de force through infosec and other issues. Similar to Jonathan Blow’s talk, it’s food for thought in a world full of hype, machine learning, bad technology (duplicate?), and humans.

Jonathan Blow: Preventing the Collapse of Civilization

Jonathan Blow’s talk from DevGAMM (official version, more popular upload here) may be hyperbolic and a bit heavy on pathos. But it’s entertaining, and especially relevant to software engineering. Although I’ve always leant towards simplicity in software through my self-taught roots - more so 10 years into my career - I could never articulate this as well as he did. It also resonates with me a lot in 2019, a time where technology doesn’t just work.

And despite being part of the problem, the talk gives me hope we can change this. The video quoting Elon Musk is very telling:

… the trend is like down to nothing. This is nuts. People are mistaken when they think technology just automatically improves - it does not automatically improve! It only improves if a lot of people work very hard to make it better. And actually, it will I think by itself degrade.

Elon Musk

Jonathan’s history lesson drives this home extremely effectively. His passion and frustration shines through. If you take one thing away from this talk:

This is why technology degrades. It takes a lot of energy to communicate from generation to generation, there are losses.

Jonathan Blow

In this context, generation it meant in a broad sense, e.g. generations on a team (original team vs new hires). You can apply this to many professional situations. This is the strongest argument for open source I’ve ever heard, too.

(Skip the last 5 minutes of QA though - it’s poor.)

He also references another talk which makes a thought-provoking follow up, Casey Muratori’s The Thirty-Million Line Problem - it’s long though, technical, and very rant-y.

Anything by Nickolas Means at Lead Dev

Nickolas Means has done many talks for Lead Dev. Picking one was hard, they are all entertaining and empathetic. The stories are worth telling and beautifully told, enrapturing all the way. And the punch-line/lesson come out of left field and hit you hard (to use an Americanism). It might also make you a better collaborator and leader.

I’m not even going to spoil what these talks are about. Just sit back and enjoy!

Rick Houlihan: Advanced Design Patterns for DynamoDB

The title of Rick Houlihan’s (late) 2018 talk is AWS re:Invent 2018: Amazon DynamoDB Deep Dive: Advanced Design Patterns for DynamoDB (DAT401), which is atrociously long and boring. Don’t let this put you off. It is applicable to a lot NoSQL databases, you can largely ignore the DynamoDB specifics. It really clarified how and when to use NoSQL technology for me. Everybody I’ve shown this talk to has had a similar experience. Additionally, as part of my work at AWS, we were able to leverage the learning to create a service to handle 15,000+ transactions per second without breaking a sweat.

The beauty of this talk beings in the first 10 minutes, where he walks through database technologies, and how and why NoSQL makes sense. It just keeps going, hitting the right level of density/complexity if you’re familiar with relational/SQL databases, but unfamiliar with NoSQL.

The design patterns are highly applicable to many scenarios (around 23 minutes in). I’ve come back to this many times. It does get a bit mind-boggling though, especially when he starts suggesting writing several separate items to the same table. But it makes consistent backup and restore oh so easy, and unintuitively, scaling. If you come away with anything from this talk, don’t use multiple tables unless the data and access patterns are truly separate.

There’s also a follow-up talk from AWS re:Invent 2019 - skip to at least 24 minutes in if you’ve watched the first one. It isn’t required, but goes into document vs wide-column DB differences. I still think the 2018 talk is a better starting point though.

Steve Jobs: Apple WWDC ‘97 Closing Keynote

Steve Jobs’ Apple WWDC ‘97 Closing Keynote is obviously a very old video, so please forgive the quality. But is stage presence and framing are insanely instructive.

The ideas he expresses around computing are also prescient, and you can see how they lead to the development of the iPhone. This is incredibly rare to see. Skip to around 14 minutes for this, although it’s throughout the talk.

RetroAhoy: The Secret of Monkey Island

This isn’t really a talk, more of a documentary. And again, hard to pick a favourite out of all. The soothing nature of Stuart Brown’s voice and visuals is pure bliss, described by one commenter as “The David Attenborough of game documentaries is back!”. It might be exactly what you need after a long day; not everything needs to be taxing. RetroAhoy: The Secret of Monkey Island is an easy recommendation.

Tyler McMullen: Load Balancing is Impossible

Load Balancing is Impossible demystified a lot of the statistics around load balancing and routing with real data and great visualisation.

Older