TL;DR
My personal list of the tech talks that changed how I think about programming, teamwork, and career growth, with links to every one of them.
It’s not that often that I go to a conference or watch a talk on YouTube that truly changes the way I think about programming or software development. Even though I’m someone who does frontend development for a living, most of the talks that were most illuminating for me are talks that are either language-agnostic or unrelated to my daily work. These are the tech talks that have had the biggest impact on my career and my life.
I find good tech talks to be a combo of entertainment and broadening my toolbox of programming concepts. When I hit good talk I generally do a double-take, “wha, I have not thought that way before.” There are some good talks on this list.
Here are a few of the best talks I’ve ever seen on programming or the field of technology. If you have an amazing one you think I’m missing, feel free to tweet it to me @JoeKarlsson1.
The Myth of the Genius Programmer [Google I/O 2009]
By Brian Fitzpatrick and Ben Collins-Sussman
In the technology industry, a pervasive elitism hovers in the background of collaborative software development: everyone secretly wants to be seen as a genius. In this talk, Brian and Ben discuss how to avoid this trap and gracefully exchange personal ego for personal growth and super-charged collaboration.
Listening to this talk, especially coming from people who work at Google, made me feel much better about my work and my abilities. We programmers are also human and we will make mistakes, the best thing we can do is try not to repeat them.
Also, the chemistry between these two speakers is amazing. They tag team each other brilliantly.
The Impermanence of Software [RubyConf 2017]
By Andy Croll
This is a talk that I think about often and is one that I aspire to create someday. I love how Andy Croll is able to put our jobs into perspective and he helps me to remember that the work we do has a short shelf life, and so do we as human beings. This is a wonderful talk to watch to remember that Software Engineering isn’t the most important thing in the universe.
Build Impossible Programs [Deconstruct 2018]
_By Julia Evans _@b0rk
This talk is a squishier talk about the myths Julia believed about doing ambitious work and how a lot of those myths turn out not to be true. It’s also an inspiring talk that has helped push me to take on projects that I thought would be too large or too scary to take on.
As a related side note, you should check out Julia Evan’s wonderful zines. You can check those out here: https://wizardzines.com/
https://jvns.ca/blog/2018/09/18/build-impossible-programs/
Simple Made Easy
By Rich Hickey
https://www.infoq.com/presentations/Simple-Made-Easy
One of my biggest code crushes, Rich Hickey, emphasizes simplicity’s virtues over easiness. In this talk, he shows that while many choose easiness when programming, they may end up with greater complexity. He explains how the better way forward is to choose easiness along the simple path.
This talk has been foundational in my architecture and code cleanliness values.
wat [CodeMash 2012]
by Gary Bernhardt
A true JavaScript classic. When I taught JavaScript at a coding boot camp in Hawaii, I would show this to all of my students at the start. I think it does a great job of showing how the community rallies around JavaScript. It’s a weird and unpredictable language, but we all love it in spite of its peculiar quirks. This is a must-watch if you have ever used, want to use, or have heard of JavaScript/
https://www.destroyallsoftware.com/talks/wat
If Coco Chanel Reviewed Elm [Elm Conf 2017]
By Tereza Sokol
I remember that the first time I watched this video, I thought to myself, “What the hell is this?” But damn, this is a great tech talk. I love the structure of the talk, plus I learned a lot about the fashion industry and language design. Thanks, Tereza for putting this talk together.
You and Your Research [1995]
By Richard W. Hamming
This talk was intended to instill a “style of thinking” that will enhance your ability to function as a problem solver of complex technical issues as an engineer.
Most importantly though, Hamming provides a first-person perspective about the thought processes and reasoning that took place as Dr. Hamming, his associates, and other major thinkers, in computer science and electronics, progressed through the grand challenges of science and engineering in the twentieth century.
Getting Comfortable Being Uncomfortable [AngularConnect 2015]
By Aimee Knight
As software engineers, we all need to be pushed out of our comfort zones every once in a while in order for us to remain relevant and up to date. Aimee does a great job of reminding us to try new things in a friendly and non-judgmental way.
Aimee also conveys the feelings and perspectives of a junior engineer so eloquently. Every time I bring a new junior engineer onto my team, I watch this video to get practical tips and to gain greater empathy for my new team members.
Programming Well with Others: Social Skills for Geeks [Google I/O 2011]
By Brian Fitzpatrick and Ben Collins-Sussman
When I first started programming, I sincerely believed in the myth of the genius lone programmer. It wasn’t until I watched this talk that I understood that programming was about teamwork. It changed my opinion and career focus towards improving my social and communication skills.
Honorable Mentions:
These are a collection of videos that I like and I think you will too 😉
Inventing on Principle
By Bret Victor
Linus Torvalds on git
By Linus Torvalds
Making Impossible States Impossible
By Richard Feldman
Virtual Machines, JavaScript and Assembler [Fluent 2014]
By Scott Hanselman
Lecture Time Management
By Randy Pausch
CS75 (Summer 2012) Lecture 9 Scalability Harvard Web Development
By David Malan
The Birth & Death of JavaScript [PyCon 2014]
By Gary Bernhardt
https://www.destroyallsoftware.com/talks/the-birth-and-death-of-javascript