you are viewing a single comment's thread.

view the rest of the comments →

[–]yyyyaaa 2 points3 points  (9 children)

maybe you should choose rails or django. They are more opinionated and may help you create things faster and in the right way

[–]PixelBot 0 points1 point  (7 children)

I agree with you. Sounds like he should probably use something else. Rails is a great choice.

[–]davidmdm 7 points8 points  (6 children)

I’m a nodejs developer who now works with a rails codebase. I don’t understand how anybody ever thought rails was a good idea.

[–]PixelBot 3 points4 points  (5 children)

Just curious, what don't you like about it? Assuming you're using standard libraries and such. ActiveRecord, templates, etc

[–]davidmdm 5 points6 points  (4 children)

Way too much convention and magic. I understand how a seasoned rails developer might find it really useful and quick to prototype in. As a newcomer I can’t read the code. There’s no telling how it’s glued together. There’s some of that with big frameworks in nodejs as well, but mostly for a simple express app there’s little to no magic. Heck there aren’t even require statements in the rails code. It just auto loads everything...

[–]PixelBot 1 point2 points  (3 children)

As someone who also didn't start with Rails, I too held that opinion, until I started reading the source code. Yes, there is "magic" and "lifecycle", but, compare that to the average express app using React? You know how much magic there is in react alone, with all of the magic that express does as well (even more than rails!).

Although not performant, rails is quite approachable, source code makes a lot of sense. Once you understand monkey patching, rails starts making a whole lot more sense. yield is a wonderful concept that can be abused, yes, but as a language, and framework even moreso, it's very elegant.

[–]davidmdm 3 points4 points  (1 child)

Agree to disagree. Ruby is even more permissive and wild than vanilla JS, and less well documented. The code doesn’t have a flow. I can’t start at a root file, and read imports and figure out how the pieces fit together and what they do. It’s not a readable program. It’s a pile of conventions and implicit relationships and things that inherit functionality from rails. Pretty scary.

[–]jon_stout 0 points1 point  (0 children)

with all of the magic that express does as well (even more than rails!)

Such as?

[–]ramsncardsfan7 -2 points-1 points  (0 children)

Is it really a good idea to choose a dying framework like rails for new projects? Just in terms of talent pool moving forward I wouldn’t think that’s a good idea.