News for hackers. Stuff that matters.
Re:Sorbet and 100% cov makes Ruby refactoring possible by rattray on Monday April 25, 2022 @05:15PM (#31160711)
Just because you disagree with it doesn't mean it's worthless advice.

I always have a fond flutter whenever I see Ruby (which I used to write, and really enjoyed) but absolutely wouldn't start a new project with it, for practical reasons. It's slow, it can turn into a big ball of mud as applications scale (there's no named imports for crying out loud, everything is just in a global namespace with side-effects everwyhere), etc.

Certainly there are still people/projects where, upon consideration, Ruby is still the best choice (eg; small Rails shop has a standard CRUD app to build quickly that will not likely ever scale to be huge). But you should still _consider_ not using Ruby.

Re:Sorbet and 100% cov makes Ruby refactoring possible by lbrito on Monday April 25, 2022 @11:12PM (#31163586)
In my experience all those cons are mostly just your company/team not knowing how to program in Ruby.
Re:Sorbet and 100% cov makes Ruby refactoring possible by norman784 on Tuesday April 26, 2022 @04:41AM (#31165287)
I read this argument lot from C/C++ devs in rust discussions, they just say that you are not a good developer and they never will do any mistake, but idk, I don't mind being a dumb developer, I like to have an app that I know works, even if you are a pro and you never do a mistake, your team surely will do, it put more burden in the devs, while there are tools that can make you life easier.

Then after that if you still choose ruby over a language that gives you more guarantees and safety then is your choice.

Re:Sorbet and 100% cov makes Ruby refactoring possible by lbrito on Tuesday April 26, 2022 @11:26AM (#31168666)
That's not the same argument at all. "know language X" != "be smart".

I am specifically calling out people that _don't know Ruby_ and complain about the language being this or that, when really their frustrations come from them being inexperienced in the language.

It is like never having used a hammer, gripping it close by the head, and complaining that it takes a lot of effort to nail things. Blame's not on the hammer, bud.

This might happen with every language. I don't know. I'm a Ruby developer and have seen this countless times. Also, none of this equates to saying that ruby is perfect. It is not.

Re:Sorbet and 100% cov makes Ruby refactoring possible by rattray on Tuesday April 26, 2022 @09:01AM (#31166939)
Most devs aren't learning Ruby anymore, so if true (I'm skeptical) that sounds like it could be a problem for many organizations (perhaps not yours).

Hiring only people who are already experts in a given technology shrinks your talent pool in an already-tight market, and training is expensive (time and/or money).

Re:Sorbet and 100% cov makes Ruby refactoring possible by lbrito on Tuesday April 26, 2022 @11:34AM (#31168791)
I'm not sure your premise is correct. Hired.com's 2022 report says Ruby is one of the most in demand skills.[1]

In any case I'm not saying Ruby is high barrier or anything. It isn't! It is totally viable to hire non rubyists and build them up. I have seen it before many times. Ruby is a simple, forgiving language with fantastic documentation and an excellent community. It is pretty ideal for newcomers really. Training pays off.

[1] https://hired.com/2022-state-of-software-engineers/

Re:Sorbet and 100% cov makes Ruby refactoring possible by white_dragon88 on Tuesday April 26, 2022 @03:39AM (#31164974)
How does a team not know how to code in Ruby? Doesn’t ergonomics matter?
Re:Sorbet and 100% cov makes Ruby refactoring possible by lbrito on Tuesday April 26, 2022 @11:35AM (#31168817)
>How does a team not know how to code in Ruby?

No one is born knowing how to program.

>Doesn’t ergonomics matter?

It does and Ruby does a good job with it. It is not a hard language to learn. See my response to sibling comment.

Re:Sorbet and 100% cov makes Ruby refactoring possible by aantix on Monday April 25, 2022 @08:35PM (#31162634)
“Shopify's core monolith has over 2.8 million lines of Ruby code and 500,000 commits.”
Re:Sorbet and 100% cov makes Ruby refactoring possible by rattray on Monday April 25, 2022 @10:48PM (#31163454)
That doesn't mean it's without downsides or that they'd make the same choice today, with the options we have available now.

For example, they probably spend an absolute fortune on cloud costs, especially CI. Node, Go, Kotlin, Elixir or maybe even async+jit'd Python might all be 2-10x cheaper to run.

But I bet there are other choices that would have been worse. I often enjoyed working with Ruby at Stripe, especially once Sorbet came along.

Re:Sorbet and 100% cov makes Ruby refactoring possible by endgame on Monday April 25, 2022 @10:15PM (#31163258)
And they had to become PLT experts to build the tool that let them tame that.
Re:Sorbet and 100% cov makes Ruby refactoring possible by gnufied on Monday April 25, 2022 @10:29PM (#31163340)
In fairness all major companies which use a Language extensively tend to invest in all aspects of its well being. Facebook did with PHP, Google hired Guido (and bunch of other python maintainers) and now go.

If your business depends on having a well maintained platform, then it makes sense to invest in it. Shopify should be commended for investing in Ruby. As a former contributor to Rails and Ruby ecosystem in general - IMO I would still choose Ruby for certain kind of work. I write Go mostly these days and parsing random JSON for example is major PITA (so it would be in many other static languages).

Re:Sorbet and 100% cov makes Ruby refactoring possible by rattray on Monday April 25, 2022 @10:42PM (#31163414)
Minor nit, if you're thinking of Sorbet, that was Stripe (but Shopify has done a lot of great work on Ruby things too, incl Sorbet stuff).

Disclaimer, former Stripe employee.

Re:Sorbet and 100% cov makes Ruby refactoring possible by endgame on Tuesday April 26, 2022 @08:33PM (#31174891)
Thanks, I had indeed got my S-companies confused. I must've been thinking of Shopify's nix work, and put them in a mental bucket of "does advanced stuff".
Re:Sorbet and 100% cov makes Ruby refactoring possible by Zababa on Tuesday April 26, 2022 @11:18AM (#31168544)
Another way to put it would be that Ruby is so productive for the average developer at Shopify that they can afford to pay PLT experts to work on the tooling.
Re:Sorbet and 100% cov makes Ruby refactoring possible by h3mb3 on Tuesday April 26, 2022 @03:50AM (#31165042)
What is PLT referring to?
Re:Sorbet and 100% cov makes Ruby refactoring possible by methyl on Tuesday April 26, 2022 @04:38AM (#31165276)
programming language theory
Re:Sorbet and 100% cov makes Ruby refactoring possible by matheusmoreira on Monday April 25, 2022 @11:25PM (#31163639)
> there's no named imports for crying out loud, everything is just in a global namespace with side-effects everwyhere

Yeah, this is a significant flaw. I with it had a simple module system like Javascript's require function which just returns a normal object containing functions and data.