Recent Posts

Fábio Miranda's Avatar'

Docker and Redis - a curious beginner's walkthrough

The main goal of this tutorial is to guide a newcomer to quickly set up a Redis Docker container and then get familiar with the basic Redis operations with scalar values and Hashes, building enough knowledge to build a simple object database. 1. Docker setup 1.1. Create a Dockerfile with the following content: FROM redis 1.2. Build the image % docker build -t redis-demo . Hint: You can us...

The main goal of this tutorial is to guide a newcomer to quickly set up a Redis Docker container and then get familiar with the basic Redis operations with scalar values and Hashes, building enough knowledge to build a simple object database. 1. Docker setup 1.1. Create a Dockerfile with the fo...

Fábio Miranda's Avatar'

Go Flags

Learning a new programming language is always exciting! Go is elegant and easy to learn. I simply executed the install staps and dove in the Hello World and the Modules Tutorial mentioned at the bottom of the page. The Go By Example is also being a rich resource. My initial interest in Go was motivated by finding a good WebSocket programming API and I learned the standard lib is powerful and e...

Learning a new programming language is always exciting! Go is elegant and easy to learn. I simply executed the install staps and dove in the Hello World and the Modules Tutorial mentioned at the bottom of the page. The Go By Example is also being a rich resource. My initial interest in Go was mo...

Fábio Miranda's Avatar'

Love, docker-compose!

The Part 2 of this series ended with two docker commands that start an app and a database container. Long and verbose, they aren’t practical to use regularly during the work. Worse: more commands are needed to be able to run database migrations, install new gem/yarn dependencies, debug code, and so on. After moving the complexity from the command line to the docker-compose.yml configuration fil...

The Part 2 of this series ended with two docker commands that start an app and a database container. Long and verbose, they aren’t practical to use regularly during the work. Worse: more commands are needed to be able to run database migrations, install new gem/yarn dependencies, debug code, and ...

Fábio Miranda's Avatar'

Rails-on-Docker

In Part 1 of this series of articles, I explained my basic setup to install Ruby on Rails and my preferred tools, and shared the source code on this repository. A collaborator who pulls the source code will have to set up a Ruby environment (possibly using Rbenv, RVM, among other alternatives) and start some services (Postgres, Sass compilation, Redis, etc). What if I could automate this initi...

In Part 1 of this series of articles, I explained my basic setup to install Ruby on Rails and my preferred tools, and shared the source code on this repository. A collaborator who pulls the source code will have to set up a Ruby environment (possibly using Rbenv, RVM, among other alternatives) an...

Fábio Miranda's Avatar'

Setting up a project with Ruby 3 + Rails 7.0.0.alpha2

Rails 7 brings Hotwire to be a framework default when a new project is created. Having it pre-configured during the project creation itself (rails new) is a strong incentive to try to learn new superpowers: Turbo is the evolution of its predecessor Turbolinks Turbo Streams is an elegant solution that allows the server to deliver page changes to the clients, using ActionCable. Stimulus ...

Rails 7 brings Hotwire to be a framework default when a new project is created. Having it pre-configured during the project creation itself (rails new) is a strong incentive to try to learn new superpowers: Turbo is the evolution of its predecessor Turbolinks Turbo Streams is an elegant so...


  • #
  • Page 1 of 1
  • #