HackerTubewatch
Surprise me
Frame from Tim Ewald - Clojure: Programming with Hand Tools Plays via YouTube's privacy-enhanced embed

Tim Ewald - Clojure: Programming with Hand Tools

38 videos recommended on HN
YouTube
9 HN users recommended this talk10 months2014–2024 score 11
Years with an HN recommendation, 2007–2026

HN repeatedly names it among the best programming talks, loved for its craftsmanship message that complex tooling can hide simpler solutions.

Tim Ewald's Clojure/conj talk uses furniture making with hand tools versus machine tools as an allegory for software. It explores how automation changes what we make and how we think about our work, and why Clojure's small set of simple tools matters.

“I loved this talk on how as your tooling becomes more complex and automated, you start to lose sight of simpler solutions to problems.” (HN, 2018)

2 strong recommendations · 9 recommendations · 3 citations · 1 jokes · Talks

15 Hacker News comments

From the HN archive; up to 20 kept per video, favoring different commenters. Recommendations first.

@spacemanmatt Dec 2016 Strongly recommends
on HN thread Talks that changed the way I think about programming
I gotta throw in one of my favorites, because I have not seen another that really speaks so directly to the value of craftsmanship in development. I also deeply enjoyed the allegory with woodworking tools. [this video]
Speaks to the value of craftsmanship via a woodworking allegory
@ludwa6 Jun 2020 Strongly recommends
on HN thread Woodworking for Engineers
Must-see presentation (~1hour) for anyone interested in this topic is "Programming With Hand Tools" by Tim Ewald: [this video]
One-hour talk linking hand tools and programming
@mark_h Jan 2014 Recommends
on HN thread Best development book I've read, has no code in it
There was a talk at Clojure/conj by Tim Ewald on just that: [this video] "Programming with hand tools" Lots of conference reviews nominated it in their favourite talks too.
Conference talk on programming with simple tools, widely praised
@fmjrey Nov 2016 Recommends
on HN thread Beginning Woodworking
Can't help but mention this great video where an enthusiast woodworking engineer makes a parallel between tools in the real world and tools in computing: [this video]
Parallels between woodworking tools and software tools
@aidos Jan 2017 Recommends
on HN thread Ask HN: If you were to switch career, what would you do?
I also think it seems pretty appealing. There have been some interesting things on HN over the years about it. I loved this talk about how the tools you use determine how you look at problems (Tim Ewald - Clojure: Programming with Hand Tools) [this video] And if you haven't seen him before, you're about to fall in love with Matthias Wandel: [link] [link]
How the tools you use shape how you see problems
@aidos Oct 2018 Recommends
on HN thread Ask HN: What are some of the best technical talks you've heard?
I'm not a Closure coder but I loved this talk on how as your tooling becomes more complex and automated, you start to lose sight of simpler solutions to problems. It's all about woodworking! Tim Ewald - Clojure: Programming with Hand Tools [this video]
Complex tooling hides simpler solutions, told through woodworking
@datahead Nov 2020 Recommends
on HN thread Cheap Router Table and Lift
Interesting presentation that explores your question. +1 intersection from this commenter. Tim Ewald - Clojure: Programming with Hand Tools [this video]
Explores the intersection of woodworking and software
@dgb23 Nov 2021 Recommends
on HN thread Automation != Leverage
Read more
Good article! Two things popped into my head when reading it. First the talk "Programming with Hand Tools" by Tim Edwald[0]. It's a very cool, entertaining talk with emphasis on the craftsmanship side of things and provokes thinking about which parts to automate (or maybe abstract away) and which parts to craft by hand when we're building stuff. Aside: also reminds me of Casey Muratori's Handmade Hero project [1]. He is a strong advocate for structuring things bottom up and building them ourselves. [0] [this video] [1] [link] --- Secondly when reading this: > Regardless, the basic idea is that companies are often faced with the decision of doing N units of shitty work or far fewer than N units of great work. This is obviously oversimplified, but there is an important point that wants to emerge from this line of thought. As someone who grew up on open source, standardized technologies and the Web, I have been empowered to build a livelihood on Web development, mostly "self-taught" (or rather self-directed). All of this Web stuff is very accessible and gives you actual _leverage_. You can build something useful very quickly and the community around it is happy to share so much knowledge and work. I'm _very_ thankful for that. But I think as the wider web development community we're losing sight of what that essence is. We started to think of the Web as merely a vehicle for pure scale as in "how to reach the most people and annoy them with notifications" and "how to produce cheap sof
Entertaining talk on which parts to automate versus craft by hand
@adityaathalye Feb 2024 Recommends
on HN thread Why software engineers like woodworking (2021)
Read more
Time Ewald makes a case for "Programming with Hand Tools" in this talk he gave at Clojure/conj 2013. He too makes a connection with wood working. [this video] Summary: For most of human history, furniture was built by hand using a small set of simple tools. This approach connects you in a profoundly direct way to the work, your effort to the result. This changed with the rise of machine tools, which made production more efficient but also altered what's made and how we think about making it in in a profound way. This talk explores the effects of automation on our work, which is as relevant to software as it is to furniture, especially now that once again, with Clojure, we are building things using a small set of simple tools.
Effects of automation on work, via furniture making and Clojure

