Live data from Hacker News

Choosing Ruby on Rails for web development project in 2019

ideamotive.co

171–180 of 216 posts

Re: Choosing Ruby on Rails for web development project in 2019

#171
post #86

Earlier quoted context omitted.

Or if you want productivity and a performant web server, try Elixir + Phoenix. Number crunching still has to be dished off to something else like C, Rust or Go, though.

The lack of a type system in Elixir is a productivity killer though :(

Agreed. If Elixir had static typing then Phoenix would be my dream framework!

Re: Choosing Ruby on Rails for web development project in 2019

#172
post #127
post #107

Earlier quoted context omitted.

1. You can find a RoR developer.

Or not! Here in Toronto we've had a req open for a senior Ruby dev since like last October. We're seriously debating switching over to something else for no reason other than lack of available Ruby talent. Relatively view new devs are picking up Ruby nowadays. Job posting is here if anyone's interested --> https://angel.co/company/akira-2/jobs/106786-sr-full-stack-r...

A switch to PHP/Laravel would net you more candidates.

Offering remote would help.

Re: Choosing Ruby on Rails for web development project in 2019

#173
post #127
post #107

Earlier quoted context omitted.

1. You can find a RoR developer.

Or not! Here in Toronto we've had a req open for a senior Ruby dev since like last October. We're seriously debating switching over to something else for no reason other than lack of available Ruby talent. Relatively view new devs are picking up Ruby nowadays. Job posting is here if anyone's interested --> https://angel.co/company/akira-2/jobs/106786-sr-full-stack-r...

That job posting is more than just a rails dev.

> lead the development of...Our Java, Swift, and React Native-based mobile apps

> - Experience with building application backends in Ruby

> - Experience with React and Redux

> - Interest in machine learning and other next-gen technologies.

That job posting doesn't know what it wants.

Re: Choosing Ruby on Rails for web development project in 2019

#174
post #77

Earlier quoted context omitted.

intercooler over turbolinks? or together? not quite sure what intercooler really brings

intercooler just gives you finer grained control over your ajax requests, which makes it easier to implement stuff like active search, etc. turbolinks is great if you just want a faster pure web-app. I've used both successfully independently and in tandem.

That's interesting! I do some ajax with the js.erb files, but I honestly find that it's pretty messy & gross. Maybe I could eliminate those .js.erb files with intercooler.js (or clean them up).

Do you find that intercooler lets you avoid using .js.erb files altogether?

Re: Choosing Ruby on Rails for web development project in 2019

#175
post #91

Earlier quoted context omitted.

Out of curiosity, as a non-fintech Elixir/Phoenix dev, what particular facets of Elixir/Phoenix are fintech startups finding attractive/useful?

A lot of finance is built on event sourcing (without calling it that), in that you can’t just overwrite your existing DB state with new state; everything has to be a ledger with a history, and you have to be able to trace the “provenance” of your data—what version of your business rules were used to compute any derived results, both so that those results (and results derived further from them) can be recomputed when…

Thanks for the insights!

Re: Choosing Ruby on Rails for web development project in 2019

#176
post #11
post #3

The beauty of rails is how simple and quick it is to get a robust (if bare) application up and running. Even if you use sinatra or padrino instead, the wealth of the web community built around ruby still makes it rather easy. If I were a tech lead and had to make a choice now, in 2019, I would still (probably) choose rails-api for a backend with some separate frontend. I've been slowly working on a backend for a web…

> I've been slowly working on a backend for a web app in Rust I'm interested in why you made the choice to use Rust for a web app? It feels like you love a good challenge, but there are obviously technical constraints for some apps. I look around and wonder if the options have really changed a whole lot since 2006? If you need productivity, choose Ruby or Python (or maybe JS.) Java and .NET exist if you have more exa…

I just like using Rust. This is a small side project of mine so it's been more fun to experiment with using Rust to make a backend api than to stick with rails.

I also recently dealt with maintaining / upgrading a large, not well architected rails app. Debugging mysterious issues in Rails (and asp.net webapi2) sucks compared to Rust.

For a professional project I would largely go with rails, depending on the situation. asp.net isn't bad either.

Re: Choosing Ruby on Rails for web development project in 2019

#177
post #90
post #11

Earlier quoted context omitted.

> I've been slowly working on a backend for a web app in Rust I'm interested in why you made the choice to use Rust for a web app? It feels like you love a good challenge, but there are obviously technical constraints for some apps. I look around and wonder if the options have really changed a whole lot since 2006? If you need productivity, choose Ruby or Python (or maybe JS.) Java and .NET exist if you have more exa…

Ruby and Python aren’t any more productive than C# or Java in my opinion. Especially when you consider the errors static typing helps you avoid.

I would say the productivity comes from the established community around Ruby, when it comes to web development.

It's true that you end up running into certain types of bugs that a strongly typed language would've caught immediately, but in java/c#/rust you end up having to hand implement more stuff depending on what you're doing.

Ideally I would use rust, but I also think Ruby can work quite well if defensive programming practices are followed, as well as running linters, static analyzers, etc. Most issues seem to stem from poor architecture or tightly coupled, dense code.

Re: Choosing Ruby on Rails for web development project in 2019

#178
post #91

Earlier quoted context omitted.

Out of curiosity, as a non-fintech Elixir/Phoenix dev, what particular facets of Elixir/Phoenix are fintech startups finding attractive/useful?

A lot of finance is built on event sourcing (without calling it that), in that you can’t just overwrite your existing DB state with new state; everything has to be a ledger with a history, and you have to be able to trace the “provenance” of your data—what version of your business rules were used to compute any derived results, both so that those results (and results derived further from them) can be recomputed when…

Great writeup, thank you.

Re: Choosing Ruby on Rails for web development project in 2019

#179
post #6

> Great for CPU-intensive tasks. Ruby is among the slowest languages out there. Which is fine for most webapps, but calling it great for CPU intensive tasks... I don't understand what logic is being used to come to this conclusion.

Rails is slow. Ruby isn’t slow. Ruby has the same thing that every other language has, call outs to C code under the hood for most of the real work. What makes Rails slow is the process around so much object creation and destruction, but this is exclusive to Rails itself. You put a Sidekiq worker up against a Go worker for some background processing and the performance is comparable.

Ruby _is_ itself slow by any meaningful metric. That being said, the productivity gains usually outweigh the slowness.

I've been doing Elixir/Phoenix lately and subjectively it feels significantly faster than Ruby/Rails.

Re: Choosing Ruby on Rails for web development project in 2019

#180

Rails is ideal for the "Get Shit Done" approach to development. However, Ruby's type system does not provide many assurances, making mature codebases harder to maintain, refactor, and extend (as compared to codebases in, say, well-written Java). I am surprised this was not listed as one of the criticisms. Sorbet, a type checker for Ruby, stands to make this criticism less valid: https://sorbet.org/

I have to be honest, I don't understand why people care so much about typed languages. I almost never face type related issues, and when they occur they are the easiest to catch.

You never have issues with Ruby objects unexpectedly being nil?
Post reply on HN