After a couple of years working with RubyOnRails — I’m a huge fan! — I thought it’s time to learn another web framework and after doing some research, I chose Elixir and Phoenix for many reasons such as performance, latency and of course Erlang VM. I reckon Ruby developers will find this powerful framework amazing and easy to learn as the syntax is really close to what Ruby offers.

In this tutorial, we are going to create a REST API backend using Phoenix. We’ll also use some great packages to authenticate users and authorize them to access our APIs.




We use Docker to create and manage software packages and it carries two concepts: images and containers. We define and build portable Docker images to be shipped as software solutions. Docker containers are created as writable executable layers from those images, which are then deployed using cloud service providers.

Sometimes we need to ensure our containers are in a healthy status and are up and running when we deploy our application services, so we need to run some health checks. Here, we explain the existing methods to do that and we also review some hints & tips!

What is a Docker health-check anyway?

It is a…


As software engineers, we have always been looking for better ways to manage our codebases. And we may need specific source control (e.g. Git) techniques to resolve new issues, specially on big software solutions with huge codebases. We are trying to answer these questions:

  • When and how can I use Git Rebase?
  • Can we update/remove the last commit message or a specific commit?

One such situation is when we need to re-write Git history of a repository for any reason including:

  • Update (amend) a commit message
  • Remove (drop) a specific commit
  • Combine (squash) some commits with a specific commit
  • Change…

If you have seen your CI pipeline builds failed due to security vulnerabilities in some NPM packages, you have probably tried npm audit fix and boom! No sign of those found N high severity vulnerabilities in scanned packages messages!

In some cases, that command won’t solve your issue; sometimes the issue is caused by a transitive dependency (sub-dependency) and you can’t or don’t want to wait for a version patch for the package.

For instance, consider the following security vulnerability (

It says, the dot-prop package has a security issue which needs to get fixed, and serverless-apigateway-service-proxy and serverless depend…


In my previous story, we built a simple Todo List app using Rails API as the backend and React for the frontend. In this tutorial, we are going to integrate Redux with our application in order to better manage the state of the app. So, if you want to follow this one, I suggest you read the first part before you start reading this one.


Ruby On Rails is one of the popular web frameworks which enables developers to build amazing web applications. Rails 5 introduced API-only mode to create RESTful backends easily. On the client side, React has become a famous client-side framework among frontend developers, providing them with its great lifecycle methods and async functions. In this tutorial, we aim to build a Todo List app with the help of React and Rails.


We will first build the Rails backend which talks in JSON! Then we’ll set up the React project to fetch/store data using the backend. …

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store