When Ruby on Rails Is Not a Good Fit
When Ruby on Rails Is Not a Good Fit
A web developer shares a story in which her firm told a client that a custom Ruby on Rails site was not what they needed, and what they suggested instead.
Join the DZone community and get the full member experience.Join For Free
Learn how error monitoring with Sentry closes the gap between the product team and your customers. With Sentry, you can focus on what you do best: building and scaling software that makes your users’ lives better.
It’s no secret that we love Ruby on Rails at Planet Argon. We’ve been part of the community for 13 years, and have built over a hundred applications using this framework since then. But just because it’s our framework of choice doesn’t mean it’s the right choice for your business.
Over the years, we’ve had several companies approach us about their existing Ruby on Rails application, or with the idea of creating a new app in Rails, that we’ve directed away from this framework.
In these situations, we could have pitched a maintenance or new build retainer. And if we weren’t looking out for these companies' best interest, and instead only cared about making more money, that’s surely what we would have done.
But as the experts in our field, it’s also our responsibility to educate companies on the smartest decision for their company – even if it means they don’t become a client of ours in the process (I think there’s a Spiderman reference in there somewhere about power and responsibility…).
The reasons that Ruby on Rails is not a good fit varies depending on the company’s situation. Here’s one example where we turned a company away from a custom Ruby on Rails app, why we did it, and what we pointed them toward instead.
A Mid-Size E-Commerce Website: Queen Bee Creations
A few years ago, a local Portland-based bag and accessory company – Queen Bee Creations contacted us about their custom Ruby on Rails e-commerce application.
They told us a story we’re very familiar with and have heard again and again: the freelance Rails developer who created and maintained their app was leaving the project, and they needed a new development solution to keep their business running.
After some conversations about their current situation and goals, we worked through a Rails code audit of their app. During that code review, we analyzed things like Rails versions, security of credit card transactions, adherence to Rails conventions, and more.
After completing these code reviews, we sent over a thorough document that details our analysis of the application. This includes issues that need to be fixed, things the application is doing well, and suggestions for how the company should proceed.
For Queen Bee Creations, an updated custom Ruby on Rails app was not our suggestion.
Instead, we suggested a move to Shopify, a 3rd-party hosted e-commerce platform (that also happens to be built with Ruby on Rails). Moving to Shopify would decrease their costs compared to partnering with a development agency or another Rails freelancer. While there are customization limitations in Shopify, their existing website was not using any custom features that they wouldn’t be able to replicate if they moved to this third-party tool.
In short, Rails was a bit of an overkill for a website of this size that was primarily used for online sales. From our perspective, it didn’t make financial sense for Queen Bee to continue to invest in their existing app.
But just because this move was our suggestion didn’t mean that Queen Bee had to follow us without analyzing their options. We didn’t pitch Shopify as the only solution, but instead clearly listed out the pros and cons of moving to Shopify vs. maintaining their current custom Rails app.
The advantages of moving to Shopify included: using a tool trusted by tens of thousands of other e-commerce businesses around the world, lowering overall costs by removing the need for custom admin development, and customer support as an included benefit of the tool.
The disadvantages included: the upfront expense to migrating all product/category details to a new system, the percentage of each transaction that a platform like Shopify takes, and the onboarding cost of learning a new tool.
In situations like this, it says a lot about the company whether they look at the short-term costs vs. long-term benefits. Queen Bee decided to look forward to a sustainable solution for their online store and invest in the move to Shopify.
A Few Years Later…
Though Queen Bee didn’t turn into one of Planet Argon’s long-term clients, we still check in with their business from time to time to see how everything is going. Plus, we love their locally made items (especially around the holidays) and their store is just a few blocks from our office.
We were happy to find out a few years after our code review and suggestions that Queen Bee Creations’ online store was still running smoothly on Shopify. They fully invested in their point of sale system for their storefront, and their web platform for online sales. In the words of Rebecca Pearcy, owner of Queen Bee Creations, they were “digging” Shopify for their business.
If your business has made an investment into a Ruby on Rails application that you aren’t maintaining with an internal development team, this story might sound familiar to you. But if you aren’t a technical person with a background in Rails, it’s difficult to weigh the costs and benefits of an app yourself.
A thorough code audit of your Rails application can give you the information you need to make the best long-term decision for your company. When you learn more about the state of your app and other potential solutions (or the lack of other options) you can make educated choices with your team.
Published at DZone with permission of Erica Tafavoti , DZone MVB. See the original article here.
Opinions expressed by DZone contributors are their own.