Beyond Goals: Doerr's OKRs For High-Performance Teams
In this article, I distill the key concepts from Doerr's book, focusing on how OKRs and CFRs empower teams to deliver exceptional results.

Building OpenTask with Next.js App Router and RSCs
Nexar: application architecture for Next.js App Router apps
Tired of starting new Next.js apps with a spaghetti codebase? Nexar is here to help! It's a modular and layered architecture to build scalable, maintainable, and well-organized Nextjs App Router codebases. Say goodbye to spaghetti code!

What is software architecture?
Learn what software architecture is, why it's important, and how components, modules, and layers help you modularize your applications.

React Server Components and a new hybrid web app model
Learn why React Server Components and the new Next.js App Router unlock a new hybrid web application model, why it makes sense, and how to use it.

Wildcard HTTPS on Linux + Let's Encrypt + Nginx
Learn how to set up HTTPS on a Linux server using a wildcard certificate from Let's Encrypt and set up the Nginx website configuration files accordingly.

What are HTTPS, TLS certificates, and Let's Encrypt?
Learn what HTTPS and TLS are, what certification authorities (CAs) are, what Let's Encrypt is, and the difference between regular and wildcard certificates.

How to set up your Mac for software development
Learn how to install Homebrew, Git, Node.js, Oh My Zsh, generate SSH keys, and more.

How to install and run Node.js with nvm on macOS
Learn how to install and run multiple Node.js versions effortlessly using nvm.

How to sign Git commits with SSH keys on macOS
Learn how to sign Git commits using SSH keys, how to set up Git to remember your passphrase, and how to verify your commits locally and on GitHub.

How to generate and use SSH keys on macOS
Learn how to generate SSH keys, why you should use passphrases, how to use your SSH keys on GitHub, and more.

How to install and use Antigen and Oh My Zsh on macOS
How to install Git with Homebrew on macOS
How to install and use Homebrew on macOS
Learn how to install Homebrew in four easy steps.

How to install Command Line Developer Tools on macOS
Remote and tracking branches with Git
Do you know what are remote and tracking branches? Tracking ones can make our lives easier, get to know why and how.

How to password-protect content on Linux + Nginx
Learn how to password-protect files and directories on Linux + Nginx in 4 steps using HTTP Authentication.

Software testing in the real world
In this short entry I'll talk about something you may not know: it's not possible to release bug-free software! Get to know why, and how to proceed with your testing activities in the real world.

Tagging with Git
How to set up a website on Linux + Nginx
Learn how to set up a website or web app using the ultra-fast Nginx HTTP Server on Linux in 6 steps.

How to install Nginx on Linux
Learn how to install Nginx on Debian or Ubuntu in 5 steps.

Testing is not Quality Assurance (QA)
Learn the difference between Software Testing and Quality Assurance (QA).

Branching and merging with Git
Learn what Git branching is, why use it, and how to create and merge branches, including conflict resolution.

How to set up a Linux VPS
Learn how to securely set up a Debian or Ubuntu VPS (Virtual Private Server) from scratch in 11 steps.

Introduction to NoSQL
Learn what NoSQL is, why it is different, its four main data models (key-value, document, column-family, and graph), when we should use it, and more.

How to report bugs effectively?
Learn how to report bugs effectively proving a clear description, reproducible steps, sorting by severity and priority, and more.

Basic Git commands explained
Learn some basic Gits commands: clone, init, status, commit, push, pull, remote, and more.

Introduction to Node.js
Get a comprehensive introduction to what Node.js is, why it's different, when we should use it, what evented I/O means, and more.

Introduction to UML
Get an introduction to what UML is, what are models, requirements, use cases, and more.

What is software testing?
What is software testing? What are black-box and white-box testing? What are unit, integration, and end-to-end testing? Get these and more questions answered.

Git workflow
Learn about Git's three file states (modified, staged and committed), and its three corresponding sections (working directory, staging area and Git directory).

What is a software bug?
Sometimes tricky issues arise in software development, but not all are bugs. In this article you'll learn solid parameters to make sure something really is a bug.

What is a product specification?
Learn what a product specification (spec) is, why it's so important, and know some types of documents that may compose it.

Introduction to Git
This article explains what Git is, a little about how it works internally, what a DVCS (Distributed Version Control System) is, its advantages, and more.

Welcome
Welcome to my blog. I'll be writing mostly about Ruby, Rails, HTML5, JavaScript, iOS, Android, Web Server, etc. Feel free to cooperate, share ideias and checkout the public repository.
