News for hackers. Stuff that matters.
Re:I Miss Rails by favorited on Thursday March 28, 2019 @11:36PM (#19518967)
Aren't your ActiveRecord models basically the only place in a Rails app where you do specify the types of your properties?
Re:I Miss Rails by hombre_fatal on Friday March 29, 2019 @12:17AM (#19519124)
I'm referring to things like dynamic find_by_* messages since more people might be familiar with that.

But I don't know why you'd say that. ActiveRecord models are one of the main places you'll see a bunch of `use SomeGem::Thing` that introduce a bunch of magic methods on model instances.

And my point is that we aren't talking about method composition here that you can statically analyze with a bolted-on type system. Ruby's metaprogramming runs so deep that it's a substantially bigger challenge than other dynamically-typed languages.

One clue is that humans even have a hard time with it. The first shock that people have with Ruby is when you see a method or identifier and grep shows up with zero results.

Aside, I can kinda tell that Ruby is entering Perl territory when there are no beginners around to chime in with their gripes.

Re:I Miss Rails by asark on Friday March 29, 2019 @11:20AM (#19522430)
The magic stuff's awful. Any time you have to dig into a mothballed Rails codebase from a version either older or newer than what you're used to, or with a bunch of Railsy magic gems that aren't in your usual toolkit, it's hell. I'd rather let the computer tell me what stuff is and where it's defined than memorize a bunch of magic prefixes.
Re:I Miss Rails by favorited on Friday March 29, 2019 @12:37AM (#19519192)
I only say that because it seems like low-hanging fruit. If I have a class with a random @ivar that's added inside a random method, there's nothing up-front to check against. An ActiveRecord subclass at least has a database schema to validate against.
Re:I Miss Rails by digitaltrees on Friday March 29, 2019 @03:27PM (#19524758)
I am a beginner. I don’t know enough to gripe, I bet that’s a common feeling among beginners.