Database Theory: How Databases Work Under the Hood

Introduction Databases are at the heart of virtually every software system — from web applications to financial platforms to machine learning pipelines. But how do they actually work? What happens when you run a SELECT query? How are rows stored on disk? How do multiple transactions run concurrently without corrupting data? This post is a comprehensive guide to database theory, covering the full lifecycle of database design and operation: from conceptual modeling to physical storage, from SQL queries to concurrency control. Whether you are studying for an exam, preparing for a systems design interview, or simply curious about what happens beneath the ORM layer, this guide has you covered. ...

February 9, 2026 · 21 min · Umberto Domenico Ciccia

Computer Networks: A Comprehensive Guide

Introduction Computer networks are the backbone of modern computing. Every time you browse a website, send an email, or stream a video, you rely on a complex stack of protocols, algorithms, and hardware working together. This post is a comprehensive guide to how computer networks work — from the physical transmission of bits to the application-layer protocols you use daily. We will walk through the layered network models (OSI and TCP/IP), dive into each layer’s responsibilities, explore routing and addressing, examine transport-layer reliability, and cover essential application-layer protocols. We will also touch on security, cloud computing, peer-to-peer systems, and distributed architectures like blockchain. ...

February 9, 2026 · 27 min · Umberto Domenico Ciccia

System Design Fundamentals

Basic Application Architecture Developer Perspective A typical application is composed of: Build & Deploy Layer — CI/CD pipeline Server Layer — handles incoming requests Storage Layer — persists application data (can be external) Logging Storage Server — logs all events Metric Storage Server — logs all metrics Alert Server — alerts when something goes down Stateless vs Stateful Services Stateless: the server holds no session data between requests. Any instance can serve any request. Enables effortless horizontal scaling. Stateful: the server holds session data (e.g. WebSocket connections, in-memory cart). Requires sticky sessions (session affinity at the load balancer) or externalizing state to Redis/a DB. Stateless Stateful Horizontal scaling Trivial — add instances freely Hard — requires sticky sessions or external state Fault tolerance High — any replica serves the request Low — losing a server loses its session data Examples REST APIs, static servers WebSocket servers, game servers, video call nodes User Perspective Users simply make requests to the server and receive responses. ...

February 9, 2026 · 29 min · Umberto Domenico Ciccia

Cka Notes

Core concepts Cluster Architecture Master node: orchestrate nodes → schedule, monitor, worker, state, manage cluster Worker node: host applications as container Master node components: ETCD: database of the state of the cluster KUBE-SCHEDULER: schedule pods to worker nodes CONTROLLER-MANAGER NODE-CONTROLLER: orchestrate nodes REPLICATION-CONTROLLER: orchestrate replication groups KUBE-APISERVER: expose k8s cluster from external thought api Worker node components: CONTAINER RUNTIME: container runtime engine KUBELET: agent that run in every node, for receive api call from api server KUBE-PROXY: manage communication between container, nodes Container runtime interface Container runtime interface CRI: allow to use k8s with all container runtime ...

August 6, 2025 · 22 min · Umberto Domenico Ciccia

How I Passed the KCNA Exam: A Practical Guide

Introduction Passing the Kubernetes and Cloud Native Associate (KCNA) exam was a great milestone in my cloud journey. In this post, I’ll walk you through the strategy I used to prepare and pass the exam on the first attempt. I focused on hands-on experience, curated courses, and repeated quiz practice to reinforce core concepts. Why KCNA? KCNA is a foundational certification offered by the Cloud Native Computing Foundation (CNCF). It’s designed to validate your understanding of Kubernetes, cloud-native principles, container orchestration, and open-source tools in the CNCF landscape. ...

June 28, 2025 · 2 min · Umberto Domenico Ciccia