Why RubyOnRails are useful for startup, than <% technology stack %>
We are now developing new startup called Adtena, this is online advertising system for public Wi-Fi networks. And as software developer in our founders duo I get to the well-know problem: what technology are solving our need more than another and will help us grow and iterate faster.
For last 3 years i was a python developer with various framework experience. But in some time get shuttered by different problems and start to look further for new technologies like node, scala and erlang. But technology-satisfying is not for startups.
Do it. Just do it with technology that you know better and have experience with. This is about startup. So why we are abandon this rule and jumped to a hole new ruby world.
The cave full of gems
The main Rails motto is “Move fast and break things”. This is about startup developing. Faster is always better. And rails gives you a full bunch of silver bullets.
There are so many functionality batteries that allow you to just “plug&play” really big functional parts of your web-site. You can say that are same for django. And you will be right, but if you start to use django modules you can stuck on multiple problems. Really long integration the module into your app. Install django module equals read all the provided doc to fully integrate it to your app. In rails on the hand you need just to read basic readme and do the basic config, and start to using it on the fly.
You can check the best of the best at https://www.ruby-toolbox.com/.
And just for the example:
Lets take the simple task: save images in Amazon S3. Probably you know the django storages module that provide this functionality. But it’s raw and tackes you some time to integrate and write front-end helpers to use it efficiency. But on the Rails hand you have s3_direct_upload gem, that already bundled with useful js and css, and needs you just to change your “upload image flow” in view.
Okay, so this is allow to prototype faster. This is good for you and your business. But, how it feels on production? With all this Tests and Continues Deployment.
Tests are tests, it feels like all tests in all technologies based on languages with dynamic typing. But with much more from a box functionality.
Hint: Look at http://vanity.labnotes.org/ (Experiment Driven Development framework)
But deployment is a sweet juice. Automation deployment tools that are not involving you to configure and worry about it are great relief for startups to do continues testing and deployment routine and don’t waste time on it.
I don’t say that rails is better or some sort of holy waring. I am in love with python stack, and will be forever. But i say that can be useful for startups to use rails among others to go faster, to iterate, to implement new feature and drop it with no regret.
Rails are useful for developing a business, not the “web app of your startup”. And this could be mindblowing feature for small founder teams.