The subject this post names, from the same vocabulary
the directory files beliefs under, and the words it uses that this site has seen
least often elsewhere. Posts are matched on those words alone —
nothing here is a summary of this one.
And vibe coding, if we define it here, is you tell an agent to build software for you. You do not look at the implementation. That, to me, is what separates vibe coding from programming or, let's say, agent-accelerated development.
The language now is English. It's a cliche, but it's also true. Like I've been programming in English for the last three months. I've been reading a lot of code, but I'm programming in English. I'm telling the computer what to do, and I'm using natural language, and it is shockingly even more delightful. If there is one programming language more beautiful than Ruby, it is the English language.
The other thing I'd say is that most organizations don't know what they want. They don't know how to make it better. They're not bottlenecked on implementation. They're bottlenecked on ideas. They're bottlenecked on vision. They're bottlenecked on taste. And if you don't have those element in excess of your implementational capacity, it doesn't help. So you can make a lot of shitty ideas come true, then what?
buuuut my roadmap is’nt ten times shorter. and I’m definitely not ten times better at deciding what is worth building. teams haven’t started casually shipping a year of product work every month. you can look around and and it’s hard to say what software has gotten meaningfully better in the last year.
I read a bunch of blog posts about how it is totally fine to use SQLite in production for a small site and I think it is totally fine, but what I did not fully appreciate is that SQLite is still a database, databases are complicated, and I do not know a lot about operating databases.
I do the research I do the plan I do the implementation I throw the docs out and the next time I need research I just do it from scratch because tokens are cheap and my time is expensive
But I have come to realize that as a web developer, Linux is just better. Linux is just better. It's closer to what I deploy on. The tooling is actually phenomenal.
Their words now
anyone who's working with the web, who's working with Ruby, who's doing DevOps, they should be on Linux because first of all, that's closer to what we deploy.
The joy of a programmer, of me as a programmer, is to type the code myself. If I elevate myself, if I promote myself out of programming, I turn myself into a project manager. A project manager of a murder of AI crows as I wrote the other day.
Their words now
I have been hyper accelerated as a programmer. It's a different kind of programmer, but it still has the same affinity to aesthetics, at least when I'm producing Ruby code.
This took some special care, in particular avoiding any C++ standard library I/O functionality. Current frontier AI cannot handle this detail on their own.
Tariffs, and especially the erratic implementation of them, are teaching our allies and enemies alike that the US is no longer a reliable trading partner.
static typing is the one thing I will literally die on the hill for for Ruby
Their words now
It's the essence of what makes Ruby Ruby. This is why I don't fully understand when people call for Ruby to add static typing. 'Cause to me, it's the bedrock of what this is.
Vibe coding can execute instructions, but deciding what the software should do and why is not automated. Product managers and designers must still do user research, market analysis, and creative brainstorming. In that sense, vibe coding changes the implementation phase more than the planning phase of the product lifecycle.
To some extent, training a model does effectively nothing. They have a model. The thing that Dario is sort of speaking to is the implementation of that model, once trained to then create huge economic growth, huge increases in military capabilities, huge increases in productivity of people, betterment of lives.
What I’m saying is that art requires making choices at every scale; the countless small-scale choices made during implementation are just as important to the final product as the few large-scale choices made during the conception.
And for a long time, I thought that's what had worked. That this was why Ruby on Rails took off, became one of the most popular full-stack web frameworks of all time, inspired countless clones, and created hundreds of billions in enterprise value for companies built on it. But I was wrong. It wasn't the crusade that did it.
Good tools let the user choose when to switch between implementation and evaluation. When I work with a chatbot, I'm forced to frequently switch between the two modes.
Did you know, the tests you write with react-testing-library look almost identical to the tests you write with vue-testing-library. Magic things happen when you don't test implementation details. :)
A korrent is a belief a person has stated in their own words: one
sentence stating the claim, backed by a quote and a source, kept at
korrents.com.
Under a name here, the quoted block is what they actually said.
The korrent beneath it is the claim those words support, in
korrents' wording — tap it to see the record, its source, and who
else holds it.
Nobody here wrote their own korrents. They are compiled from public
statements, and a person can change their mind, which is recorded too.
About the English under a post
Some people here publish in a language other than English. Where they
do, this site shows a machine translation beneath the post, in
this typeface — the site's own, not theirs.
The post itself is never changed, moved or hidden: what is set in the
serif above is exactly what the person published, and it is what to
quote them on. A translation can be wrong in ways that matter,
especially about tone.
Only the post's own words are translated. A quoted post, a linked
article and a belief on korrents.com
are left in their original language.