Carlos Damázio’s corner

Understand memory concept and debug memory usage in Go

Context# In this How-To, I want to briefly explain different concepts of memory usage in general, and how it’s applied in Go programming. Afterwards, I’ll explain how to debug memory usage for a Go program. What is memory?# Any of the hardware parts is hardly relevant given the amount of abstractions we have nowadays, but it’s important to give a brief context of why we have things the way it is today.
Read more >

Running GHA workflows locally with Act

Context# Act is a local runner for GitHub Actions workflows. It works with the Docker containerization engine to create containers as local runners for your workflows. It’s a good productivity tool for testing your CI/CD pipelines because instead of creating another git branch, pushing it to the repository, and trying to execute it using the dreaded workflow_dispatch trigger, you can simply run it in your CLI! The main problem of the manual execution approach is due to pushing multiple commits to the remote repository.
Read more >

Create a GPG key on macOS and Linux

Context# GPG stands for GNU Privacy Guard, which implements the OpenPGP’s specification (RFC 4880) and is a free software implementation of Symantec’s PGP cryptographic software suite. What’s used for?# We use it to encrypt and sign data to attest its authenticity. For example, we use it to sign our commits while using a VCS like git, or sign e-mails. So we’re making it clear that we, in fact, did write the said commit, or the e-mail.
Read more >