batalin
About Me
Categories
batalin
About Me
Categories
All Categories
Development
What to Look for in a Code Review
The Standard of Code Review: Striking a Balance Between Quality and Progress
Mastering the Art of Code Review Comments
YAML Anchors and Aliases: Reusable and Maintainable YAML Documents
Scrumban: The Best of Both Worlds for Agile Software Development
More >>
Kubernetes
Managing Secrets in Kubernetes
Customising Kubernetes Resources with Kustomize
Helm: The Kubernetes Package Manager You Need to Know About
Storing Configuration Data in Kubernetes: Best Practices and Tools
Multi-Container Pods: Why They're a Powerful Tool in Kubernetes Deployments
More >>
VCS
Making a Pull Request (PR) to an open-source project
How to Search in Git History
Resolving Git Conflicts with CLI
Simplify Your Git Workflow with Aliases
Git Merge Strategies: Choose the Right Approach
More >>
Microservices
Distributed Tracing: Best Practices and Tools
Microservices vs Monolith: Which is Better
Anti-Patterns in Designing Microservices
The Transaction Outbox Pattern: Reliably Sending Messages from Database Transactions
Circuit Breaker: The Superhero of Microservices
More >>
Protocols
Demystifying JWT Tokens: The Key to Secure Web Applications
Understanding TLS for Secure Internet Communication
What Is mTLS and Why You Should Care
gRPC: High-Performance Microservices Communication Made Easy
What is Protobuf and Why Should You Care?
More >>
Code Editors
What are those .un~ files in Vim, and how to manage them
A Beginner's Guide to Line Numbers in Vim
coc.nvim – user-friendly code completion for vim
Vimtutor. Getting started with Vim
Vim plugins. Introduction
Database
Scaling Redis: Understanding Shards and Partitions
ACID: The Four Principles that Keep Your Database Transactions Safe
Understanding Write-Ahead Logging (WAL) in Database Systems
Memcached vs. Redis: Choosing the Right Cache Solution for Your Web Application
Unlocking the Power of Redis: A Guide to In-Memory Data Storage
Java
How to Remote Debug a Java Application with IntelliJ IDEA using SSH Tunneling
Managing Classpath Clashes in Gradle: Tips and Tools
Dependency Management in Gradle: API vs Implementation
How to Easily Manage Your Java Development Kits with SDKMAN on Your Mac
jenv: A Game Changer for Java Version Management
Blog
Deploying Your Hugo Blog to Cloudflare Pages
Creating Your Own Custom Hugo Template: A Step-by-Step Guide
The simplest guide to scheduling posts for your Hugo blog
Cloud
The Benefits of Serverless Computing
Building and Deploying Serverless Functions with AWS Lambda
Getting Started with VPC Endpoints
Deployment
Streamline Your Workflow with GitHub Actions
CI/CD: The Secret to Faster, More Reliable Software Development
Canary Releases: Rolling Out Updates Safely and Confidently
Network
Wireshark: The Ultimate Network Analyzer
Setting Up Outline VPN: A Step-by-Step Guide
Ingress vs Egress: What is it
Observability
Infrastructure Monitoring: A Beginner's Guide
Understanding Rate Limiting: Why It Matters and How to Implement It
Why Loki is the Ultimate Solution for Modern Logging Needs
Python
Simplify HTTP Request Mocking in Python with Responses
How to Install pip3: An Essential Tool for Software Engineering
Understanding and using Virtual Environments in Python
Terminal
How to Fix dquote> in zsh
How to Connect via SSH without Typing Passwords
Mosh – SSH replacement for unreliable network
Docker
Docker for Devs: Streamlining Development and Deployment
Docker Desktop on Mac: A Guide to the Changes and Available Alternatives
Infrastructure
Infrastructure as Code: Best Practices and Tools
Simplify Your Infrastructure Management with Ansible
Go
Naming Go Packages: Best Practices and Common Mistakes
Spinnaker
A Quick Guide to Setting Up Halyard Completion in ZSH