Latest posts
No posts match your search.
- [Java Concurrency] 04: Thread Pool Sizing
Mon Jul 27 2026
- Block Ciphers Decoded: DES, AES, GOST, and the Modes That Make or Break Them
Sun Jul 26 2026
- How Cryptographers Measure Impossible: Security Levels, Proofs, and Real Failures
Sun Jul 26 2026
- Randomness in Cryptography: PRNGs, CSPRNGs, Entropy, and Real-World Failures
Sun Jul 26 2026
- Stream Ciphers Explained: RC4, LFSRs, Salsa20/ChaCha, and the Nonce Reuse Trap
Sun Jul 26 2026
- Authenticated Encryption: Detecting Tampering with AES-GCM
Sat Jul 25 2026
- Breaking the Caesar Cipher: Classical Encryption in Practice
Sat Jul 25 2026
- Why ECB Mode Leaks Patterns: A Visual Guide to Cipher Modes
Sat Jul 25 2026
- SSD Benchmarking with fio: Throughput and IOPS, Test-File Only
Sat Jul 25 2026
- Designing a Login with OTP Flow: A Practical Tutorial
Sat Jul 25 2026
- AI Tool Calling With Example
Mon Jun 15 2026
- Problem-First Architecture Patterns In Web Applications
Sat Jun 13 2026
- Clear Liquibase checksum on upgrade
Thu Jun 11 2026
- Guide To ReentrantLock
Mon Apr 13 2026
- Lesson 3.2: The Loop (Cycles)
Sat Jan 31 2026
- Lesson 3.1: The Router (Conditional Edges)
Sat Jan 31 2026
- Lesson 2.2 The Solution: Reducers
Sat Jan 31 2026
- Lesson 2.1 The Problem: The "Overwrite" Bug
Sat Jan 31 2026
- Lesson 1.2: The "Broken Telephone" (Why State Matters)
Sat Jan 31 2026
- Lesson 1.1: The "Hello World" Graph
Sat Jan 31 2026
- Quick Setup For Monitoring Stack With VictoriaLogs and Vector
Mon Jan 05 2026
- Fix error: GPGME error: No data on Arch Linux
Sat Dec 20 2025
- Building RAG: A Hello World Example
Sat Nov 29 2025
- Fixing "Exec Format Error" When Building ARM Docker Images on Intel Jenkins
Sat Nov 29 2025
- How to Create a Case-Insensitive Enum in Python
Sun Nov 02 2025
- Create HotKeys For Applications On KDE Wayland with kdotool
Sat Nov 01 2025
- Guide to Fixing a Slow Android Emulator on Arch Linux
Fri Sep 26 2025
- Configure Expo Login With Keycloak
Fri Sep 26 2025
- Setting Correct Permission For WordPress Using trafex/php-nginx
Sun Sep 21 2025
- Install Docker BuildX on Ubuntu Server
Sat Sep 20 2025
- Vietnamese Input on Arch Linux (Wayland/Hyprland)
Wed Sep 10 2025
- Enable Colors For Logs With Logback Spring
Sat Aug 23 2025
- Working With Kafka Topics & Messages
Sun Aug 03 2025
- Create a Kafka Cluster With Docker
Sat Aug 02 2025
- Kafka's Architecture Fundamentals
Fri Aug 01 2025
- Using AutoKey To Create Shortcut Switching Applications on Linux
Sat Jun 28 2025
- Fix OBS only show portion of the screen
Sat Jun 28 2025
- How to fix wifi issue in ubuntu
Sat Jun 21 2025
- Setup and connect to VPN using OpenVPN Client On Ubuntu
Fri Jun 20 2025
- My Perfect Oh My Posh Replacement For Oh My Zsh
Tue May 20 2025
- Create a 3 Nodes Kafka On Your Local Machine
Thu Apr 10 2025
- A Comprehensive Guide to Fundamental Concepts Of System Design
Mon Apr 07 2025
- Building a Distributed Online Store with Spring Boot, RabbitMQ, and OpenTelemetry
Mon Apr 07 2025
- JVM Performance Tuning (Beginner-Friendly Guide)
Sun Apr 06 2025
- Roadmap to Mastering System Design (Real-Time, High-Throughput & Event-Driven)
Fri Apr 04 2025
- How To Add new Peer To your WireGuard VPN
Sat Mar 29 2025
- Spring Boot SSE With SNS, SQS and S3
Fri Mar 28 2025
- Setup Keycloak (26) behind Caddy Proxy
Sat Mar 22 2025
- CISSP 1: Security Governance Through Principles and Policies Concepts and FAQ
Fri Mar 21 2025
- List of Locales In JSON format
Fri Mar 21 2025
- Transaction Data Integrity In Spring Data JPA
Tue Feb 25 2025
- How to Create A Video Thumbnail In Java
Sat Feb 15 2025
- Pitfalls Developers Should Avoid When Transitioning from a Monolithic to a Distributed System
Sat Feb 08 2025
- Developer Guide for Distributed Systems
Fri Feb 07 2025
- Notes for Architects in Distributed System Design
Thu Feb 06 2025
- Introduction to Event-Driven Architecture
Sat Feb 01 2025
- Understanding the Microkernel Architecture
Thu Jan 30 2025
- An Introduction to the layered architecture
Thu Jan 30 2025
- Better Swing Layout With MigLayout
Wed Jan 15 2025
- SQLite Deep Dive
Sun Jan 05 2025
- Pattern Matching In Java
Sun Jan 05 2025
- Tuning Tips to Maximize Postgres Performance
Sun Dec 15 2024
- How to Enable Spring Data MongoDB Auto Index Creation
Sun Nov 10 2024
- How to fix Developer Error On Android Firebase Login
Thu Oct 24 2024
- Add CORS Configure For Spring Boot App
Fri Oct 18 2024
- Build Vite+React For Production With Nginx
Fri Oct 18 2024
- Using AI To Generate Git Commit Message For Free
Sun Sep 29 2024
- 6 Ways To Directly Initialize a HashMap in Java
Mon Sep 16 2024
- Correct Way To Set Timeout In RestTemplate
Fri Aug 23 2024
- Using MessageSource In Spring Boot Application
Sat Jun 29 2024
- Fix Could not find a valid Docker environment TestContainers
Sun May 05 2024
- Running PNPM With WebStorm
Sat May 04 2024
- Setup Your Own VPN With WireGuard & Caddy
Sat May 04 2024
- Using @AttributeOverride To Resolve Conflicts
Mon Apr 08 2024
- AWS Step Functions Overview
Tue Feb 27 2024
- Working With Currency Data In Java
Sun Feb 25 2024
- Using FFMPEG in Java Cheat Sheet
Sun Feb 25 2024
- Understanding == and equals() in Java
Sun Feb 25 2024
- Centralized Logging with Spring Boot and MongoDB using Logback
Mon Feb 05 2024
- Mastering Advanced Logback Configurations in Spring Boot
Sun Feb 04 2024
- Configuring Basic Logging in Spring Boot
Sat Feb 03 2024
- Logging Fundamentals in Spring Boot
Sat Feb 03 2024
- How To Pretty Print JSON in Javascript/TypeScript
Sat Feb 03 2024
- How To Watch File Changes With Java NIO2
Mon Jan 08 2024
- Linux find Command Cheat Sheet
Sun Dec 17 2023
- Run mvn spring-boot:run With Environment Variables
Sat Dec 16 2023
- Microsoft Translation Languages As Select Box
Fri Dec 15 2023
- Spring AOP Recipies
Thu Dec 14 2023
- Configure Jenkins With Caddy
Fri Dec 08 2023
- Guide to The SOLID Principles In Java
Fri Nov 03 2023
- Get Keycloak Access Token Without Password
Thu Oct 26 2023
- Create a Jenkins pipeline to deploy the angular app
Mon Oct 23 2023
- Develop the Wallet UI With Angular
Fri Oct 20 2023
- Create API to Upload Images To Aws S3
Fri Oct 20 2023
- Develop the API (CRUD Wallet, Transaction)
Thu Oct 19 2023
- Setup MongoDB, HAProxy for Local Development
Thu Oct 19 2023
- Test the Auth0 Access Token
Thu Oct 19 2023
- Integrate Auth0 with Spring Boot Resource Server
Thu Oct 19 2023
- Integrate Auth0 with angular
Thu Oct 19 2023
- Sending Map from Angular to Spring Boot Backend
Tue Oct 17 2023
- DoubleConsumer vs Consumer<Double>
Sun Oct 08 2023
- Java Consumer Functional Interface Tutorial
Sun Oct 08 2023
- Java Predicate & BiPredicate Tutorial
Fri Oct 06 2023
- Java BinaryOperator Functional Interface Tutorial
Thu Oct 05 2023
- Java BiFunction Tutorial
Thu Oct 05 2023
- Java BiConsumer Functional Interface Tutorial
Wed Oct 04 2023
- Java Fork/Join Framework File Downloading Examples
Mon Sep 25 2023
- 4 Key differences between a HashMap and a Hashtable in Java
Wed Sep 13 2023
- Java Exception Handling Cheat Sheet
Fri Sep 08 2023
- Fix Failed to instantiate... using constructor NO_CONSTRUCTOR with arguments
Sat Aug 26 2023
- Understand Hibernate @ManyToOne, @OneToMany With Examples
Tue Aug 08 2023
- Using Custom Converter In Hibernate
Mon Jul 31 2023
- Using @ColumnTransformer In Hibernate
Mon Jul 31 2023
- How To use @Formula in Hibernate
Mon Jul 31 2023
- Understanding @Embedded and @Embeddable In Hibernate
Mon Jul 31 2023
- Understanding Candidate Keys, Primary Key, Natural Key, and Surrogate Keys in Hibernate
Mon Jul 31 2023
- Why does Hibernate Need A No-arg constructor
Mon Jul 31 2023
- Implement SSE with Spring Boot And Angular
Thu Jul 20 2023
- Fix Null SecurityContext In Spring Multi-Threading (@Async)
Wed Jun 14 2023
- How to Fix OpenVPN Unsupported Options
Thu Jun 08 2023
- Using Interface In Spring Boot @RequestBody
Wed Jun 07 2023
- Fix LocalDateTime Serialization with Redis & Spring Boot Cache
Sun Apr 16 2023
- Redis Command CheatSheet
Thu Apr 13 2023
- Day 4: Dictionaries and Tuples in Python
Fri Apr 07 2023
- Day 3: Strings and Lists
Mon Apr 03 2023
- Day 2: Control Structures and Functions
Mon Apr 03 2023
- Git Tags Cheatsheet
Sat Apr 01 2023
- Day 1: Introduction to Python
Fri Mar 31 2023
- Create Git Aliases On PowerShell 7
Thu Mar 09 2023
- SQL Subqueries Tutorial
Fri Feb 24 2023
- CURL Must Know Commands for Web Developers
Thu Feb 23 2023
- SQL Select Tutorial
Wed Feb 22 2023
- SQL Aggregation Tutorial
Wed Feb 22 2023
- Setup PostgreSQL And pgAdmin
Wed Feb 22 2023
- Integrate Keycloak With Spring Boot 3
Tue Feb 21 2023
- Running Keycloak Container On Apple Silicon CPU (M1, M2)
Wed Feb 01 2023
- 4 Ways To Read Text Files In Java 8+ (without External Libraries)
Tue Jan 31 2023
- [Java Concurrency] ThreadLocal Tutorial
Wed Jan 18 2023
- Enable gzip & caching with Caddy
Sun Jan 08 2023
- Create Your Own Private Docker Registry With Nexus3 OSS & Caddy
Thu Jan 05 2023
- Quick RabbitMQ Tutorials With Examples in Java
Sun Dec 25 2022
- How To Simulate A Delay With HAProxy
Fri Dec 23 2022
- Guide to ConcurrentModificationException
Thu Dec 22 2022
- Adapter Design Pattern Tutorial In Java
Thu Dec 15 2022
- Proxy Design Pattern Tutorial In Java
Wed Dec 14 2022
- Introduction To The Law Of Demeter In Java
Tue Dec 13 2022
- Introduction to the Keytool Utility In Java
Thu Dec 08 2022
- Beginner's Guide to Connection Pools in Java
Mon Dec 05 2022
- Configure Spring Logging To Elasticsearch
Fri Dec 02 2022
- Use Cases of Redis In Software Systems
Fri Dec 02 2022
- CAP Theorem Quick Overview
Fri Dec 02 2022
- Spring Boot Commandline Runner Tutorial
Tue Nov 29 2022
- How To Generate CA and Self-Signed SSL Certificate For Your Website
Thu Nov 24 2022
- How To Print Udemy Course's Videos Titles
Wed Nov 16 2022
- [Fixed] Cannot Push To Github From The Command Line
Fri Nov 11 2022
- Test Email Sending With MailHog In Spring
Sat Nov 05 2022
- How To Set Icon (On Dock/Taskbar) For JavaFX Application
Fri Nov 04 2022
- How to add Custom Claims from User Attributes in Keycloak
Fri Oct 28 2022
- AWS S3, Digital Ocean Spaces CRUD (Download, Upload) With Java Tutorial
Fri Oct 21 2022
- How To Use @Transactional In Spring Properly
Thu Oct 20 2022
- Configure Data Sources in Spring Application
Wed Oct 19 2022
- Using Transaction With JDBC in Spring
Wed Oct 19 2022
- Getting started with Database Transaction
Tue Oct 18 2022
- Configure TestContainers to Use Remote Docker hosts
Sat Oct 15 2022
- Configure Maven to always clean when running package/install
Fri Oct 14 2022
- Java in The Command Line (Without IDE)
Fri Oct 14 2022
- ActiveMQ Multiple Consumers With Spring JMS
Wed Oct 12 2022
- How To quickly start ActiveMQ with Docker
Wed Oct 12 2022
- ActiveMQ and Spring Boot Message queue Tutorial (w/ Examples)
Wed Oct 12 2022
- Run & Build ActiveMQ Docker Image
Tue Oct 11 2022
- How To Enable IPv4 on VirtualBox Host Only Network
Mon Oct 10 2022
- How To add Timestamp in DAML contract
Thu Oct 06 2022
- JUnit 5 beginners' cheat sheet
Wed Oct 05 2022
- Java equals and hashCode Tutorial
Sun Oct 02 2022
- Running Free OpenSource Translate API With Docker
Fri Sep 30 2022
- How To Map String To Boolean in Spring Data JPA
Thu Sep 29 2022
- Configure Spring Boot Redis Cache (w/ Examples)
Wed Sep 28 2022
- Flyway Spring Boot Integration Guide w/ Example
Tue Sep 27 2022
- How To Configure Angular With Keycloak
Fri Sep 23 2022
- Change ubuntu WSL2 Hostname permanently
Wed Sep 21 2022
- Windows PowerShell Cheat Sheet
Mon Sep 19 2022
- Java Concurrency CountDownLatch Tutorial
Wed Sep 07 2022
- [Java Concurrency] Threads communication
Wed Sep 07 2022
- Docker Image To Simulate Long Delay API Calls
Tue Sep 06 2022
- Apache Kafka Tutorial For Beginners
Tue Aug 30 2022
- Add Swagger to Spring Boot in 1 minute (Without Spring Fox)
Tue Aug 23 2022
- Scala Variables Tutorial
Thu Aug 18 2022
- Scala Control Structures
Wed Aug 17 2022
- Scala functions
Wed Aug 17 2022
- Your first Scala program
Wed Aug 17 2022
- Create Scala project in IntelliJ IDEA
Wed Aug 17 2022
- Jakarta Servlets Quick Start Tutorial
Tue Aug 16 2022
- Java Serialization fundamentals
Tue Aug 09 2022
- Java Serialization examples
Tue Aug 09 2022
- MongoDB Index Tutorial
Wed Aug 03 2022
- MongoDB Aggregation Framework Cheat Sheet
Tue Aug 02 2022
- MongoDB Basic CRUD Cheat Sheet
Thu Jul 28 2022
- Setup MongoDB Test Environment With Docker
Thu Jul 28 2022
- Getting started with Git
Sat Jul 23 2022
- Spring Cloud Config Server Complete Guide (w/ Examples)
Thu Jul 21 2022
- Guide to Variable Initialization in Java
Tue Jul 19 2022
- Running Matomo Using Docker Compose
Wed Jul 13 2022
- AWS Certified Cloud Practitioner 2022 Learning Notes
Tue Jul 12 2022
- How to Run Maven Test on Specific package/directory
Sat Jul 02 2022
- [Java Concurrency] 04: ExecutorService
Thu Jun 30 2022
- Introduction to the Map Interface in Java
Thu Jun 30 2022
- Guide to the SortedSet interface in Java
Wed Jun 29 2022
- Overview of the Set interface in Java
Tue Jun 28 2022
- PriorityQueues and their usages
Tue Jun 28 2022
- Guide to Deque in Java
Tue Jun 28 2022
- Overview of the Queue Interface in Java
Mon Jun 27 2022
- How to add docker client to Jenkins
Sun Jun 26 2022
- Create a Simple WebSocket application with Java EE
Wed Jun 15 2022
- How to Configure Apache Tomcat as target Runtime for Eclipse
Wed Jun 15 2022
- Selection sort in Java
Thu Jun 09 2022
- How To Install Oracle Database on Docker
Sun Apr 03 2022
- Unable to parse response body for Response Quick Fix with Elasticsearch & Spring boot
Thu Mar 24 2022
- Setup Cucumber, TestContainers & Junit5 in Spring Boot Project
Sun Mar 13 2022
- How to find Intellij executable on Ubuntu
Tue Mar 08 2022
- Passing Data From API Between Components in Angular
Sun Feb 06 2022
- Forward proxy_pass and add CORS headers in nginx
Wed Dec 29 2021
- [Java Concurrency] 03: Callable
Wed Dec 29 2021
- [Java Concurrency] 02: Runnable
Wed Dec 22 2021
- [Java Concurrency] 01: Thread & Process
Wed Dec 22 2021
- Configure HAProxy to Accept Preflight Requests (CORS)
Thu Dec 02 2021
- Fix Angular 404 on reload Nginx
Wed Dec 01 2021
- Integrate Keycloak With Spring Boot Step by Step
Sun Nov 21 2021
- Ubuntu package management cheat sheet
Sat Nov 20 2021
- Top Useful Copy-Paste Commands For Apache Solr
Mon Nov 01 2021
- Fix 403 Forbidden when creating users in Keycloak
Thu Oct 14 2021
- Quick Fix For WordPress Local Deployment with Docker
Sat Oct 09 2021
- Using Hibernate In Standalone App (without Spring) using MariaDB
Sun Sep 12 2021
- Setup OpenProject With Docker & Nginx(with SSL)
Sun Sep 05 2021
- Basic setups for working with Kubernetes
Sun Aug 22 2021
- Affinity and Antiaffinity in Kubernetes simplified
Wed Aug 04 2021
- Kubernetes labels cheatsheet
Sun Aug 01 2021
- Create and use ConfigMap in Kubernetes With Diagram
Tue Jul 27 2021
- Creating Kubernetes Replication Controller in 5 Minutes
Tue Jun 29 2021
- PostgreSQL Docker client-only Image
Tue Jun 22 2021
- Install Kubernetes Cluster With Kubeadm On Ubuntu Step By Step
Mon Jun 07 2021
- How To Set Static IP To VirtualBox VM
Thu Jun 03 2021
- Building Simple HTML Server Using JavaFX & Undertow
Sun May 30 2021
- JavaFX Starter Project - Quickly create and run
Sun May 30 2021
- Configure SSO Server With Keycloak, HAProxy & Docker
Thu May 27 2021
- EJB Events Tutorial With Quarkus Example
Fri May 21 2021
- [Fix] Git Bash Java: invalid target release: 11
Thu May 20 2021
- Using SecondaryTable For Flexible Database Design (With example)
Sat Apr 24 2021
- Setting and Getting Custom Properties In Quarkus
Fri Apr 23 2021
- How To Return File Download In JAX-RS Application
Fri Apr 23 2021
- Create Quarkus Project Under 5 Minutes With Live Reloading
Tue Apr 20 2021
- How To Fix CORS AJAX In Chrome Extension
Sat Apr 17 2021