Building Composable Abstractions Rehearsal 3

Summary: My third rehearsal for my upcoming Clojure/conj talk.

The number one thing I learned from the last rehearsal is that I need to get it shorter. So this time, I skipped lots of slides, skipped around some, and shortened explanations. It's a lot shorter, but still not short enough. But I did figure out a bunch more stuff to cut.

This rehearsal is a little bit more raw and personal. I stop at a few points and talk about what I'm planning to cut. It's going to need some more work. But I'm feeling good that it's coming together.

One thing I really need to work on is the through line. I planned to start with Double-Entry Bookkeeping as an example of a powerful and valuable abstraction that gave tremendous power to those who used it. The idea is that we as programmers wield the power to create these kinds of abstractions literally every day. They are transforming business, society, and life as we know it, just as double-entry bookkeeping transformed finance. I'm failing to communicate this. And so it feels like a distraction from the main message.

I then go into the process I'm creating and give some examples. That part is just a little bit too long, too. I'd like to be fair to the process and show how it doesn't lead directly to a perfect abstraction. Instead, it's iterative. I don't want to mislead people by only showing the happy path. I'm trying to find a way to do that without going long.

I try to conclude with another example of a powerful abstraction that has changed the world, Newtonian mechanics. My presentation of this story is falling over, too. The through line just isn't there. It doesn't connect to the beginning. I'm going to try using the same example at the beginning and end, with the framing for the process being "you can do this, too".

Shorter and punchier.

Here's the recording:

Please let me know what you think. That's part of why I'm doing this. You can help me make this presentation more powerful.