Write better Ruby code by leveraging its metaprogramming features. In this article, you will learn how to create your own Ruby domain specific language (DSL).
In back-end software development, increased productivity often comes at the cost of performance. In this article, Toptal Software Engineer Eduardo Bautista shows us how the Phoenix framework builds on the familiar concepts from the Rails world, and makes it even easier to build robust concurrent applications without compromising performance.
Your website is gaining traction, and you are growing rapidly. Ruby/Rails is your programming language of choice. Your team is bigger and you’ve given up on “fat models, skinny controllers” as a design style for your Rails apps. However, you still don’t want to abandon using Rails? No problem. In this article, Toptal Software Engineer Eqbal Quran explains how you can decouple and isolate your Rails components using nothing Plain Old Ruby Objects. Ruby objects and abstractions can decouple concerns, simplify testing, and help you produce clean, maintainable code.
The rise of the web and mobile applications has led to an increased need for back-end API services. Ruby on Rails' philosophy seemingly makes it the ideal framework for creating back-end APIs. However, using Rails only for the API is overkill. In this article, Freelance Software Engineer Boško Ivanišević explores alternatives to Rails and introduces us to two very mature and powerful gems, Sinatra and Sequel, which in combination provide powerful tools for creating server-side APIs.
Many social networks provide APIs that enable the development of apps that expand their functionalities and grant access to user data and insights. This article compares popular social media APIs and gives examples of how to use them.
Memory issues in programs can be quite frustrating whether you’re the user or the developer attempting to solve the problem. In Ruby, the garbage collector plays a vital role in managing your program's memory so that you can focus on other important things. However, it is often possible to overwhelm the garbage collector or end up with sneaky resources that cannot be freed, which can lead to all sorts of memory issues. In this article, Toptal Freelance Software Engineer Bruz Marzolf explains why certain memory issues arise in Ruby applications and how to tackle them easily.
It's tragically common for developers to come into a project where proper automated testing has been and will continue to be overlooked. It's a situation Freelance Developer Bhushan Lodha has found himself in all too often; fortunately, he's found a solution. In this article, he briefly covers the reasons why testing is overlooked and ultimately explains his "coding life hack" to ensure quality control even when he can't introduce a testing framework.
Exceptions are a fundamental element of modern programming---and nothing to fear. Implement these exception handling best practices to write clean code that is easier to maintain.
Microservices are one of the latest trends in software design. In a microservices architecture, the classic monolithic back-end is substituted by a suite of distributed services. This design allows better separation of responsibilities, easier maintenance, greater flexibility in the choice of technologies for each service, and easier scalability and fault tolerance. In this article, Toptal Freelance Software Engineer Francisco Temudo guides us in a step-by-step tutorial on how to build a microservices suite using Ruby.
World-class articles, delivered weekly.
Subscription implies consent to our privacy policy
Thank you!
Check out your inbox to confirm your invite.
Join the Toptal® community.