← Back to context

Comment by znpy

4 days ago

Tl;dr?

Author argues that values long embedded in Ruby culture (testing, readability, design) are very useful for collaborating with AI, gives an example os asking Claude to follow tdd

  • Ruby does have the best testing tooling of any I’ve tried. But I feel like it’s half to make up for how horribly unreliable the language is. The whole thing being untyped makes it borderline impossible to know the code is correct without unit tests covering everything.

    • "Untyped" means, for example, you can't tell a string from a number, because they are the same type.

      You mean "not statically typed". Which also applies to Javascript, PHP, Python, ... so if that critique doesn't stick to those, it's not a critique you can level at Ruby.

      1 reply →

    • Ruby behaves sensibly through the principle of least surprise.

      But it does have extremely powerful metaprogramming capabilities which are regularly abused by those not wise enough to know that just because you could do something doesn't mean that you should.

      I regularly code in a variety of languages from C / C++ through Python and Ruby through to Haskell. They all have their advantages and disadvantages. All of them are capable of abuse by the sufficiently determined. And unit tests are helpful in all of them.

      2 replies →

    • I’ve seen large Ruby projects with hunders of developers working on it for >10 years with almost 100% sorbet coverage. It’s just that in Ruby you have to pay (ie spend extra time) for decent degree of type safety.