Skip to main content

Posts

Using HashiCorp Vault to Secure Your Local Credentials

⚠️ Disclaimer : This guide is for macOS only. I’m using a MacBook Air so I won’t be able to cover Windows or Linux steps. Also, this Vault setup is meant for local/dev use only  —  not for production . What Is Vault & Why Use It? HashiCorp Vault is like a digital safe for storing secrets — think passwords, API keys, tokens, or anything sensitive. Instead of keeping those values in  .env files or plaintext notes, Vault encrypts and protects them. With just a few commands, you can set up your Mac to behave like a personal Vault server. What You’ll Need Mac with Homebrew installed Internet connection Terminal access Patience (don’t worry — I’ll guide you!) Step-by-Step: Setting Up Vault Locally on macOS 1. Install Vault Using Homebrew # Install Vault brew tap hashicorp/tap brew install hashicorp/tap/vault # Verify Vault Installation vault -version 2. Locate Vault Installation # CD to directory where homebrew installs cd " $(brew --prefix) " # Run ls command...
Recent posts

Semantic Versioning (SemVer) Explained for Absolute Dummies

If you’ve seen version numbers like   1.2.3  or  4.5.6-beta , and wondered what all those numbers mean — you're in the right place. This is your  no-jargon ,  easy-to-digest  guide to  Semantic Versioning  — or  SemVer . What is Semantic Versioning? Semantic Versioning is a standard for naming versions of your software. It uses three numbers: MAJOR.MINOR.PATCH Basic Format 1.2.3 ↑ ↑ ↑ │ │ └─ PATCH │ └─── MINOR └───── MAJOR Now let’s break it down —  as if you’re explaining it to your non-techy cousin. The Numbers 1. MAJOR version ( 1.x.x ) When you  break things . Not compatible with old versions. You remove or change a function’s behavior in a way that older code will break. Example : You go from   1.2.3   ➜   2.0.0 "Whoa, we broke something!" 2. MINOR version ( x.1.x ) When you  add features , but nothing breaks. Compatible with old versions. Example: You go from   1.2.3   ➜   1.3.0 "Hey, we adde...

Understanding Recursion in C: A Beginner-Friendly Guide

If you’ve just started learning about recursion in your programming course, it might feel a little confusing at first. But don’t worry — in this guide, we’ll break it down into small, easy-to-digest pieces with sample C codes and clear explanations. By the end, you’ll understand   what recursion is ,   how it works , and   when to use it . Tip:  You can try out all the code examples in this article using an online compiler like  Programiz Online C Compiler . No installation needed! What is Recursion? Recursion  is a programming technique where a function  calls itself  to solve smaller parts of a problem until it reaches a simple case (called the  base case ). Think of recursion like solving a puzzle where each piece depends on solving a smaller puzzle first. Key Concepts Recursive function  — a function that calls itself. Base case  — the condition that stops the recursion. Recursive case  — the part of the function where it c...

Understanding struct in C: A Beginner-Friendly Guide

When learning C programming, you’ll eventually come across the keyword   struct . If you're confused about what it does or how to use it, you're not alone—many beginners feel the same way at first. This guide will help you understand what a   struct   is, why it's useful, and how to use it effectively through simple explanations and code examples. Tip:  You can try out all the code examples in this article using an online compiler like  Programiz Online C Compiler . No installation needed! What is a  struct  in C? In simple terms, a  struct  (short for "structure") is a user-defined data type in C that allows you to group multiple variables of different types under one name. Think of it like a  custom container  that holds different pieces of related data. Why Use  struct ? Imagine you’re working with data about a student. A student has a name, ID number, and grade. Without a  struct , you'd declare them like this: char n...