News
Under Deconstruction: The State of Shopify’s Monolith
Ruby on Rails is a great framework for rapidly building beautiful web applications that users and developers love. But if an application is successful, there’s usually continued investment, resulting in additional features and increased overall sy...
ActiveModel validation for email. Including MX lookup and disposable email blacklist
Validate emails with the help of the mail gem instead of some clunky regexp. Aditionally validate that the domain has a MX record. Optionally validate against a static list of disposable email services. Optionally validate that the email is not su...
The difference between let, let! and instance variables in RSpec - Code with Jason
First, there’s the stylistic difference. The syntax is of course a little different between the two approaches. Instance variables are of course prefixed with @. Some people might prefer one syntax over the other. I personally find the let syntax ...
Rails 6 adds support to persist timezones of Active Job
This blog is part of our Rails 6 series. Rails 6.0 was recently released.When a job is enqueued in Rails 6 using Active Job, the current timezone of a job is preserved and then this preserved timezone is restored when the job is finished executing...
Ruby adds experimental support for Rightward assignments
Historically, all of the early programming languages were designed by Mathematicians. It’s a common practice in mathematics to say let x = 4y z, which is read as let x be equal to 4y z.So the same pattern is followed in programming languages a...
Turn your Ruby on Rails REST API to GraphQL using Hasura Actions
Hasura gives you instant GraphQL CRUD for databases (currently Postgres) which should cover most of the data fetching and real-time subscription use cases. However, sometimes we want to add custom business logic to our API. There are different way...