The concept of elasticity comes from solid mechanics and designates the mechanical property of certain materials to experience reversible deformation when they are under the action of external forces and to recover the original form if these external forces are removed. As an adjective can be used to describe those flexible materials, i.e. that can accommodate different circumstances.

The concept of elasticity or the adjective elastic can also be used to describe technologies. We will say that a technology is elastic when it:

adapts to growth, popularity and use of systems built with it (scalability [ISO 9126]).

can be extended to meet specific needs of niche markets.

is identified as the most versatile for a specific activity (not necessarily the newest).

has high visibility, mature communities, support and industry demand it.

is modern, sophisticated and advanced but not with high risk associated.

agrees very well with cloud computing, containerization of environments, IoT and DevOps.

customer.io is a SaaS which enables you to easily manage all the emails you send to your users: from your newsletters to transactionnal and behavioral emails.

The concept is simple: you send to customer.io data about your users, it creates a custom userbase, on your customer.io dashboard, which you can segment in order to send the good emails to the good users at the good time. At VAIRIX we use Customerio gem as a client for the Customer.io event API.

To install it just add gem 'customerio' and execute bundle. Then you can identify your customers when they sign up for your app and any time their key information changes. This keeps Customer.io up to date with your customer information.

According to their website, “Swagger™ is a specification and complete framework implementation for describing, producing, consuming, and visualizing RESTful web services.”

What does it mean? Basically, it’s a specification to describe APIs services that keep updated at the same pace as your server code. The benefits are obvious: first of all, you are always providing up to date documentation; also, you are providing an up to date signatures of your services that could be consumed automatically by other services keeping them sync.

The better part of Swagger is that, besides solving the documentation needs, also solves API sandbox needs to play with the exposed services.

If you want to see a live demo of a api documented with Swagger and a sandbox to play with, you can go here.

If you are in Ruby world, there are a couple of gems to handle the Swagger specification for you here.

RailsPanel: "Chrome extension for Rails development that will end your tailing of development.log. Have all information about your Rails app requests in the browser - in the Developer Tools panel. Provides insight to db/rendering/total times, parameter list, rendered views and more.