Tuesday, August 16, 2011

Why Textaurant Runs Rails

Textaurant is a webapp. It displays, routes, and gathers information. It sends text messages, and we emphasize the user experience on mobile browsers. The number of technologies we could have used to build Textaurant is really quite large. We could have gone with Java, or .NET, or Python, or PHP, or any one of a number of languages and frameworks. Any one of them would have been valid and viable choices.

We went with Ruby on Rails. And here's why:
  • Speed
  • Support
  • People
Textaurant is a startup, and (surprise!) we have competitors. We beat our competitors by giving them better value faster. On the technology side, that means we give them more features, more reliably, faster. Development speed is a huge consideration. Ruby on Rails is a fast development framework. My team and I can get features out there quickly. We can tweak them quickly. That makes us responsive to our customers, which helps us get and keep happy users.

There's a lot of support for Ruby on Rails; it's a rich development ecosystem. We use Heroku for hosting, for example, because it's optimized for Rails applications. That means that we can provide a stable, scalable (within reason) environment that is optimized and secured for our application. And we get it all for just the cost of hosting. There is also a strong community that makes reusable gems for everything from sending text messages (thanks, Twilio) to authentication. That means I don't have to reinvent the wheel, and makes development faster. (I should note that we also try to give back to the community by creating, maintaining, and/or contributing to gems - it's only a rich ecosystem because we all contribute to it.)

Finally, we use Ruby on Rails because of the people. There are many developers who can write Rails applications, and many testers who can test this type of application. This gives us a wide talent pool to draw from, and also lets us honestly say to people who work with us that they're developing and maintaining a useful skill set that they can use in the future, for Textaurant or wherever they end up. (Tangent: I had a job early in my career in healthcare IT. We saw a lot of developer candidates who had spent five years learning and working in a custom language called Magic for another healthcare company. They didn't have much in the way of Java skills, and that hurt them in the job market; many of these candidates got passed over, even though they had industry experience. I don't want to do that to anyone who chooses to work with me.)

Will Textaurant use Ruby on Rails forever? I don't know. Like any technology choice, Ruby on Rails has strengths and weaknesses. At some point we may run into limitations of the language and/or the framework and make a change. For now, though, we're using the technology stack that best fits our needs, and hopefully that fact will never change.

No comments:

Post a Comment