HN user

joerichsen

16 karma
Posts0
Comments3
View on HN
No posts found.

Yesterday we launched a big feature built using Elixir/Phoenix/LiveView/Surface and it has been really great.

We are a SAAS for managing sports teams and clubs https://www.sportmember.com and our current stack is Ruby on Rails, GraphQL and React Native for our app.

When deciding to develop this new feature we narrowed it down to these two options:

1) Rails/GraphQL/React

2) Elixir and LiveView

What's great about Elixir and LiveView is

1) The whole GraphQL API layer was not necessary to build. The best API is no API ;-)

2) No need to duplicate code like for example for validation on the frontend and the backend

3) Developing the whole feature using just Elixir instead of having to switch between TypeScript and Ruby

This means that we have been able to develop this feature in about 2/3 of the time which is pretty nice!

We have a setup that is fairly similar to yours (large Rails 3.2.15 app, Passenger, New Relic) and we recently experienced the same as you did - just in the opposite direction!

What happened is that average response time fell from 415ms to 255ms and across the board everything was faster. This Friday I upgraded ruby on our servers from 1.9.3-p327 to 1.9.3-p448 and that triggered the speedup.

Ruby was installed using rbenv/ruby-build and my guess is that the new version was compiled using compiler optimization flags whereas the old one for some reason was not.

Might be worth investigating :-)