Citations, criticism and jokes

@aidos Jan 2014 Cites it
on HN thread JavaScript: The Right Way
Read more
It's funny, even as someone who knows js really well, having worked with it for a decade (actually, longer!), the explosion in the ecosystem took me by surprise. I left my web agency role over a year ago to work on my start up with a friend so I've been in relative developmental isolation (lots of python and js, not so much keeping up with the latest trends). I came back to help out on a project recently and had to spend a day researching all the new tools. Particularly around package management, bower, grunt, yeoman, node, npm etc. A year ago a js lib was generally delivered as a js or min.js file. Now there's the whole system to sit around it; every project on github now seems to include the config for each of the different package managers. Even a vagrant file so you can get it all up and running on a brand new vm. Something as simple as adding bootstrap to a project. It's not totally obvious when you first look at it. Where does the code go? How do you compile it in such a way that you don't touch the vendor src itself but you can customise it etc. I have a method that works for me, but I had to play around a little to figure out how to fit it to my needs. Once I got through that stage I was really happy with where things were at. JS libs are nice and easy to install and version control now, dependency management with bower has worked really well for me so far. Grunt makes the automation side of development nice, contained and easily shared. All in all it's a really good
@briantakita Apr 2014 Cites it
on HN thread The Birth and Death of JavaScript [video]
Read more
The "wat" is a good first step in identifying problems. However, I see is people getting stuck on "wat" and not moving forward. People would rather win an argument than advance knowledge & the practice. Lot's of ego, programmers have. In the mean time, one can learn to appreciate & use javascript strengths. It can be quite fun, liberating, & useful. Anecdotally, I have not run into these crazy issues, and I program in javascript everyday. I also have a large app and the framework I built is custom. I liken this to using C++, Unix, & bash as a base. Yes, you could say these tools suck and spend time creating, marketing, & community-building for a new tool. Or you can iterate & improve upon these existing tools. There's no wrong answer. What do you want to accomplish? > Sushi knives don't decide to cut you because the rice came from a different origin. That analogy seems like a stretch. Care to explain? Javascript works with different locales. There are many international websites that use javascript. Also, javascript does not "decide" to create a bug in your program. You create that bug by misusing the tool. You will get further if you take some responsibility and improve your practice. > And I'd guess that most craftsmen, outside of a ritual and tradition would love for their tools to have less disadvantages. I agree with that. Usually the improvements are iterative. One could use a laser cutter (which does not need sharpening) to cut sushi, but that would also burn it. Here'
@escherize Oct 2016 Cites it
on HN thread Why I hate frameworks (2005)
We build complicated software with simple tools where I work using Clojure. There's even a talk about Java:Powertools::Clojure:Handtools! [1] [1] - [this video]
Talk contrasting power tools with hand tools in programming
@kbuchanan Oct 2021 Makes a joke
on HN thread Why I Hate Frameworks (2005)
Learn Clojure. Then you can spend the rest of your life building with hand tools, lol: [this video] (Seriously, though, Clojure is awesome—but occasionally I miss the guardrails of a framework.)

Video list and Hacker News comment labels from HackerTube (prompted by @karpathy), released under ODC-By 1.0, built on the open-index/hacker-news archive. Hacker News data is provided by Y Combinator; comments remain the work of their authors. Video titles, channel names and thumbnails belong to their creators and are shown via YouTube. HackerTube Watch is an unofficial edition. Data export of 2026-10-31.

Keyboard shortcuts

/
Search
j k
Next / previous video
r
Surprise me
l
Like (video page)
w
Watch later (video page)
?
This help
Esc
Close