Superintelligence CouncilСовет гения · sim.im

DHH · 2025-07-12 · source ↗ · whole document (13)

Programming language for beginners

`5:24:32`

It's actually not readable at all. — That's the problem I've had with Lisp. — OCaml is very intuitive, very readable. It's nice. — I really should pick up a language like that at some point. I've been programming long enough that it's a little embarrassing that I haven't actually done anything real in anger in a fully functionally programming language. — Yeah, but like I have to figure out, I'm sure there's an answer to this. What can I do that would be useful for me like that I actually wanna build? — Yes, yes, that's my problem — That a functional language is better suited for. — That's right. — Because I really wanna experience the language properly. — [DHH] That's right. — Yeah, 'cause I'm still, yeah. At this point, I'm very object-oriented brained. — Yes, and that's my problem too. I don't care as much about these low level problems in computer science. I care about the high level. I care about writing software. I care about the abstraction layer that really floats well with web applications and business logic. And I've come to accept that about myself. Even though, as we talked about when I was a kid,

`5:25:34`

I really wanted to become a games programmer. And then I saw what it took to write a collision detection engine. And I go like, yeah, that's not me at all. I'm never gonna be into vector matrix manipulation or any of that stuff. It's way too much math and I'm more of a writing person than I'm of a math person. — I mean, just in the way you were speaking today, you have like a poetic literary approach to programming. — Yes. — Yeah. — It's interesting, that's actually exactly right. So I did actually a keynote at RailsConf 10 years ago where I call myself a software writer. I mean, I'm not the first person to say that software writer has been in the vernacular for a long time. But the modern identity that most programmers adopt when they're trying to be serious is software engineer. And I reject that label. I'm not an engineer. Occasionally I dabble in some engineering, but the vast majority of the time, I'm a software writer. I write software for human consumption

`5:26:37`

and for my own delight. I can get away with that because I'm working in a high level language like Ruby, working on collaboration software and to-do lists and all the other stuff. Again, if I was trying to apply my talents to writing 3D game engines, no, that's not the right mindset. That's not the right identity. But I find that the software engineering identity flattens thing a little bit, I'd like to think that we have software writers and software mathematicians, for example. And then those are actually richer ways of describing the abstraction level that you're working at than engineer. — Yeah, and I think if AI becomes more and more successful, I think we'll need software writer skill more and more. Because it feels like that's the realm of which, 'cause it's not writer. You're gonna have to do the software. You're gonna have to be a computer person.

`5:27:37`

But there's a more... I don't know, I just don't wanna romanticize it, but it's more poetic, it's more literary. It's more feels like writing a good blog post than... — I actually wish that AI had a bit higher standards for writing. I find the fact that it accepts my sloppy, incomplete sentences a little offensive. I wish there was like a strict mode for AI where it would snap my fingers. It was just feeding it key words and like speak proper, do pronunciation, do punctuation, because I love that. I love crafting a just right sentence that hasn't been boiled down, that it has no meat on, it has no character in it. It's succinct. It's not overly flowery. It is just right that writing phase, to me, is just addictive. And I find that when programming is the best, it's almost equivalent exactly to that.

`5:28:37`

You also have to solve a problem. You're not just communicating a solution. You have to actually figure out what are you trying to say, but even writing has that. Half the time when I start writing a blog post, I don't know exactly what arguments I'm gonna use. They develop as part of the writing process. And that's how writing software happens too. You know roughly the kind of problem you're trying to solve. You don't know exactly how you're gonna solve it. And as you start typing, the solution emerges. — And actually, as far as I understand, you and Jason are working on a new book. It's in the early days of that kind of topic. I think he said, he tweeted that it's gonna be titled something like, we don't know what we're doing upfront, something like that. That kind of topic. And you figure out along the way. — That's a big part of it. Trying to give more people the permission to trust your own instincts and their own gut and realizing that developing that supercomputer in your stomach is actually the work of a career.