Living in the Weimar era of Ruby
44 points by julik
44 points by julik
I honestly believe that, instead of amassing even more applause via vitriolic truth-bombing, he could have just left the toy he no longer loves - including its community - in peace.
Torching the place before leaving was most likely a way of replying to all the people that called for him to be pushed away from Ruby/RoR.
The healthiest thing for the Ruby community would probably be to just stop talking about this guy, but I understand it's not easy to do.
It is abundantly clear that the LLMs are here to stay, that typing every single line by hand is no longer sustainable,
I'm sorry, who are these people for whom typing is the bottleneck of programming? They must have brains that are orders of magnitude better than mine if their meaty appendages are what's holding them back!
Not the only bottleneck, but I have some relatively thought-out program designs that I don't get around to try out because there are some parts that would need thinking while being implemented, and some other parts that will be painfully obvious and I cannot find energy to slog through those supporting parts as there are always better targets for spending willpower.
LLMs probably won't do those parts right (especially when I refuse to spend effort learning workflows I cannot checkpoint so I need to fit into 64 GiB RAM and system-RAM speeds) but debugging sometimes is less boring than writing.
Re: finding people to do stuff together — I want weird things. I have some weird things I have already hand-crafted and kind of got stuck using, where I tried to find other people who would be interested just to try out and ask for features, and I have failed there. Although this is allegedly close to what some people want. (Although there are some other weird things that a few people adopted as lesser evils for their workflows)
Now, I treat whatever I asked LLM to generate as half-plagiarised… which might or might not stop me from using it, depending on whether I was already pieceing together and sometimes half-assed rewording whatever odd bits I can find elsewhere, or claiming any novelty at all.
And in many business settings there are just a lot of painfully obvious parts of «supporting» code around true business logic! And they cannot be done well because they integrate with the coutnerparties who do things neither well nor stably nor predictably.
this is awesome, and echoes something I've been thinking ever since claude got good enough to write production code - the true value of LLMs to the ecosystem is not "now everyone can one-shot a bespoke piece of code for their task", but "now domain experts can easily produce and ship larger and more complex libraries, so that everyone benefits without having to repeat the work".
Something interesting for me is that it has helped me to create and release a bunch of smaller projects that are a sort of "glue code" for things that I like to use. Like, a tree-sitter extension for a particular test library, a plugin for my editor, etc.
And I don't know Rust at all, but I do know a lot about good type systems and designing systems well to clean up resources when you're done with them. And I was able to contribute a pull request to Zed to remove some file handle leaks based on how their terminal tools were being called in their agent. It's the kind of thing that I can contribute (object design improvements) without barriers to entry of understanding syntax and idioms in a new language.
If I needed to write it in Ruby or JS or C++ or Java or C# I could have done it easily, but it happens to be in Rust. Now I can write it in Rust easily as well, and my steering was still valuable because I iterated on the high level design beyond where the AI ended up on its own.
Y'know, I'm glad to hear that. Ruby is ergonomically a really delightful language. It's just always been held back by the fact that for whatever reason, the Ruby ecosystem was at best a disaster and at worst making the language itself seem worse in things like performance.
If LLMs help improve the things Ruby is currently bad at, then that's all the better. At least the LLM should ensure you get something nicer than some Python libraries that offer C bindings... there's a reason that for video conversion, it's preferable to just spawn a CLI subprocess with a video binary instead of using ffmpeg-python. (And python generally has a very healthy library ecosystem.)
I just hope that the Ruby community can both keep humans in the loop for the documentation/maintenance and pretty obviously, keep the Nazis out. It's unfortunate that a lot of talk about Ruby needs the latter these days.
One of the typically shitty problems with Ruby has been PDF generation. As recently as 18 months ago, a Rubyist willing to produce PDF files from their Rails app would be facing a choice of a number of options, all equally unappealing [...]
I am really amazed (as someone that codes Go for a living and Elixir for fun) that such a common feature in webapps would be a pain in the Ruby ecosystem.