Thinking about starting a business? Have an idea that you want brought to life?
Starting a business or making a decision that can impact your entire future is a rather large and important choice to say the least. My partner, Daniel Rice and I decided to embark on paving our own path a few years ago and started our own business. This was not the first time for either my partner or I choose this path, but this is the first time we did it as a team and both succeeded in creating the business that we always wanted. One key difference this go around other than each of us having an additional decade of experience, was our utilization of Ruby on Rails. With this technology we are able to rapidly grow and scale our business as well as for our clients. Let’s talk about the five main reasons we decided to go after our dreams with Ruby on Rails.
- Open-Source technology. Have you ever heard, “two heads are better than one?” Well, take that with an exponential of 100 and we might begin to illustrate how great this collaborative environment is. This type of technology allows for a single developer to have access to a seemingly endless network of developers with various expertise. Bottom line: collaboration makes us better.
- You can get the job done faster with Ruby on Rails (RoR). There are several reasons for this, but long story short: this language is object-oriented in nature and the vast majority of open source code is already within the community. Ex: We don’t constantly have to reinvent the wheel.
- Testing: We love testing code before we send something out there that breaks crucial functions a business needs. RoR has great testing frameworks and a strong focus on testing. Ex: minimal to zero downtime with large updates, no lost business due to technical reasons.
- Increased productivity due to its self-documenting and readable nature. This increases productivity because you don’t have to spend all day trying to find something you wrote a year ago or finding a bug that someone else programmed. As a business owner, having clarity with the code we write is huge because it helps the current team focus on what they do best other than scanning a seemingly endless stream of code. It also reduces our dependence on a single developer. I love having high employee retention, but I am not going to base my entire business off of the abilities of a single person. I want to have a team that can flow, where we don’t depend on a single person to get the job done, myself included.
- Our Team loves it! As business owners happy employees can be the difference between an okay business and a great business. I want my team happy, and our developers love Ruby on Rails. End of story. ☺
As with any decision we make, there are always pros and cons. We primarily focused on why we choose Ruby on Rails, but ultimately you need to be able to look at your big picture and see what works for you.
Some potential drawbacks of RoR include:
- Not as widely used as other languages such as Java and PHP. So if you find a great RoR team, keep them! The same is true for any developers, ones that are easy to work with that have your business their top priority before themselves are hard to find.
- RoR developers are more expensive per hour than some competing languages. However, if you find good RoR developers they can typically outpace some leading languages by a factor of 2-4.
- Not all websites can host and support RoR. We solve this issue by using Amazon EC2, many other similar platforms allow this work around too. How do you like our website?
- Not as fast at Java or C. We are talking milliseconds here folks, but it is worth mentioning. We have never run into an issue with speed, but I suppose that is in part due to our developers as well.
At the end of the day, the decision is yours and it primarily depends on the wants and needs of the business you are in. For us, Ruby on Rails was a no brainer. We focus on building efficient, scalable and secure web applications and would not be able to do what we do with such ease without RoR.
What are your thoughts on programming languages? Have you build a startup?