I am also a Ruby/Rails developer. It is a great framework but I wanted to try something new for my side project so I started learning Elixir/Phoenix.
I have now deployed two applications using Elixir. One is a simple blog and the other is the side-project that I am currently working on called Email This [1]. Overall, I've been very happy with Elixir. The learning curve is not too steep and the docs are very exhaustive.
For my next project, I am planning on trying Go. There were many great resources shared in this post on HN today [2].
One thing I missed was that the availability of packages for common things like oauth, payment gateway integration etc. In the Rails world we are spoilt for choice when it comes to gems and libraries.
But I think this will improve as the adoption of Elixir increases.
I don't have a go to frontend library. I have worked with React and Vue.J's before and if I have to choose one for another project, I'd probably go with Vue.
I am thinking of running Email This on a pay-what-you-want model, but I am not too sure about it though. First priority is to get people to use it and see if they find value in it.
Backend: Node.js+Exress. Although I'm recently looking into serverless options (e.g. using AWS Lambda, etc.)
Frontend: Bootstrap for looks and CSS sanity. Knockout for data binding; it's a mature framework that works fine for small- to medium-sized web apps. If I'm to learn something new, I'd go for Vue.js, whose concepts look very much like Knockout and it benefits from virtual DOM rendering.
For the past couple of years my stack has been Rails & jQuery.
I'm on the cusp of starting a new project and some configuration problems have left me looking elsewhere. I used to work with Django a lot, and I may go that route, but I also think a full-javascript stack could be good for me professionally.
Alternatively, I'd love to try a clojure backend but frankly I'm a bit afraid of it--I tried maybe 18 months ago and I had a bad go of things. I've read lately that some of the problems I had have been remedied (most importantly better stack traces) and so I might just give that a go.
No matter what backend I choose, I'm going to build out a React/Redux front-end. I'm working with that on the job and I could use a little more time with it to become more comfortable. Also, I really think it's a good paradigm and that it's going to stick.
Anyway, lots of fun choices out there. If your efficiency isn't a top priority, I'd urge you to pick a language that looks fun. For me, Clojure is that option.
For prototypes I'm either using Node + Express or Flask, depending on what I feel like that day or what database I need. I don't really like using MySQL with Node, I think it's easier with Python so if I need SQL, I'm in Python/Flask.
I use django. For starters, I use bootstrap and jquery for frontend but once the project matures and is here to stay, I shift to plain CSS. I also use plain javascript (for now the total LOC is <900) but may shift to some other lib when complexity increases.
I love Ruby and for the quick web MVPs I use sinatra + sequel.
I try to avoid JavaScript if possible... Setting up the JavaScript build/transpile system, installing dependencies, fighting the dependency version hell drains all the hype and productivity from my soul...
I'm currently working with a friend of mine on an MVP that we plan to offer as a service, and the source code is not open, but the stack is: React (JSX + ES6 + Webpack) + Tachyons for frontend, Ruby (Grape + Sequel) for frontend API, Golang for workers and processing, PostgreSQL as a DB and Redis for caching
Go(Lang) backend + plain html, jquery and gulp on the frontend. After doing Rails for a while, I was tired of the slowness and layers upon layers of abstraction. Go is simple in comparison - the language philosophy helps you keep everything close to where it's executing. No assumptions. I've borrowed some lessons from Rails in structuring my code (models are separate, api for controller logic, views are static pages that interact with the Api through JSON). The performance of my sites is so incredibly delightfully fast now, that I would never go back. Almost all of my server calls return back in microseconds. I'm rewriting all of my sites in Go now.
Right now, I'm making a deep learning library. I want to create some simple dashboard ui for it.
I investigated few options. I don't like go. I know some node.js. I really wanted to use swift. But the swift framework, called perfect, crahes on my mac. So I decided to use my own framework. It integrates well with my deep learning library.
I have now deployed two applications using Elixir. One is a simple blog and the other is the side-project that I am currently working on called Email This [1]. Overall, I've been very happy with Elixir. The learning curve is not too steep and the docs are very exhaustive.
For my next project, I am planning on trying Go. There were many great resources shared in this post on HN today [2].
[1] https://www.emailthis.me
[2] https://news.ycombinator.com/item?id=13612941