What is Ruby on Rails and why do we use it at Kyan?

Kyan
Kyan Insights
Published in
4 min readOct 13, 2016

--

Written by Laurent Maguire

Here at Kyan we’ve become reasonably well-known (#HumbleBrag) as a specialist Ruby on Rails (RoR) development studio. A conversation that often comes up however is why we’ve chosen to develop this way. For the most part, an audience of developers will be pretty savvy in terms of understanding the strengths and weaknesses of different languages. This means that it can be easy for us to mistakenly assume that potential clients are also as well-versed in the specific implications of choosing to work with a development studio that uses Ruby on Rails.

Approach to tech at Kyan

Despite our reputation for being Ruby on Rails specialists, we’re actually committed to remaining as tech agnostic as possible, and endeavouring to always employ the best tool for the job. We believe that this approach puts us in a position to deliver the best possible work, as we’re never going to be trying to force square bricks into circular holes. That said, for the types of bespoke websites and applications that we most frequently build, to date we’ve more often than not employed Rails as our weapon of choice.

What is Ruby on Rails?

Ruby (and Ruby on Rails) is now one of the most commonly used programming languages for building web applications and websites and is the backbone of many of the most popular web applications; well known examples include Airbnb, Kickstarter, Urban Dictionary and Groupon.

A Japanese developer, Yukihiro Matsumoto initially created Ruby in 1995, but much of the popularity of Ruby has stemmed from the development of Ruby on Rails in the 2000s. While building the code base for project management tool Basecamp in 2003, David Heinemeier Hansson created Ruby on Rails as a developer-friendly tool (based on the existing Ruby language) to complete the project. In 2004 he released Ruby on Rails as open source code and it has grown in popularity ever since.

Early adopters

As very early adopters of Ruby on Rails, we’ve been afforded the time to build up one of the most experienced teams in the UK and this means we have a huge bank of knowledge to rely on when taking on new projects. The length of time we’ve been working with Rails also means that we’ve had plenty of time to develop a workflow that maximises our speed and productivity in delivering projects, without cutting corners or compromising on the quality delivered.

An example of this workflow is how at Kyan we employ test suites for our code using Rspec and Capybara, as well as static code analysis tools like Rubocop to check for consistency. We also run continuous integration servers to check that tests are passing before any code is actually deployed to production. Regular code reviews ensure our team is knowledge sharing and that the latest best practice is adhered to across all projects.

While the above may sound incredibly complicated when written down, it’s a tried and tested methodology for maximising the productivity of our team and minimising any potential downtime. From a client’s perspective, this translates into speedy delivery times and maximal reliability.

Flexibility

In a more general sense, the inherent readability of Rails means that is it is easy for developers to either work together or to inherit projects developed by someone else. In a real life scenario, this means that if you identified a problem or wanted further development on a particular website or application after its initial development, it wouldn’t matter if the same developer(s) is not available for some reason. The coding conventions in RoR mean it is simple for another developer to pick up where the other left off, without having to waste time (and money) first deciphering where the code begins and ends.

Community

This transparency has also played a part in building an incredibly helpful community of RoR developers who mutually help problem solve and who regularly open source projects. This means that if a developer is looking for a specific piece of functionality, it’s likely already been developed and battle tested in live production systems. This again, comes back to helping improve overall speed of delivery, as well as the associated costs and reliability.

Culture

Another major strength of RoR is actually the culture that has grown up around the community. The Rails community has pioneered a framework-driven approach in which testing is at the forefront and there is a genuine commitment to collaboration and open, constructive discussion over how to improve standards. Rails is continually both influencing other communities, as well as adopting the best practices from elsewhere and this has kept it at the forefront in terms of both popularity and in terms of cutting edge technology.

Let’s chat!

So having summarised our approach to tech and why more often than not we’re using Rails at Kyan, if you’re planning a web project or have an existing RoR based project that needs further development (or even rescuing!) then we’d love to talk to you.

hello@kyan.com

Want to read more?

If you’d like to read more about our use of RoR, you can visit our dedicated page.

--

--

Creative website design and web development agency based in Guildford, Surrey, UK.