<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom"><title>Networking with Go, Made Easy — New Chapters</title><id>https://sazardev.github.io/networking-with-go/feed.xml</id><link rel="self" href="https://sazardev.github.io/networking-with-go/feed.xml"/><link href="https://sazardev.github.io/networking-with-go/"/><updated>2026-08-07T18:13:21Z</updated><author><name>Omar Flores Salazar</name></author>
<entry><title>About the Author</title><link href="https://sazardev.github.io/networking-with-go/read/front-matter/01-about-the-author.html"/><id>https://sazardev.github.io/networking-with-go/read/front-matter/01-about-the-author.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;I don&#39;t know your name, your age, or your story. But if you&#39;re reading this, you&#39;re already on the path — and I&#39;m rooting for you.&#34;</summary><category term="About the Author"/></entry>
<entry><title>Introduction to Networking</title><link href="https://sazardev.github.io/networking-with-go/read/networking-foundations/01-introduction-to-networking.html"/><id>https://sazardev.github.io/networking-with-go/read/networking-foundations/01-introduction-to-networking.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Somewhere in the last few seconds, before you even opened this book, your phone quietly asked the world a question. Maybe it checked for a new message. Maybe it refreshed a weather forecast, or synced a photo, or pinged a server to see if a…</summary><category term="Networking Foundations"/></entry>
<entry><title>History and Evolution of Computer Networks</title><link href="https://sazardev.github.io/networking-with-go/read/networking-foundations/02-history-and-evolution-of-computer-networks.html"/><id>https://sazardev.github.io/networking-with-go/read/networking-foundations/02-history-and-evolution-of-computer-networks.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;Imagine a world where computers are like islands, isolated and alone, unable to share their treasures. Now, picture bridges being built, one by one, until a vast, bustling metropolis emerges — this is the story of computer networks!&#34; This …</summary><category term="Networking Foundations"/></entry>
<entry><title>Types of Networks: LAN, WAN, MAN, PAN</title><link href="https://sazardev.github.io/networking-with-go/read/networking-foundations/03-types-of-networks-lan-wan-man-pan.html"/><id>https://sazardev.github.io/networking-with-go/read/networking-foundations/03-types-of-networks-lan-wan-man-pan.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Right now, within arm&#39;s reach of you, there is very likely a network so small and so intimate that you have never once thought of it as a network at all. If you are listening to anything through wireless earbuds, a burst of radio energy is …</summary><category term="Networking Foundations"/></entry>
<entry><title>Network Topologies and Architectures</title><link href="https://sazardev.github.io/networking-with-go/read/networking-foundations/04-network-topologies-and-architectures.html"/><id>https://sazardev.github.io/networking-with-go/read/networking-foundations/04-network-topologies-and-architectures.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Picture, for a moment, the street plan of a city you know well. Some cities grew around one great square, with every road eventually leading back to it. Some grew as a grid, endlessly repeatable, block after identical block. Some grew as a …</summary><category term="Networking Foundations"/></entry>
<entry><title>The OSI and TCP/IP Models</title><link href="https://sazardev.github.io/networking-with-go/read/networking-foundations/05-the-osi-and-tcp-ip-models.html"/><id>https://sazardev.github.io/networking-with-go/read/networking-foundations/05-the-osi-and-tcp-ip-models.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Try, for a moment, to actually hold the whole journey of a single email in your head at once: the words you typed, encoded into bytes; those bytes broken into chunks and numbered so they can be reassembled in order; each chunk wrapped in an…</summary><category term="Networking Foundations"/></entry>
<entry><title>Understanding IP Addressing and Subnetting</title><link href="https://sazardev.github.io/networking-with-go/read/networking-foundations/06-understanding-ip-addressing-and-subnetting.html"/><id>https://sazardev.github.io/networking-with-go/read/networking-foundations/06-understanding-ip-addressing-and-subnetting.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Imagine, for a second, a planet with no postal codes at all — just billions of buildings, no street names, no way to say &#34;the third house past the bakery&#34; to anyone who isn&#39;t already standing next to you. Every letter would have to be deliv…</summary><category term="Networking Foundations"/></entry>
<entry><title>Ports, Sockets, and Endpoints</title><link href="https://sazardev.github.io/networking-with-go/read/networking-foundations/07-ports-sockets-and-endpoints.html"/><id>https://sazardev.github.io/networking-with-go/read/networking-foundations/07-ports-sockets-and-endpoints.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Look at your laptop right now, before you read another word. It is almost certainly not doing one thing on the network — it is doing five or six at once, and you don&#39;t feel any of it happening. A mail client is quietly polling for new messa…</summary><category term="Networking Foundations"/></entry>
<entry><title>TCP vs UDP: Concepts and Use Cases</title><link href="https://sazardev.github.io/networking-with-go/read/networking-foundations/08-tcp-vs-udp-concepts-and-use-cases.html"/><id>https://sazardev.github.io/networking-with-go/read/networking-foundations/08-tcp-vs-udp-concepts-and-use-cases.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Somewhere around 1980, a small group of engineers had to make a decision that every single video call, download, and multiplayer match you&#39;ve ever used still lives inside of today. IP, the addressing layer underneath everything, had just be…</summary><category term="Networking Foundations"/></entry>
<entry><title>Common Network Protocols (HTTP, FTP, DNS, etc.)</title><link href="https://sazardev.github.io/networking-with-go/read/networking-foundations/09-common-network-protocols-http-ftp-dns-etc.html"/><id>https://sazardev.github.io/networking-with-go/read/networking-foundations/09-common-network-protocols-http-ftp-dns-etc.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Imagine two strangers, neither speaking a word of the other&#39;s language, trying to complete a business deal through gestures alone. It can be done, badly, with enough patience and luck. Now imagine instead that both of them have quietly agre…</summary><category term="Networking Foundations"/></entry>
<entry><title>Network Security Fundamentals</title><link href="https://sazardev.github.io/networking-with-go/read/networking-foundations/10-network-security-fundamentals.html"/><id>https://sazardev.github.io/networking-with-go/read/networking-foundations/10-network-security-fundamentals.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">In 1971, an experimental little program called Creeper began quietly hopping between mainframes on the ARPANET, displaying a single, oddly cheerful taunt on whatever screen it landed on: &#34;I&#39;m the creeper, catch me if you can!&#34; It didn&#39;t ste…</summary><category term="Networking Foundations"/></entry>
<entry><title>Firewalls, NAT, and VPNs</title><link href="https://sazardev.github.io/networking-with-go/read/networking-foundations/11-firewalls-nat-and-vpns.html"/><id>https://sazardev.github.io/networking-with-go/read/networking-foundations/11-firewalls-nat-and-vpns.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;Imagine your network as a medieval city: firewalls are the city walls and gates, NAT is the clever gatekeeper who knows everyone&#39;s real and fake names, and VPNs are secret tunnels that let you travel safely, unseen by prying eyes!&#34; Picture…</summary><category term="Networking Foundations"/></entry>
<entry><title>Network Troubleshooting and Tools</title><link href="https://sazardev.github.io/networking-with-go/read/networking-foundations/12-network-troubleshooting-and-tools.html"/><id>https://sazardev.github.io/networking-with-go/read/networking-foundations/12-network-troubleshooting-and-tools.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;Imagine you&#39;re a digital detective, following clues through tangled wires and invisible signals to solve the mystery of a slow or broken network. With the right tools and a sharp mind, no problem is unsolvable!&#34; On September 9, 1947, an en…</summary><category term="Networking Foundations"/></entry>
<entry><title>Performance, Latency, and Bandwidth</title><link href="https://sazardev.github.io/networking-with-go/read/networking-foundations/13-performance-latency-and-bandwidth.html"/><id>https://sazardev.github.io/networking-with-go/read/networking-foundations/13-performance-latency-and-bandwidth.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;Imagine a race car on a track: speed, smooth turns, and pit stops all matter. In networking, performance, latency, and bandwidth are the keys to winning the digital race!&#34; In August 1858, after a fleet of ships had spent weeks laying nearl…</summary><category term="Networking Foundations"/></entry>
<entry><title>Installing Go and Your First Program</title><link href="https://sazardev.github.io/networking-with-go/read/go-fundamentals/01-installing-go-and-your-first-program.html"/><id>https://sazardev.github.io/networking-with-go/read/go-fundamentals/01-installing-go-and-your-first-program.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Every craftsperson remembers the day their first real tool arrived. Not a toy version, not a borrowed one — the actual thing, sitting on the bench, waiting to be plugged in and tried. That&#39;s this chapter. Part 1 spent thirteen chapters buil…</summary><category term="Go From Scratch"/></entry>
<entry><title>Variables, Types, and Constants</title><link href="https://sazardev.github.io/networking-with-go/read/go-fundamentals/02-variables-types-and-constants.html"/><id>https://sazardev.github.io/networking-with-go/read/go-fundamentals/02-variables-types-and-constants.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Every program you will ever write, underneath all its cleverness, is just data being stored, read, and transformed — a value coming in from somewhere, sitting in memory for a while, and eventually going somewhere else. That sounds almost to…</summary><category term="Go From Scratch"/></entry>
<entry><title>Functions and Methods</title><link href="https://sazardev.github.io/networking-with-go/read/go-fundamentals/03-functions-and-methods.html"/><id>https://sazardev.github.io/networking-with-go/read/go-fundamentals/03-functions-and-methods.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">The previous chapter was about data sitting still — a labeled box, holding a value, refusing to change shape. This chapter is about motion: taking that data and doing something to it, in a way you can name, reuse, and trust to behave the sa…</summary><category term="Go From Scratch"/></entry>
<entry><title>Structs and Interfaces</title><link href="https://sazardev.github.io/networking-with-go/read/go-fundamentals/04-structs-and-interfaces.html"/><id>https://sazardev.github.io/networking-with-go/read/go-fundamentals/04-structs-and-interfaces.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Ask a programmer coming from Java, C++, or Python what they miss most when they first pick up Go, and the honest ones will usually say the same thing: classes. No class keyword, no extends , no inheritance chain to climb when you&#39;re trying …</summary><category term="Go From Scratch"/></entry>
<entry><title>io.Reader, io.Writer, and Streaming Data</title><link href="https://sazardev.github.io/networking-with-go/read/go-fundamentals/05-io-reader-io-writer-and-streaming-data.html"/><id>https://sazardev.github.io/networking-with-go/read/go-fundamentals/05-io-reader-io-writer-and-streaming-data.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Every networked program in Go moves bytes. A TCP connection reads bytes from the network and writes bytes back. An HTTP handler reads a request body and writes a response body. A file server reads a file from disk and writes it to a socket.…</summary><category term="Go From Scratch"/></entry>
<entry><title>Slices, Arrays, and Maps</title><link href="https://sazardev.github.io/networking-with-go/read/go-fundamentals/06-slices-arrays-and-maps.html"/><id>https://sazardev.github.io/networking-with-go/read/go-fundamentals/06-slices-arrays-and-maps.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Look back at every code example in the last chapter and a pattern shows up you probably didn&#39;t stop to question: []Rectangle , []T , and — a few chapters from now — things like map[string]int showing up as casually as int or string ever did…</summary><category term="Go From Scratch"/></entry>
<entry><title>Error Handling in Go</title><link href="https://sazardev.github.io/networking-with-go/read/go-fundamentals/07-error-handling-in-go.html"/><id>https://sazardev.github.io/networking-with-go/read/go-fundamentals/07-error-handling-in-go.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">If you&#39;ve written code in almost any other mainstream language, you&#39;ve lived with try / catch , and probably been bitten by it at least once — an exception thrown three layers deep in a library you didn&#39;t write, caught (or not) in a handler…</summary><category term="Go From Scratch"/></entry>
<entry><title>Packages, Modules, and go.mod</title><link href="https://sazardev.github.io/networking-with-go/read/go-fundamentals/08-packages-modules-and-go-mod.html"/><id>https://sazardev.github.io/networking-with-go/read/go-fundamentals/08-packages-modules-and-go-mod.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Every program in this book so far has fit comfortably in one file. That won&#39;t last, and it shouldn&#39;t — a real project needs to split into pieces that different people, or even just a future, more tired version of you, can work on without st…</summary><category term="Go From Scratch"/></entry>
<entry><title>Testing Basics with go test</title><link href="https://sazardev.github.io/networking-with-go/read/go-fundamentals/09-testing-basics-with-go-test.html"/><id>https://sazardev.github.io/networking-with-go/read/go-fundamentals/09-testing-basics-with-go-test.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Ask a Go programmer what surprised them most moving from another language, and after &#34;no exceptions&#34; the next answer is often &#34;there&#39;s nothing to install to write a test.&#34; No framework to choose between, no assertion library to argue about …</summary><category term="Go From Scratch"/></entry>
<entry><title>Goroutines, Channels, and Concurrency</title><link href="https://sazardev.github.io/networking-with-go/read/go-fundamentals/10-goroutines-channels-and-concurrency.html"/><id>https://sazardev.github.io/networking-with-go/read/go-fundamentals/10-goroutines-channels-and-concurrency.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Everything in this part of the book so far has been building toward this one chapter, whether or not it said so out loud. Go wasn&#39;t designed by people trying to build a slightly nicer C. It was designed by people who had spent years at Goog…</summary><category term="Go From Scratch"/></entry>
<entry><title>Setting Up Your Go Development Environment</title><link href="https://sazardev.github.io/networking-with-go/read/core-go-networking/01-setting-up-your-go-development-environment.html"/><id>https://sazardev.github.io/networking-with-go/read/core-go-networking/01-setting-up-your-go-development-environment.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">If you completed Go Fundamentals (the section immediately before this one), your Go toolchain is already installed, your editor is configured, and you have written a dozen programs — feel free to skip to Chapter 3. This chapter is a condens…</summary><category term="Core Go Networking"/></entry>
<entry><title>Go Language Basics for Networking</title><link href="https://sazardev.github.io/networking-with-go/read/core-go-networking/02-go-language-basics-for-networking.html"/><id>https://sazardev.github.io/networking-with-go/read/core-go-networking/02-go-language-basics-for-networking.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">If you completed Go Fundamentals , you already know variables, structs, functions, slices, maps, goroutines, and channels — skip to Chapter 3. This chapter is a condensed networking-oriented refresher for readers who started directly in Par…</summary><category term="Core Go Networking"/></entry>
<entry><title>Go Networking Packages Overview</title><link href="https://sazardev.github.io/networking-with-go/read/core-go-networking/03-go-networking-packages-overview.html"/><id>https://sazardev.github.io/networking-with-go/read/core-go-networking/03-go-networking-packages-overview.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;Go&#39;s networking packages are like a box of high-tech LEGO bricks—snap them together and you can build anything from a simple chat app to a global-scale web server!&#34;</summary><category term="Core Go Networking"/></entry>
<entry><title>Working with IP, Ports, and Addresses: Concepts and Go Implementation</title><link href="https://sazardev.github.io/networking-with-go/read/core-go-networking/04-working-with-ip-ports-and-addresses-concepts-and-go-implementation.html"/><id>https://sazardev.github.io/networking-with-go/read/core-go-networking/04-working-with-ip-ports-and-addresses-concepts-and-go-implementation.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;Imagine the internet as a vast city. Every building (device) has an address (IP), every door (service) has a number (port), and Go is your GPS, map, and keyring—all in one!&#34;</summary><category term="Core Go Networking"/></entry>
<entry><title>TCP in Depth: Protocol Theory and Go Implementation</title><link href="https://sazardev.github.io/networking-with-go/read/core-go-networking/05-tcp-in-depth-protocol-theory-and-go-implementation.html"/><id>https://sazardev.github.io/networking-with-go/read/core-go-networking/05-tcp-in-depth-protocol-theory-and-go-implementation.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;Imagine sending a letter, but you want to make sure it arrives, in order, and without any missing pages. TCP is the postal service that guarantees delivery, order, and reliability—Go gives you the tools to become a master mail carrier!&#34;</summary><category term="Core Go Networking"/></entry>
<entry><title>UDP in Depth: Protocol Theory and Go Implementation</title><link href="https://sazardev.github.io/networking-with-go/read/core-go-networking/06-udp-in-depth-protocol-theory-and-go-implementation.html"/><id>https://sazardev.github.io/networking-with-go/read/core-go-networking/06-udp-in-depth-protocol-theory-and-go-implementation.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;Imagine sending postcards—fast, simple, and direct. Sometimes they get lost, sometimes they arrive out of order, but they&#39;re perfect for quick messages! UDP is the postcard protocol, and Go lets you send and receive them with ease.&#34;</summary><category term="Core Go Networking"/></entry>
<entry><title>Error Handling and Debugging: Concepts and Go Implementation</title><link href="https://sazardev.github.io/networking-with-go/read/core-go-networking/07-error-handling-and-debugging-concepts-and-go-implementation.html"/><id>https://sazardev.github.io/networking-with-go/read/core-go-networking/07-error-handling-and-debugging-concepts-and-go-implementation.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;Imagine you&#39;re a detective in the digital world—errors are your clues, and Go gives you the magnifying glass and notebook to solve every mystery!&#34;</summary><category term="Core Go Networking"/></entry>
<entry><title>Concurrency in Networking: Theory and Go Implementation</title><link href="https://sazardev.github.io/networking-with-go/read/core-go-networking/08-concurrency-in-networking-theory-and-go-implementation.html"/><id>https://sazardev.github.io/networking-with-go/read/core-go-networking/08-concurrency-in-networking-theory-and-go-implementation.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;Imagine a busy restaurant kitchen: chefs (goroutines) work on different dishes at the same time, waiters (channels) deliver orders and plates, and the manager (main function) keeps everything running smoothly. Welcome to the world of concu…</summary><category term="Core Go Networking"/></entry>
<entry><title>Context and Cancellation: Concepts and Go Implementation</title><link href="https://sazardev.github.io/networking-with-go/read/core-go-networking/09-context-and-cancellation-concepts-and-go-implementation.html"/><id>https://sazardev.github.io/networking-with-go/read/core-go-networking/09-context-and-cancellation-concepts-and-go-implementation.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;Imagine you&#39;re in a busy airport. You&#39;re waiting for your flight, but you need to be ready to leave at a moment&#39;s notice if your gate changes, your flight is canceled, or you get a call from home. In Go, context.Context is your boarding pa…</summary><category term="Core Go Networking"/></entry>
<entry><title>HTTP: Protocol Theory and Go Implementation</title><link href="https://sazardev.github.io/networking-with-go/read/core-go-networking/10-http-protocol-theory-and-go-implementation.html"/><id>https://sazardev.github.io/networking-with-go/read/core-go-networking/10-http-protocol-theory-and-go-implementation.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;Imagine a postal service: you write a letter (request), send it to an address (server), and wait for a reply (response). HTTP is the protocol that defines how these letters are formatted, sent, and received over the internet.&#34;</summary><category term="Core Go Networking"/></entry>
<entry><title>Handling JSON and XML over HTTP: Concepts and Go Implementation</title><link href="https://sazardev.github.io/networking-with-go/read/core-go-networking/11-handling-json-and-xml-over-http-concepts-and-go-implementation.html"/><id>https://sazardev.github.io/networking-with-go/read/core-go-networking/11-handling-json-and-xml-over-http-concepts-and-go-implementation.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;Imagine you&#39;re sending a package (data) through the mail (HTTP). JSON and XML are like the forms you fill out to describe what&#39;s inside—structured, standardized, and understood by everyone.&#34;</summary><category term="Core Go Networking"/></entry>
<entry><title>WebSockets: Real-Time Communication in Go</title><link href="https://sazardev.github.io/networking-with-go/read/core-go-networking/12-websockets-real-time-communication-in-go.html"/><id>https://sazardev.github.io/networking-with-go/read/core-go-networking/12-websockets-real-time-communication-in-go.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;Imagine a phone call instead of sending letters: both sides can talk and listen at any time, instantly. WebSockets turn HTTP from a one-way street into a two-way highway!&#34;</summary><category term="Core Go Networking"/></entry>
<entry><title>Chat Applications: Design, Protocols, and Go Implementation</title><link href="https://sazardev.github.io/networking-with-go/read/core-go-networking/13-chat-applications-design-protocols-and-go-implementation.html"/><id>https://sazardev.github.io/networking-with-go/read/core-go-networking/13-chat-applications-design-protocols-and-go-implementation.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;Imagine a group conversation where everyone can speak and listen in real time. Chat applications are the classic use case for WebSockets and real-time networking!&#34;</summary><category term="Core Go Networking"/></entry>
<entry><title>File Transfer Applications: Protocols and Go Implementation</title><link href="https://sazardev.github.io/networking-with-go/read/core-go-networking/14-file-transfer-applications-protocols-and-go-implementation.html"/><id>https://sazardev.github.io/networking-with-go/read/core-go-networking/14-file-transfer-applications-protocols-and-go-implementation.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;Sending a chat message is like passing a note across the room. Sending a file is like passing an entire box of documents — you need to say how big the box is, make sure nothing falls out along the way, and confirm the recipient got every l…</summary><category term="Core Go Networking"/></entry>
<entry><title>Proxy Servers and Clients: Concepts and Go Implementation</title><link href="https://sazardev.github.io/networking-with-go/read/core-go-networking/15-proxy-servers-and-clients-concepts-and-go-implementation.html"/><id>https://sazardev.github.io/networking-with-go/read/core-go-networking/15-proxy-servers-and-clients-concepts-and-go-implementation.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;A proxy is like the receptionist at a busy office: visitors don&#39;t walk straight to an employee&#39;s desk — they talk to the receptionist, who decides who to route them to, checks their badge, and sometimes just answers the question herself fr…</summary><category term="Core Go Networking"/></entry>
<entry><title>DNS: Theory and Go Implementation</title><link href="https://sazardev.github.io/networking-with-go/read/core-go-networking/16-dns-theory-and-go-implementation.html"/><id>https://sazardev.github.io/networking-with-go/read/core-go-networking/16-dns-theory-and-go-implementation.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;Back in the IP addressing chapter, we compared IP addresses to house addresses. DNS is the phonebook that lets you say &#39;call the pizza place downtown&#39; instead of memorizing its exact street number. Every time your code dials example.com:44…</summary><category term="Core Go Networking"/></entry>
<entry><title>NAT Traversal and P2P Networking: Concepts and Go Implementation</title><link href="https://sazardev.github.io/networking-with-go/read/core-go-networking/17-nat-traversal-and-p2p-networking-concepts-and-go-implementation.html"/><id>https://sazardev.github.io/networking-with-go/read/core-go-networking/17-nat-traversal-and-p2p-networking-concepts-and-go-implementation.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;Imagine two apartment buildings, each with a single front desk that receives all mail for the building. If you want to send a package directly to apartment 4B in the other building, you can&#39;t — mail only flows in through the front desk, an…</summary><category term="Core Go Networking"/></entry>
<entry><title>Authentication and Authorization: Security Theory and Go Implementation</title><link href="https://sazardev.github.io/networking-with-go/read/core-go-networking/18-authentication-and-authorization-security-theory-and-go-implementation.html"/><id>https://sazardev.github.io/networking-with-go/read/core-go-networking/18-authentication-and-authorization-security-theory-and-go-implementation.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;A bouncer at a club does two separate jobs: check your ID to confirm you are who you say you are (authentication), and check the guest list to decide whether that person is allowed into the VIP room (authorization). Mixing up the two jobs …</summary><category term="Core Go Networking"/></entry>
<entry><title>Security in Go Networking: TLS, Encryption, and Best Practices</title><link href="https://sazardev.github.io/networking-with-go/read/core-go-networking/19-security-in-go-networking-tls-encryption-and-best-practices.html"/><id>https://sazardev.github.io/networking-with-go/read/core-go-networking/19-security-in-go-networking-tls-encryption-and-best-practices.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;Sending data over plain TCP is like shouting across a crowded room — anyone standing between you and the listener can hear every word, and nothing stops them from shouting back pretending to be the person you meant to talk to. TLS is the s…</summary><category term="Core Go Networking"/></entry>
<entry><title>Logging and Monitoring: Concepts and Go Implementation</title><link href="https://sazardev.github.io/networking-with-go/read/core-go-networking/20-logging-and-monitoring-concepts-and-go-implementation.html"/><id>https://sazardev.github.io/networking-with-go/read/core-go-networking/20-logging-and-monitoring-concepts-and-go-implementation.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;A server without logging is a black box in flight with no flight recorder: if something goes wrong at 3 a.m., you&#39;re left guessing what happened from the wreckage. Logging and monitoring are the instruments on the dashboard — they tell you…</summary><category term="Core Go Networking"/></entry>
<entry><title>Testing and Debugging Go Network Applications: Theory and Practice</title><link href="https://sazardev.github.io/networking-with-go/read/core-go-networking/21-testing-and-debugging-go-network-applications-theory-and-practice.html"/><id>https://sazardev.github.io/networking-with-go/read/core-go-networking/21-testing-and-debugging-go-network-applications-theory-and-practice.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;Pilots don&#39;t learn to handle engine failure by waiting for one at 30,000 feet — they train in a simulator first. Testing network code is the same idea: you want to exercise timeouts, dropped connections, and concurrent clients on your own …</summary><category term="Core Go Networking"/></entry>
<entry><title>Performance Optimization: Concepts and Go Implementation</title><link href="https://sazardev.github.io/networking-with-go/read/core-go-networking/22-performance-optimization-concepts-and-go-implementation.html"/><id>https://sazardev.github.io/networking-with-go/read/core-go-networking/22-performance-optimization-concepts-and-go-implementation.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;Tuning a race car before you&#39;ve measured its lap times is just guessing with extra steps. Performance work on a network service follows the same rule: profile first, find the actual bottleneck, then change one thing at a time — otherwise y…</summary><category term="Core Go Networking"/></entry>
<entry><title>Deploying Go Network Applications: Best Practices</title><link href="https://sazardev.github.io/networking-with-go/read/core-go-networking/23-deploying-go-network-applications-best-practices.html"/><id>https://sazardev.github.io/networking-with-go/read/core-go-networking/23-deploying-go-network-applications-best-practices.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;Building a boat in the workshop and sailing it across open water are two very different challenges. Everything you&#39;ve built in this part of the book — servers, proxies, clients — has been tested at the dock. Deployment is what happens when…</summary><category term="Core Go Networking"/></entry>
<entry><title>Real-World Projects and Case Studies</title><link href="https://sazardev.github.io/networking-with-go/read/core-go-networking/24-real-world-projects-and-case-studies.html"/><id>https://sazardev.github.io/networking-with-go/read/core-go-networking/24-real-world-projects-and-case-studies.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;An architect who has only ever looked at blueprints eventually needs to walk through a finished building. This chapter is that walkthrough: stepping back from individual techniques to see how the pieces built across Part 2 combine into the…</summary><category term="Core Go Networking"/></entry>
<entry><title>Email Protocols: Theory and Go Implementation</title><link href="https://sazardev.github.io/networking-with-go/read/core-go-networking/25-email-protocols-theory-and-go-implementation.html"/><id>https://sazardev.github.io/networking-with-go/read/core-go-networking/25-email-protocols-theory-and-go-implementation.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;Back in the DNS chapter, net.LookupMX(&#34;example.com&#34;) returned the mail servers responsible for a domain, and the chapter moved on without explaining what those servers actually do with a message once it arrives. This is that explanation — …</summary><category term="Core Go Networking"/></entry>
<entry><title>Further Resources and Next Steps</title><link href="https://sazardev.github.io/networking-with-go/read/core-go-networking/26-further-resources-and-next-steps.html"/><id>https://sazardev.github.io/networking-with-go/read/core-go-networking/26-further-resources-and-next-steps.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;Reaching the end of a map doesn&#39;t mean the territory stops — it means it&#39;s time for a new map. Part 2 has covered a lot of ground; this chapter looks back at the route, then points at what&#39;s next.&#34;</summary><category term="Core Go Networking"/></entry>
<entry><title>gRPC and Protocol Buffers in Go</title><link href="https://sazardev.github.io/networking-with-go/read/advanced-specialized/01-grpc-and-protocol-buffers-in-go.html"/><id>https://sazardev.github.io/networking-with-go/read/advanced-specialized/01-grpc-and-protocol-buffers-in-go.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;Imagine two restaurants exchanging orders. One scribbles freeform notes on napkins and hopes the kitchen can guess what &#34;the usual, but spicy&#34; means. The other uses a printed order form with numbered fields: dish ID, quantity, spice level,…</summary><category term="Advanced &amp; Specialized"/></entry>
<entry><title>WebRTC and P2P Communication in Go</title><link href="https://sazardev.github.io/networking-with-go/read/advanced-specialized/02-webrtc-and-p2p-communication-in-go.html"/><id>https://sazardev.github.io/networking-with-go/read/advanced-specialized/02-webrtc-and-p2p-communication-in-go.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;Two people want to talk directly, but neither knows the other&#39;s address. So they both call a mutual friend first, who introduces them and passes along contact details, then steps out of the conversation entirely. From that point on, the tw…</summary><category term="Advanced &amp; Specialized"/></entry>
<entry><title>MQTT, AMQP, and IoT Messaging Protocols</title><link href="https://sazardev.github.io/networking-with-go/read/advanced-specialized/03-mqtt-amqp-and-iot-messaging-protocols.html"/><id>https://sazardev.github.io/networking-with-go/read/advanced-specialized/03-mqtt-amqp-and-iot-messaging-protocols.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;A radio station does not know or care who is listening. It just broadcasts on a frequency, and anyone with a receiver tuned to that frequency hears it. Compare that to a post office, which needs a specific address, sorts mail into specific…</summary><category term="Advanced &amp; Specialized"/></entry>
<entry><title>SDN (Software Defined Networking) and OpenFlow with Go</title><link href="https://sazardev.github.io/networking-with-go/read/advanced-specialized/04-sdn-software-defined-networking-and-openflow-with-go.html"/><id>https://sazardev.github.io/networking-with-go/read/advanced-specialized/04-sdn-software-defined-networking-and-openflow-with-go.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;A city where every traffic light decides on its own, with no coordination, when to turn green is a city with a lot of avoidable gridlock. A city with one control center watching every intersection and adjusting all the lights together can …</summary><category term="Advanced &amp; Specialized"/></entry>
<entry><title>Network Function Virtualization (NFV) in Go</title><link href="https://sazardev.github.io/networking-with-go/read/advanced-specialized/05-network-function-virtualization-nfv-in-go.html"/><id>https://sazardev.github.io/networking-with-go/read/advanced-specialized/05-network-function-virtualization-nfv-in-go.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;A commercial kitchen used to need a dedicated machine for every task: a bread slicer, a meat grinder, a dough mixer, each bolted to the counter, each only able to do its one job. Replace them with a single programmable robot arm that can p…</summary><category term="Advanced &amp; Specialized"/></entry>
<entry><title>Deep Packet Inspection and Packet Manipulation</title><link href="https://sazardev.github.io/networking-with-go/read/advanced-specialized/06-deep-packet-inspection-and-packet-manipulation.html"/><id>https://sazardev.github.io/networking-with-go/read/advanced-specialized/06-deep-packet-inspection-and-packet-manipulation.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;A postal sorting facility usually just reads the address on the envelope and routes it accordingly -- it never opens the letter inside. Deep packet inspection is what happens when the sorting facility starts opening every envelope, reading…</summary><category term="Advanced &amp; Specialized"/></entry>
<entry><title>Custom Protocol Design and Implementation</title><link href="https://sazardev.github.io/networking-with-go/read/advanced-specialized/07-custom-protocol-design-and-implementation.html"/><id>https://sazardev.github.io/networking-with-go/read/advanced-specialized/07-custom-protocol-design-and-implementation.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;Two people inventing a board game together need to agree on more than the pieces. Whose turn goes first? How do you signal that your turn is over? What happens if someone disconnects mid-game? What counts as a valid move, and what happens …</summary><category term="Advanced &amp; Specialized"/></entry>
<entry><title>Cloud Networking APIs and Automation with Go</title><link href="https://sazardev.github.io/networking-with-go/read/advanced-specialized/08-cloud-networking-apis-and-automation-with-go.html"/><id>https://sazardev.github.io/networking-with-go/read/advanced-specialized/08-cloud-networking-apis-and-automation-with-go.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;There was a time when getting a new network segment meant an order form, a rack visit, someone physically running cable, and a wait measured in weeks. Cloud networking turned that into a vending machine: describe what you want in a request…</summary><category term="Advanced &amp; Specialized"/></entry>
<entry><title>Zero Trust Networking and Microsegmentation</title><link href="https://sazardev.github.io/networking-with-go/read/advanced-specialized/09-zero-trust-networking-and-microsegmentation.html"/><id>https://sazardev.github.io/networking-with-go/read/advanced-specialized/09-zero-trust-networking-and-microsegmentation.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;An old-style office building checks your badge at the front door and, once you are inside, lets you walk into any room you like -- the assumption is that anyone who made it past the lobby belongs there. A modern secure facility checks your…</summary><category term="Advanced &amp; Specialized"/></entry>
<entry><title>Network Simulation and Virtual Labs</title><link href="https://sazardev.github.io/networking-with-go/read/advanced-specialized/10-network-simulation-and-virtual-labs.html"/><id>https://sazardev.github.io/networking-with-go/read/advanced-specialized/10-network-simulation-and-virtual-labs.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;A flight simulator lets a pilot practice an engine failure at ten thousand feet without ever risking a real aircraft or a real passenger. A network simulator offers the same deal to network engineers and protocol developers: try the failur…</summary><category term="Advanced &amp; Specialized"/></entry>
<entry><title>Automating Network Device Configuration</title><link href="https://sazardev.github.io/networking-with-go/read/advanced-specialized/11-automating-network-device-configuration.html"/><id>https://sazardev.github.io/networking-with-go/read/advanced-specialized/11-automating-network-device-configuration.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;A medieval scribe copied books by hand, one letter at a time, and every copy risked a new typo. The printing press didn&#39;t just make copying faster — it made every copy identical. Automating network configuration is your printing press: ins…</summary><category term="Advanced &amp; Specialized"/></entry>
<entry><title>Observability and Tracing in Go Networking</title><link href="https://sazardev.github.io/networking-with-go/read/advanced-specialized/12-observability-and-tracing-in-go-networking.html"/><id>https://sazardev.github.io/networking-with-go/read/advanced-specialized/12-observability-and-tracing-in-go-networking.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;A pilot doesn&#39;t fly by feel — the cockpit is covered in instruments telling her altitude, speed, and fuel before anything goes wrong. A production network service without observability is a pilot flying blind: it might be fine, or it might…</summary><category term="Advanced &amp; Specialized"/></entry>
<entry><title>Wireless Networking and Go</title><link href="https://sazardev.github.io/networking-with-go/read/advanced-specialized/13-wireless-networking-and-go.html"/><id>https://sazardev.github.io/networking-with-go/read/advanced-specialized/13-wireless-networking-and-go.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;A wired connection is a conversation through a pipe — say something at one end, it arrives at the other. Wireless is shouting across a crowded room and hoping the right person hears you over everyone else shouting too. The physics are mess…</summary><category term="Advanced &amp; Specialized"/></entry>
<entry><title>Mesh Networks and Dynamic Routing</title><link href="https://sazardev.github.io/networking-with-go/read/advanced-specialized/14-mesh-networks-and-dynamic-routing.html"/><id>https://sazardev.github.io/networking-with-go/read/advanced-specialized/14-mesh-networks-and-dynamic-routing.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;A hub-and-spoke airport is elegant until the hub closes for weather — then every flight is grounded. A mesh is more like a bucket brigade at a fire: nobody carries the water the whole way, but everybody passes it along, and the line rerout…</summary><category term="Advanced &amp; Specialized"/></entry>
<entry><title>High Availability and Load Balancing</title><link href="https://sazardev.github.io/networking-with-go/read/advanced-specialized/15-high-availability-and-load-balancing.html"/><id>https://sazardev.github.io/networking-with-go/read/advanced-specialized/15-high-availability-and-load-balancing.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;A concert with one entrance is a bottleneck and a fire hazard. A good venue has several doors, staff redirecting people to whichever line is shortest, and a plan for what happens if one door jams. High availability is the plan for the jamm…</summary><category term="Advanced &amp; Specialized"/></entry>
<entry><title>Real-Time Networking for Games</title><link href="https://sazardev.github.io/networking-with-go/read/advanced-specialized/16-real-time-networking-for-games.html"/><id>https://sazardev.github.io/networking-with-go/read/advanced-specialized/16-real-time-networking-for-games.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;TCP is a certified letter: guaranteed delivery, guaranteed order, and a receipt to prove it. A multiplayer game needs a walkie-talkie instead — say the player&#39;s position now , and if this update gets lost, don&#39;t bother resending it, becaus…</summary><category term="Advanced &amp; Specialized"/></entry>
<entry><title>Blockchain and Cryptocurrency Networking</title><link href="https://sazardev.github.io/networking-with-go/read/advanced-specialized/17-blockchain-and-cryptocurrency-networking.html"/><id>https://sazardev.github.io/networking-with-go/read/advanced-specialized/17-blockchain-and-cryptocurrency-networking.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;Picture a room full of strangers who don&#39;t trust each other, but who all agree to keep an identical copy of the same notebook. Whenever someone writes a new entry, everyone else checks it, copies it into their own notebook, and tells their…</summary><category term="Advanced &amp; Specialized"/></entry>
<entry><title>Big Data, AI, and Streaming Networks</title><link href="https://sazardev.github.io/networking-with-go/read/advanced-specialized/18-big-data-ai-and-streaming-networks.html"/><id>https://sazardev.github.io/networking-with-go/read/advanced-specialized/18-big-data-ai-and-streaming-networks.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;An airport baggage system doesn&#39;t wait for every suitcase from every flight to arrive before starting to sort — it&#39;s a continuous flow of belts, scanners, and diverters, built to keep moving even when one flight dumps ten times the usual l…</summary><category term="Advanced &amp; Specialized"/></entry>
<entry><title>Go Networking Performance Benchmarks</title><link href="https://sazardev.github.io/networking-with-go/read/advanced-specialized/19-go-networking-performance-benchmarks.html"/><id>https://sazardev.github.io/networking-with-go/read/advanced-specialized/19-go-networking-performance-benchmarks.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;A car might look fast in the driveway. The only way to know for sure is a stopwatch and a track. Benchmarking network code is exactly that: replacing &#39;this feels quick&#39; with a number you can compare, reproduce, and defend.&#34;</summary><category term="Advanced &amp; Specialized"/></entry>
<entry><title>QUIC and HTTP/3 in Go</title><link href="https://sazardev.github.io/networking-with-go/read/advanced-specialized/20-quic-and-http-3-in-go.html"/><id>https://sazardev.github.io/networking-with-go/read/advanced-specialized/20-quic-and-http-3-in-go.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;Every earlier chapter in this book built on the same assumption: sockets are either the ordered, reliable stream of TCP or the fire-and-forget datagrams of UDP, and never both. QUIC breaks that assumption on purpose — it reimplements every…</summary><category term="Advanced &amp; Specialized"/></entry>
<entry><title>Message Queues and Service Discovery in Go</title><link href="https://sazardev.github.io/networking-with-go/read/advanced-specialized/21-message-queues-and-service-discovery-in-go.html"/><id>https://sazardev.github.io/networking-with-go/read/advanced-specialized/21-message-queues-and-service-discovery-in-go.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;The chat server case study mentioned a message bus standing in for an in-process channel once a single process can no longer hold every connection. This chapter is that message bus, made concrete — plus the other half of running many small…</summary><category term="Advanced &amp; Specialized"/></entry>
<entry><title>IPv6 Networking in Go</title><link href="https://sazardev.github.io/networking-with-go/read/advanced-specialized/22-ipv6-networking-in-go.html"/><id>https://sazardev.github.io/networking-with-go/read/advanced-specialized/22-ipv6-networking-in-go.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;The IP addressing chapter back in Part 1 explained why IPv6 exists — 340 undecillion addresses instead of 4 billion. Every Go example since then quietly worked whether you gave it an IPv4 or IPv6 address, because the net package was built …</summary><category term="Advanced &amp; Specialized"/></entry>
<entry><title>Introduction to Cybersecurity in Networking</title><link href="https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/01-introduction-to-cybersecurity-in-networking.html"/><id>https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/01-introduction-to-cybersecurity-in-networking.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;A network engineer builds roads between cities. A security engineer asks: who&#39;s allowed to drive on them, what happens if a truck crashes in the tunnel, and what do we do if someone forges a license plate?&#34;</summary><category term="Cybersecurity &amp; Ethical Hacking"/></entry>
<entry><title>Threat Modeling and Attack Surfaces</title><link href="https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/02-threat-modeling-and-attack-surfaces.html"/><id>https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/02-threat-modeling-and-attack-surfaces.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;Before a locksmith recommends a single lock, they walk the whole building: every door, every window, every vent big enough for a cat. Threat modeling is that walk-through, done for software.&#34;</summary><category term="Cybersecurity &amp; Ethical Hacking"/></entry>
<entry><title>Common Network Attacks (DoS, MITM, Spoofing, etc.)</title><link href="https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/03-common-network-attacks-dos-mitm-spoofing-etc.html"/><id>https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/03-common-network-attacks-dos-mitm-spoofing-etc.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;A pickpocket, a con artist, and a mob blocking the door all want different things, but they all exploit the same crowded street. Network attacks are no different — the wire is the crowded street.&#34;</summary><category term="Cybersecurity &amp; Ethical Hacking"/></entry>
<entry><title>Network Scanning and Enumeration with Go</title><link href="https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/04-network-scanning-and-enumeration-with-go.html"/><id>https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/04-network-scanning-and-enumeration-with-go.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;Before a home inspector signs off on a house, they check every door, every window, and every outlet. Network scanning is that inspection, run against a machine instead of a building.&#34;</summary><category term="Cybersecurity &amp; Ethical Hacking"/></entry>
<entry><title>Packet Sniffing and Analysis with Go</title><link href="https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/05-packet-sniffing-and-analysis-with-go.html"/><id>https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/05-packet-sniffing-and-analysis-with-go.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;A phone tap doesn&#39;t change the call — it just listens to a copy of it. Packet sniffing is the network equivalent: a quiet copy of every frame that crosses an interface, for whoever is allowed to look.&#34;</summary><category term="Cybersecurity &amp; Ethical Hacking"/></entry>
<entry><title>Vulnerability Assessment and Exploitation Basics</title><link href="https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/06-vulnerability-assessment-and-exploitation-basics.html"/><id>https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/06-vulnerability-assessment-and-exploitation-basics.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;Finding a crack in the wall is one skill. Judging whether that crack will bring the wall down is another. Vulnerability assessment is the second skill — and it&#39;s the one that decides what actually gets fixed first.&#34;</summary><category term="Cybersecurity &amp; Ethical Hacking"/></entry>
<entry><title>Building Simple Security Tools in Go</title><link href="https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/07-building-simple-security-tools-in-go.html"/><id>https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/07-building-simple-security-tools-in-go.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;A carpenter doesn&#39;t buy a hammer for every job — sometimes the fastest fix is the one you make yourself, sized exactly to the problem in front of you.&#34;</summary><category term="Cybersecurity &amp; Ethical Hacking"/></entry>
<entry><title>Penetration Testing Workflows</title><link href="https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/08-penetration-testing-workflows.html"/><id>https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/08-penetration-testing-workflows.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;A fire drill isn&#39;t useful because you hope for a fire — it&#39;s useful because it proves the exits actually work. A penetration test is a fire drill for your network, run by someone trying, on purpose and with permission, to find the exit tha…</summary><category term="Cybersecurity &amp; Ethical Hacking"/></entry>
<entry><title>Incident Response and Forensics</title><link href="https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/09-incident-response-and-forensics.html"/><id>https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/09-incident-response-and-forensics.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;A pentest asks &#39;can someone get in?&#39; beforehand. Incident response asks &#39;someone got in — now what?&#39; afterward. Both matter, but only one of them happens on the worst day of your week.&#34;</summary><category term="Cybersecurity &amp; Ethical Hacking"/></entry>
<entry><title>Ethical Hacking and Legal Considerations</title><link href="https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/10-ethical-hacking-and-legal-considerations.html"/><id>https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/10-ethical-hacking-and-legal-considerations.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;A locksmith who can open any door isn&#39;t a criminal — until they open a door that isn&#39;t theirs to open, or that no one asked them to. The lockpick is identical either way. Only the permission changes what it means.&#34;</summary><category term="Cybersecurity &amp; Ethical Hacking"/></entry>
<entry><title>Implementing TLS/SSL in Go</title><link href="https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/11-implementing-tls-ssl-in-go.html"/><id>https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/11-implementing-tls-ssl-in-go.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;Every letter you&#39;ve sent so far in this book traveled in a clear envelope anyone along the route could open and read. TLS is the sealed, tamper-evident envelope — and Go makes using one almost as easy as not bothering.&#34;</summary><category term="Cybersecurity &amp; Ethical Hacking"/></entry>
<entry><title>Certificate Management and PKI</title><link href="https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/12-certificate-management-and-pki.html"/><id>https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/12-certificate-management-and-pki.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;TLS promises the lock on the door is real. A certificate is the notarized paperwork proving the locksmith who installed it is who they claim to be. PKI is the whole system of notaries that makes that paperwork worth trusting.&#34;</summary><category term="Cybersecurity &amp; Ethical Hacking"/></entry>
<entry><title>Secure Coding Practices in Go</title><link href="https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/13-secure-coding-practices-in-go.html"/><id>https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/13-secure-coding-practices-in-go.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;Most break-ins in a building happen through a door that was left unlocked, not a wall someone tunneled through. Most exploited software bugs are the same: an ordinary mistake, not an exotic attack.&#34;</summary><category term="Cybersecurity &amp; Ethical Hacking"/></entry>
<entry><title>Zero Trust Networking Concepts</title><link href="https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/14-zero-trust-networking-concepts.html"/><id>https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/14-zero-trust-networking-concepts.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;The old model of network security was a castle: thick walls, one gate, and anyone inside the walls was assumed friendly. Zero trust assumes the castle has already been infiltrated, and checks everyone&#39;s badge at every single door, every si…</summary><category term="Cybersecurity &amp; Ethical Hacking"/></entry>
<entry><title>Network Segmentation and Microsegmentation</title><link href="https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/15-network-segmentation-and-microsegmentation.html"/><id>https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/15-network-segmentation-and-microsegmentation.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;A ship isn&#39;t built as one open hull — it&#39;s divided into watertight compartments, so a single puncture floods one section instead of sinking the whole vessel. Network segmentation is the same idea, applied to compromise instead of seawater.…</summary><category term="Cybersecurity &amp; Ethical Hacking"/></entry>
<entry><title>IDS/IPS: Concepts and Go Implementations</title><link href="https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/16-ids-ips-concepts-and-go-implementations.html"/><id>https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/16-ids-ips-concepts-and-go-implementations.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;A burglar alarm only tells you a window broke. A guard who slams the door shut before the intruder gets inside is a different job entirely. Intrusion Detection Systems watch and report; Intrusion Prevention Systems watch and act. Most real…</summary><category term="Cybersecurity &amp; Ethical Hacking"/></entry>
<entry><title>SIEM and Log Analysis for Network Security</title><link href="https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/17-siem-and-log-analysis-for-network-security.html"/><id>https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/17-siem-and-log-analysis-for-network-security.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">A single firewall log tells you one connection was blocked. A single server log tells you one login succeeded. Neither tells you a breach happened. Put both in the same room, correlate them by time and identity, and the story suddenly write…</summary><category term="Cybersecurity &amp; Ethical Hacking"/></entry>
<entry><title>Malware Analysis and Network Indicators</title><link href="https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/18-malware-analysis-and-network-indicators.html"/><id>https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/18-malware-analysis-and-network-indicators.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Malware, like a biological pathogen, has to communicate to do damage at scale - it phones home for instructions, exfiltrates what it steals, or spreads to the next host. That communication has to cross the network, and the network is where …</summary><category term="Cybersecurity &amp; Ethical Hacking"/></entry>
<entry><title>Reverse Engineering Network Protocols</title><link href="https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/19-reverse-engineering-network-protocols.html"/><id>https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/19-reverse-engineering-network-protocols.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Imagine dropping into a foreign city with no dictionary, only a notebook. You can&#39;t read the signs, but you can watch what people do after each exchange - which words make the shopkeeper smile, which make the guard tense up. Given enough co…</summary><category term="Cybersecurity &amp; Ethical Hacking"/></entry>
<entry><title>Red Team vs Blue Team: Concepts and Labs</title><link href="https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/20-red-team-vs-blue-team-concepts-and-labs.html"/><id>https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/20-red-team-vs-blue-team-concepts-and-labs.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Chess players get stronger by playing against opponents who actually try to beat them, not by studying the rulebook alone. Security teams are no different: a network defended only on paper, never tested by someone actively trying to break i…</summary><category term="Cybersecurity &amp; Ethical Hacking"/></entry>
<entry><title>Social Engineering in Networking</title><link href="https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/21-social-engineering-in-networking.html"/><id>https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/21-social-engineering-in-networking.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">You can harden every firewall rule, patch every server, and encrypt every packet, and an attacker can still walk through the front door simply by asking politely and sounding like they belong. The strongest technical controls in this book a…</summary><category term="Cybersecurity &amp; Ethical Hacking"/></entry>
<entry><title>Wireless Network Security: Theory and Attacks</title><link href="https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/22-wireless-network-security-theory-and-attacks.html"/><id>https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/22-wireless-network-security-theory-and-attacks.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Wired traffic stays inside a cable; someone has to physically tap it to listen in. Wireless traffic is broadcast into the air for anyone with an antenna and no scruples to receive - the network equivalent of holding a conversation by shouti…</summary><category term="Cybersecurity &amp; Ethical Hacking"/></entry>
<entry><title>IoT Security: Concepts and Go Implementations</title><link href="https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/23-iot-security-concepts-and-go-implementations.html"/><id>https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/23-iot-security-concepts-and-go-implementations.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Give an intern full access to the building and no supervision, and you&#39;d call it a management failure. Yet that&#39;s exactly how most IoT devices operate: network access, default credentials nobody rotates, firmware that rarely gets patched, a…</summary><category term="Cybersecurity &amp; Ethical Hacking"/></entry>
<entry><title>Cloud Networking Security</title><link href="https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/24-cloud-networking-security.html"/><id>https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/24-cloud-networking-security.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Renting an apartment in a large building means the landlord secures the front doors, the elevators, and the foundation, but you&#39;re still the one who has to lock your own apartment door and not tape the spare key under the doormat. Cloud sec…</summary><category term="Cybersecurity &amp; Ethical Hacking"/></entry>
<entry><title>Container and Kubernetes Network Security</title><link href="https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/25-container-and-kubernetes-network-security.html"/><id>https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/25-container-and-kubernetes-network-security.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Containers are like apartments sharing one building&#39;s plumbing and electrical system: each unit feels self-contained, but a serious enough problem in the shared infrastructure below can affect every tenant at once. Understanding exactly whe…</summary><category term="Cybersecurity &amp; Ethical Hacking"/></entry>
<entry><title>Bug Bounty and Responsible Disclosure</title><link href="https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/26-bug-bounty-and-responsible-disclosure.html"/><id>https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/26-bug-bounty-and-responsible-disclosure.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Finding an unlocked door on someone&#39;s building puts you in an interesting position: you can walk away, you can shout about it from the rooftop, or you can knock and let the owner know before anyone with worse intentions finds it first. Resp…</summary><category term="Cybersecurity &amp; Ethical Hacking"/></entry>
<entry><title>Security Automation with Go</title><link href="https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/27-security-automation-with-go.html"/><id>https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/27-security-automation-with-go.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">A single analyst can carefully review one alert at a time, forever, or a script can watch every alert continuously and only interrupt a human when something actually needs a human. Security automation is not about replacing judgment - it&#39;s …</summary><category term="Cybersecurity &amp; Ethical Hacking"/></entry>
<entry><title>Building a Custom Honeypot in Go</title><link href="https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/28-building-a-custom-honeypot-in-go.html"/><id>https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/28-building-a-custom-honeypot-in-go.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">A honeypot is a fake vault sitting next to the real one, wired with an alarm and a camera. Nobody with legitimate business ever has a reason to open it, so any interaction with it - by definition - is worth investigating. That single proper…</summary><category term="Cybersecurity &amp; Ethical Hacking"/></entry>
<entry><title>Simulating Attacks and Defense in Lab Environments</title><link href="https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/29-simulating-attacks-and-defense-in-lab-environments.html"/><id>https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/29-simulating-attacks-and-defense-in-lab-environments.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">A flight simulator doesn&#39;t just train pilots on the easy days - it deliberately throws engine failures and storms at them, over and over, in an environment where a mistake costs nothing but a restart. Security skills need the same kind of p…</summary><category term="Cybersecurity &amp; Ethical Hacking"/></entry>
<entry><title>Case Studies: Real-World Network Breaches</title><link href="https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/30-case-studies-real-world-network-breaches.html"/><id>https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/30-case-studies-real-world-network-breaches.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Every concept in this part of the book - segmentation, IDS/IPS, patching discipline, least privilege, social engineering awareness - exists because a real organization, at some point, learned its absence the hard way. Studying how well-docu…</summary><category term="Cybersecurity &amp; Ethical Hacking"/></entry>
<entry><title>Emerging Threats and Future Trends in Network Security</title><link href="https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/31-emerging-threats-and-future-trends-in-network-security.html"/><id>https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/31-emerging-threats-and-future-trends-in-network-security.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Every technique in this book represents the current state of an arms race that never actually ends - each generation of defenses reshapes what the next generation of attacks has to look like, and vice versa. This closing chapter looks at wh…</summary><category term="Cybersecurity &amp; Ethical Hacking"/></entry>
<entry><title>Further Cybersecurity Resources</title><link href="https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/32-further-cybersecurity-resources.html"/><id>https://sazardev.github.io/networking-with-go/read/cybersecurity-ethical-hacking/32-further-cybersecurity-resources.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;Thirty-one chapters is enough to learn to read a map. It&#39;s not enough to know every road. Here&#39;s where to keep exploring, both alongside the rest of this book and long after you&#39;ve finished it.&#34;</summary><category term="Cybersecurity &amp; Ethical Hacking"/></entry>
<entry><title>API Fundamentals: REST, HTTP, and the Web</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/01-api-fundamentals-rest-http-and-the-web.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/01-api-fundamentals-rest-http-and-the-web.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Welcome to Part APIs . This section builds production-ready HTTP APIs and backends in Go — from net/http fundamentals through frameworks, databases, Docker, cloud deployment, and production architecture. Every chapter pairs concepts with wo…</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>Designing Clean URLs, Query Params, and Routing</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/02-designing-clean-urls-query-params-and-routing.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/02-designing-clean-urls-query-params-and-routing.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Welcome to the art of designing clean and intuitive URLs. Think of URLs as the street addresses of the web: they guide users and programs to the right destination. A URL is also part of your public API contract — once clients start calling …</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>JSON, XML, and Data Serialization</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/03-json-xml-and-data-serialization.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/03-json-xml-and-data-serialization.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Every API eventually boils down to one question: how do we turn a Go struct into bytes on the wire, and back again? That process is serialization, and Go&#39;s standard library gives you two solid, built-in answers — encoding/json and encoding/…</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>Building RESTful APIs with net/http</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/04-building-restful-apis-with-net-http.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/04-building-restful-apis-with-net-http.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Go&#39;s standard library is unusually capable for building production APIs without a framework. This chapter puts everything from the previous two chapters together — clean routing, query parameters, JSON serialization — into a complete, worki…</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>Building APIs with Gin</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/05-building-apis-with-gin.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/05-building-apis-with-gin.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">net/http gets you far, but as an API grows — dozens of routes, shared middleware, request binding and validation on every endpoint — the boilerplate adds up. Gin ( github.com/gin-gonic/gin ) is the most widely used Go web framework, built a…</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>Building APIs with Fiber</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/06-building-apis-with-fiber.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/06-building-apis-with-fiber.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Fiber ( github.com/gofiber/fiber/v2 ) is a Go web framework inspired by Express.js, built on top of fasthttp rather than the standard library&#39;s net/http . That choice trades some ecosystem compatibility (middleware built for net/http doesn&#39;…</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>Serving HTML, Templates, and Static Files</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/07-serving-html-templates-and-static-files.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/07-serving-html-templates-and-static-files.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Not every Go server is a pure JSON API. Sometimes you need to render an actual web page — a dashboard, an admin panel, an email preview — and serve the CSS, images, and JavaScript that go with it. Go&#39;s standard library covers both jobs: htm…</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>Adding WebSockets to Your API</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/08-adding-websockets-to-your-api.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/08-adding-websockets-to-your-api.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">REST is built around request-response: the client always speaks first. Some features — chat, live dashboards, multiplayer state, collaborative editing — need the server to push data the moment it happens, in both directions, over one long-l…</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>Notifications, SSE, and Real-Time Updates</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/09-notifications-sse-and-real-time-updates.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/09-notifications-sse-and-real-time-updates.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Not every real-time feature needs a full duplex WebSocket connection. Notification feeds, live scoreboards, progress bars, and status updates are all one-directional: the server pushes, the client just listens. Server-Sent Events (SSE) solv…</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>API Security: Tokens, Auth, and Best Practices</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/10-api-security-tokens-auth-and-best-practices.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/10-api-security-tokens-auth-and-best-practices.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">An API without authentication is an API anyone can call — including people you didn&#39;t intend to let in. This chapter covers the common authentication schemes you&#39;ll actually implement, a working JWT setup using golang-jwt/jwt/v5 , password …</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>Rate Limiting, CORS, and API Gateways</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/11-rate-limiting-cors-and-api-gateways.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/11-rate-limiting-cors-and-api-gateways.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Authentication answers who can call your API. This chapter covers three separate but related concerns that shape how much they can call it, from where, and — as your API grows — whether a dedicated layer in front of it should handle all of …</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>API Documentation and OpenAPI/Swagger</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/12-api-documentation-and-openapi-swagger.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/12-api-documentation-and-openapi-swagger.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">A REST endpoint is only as useful as its documentation. OpenAPI (formerly known as Swagger) is the industry-standard, machine-readable format for describing an HTTP API — its paths, request/response shapes, authentication, and error codes —…</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>Testing and Mocking APIs</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/13-testing-and-mocking-apis.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/13-testing-and-mocking-apis.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">An API without tests is a promise you can&#39;t verify. Go&#39;s standard library makes HTTP handler testing unusually pleasant: net/http/httptest lets you exercise a handler directly, in-process, without binding a real port or making a real networ…</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>Versioning, Deprecation, and Maintenance</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/14-versioning-deprecation-and-maintenance.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/14-versioning-deprecation-and-maintenance.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Once an API has real clients, it can&#39;t just change shape overnight — every field renamed or endpoint removed is a broken integration somewhere. Versioning is how you evolve an API without breaking the clients depending on its current behavi…</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>Prebuilt Solutions and API Boilerplates</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/15-prebuilt-solutions-and-api-boilerplates.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/15-prebuilt-solutions-and-api-boilerplates.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Every chapter so far has built things from small pieces — a mux, a middleware chain, a JWT check — on purpose, so the mechanics are visible. In real projects, you don&#39;t always want to start from an empty main.go . This chapter surveys the G…</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>API Performance, Monitoring, and Observability</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/16-api-performance-monitoring-and-observability.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/16-api-performance-monitoring-and-observability.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">An API running in production without visibility into its own behavior is a black box — you find out something&#39;s wrong when a user complains, not when it starts happening. Observability covers three complementary signals: structured logs (wh…</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>Deploying and Scaling Go APIs</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/17-deploying-and-scaling-go-apis.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/17-deploying-and-scaling-go-apis.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Everything up to this point has run on a developer&#39;s laptop. This chapter covers what changes when a Go API needs to run reliably, at scale, in production: building deployable artifacts, containerizing them, running multiple instances safel…</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>Advanced API Rate Limiting and Anti-Abuse</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/18-advanced-api-rate-limiting-and-anti-abuse.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/18-advanced-api-rate-limiting-and-anti-abuse.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">The rate limiting in an earlier chapter used an in-memory rate.Limiter per client — good enough for a single instance, but it breaks down the moment you run more than one, since each instance tracks its own limits independently. This chapte…</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>Advanced API Gateway and Service Mesh</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/19-advanced-api-gateway-and-service-mesh.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/19-advanced-api-gateway-and-service-mesh.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Once an API stops being &#34;one server answering requests&#34; and becomes a dozen services calling each other, two new problems show up. First, clients need a single, stable front door instead of having to know about every internal service. Secon…</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>APIs for Graph Databases and NoSQL</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/20-apis-for-graph-databases-and-nosql.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/20-apis-for-graph-databases-and-nosql.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Not every API sits in front of a relational database. Once your data looks like a network of relationships (who follows whom, which products were bought together), or like loosely structured documents (user profiles with optional fields, ev…</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>APIs for Background Jobs and Task Queues</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/21-apis-for-background-jobs-and-task-queues.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/21-apis-for-background-jobs-and-task-queues.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Some work is too slow to do inside an HTTP request. Sending a confirmation email, generating a PDF invoice, resizing an uploaded image, or calling a flaky third-party API can take anywhere from a second to several minutes — far longer than …</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>APIs for File Uploads, Media, and Streaming</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/22-apis-for-file-uploads-media-and-streaming.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/22-apis-for-file-uploads-media-and-streaming.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">JSON payloads are small and fit comfortably in memory. Files don&#39;t. A profile picture is a few hundred kilobytes; a video upload can be gigabytes. An API that treats every request body the same way — read it all into memory, then process it…</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>APIs for Webhooks and Event-Driven Design</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/23-apis-for-webhooks-and-event-driven-design.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/23-apis-for-webhooks-and-event-driven-design.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Most of this book so far has been about APIs where the client asks and the server answers. A webhook flips that around: the server calls the client, unprompted, when something happens. Stripe tells your server a payment succeeded; GitHub te…</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>APIs for OAuth2, SSO, SAML, OpenID Connect</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/24-apis-for-oauth2-sso-saml-openid-connect.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/24-apis-for-oauth2-sso-saml-openid-connect.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">&#34;Sign in with Google&#34; buttons, corporate single sign-on portals, and API access tokens all rest on a small set of standards that are frequently confused with each other. OAuth2 is an authorization framework — it lets a user grant a third-pa…</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>APIs for Multi-Tenancy and SaaS</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/25-apis-for-multi-tenancy-and-saas.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/25-apis-for-multi-tenancy-and-saas.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">A multi-tenant API serves many independent customers (&#34;tenants&#34;) from the same running application and, usually, the same database — a project management tool where Acme Corp and Globex Inc both use the product without ever seeing each othe…</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>APIs for Internationalization (i18n) and Localization (l10n)</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/26-apis-for-internationalization-i18n-and-localization-l10n.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/26-apis-for-internationalization-i18n-and-localization-l10n.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Internationalization (i18n — eighteen letters between the &#34;i&#34; and the &#34;n&#34;) is the work of designing your API so it can support multiple languages, currencies, and regional formats. Localization (l10n) is actually producing that content for …</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>APIs for Feature Flags and Dynamic Config</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/27-apis-for-feature-flags-and-dynamic-config.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/27-apis-for-feature-flags-and-dynamic-config.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Every deploy used to mean &#34;this code is now live for everyone.&#34; Feature flags decouple those two things: the code can be deployed dark, and turned on for 1% of users, then 50%, then everyone — or turned back off instantly if something looks…</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>APIs for Load and Stress Testing</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/28-apis-for-load-and-stress-testing.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/28-apis-for-load-and-stress-testing.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Unit tests tell you your API behaves correctly for one request at a time. They tell you nothing about what happens when a thousand requests arrive per second, or what breaks first when traffic keeps climbing past what you tested. Load testi…</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>APIs for CI/CD and DevOps</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/29-apis-for-ci-cd-and-devops.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/29-apis-for-ci-cd-and-devops.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Continuous integration and deployment pipelines are themselves driven by APIs — GitHub Actions, GitLab CI, and every cloud provider&#39;s deployment service expose an HTTP API underneath their UI, and your Go services frequently need to talk to…</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>APIs for Serverless and FaaS</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/30-apis-for-serverless-and-faas.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/30-apis-for-serverless-and-faas.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Everything so far in this book has assumed a long-running process: a Go binary that starts, listens on a port, and handles requests until it&#39;s stopped. Function-as-a-Service (FaaS) platforms — AWS Lambda, Google Cloud Functions, Azure Funct…</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>APIs for Edge Computing and CDN</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/31-apis-for-edge-computing-and-cdn.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/31-apis-for-edge-computing-and-cdn.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">A traditional API runs in one region (or a handful) and every client, no matter where they are in the world, pays the network latency of reaching it. Edge computing flips that: your code runs in dozens or hundreds of points of presence spre…</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>APIs for Advanced Security</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/32-apis-for-advanced-security.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/32-apis-for-advanced-security.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Basic API security — hashing passwords, checking a bearer token — gets you through the first year of a project. This chapter covers what shows up once an API has real operational maturity behind it: rotating signing keys without breaking al…</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>APIs for Advanced Observability: Metrics and Logging</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/33-apis-for-advanced-observability-metrics-and-logging.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/33-apis-for-advanced-observability-metrics-and-logging.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">An earlier chapter in this book covered basic performance monitoring — enough to notice that something is slow. This chapter is about instrumenting an API properly: structured logs you can actually query, metrics that answer specific operat…</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>APIs for Advanced Observability: Distributed Tracing</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/34-apis-for-advanced-observability-distributed-tracing.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/34-apis-for-advanced-observability-distributed-tracing.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">The previous chapter instrumented a single service well: structured logs, metrics, health checks. But a request to a modern API rarely stays inside one service — it hits a gateway, calls three internal services, one of which queries a datab…</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>RPC and gRPC for APIs</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/35-rpc-and-grpc-for-apis.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/35-rpc-and-grpc-for-apis.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">So far, almost every API in this part of the book has spoken the same dialect: resources, HTTP verbs, and JSON. That dialect is REST, and it earns its popularity because a browser, a curl command, and a stranger&#39;s Postman collection can all…</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>Working with SQL Databases: PostgreSQL</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/36-working-with-sql-databases-postgresql.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/36-working-with-sql-databases-postgresql.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Every API in this book so far has kept its data in memory or behind an external service. Real APIs need real, durable storage, and for most backend services that means a relational database. PostgreSQL is the default choice for a huge share…</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>Working with SQLite in Go</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/37-working-with-sqlite-in-go.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/37-working-with-sqlite-in-go.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">The previous chapter treated PostgreSQL as the default choice for a Go API&#39;s storage. It is a good default, but it is not the only reasonable one. SQLite -- an entire relational database engine compiled into a single library, with no separa…</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>Containerizing Go APIs with Docker</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/38-containerizing-go-apis-with-docker.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/38-containerizing-go-apis-with-docker.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Every API built so far in this book runs however you happen to launch it: go run main.go on your laptop, or a binary copied onto a server by hand. That works until you need the exact same artifact to run identically on a teammate&#39;s machine,…</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>Clean Architecture for Go APIs</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/39-clean-architecture-for-go-apis.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/39-clean-architecture-for-go-apis.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Every chapter so far has built one slice of an API — routing, auth, rate limiting, observability. This chapter and the three that follow it step back and ask a different question: once you have all those slices, how do you arrange them so t…</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>Hexagonal Architecture (Ports and Adapters) for Go APIs</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/40-hexagonal-architecture-ports-and-adapters-for-go-apis.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/40-hexagonal-architecture-ports-and-adapters-for-go-apis.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Chapter 6.39 drew Clean Architecture as concentric rings and established the rule that matters: dependencies point inward, and domain logic never imports a framework or a driver. Alistair Cockburn&#39;s Hexagonal Architecture — also called Port…</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>Domain-Driven Design in Go</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/41-domain-driven-design-in-go.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/41-domain-driven-design-in-go.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Chapters 6.39 and 6.40 answered &#34;which package can import which.&#34; This chapter answers a different question: once your domain logic lives in its own package, protected from frameworks and databases, how do you design the types inside that p…</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>Building a Complete Project End-to-End</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/42-building-a-complete-project-end-to-end.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/42-building-a-complete-project-end-to-end.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">The last three chapters built the order-management example in pieces: the package layout and dependency direction (Chapter 6.39), the ports-and-adapters vocabulary and a fast in-memory test double (Chapter 6.40), and the DDD-modeled Order a…</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>Deploying to Google Cloud</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/43-deploying-to-google-cloud.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/43-deploying-to-google-cloud.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Chapter 6.38 covered building a Go API into a small, distroless container image with a multi-stage Dockerfile, and Chapter 6.17 covered the general shape of running that image reliably at scale. This chapter takes that same image and deploy…</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>Orchestration, Replicas, and Graceful Shutdown</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/44-orchestration-replicas-and-graceful-shutdown.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/44-orchestration-replicas-and-graceful-shutdown.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Chapter 6.17 introduced running multiple replicas behind a load balancer and sketched a first graceful shutdown using signal.NotifyContext and http.Server.Shutdown . This chapter goes deeper on both halves of that picture: exactly what runn…</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>Thinking Like an Attacker: API Security</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/45-thinking-like-an-attacker-api-security.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/45-thinking-like-an-attacker-api-security.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Chapter 6.10 built authentication and Chapter 6.11 added rate limiting at the traffic level — both defensive, both essential, and both easy to trust a little too much on their own. A valid token or a request under the rate limit only proves…</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>Caching and Redis for Go APIs</title><link href="https://sazardev.github.io/networking-with-go/read/production-apis-architecture/46-caching-and-redis-for-go-apis.html"/><id>https://sazardev.github.io/networking-with-go/read/production-apis-architecture/46-caching-and-redis-for-go-apis.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html">Every database chapter so far assumed each request earns its own round trip to PostgreSQL or SQLite. For a lot of endpoints that&#39;s perfectly fine—but some queries get asked thousands of times a minute for data that barely changes: a product…</summary><category term="Production APIs &amp; Architecture"/></entry>
<entry><title>A Final Word</title><link href="https://sazardev.github.io/networking-with-go/read/back-matter/01-a-final-word.html"/><id>https://sazardev.github.io/networking-with-go/read/back-matter/01-a-final-word.html</id><updated>2026-08-07T18:13:21Z</updated><published>2026-08-07T18:13:21Z</published><summary type="html"></summary><category term="A Final Word"/></entry>
</feed>
