Live data from Hacker News

Lessons I learned while creating my SaaS with Rails

samurails.com

11–20 of 23 posts

Re: Lessons I learned while creating my SaaS with Rails

#12
Good writeup for your experience with Rails and EBS. I've built my project, Zejoop dot com, in Java/Groovy/Grails and deployed on AWS Elastic BeanStalk - and I'm very happy with my setup so far.

As for your comment about the multitude of services available on AWS, I agree. They've recently added ACM certificate manager which simplified my maintenance considerably.

Their ACM easy implementation probably saved me at least 20 hours of cert renewal agony, plus it was free!

Re: Lessons I learned while creating my SaaS with Rails

#13
post #9
post #7

Great blog post! Can't you use Angular or React with RoR when rendering in the backend? I am pretty sure you can.

Yes, you can just use Rails as an API and create a frontend SPA. But in my opinion, it's faster to write in the 'old way' for a MVP instead of creating 2 different applications (one frontend, one backend). For the future, I'm actually thinking about rewriting the frontend using SPA technologies.

Way faster. We are using a rails API and a React+Flux app as a front end. The whole setup time alone is a considerable pain. I feel that the JS tooling is still too fragmented and sometimes messy, but I'm probably biased by years of rails and iOS development. Writing the app takes more time since you need to write everything from the ground up (e.g.: no Devise views to just style and forget), but I really hope that in the future the investment will pay. I wrote about it a while ago (although now we are using the more terse Alt implementation): http://fancypixel.github.io/blog/2015/01/28/react-plus-flux-...

Re: Lessons I learned while creating my SaaS with Rails

#14
post #2

Extra (maybe obvious) tip for #7: Get yourself a free Slack/Hipchat account and start curling those errors and exceptions to it. Super easy, way less hassle than email, and free push notifications to your phone if you've got the app installed.

Also do that with new relic. I finally found peace at night again.

Re: Lessons I learned while creating my SaaS with Rails

#15

The actual site (not this article) is currently serving up a 502; I think the author needs to play with his autoscaling options in EB!

Or just, you know, cache it correctly.

@OP there's a more DHH way of caching, but these will serve you well in the meantime: https://github.com/rails/actionpack-page_caching and https://github.com/rails/actionpack-action_caching

Re: Lessons I learned while creating my SaaS with Rails

#16
post #2

Extra (maybe obvious) tip for #7: Get yourself a free Slack/Hipchat account and start curling those errors and exceptions to it. Super easy, way less hassle than email, and free push notifications to your phone if you've got the app installed.

Or, use sentry which will botg capture and integrate with Slack/Hipchat.

Re: Lessons I learned while creating my SaaS with Rails

#17
post #9

Earlier quoted context omitted.

Yes, you can just use Rails as an API and create a frontend SPA. But in my opinion, it's faster to write in the 'old way' for a MVP instead of creating 2 different applications (one frontend, one backend). For the future, I'm actually thinking about rewriting the frontend using SPA technologies.

Way faster. We are using a rails API and a React+Flux app as a front end. The whole setup time alone is a considerable pain. I feel that the JS tooling is still too fragmented and sometimes messy, but I'm probably biased by years of rails and iOS development. Writing the app takes more time since you need to write everything from the ground up (e.g.: no Devise views to just style and forget), but I really hope that i…

Completely agree - just setting up a workable environment for webpack is a disastrous exercise. Even things like cache-busting signatures, etc are a implement-it-yourself deal.

Re: Lessons I learned while creating my SaaS with Rails

#18
post #10
post #8

You're going to cry the day when you try to clone your Elastic Beanstalk environment to do a rolling upgrade, and the termination of the first wipes away your RDS db with it. It's undocumented, but you'd be better off creating the db separately, not within the beanstalk wizard, to avoid this

Wouah, thanks for the heads up. I had no idea about this, I'm gonna look into it and re-create the RDS db myself.

Take one of your RDS daily snapshots (which you're taking of course), and recreate a new instance from it. Point your app to it, and you should be good.
Post reply on HN