<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Eduardo Schelive - Software Engineer</title>
    <link>https://www.eduardoschelive.com/en-US</link>
    <description>In-depth articles on web development, cloud infrastructure, and software architecture. Practical tutorials on Next.js, React, TypeScript, and modern tech.</description>
    <language>en-US</language>
    <atom:link href="https://www.eduardoschelive.com/en-US/rss.xml" rel="self" type="application/rss+xml"/>
    
    <item>
      <title><![CDATA[Handling errors in goroutines]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/golang/articles/goroutine-errors</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/golang/articles/goroutine-errors</guid>
      <description><![CDATA[Learn two patterns for propagating errors from concurrent goroutines — the result struct and the separate error channel — and when to choose each.]]></description>
      <pubDate>Sun, 10 May 2026 00:38:00 GMT</pubDate>
      <category><![CDATA[Go Programming Language]]></category>
    </item>
    <item>
      <title><![CDATA[Pipelines, fan-out, and fan-in]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/golang/articles/pipelines</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/golang/articles/pipelines</guid>
      <description><![CDATA[Learn how to structure concurrent Go programs as pipelines of stages connected by channels, and how fan-out and fan-in parallelize the expensive ones.]]></description>
      <pubDate>Sun, 10 May 2026 00:38:00 GMT</pubDate>
      <category><![CDATA[Go Programming Language]]></category>
    </item>
    <item>
      <title><![CDATA[Preventing goroutine leaks]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/golang/articles/goroutine-leaks</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/golang/articles/goroutine-leaks</guid>
      <description><![CDATA[Learn how goroutines leak, why the GC cannot help, and how the done channel and context patterns give every goroutine a guaranteed exit path.]]></description>
      <pubDate>Thu, 07 May 2026 00:31:39 GMT</pubDate>
      <category><![CDATA[Go Programming Language]]></category>
    </item>
    <item>
      <title><![CDATA[The select statement]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/golang/articles/select</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/golang/articles/select</guid>
      <description><![CDATA[Learn how Go's select statement coordinates multiple channel operations simultaneously, handles timeouts, and powers the for-select pattern for reactive goroutines.]]></description>
      <pubDate>Thu, 07 May 2026 00:31:35 GMT</pubDate>
      <category><![CDATA[Go Programming Language]]></category>
    </item>
    <item>
      <title><![CDATA[Channels]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/golang/articles/channels</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/golang/articles/channels</guid>
      <description><![CDATA[Learn how Go channels enable safe communication between goroutines — creation, direction, blocking semantics, buffering, and ownership patterns.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:16 GMT</pubDate>
      <category><![CDATA[Go Programming Language]]></category>
    </item>
    <item>
      <title><![CDATA[Introduction to Data Structures]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/data-structures/articles/introduction-to-data-structures</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/data-structures/articles/introduction-to-data-structures</guid>
      <description><![CDATA[Understand how data structures transform random bytes into meaningful patterns. Explore contiguous vs scattered memory, linear vs non-linear structures, and the tradeoffs that shape your code's performance.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Data Structures]]></category>
    </item>
    <item>
      <title><![CDATA[Arrays]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/data-structures/articles/arrays</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/data-structures/articles/arrays</guid>
      <description><![CDATA[Learn how arrays store elements in contiguous memory for instant access. Understand indexing, memory layout, and the tradeoffs that make arrays the foundation of most data structures.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Data Structures]]></category>
    </item>
    <item>
      <title><![CDATA[Linked Lists]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/data-structures/articles/linked-lists</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/data-structures/articles/linked-lists</guid>
      <description><![CDATA[Discover how linked lists trade instant access for flexible insertion. Learn node structure, pointer manipulation, singly vs doubly variants, and when to choose linked lists over arrays.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Data Structures]]></category>
    </item>
    <item>
      <title><![CDATA[Stacks]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/data-structures/articles/stack</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/data-structures/articles/stack</guid>
      <description><![CDATA[Learn how stacks enforce LIFO order to manage data. Explore push, pop, and peek operations, array vs linked list implementations, and why stacks underpin function calls and expression parsing.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Data Structures]]></category>
    </item>
    <item>
      <title><![CDATA[Queues]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/data-structures/articles/queue</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/data-structures/articles/queue</guid>
      <description><![CDATA[Learn how queues enforce FIFO order to manage data. Explore enqueue, dequeue, and peek operations, circular buffer vs linked list implementations, and why queues drive task scheduling and BFS.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Data Structures]]></category>
    </item>
    <item>
      <title><![CDATA[Hash Tables]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/data-structures/articles/hash-table</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/data-structures/articles/hash-table</guid>
      <description><![CDATA[Learn how hash tables achieve O(1) average lookups by mapping keys to array slots. Explore hash functions, collision resolution with chaining and open addressing, load factor, and rehashing.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Data Structures]]></category>
    </item>
    <item>
      <title><![CDATA[Introduction to Go]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/golang/articles/introduction</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/golang/articles/introduction</guid>
      <description><![CDATA[Discover the origins of Go — why Google built it, who designed it, and the core principles that make it fast, simple, and built for the modern era of software.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Go Programming Language]]></category>
    </item>
    <item>
      <title><![CDATA[Basic types]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/golang/articles/basic-types</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/golang/articles/basic-types</guid>
      <description><![CDATA[Explore Go's built-in types — integers, floats, booleans, strings and more. Understand how Go's type system works and what each type costs in memory.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Go Programming Language]]></category>
    </item>
    <item>
      <title><![CDATA[Variables and constants]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/golang/articles/variables-and-constants</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/golang/articles/variables-and-constants</guid>
      <description><![CDATA[Learn how Go names values — the var keyword, short declarations, and constants. Understand type inference, zero values, and the difference between mutable and immutable bindings.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Go Programming Language]]></category>
    </item>
    <item>
      <title><![CDATA[Identifiers and keywords]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/golang/articles/identifiers-and-keywords</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/golang/articles/identifiers-and-keywords</guid>
      <description><![CDATA[Understand Go's naming rules, the 25 reserved keywords, and the predeclared identifiers that come built into every Go program.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Go Programming Language]]></category>
    </item>
    <item>
      <title><![CDATA[Operators]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/golang/articles/operators</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/golang/articles/operators</guid>
      <description><![CDATA[Master Go's operators — arithmetic, comparison, logical, bitwise, and assignment. Learn operator precedence and how Go handles expressions.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Go Programming Language]]></category>
    </item>
    <item>
      <title><![CDATA[Strings]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/golang/articles/strings</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/golang/articles/strings</guid>
      <description><![CDATA[Deep dive into Go strings — stored as UTF-8 byte sequences, immutable, and fully Unicode-aware. Learn indexing, slicing, conversions, and how to iterate correctly.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Go Programming Language]]></category>
    </item>
    <item>
      <title><![CDATA[Conditionals]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/golang/articles/control-flow</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/golang/articles/control-flow</guid>
      <description><![CDATA[Master Go's conditional statements — if, else, else if, and if init statements. Learn how Go enforces strict boolean conditions and how scoped variables make error handling cleaner.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Go Programming Language]]></category>
    </item>
    <item>
      <title><![CDATA[Arrays and slices]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/golang/articles/arrays-and-slices</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/golang/articles/arrays-and-slices</guid>
      <description><![CDATA[Master Go's two core sequence types — fixed-size arrays and dynamic slices. Learn how slices wrap arrays under the hood, how capacity and growth work, and how to avoid the shared-memory pitfalls.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Go Programming Language]]></category>
    </item>
    <item>
      <title><![CDATA[Maps]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/golang/articles/maps</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/golang/articles/maps</guid>
      <description><![CDATA[Learn how Go's built-in map type works — nil vs empty maps, reading with the comma-ok idiom, writing, key uniqueness, and comparable type constraints.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Go Programming Language]]></category>
    </item>
    <item>
      <title><![CDATA[Structs]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/golang/articles/structs</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/golang/articles/structs</guid>
      <description><![CDATA[Learn how Go structs let you model real-world data by grouping fields into custom types. Covers zero values, positional vs named initialization, and dot notation.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Go Programming Language]]></category>
    </item>
    <item>
      <title><![CDATA[Code blocks and scope]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/golang/articles/code-blocks</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/golang/articles/code-blocks</guid>
      <description><![CDATA[Understand how Go organizes code into nested blocks and how variable scope flows through them. Learn the block hierarchy, scope rules, and how shadowing works — and why it should be avoided.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Go Programming Language]]></category>
    </item>
    <item>
      <title><![CDATA[The for loop]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/golang/articles/for-loop</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/golang/articles/for-loop</guid>
      <description><![CDATA[Go has only one loop construct — for — but it covers every use case. Learn the three forms of for, how range works across arrays, slices, strings, maps and channels, and when to reach for each form.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Go Programming Language]]></category>
    </item>
    <item>
      <title><![CDATA[Break, continue, labels, and goto]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/golang/articles/break-continue-labels-goto</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/golang/articles/break-continue-labels-goto</guid>
      <description><![CDATA[Learn how to control loop flow in Go with break and continue, how labels extend them to nested loops, and where goto fits — and when to avoid it.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Go Programming Language]]></category>
    </item>
    <item>
      <title><![CDATA[The switch statement]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/golang/articles/switch</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/golang/articles/switch</guid>
      <description><![CDATA[Go's switch is cleaner and more powerful than most languages. Learn how it handles multiple code paths, initialization, multi-condition cases, and fallthrough.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Go Programming Language]]></category>
    </item>
    <item>
      <title><![CDATA[Functions]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/golang/articles/functions</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/golang/articles/functions</guid>
      <description><![CDATA[Functions are the building blocks of every Go program. Learn how to declare them, pass parameters, return values, and use Go's distinctive multiple return values.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Go Programming Language]]></category>
    </item>
    <item>
      <title><![CDATA[Closures and anonymous functions]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/golang/articles/closures</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/golang/articles/closures</guid>
      <description><![CDATA[Closures are functions that capture variables from their surrounding scope. Learn how they work in Go, why they retain state, and where they are most useful.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Go Programming Language]]></category>
    </item>
    <item>
      <title><![CDATA[Defer]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/golang/articles/defer</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/golang/articles/defer</guid>
      <description><![CDATA[The defer statement schedules a function call to run just before the surrounding function returns. Learn how it works, when arguments are evaluated, and how to use it for cleanup.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Go Programming Language]]></category>
    </item>
    <item>
      <title><![CDATA[Pointers]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/golang/articles/pointers</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/golang/articles/pointers</guid>
      <description><![CDATA[Learn how Go pointers work, when to use them for mutability and performance, and how Go's garbage collector manages heap memory.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Go Programming Language]]></category>
    </item>
    <item>
      <title><![CDATA[Call by value and call by reference]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/golang/articles/call-by-value-and-reference</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/golang/articles/call-by-value-and-reference</guid>
      <description><![CDATA[Understand how Go passes arguments to functions, why it is strictly call by value, and how maps and slices appear to behave like references.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Go Programming Language]]></category>
    </item>
    <item>
      <title><![CDATA[Types and methods]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/golang/articles/types-and-methods</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/golang/articles/types-and-methods</guid>
      <description><![CDATA[Learn how to define and derive custom types in Go, attach behavior with methods, understand receivers and method sets, and use iota for typed constant sequences.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Go Programming Language]]></category>
    </item>
    <item>
      <title><![CDATA[Embedding]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/golang/articles/embedding</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/golang/articles/embedding</guid>
      <description><![CDATA[Learn how Go uses embedding to compose structs, promote fields and methods, and satisfy interfaces — without inheritance.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Go Programming Language]]></category>
    </item>
    <item>
      <title><![CDATA[Interfaces]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/golang/articles/interfaces</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/golang/articles/interfaces</guid>
      <description><![CDATA[Learn how Go interfaces define behavior implicitly, how types satisfy multiple interfaces, and how the empty interface and type assertions unlock flexible, maintainable code.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Go Programming Language]]></category>
    </item>
    <item>
      <title><![CDATA[Errors]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/golang/articles/errors</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/golang/articles/errors</guid>
      <description><![CDATA[Learn how Go handles errors explicitly through return values, how to create and wrap errors, and how to compare them using errors.Is and errors.As.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Go Programming Language]]></category>
    </item>
    <item>
      <title><![CDATA[Panic and recover]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/golang/articles/panic-and-recover</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/golang/articles/panic-and-recover</guid>
      <description><![CDATA[Learn when Go raises a panic, how it unwinds the call stack, and how recover lets packages catch panics and return meaningful errors instead of crashing.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Go Programming Language]]></category>
    </item>
    <item>
      <title><![CDATA[Packages]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/golang/articles/packages</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/golang/articles/packages</guid>
      <description><![CDATA[Learn how Go packages organize code, how exported identifiers work, how the init function runs, and the idioms for naming, aliases, and side-effect imports.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Go Programming Language]]></category>
    </item>
    <item>
      <title><![CDATA[Dependency management]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/golang/articles/dependency-management</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/golang/articles/dependency-management</guid>
      <description><![CDATA[Learn how Go modules manage dependencies using go.mod and go.sum, how to add and remove packages, and how to keep your module files clean with go mod tidy.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Go Programming Language]]></category>
    </item>
    <item>
      <title><![CDATA[Project structure]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/golang/articles/project-structure</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/golang/articles/project-structure</guid>
      <description><![CDATA[Learn how to structure Go projects from a single-file library to multi-package applications with internal packages, multiple executables, and workspace mode.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Go Programming Language]]></category>
    </item>
    <item>
      <title><![CDATA[io.Reader and io.Writer]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/golang/articles/io-reader-and-writer</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/golang/articles/io-reader-and-writer</guid>
      <description><![CDATA[Learn how Go's io.Reader and io.Writer interfaces unify I/O across files, HTTP, buffers, and more — and how to implement them yourself.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Go Programming Language]]></category>
    </item>
    <item>
      <title><![CDATA[os and bufio]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/golang/articles/os-and-bufio</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/golang/articles/os-and-bufio</guid>
      <description><![CDATA[Learn how to read and write files, process text line by line, manage environment variables, and access command-line arguments using Go's os and bufio packages.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Go Programming Language]]></category>
    </item>
    <item>
      <title><![CDATA[JSON in Go]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/golang/articles/json</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/golang/articles/json</guid>
      <description><![CDATA[Learn how to marshal and unmarshal JSON in Go, control field names with struct tags, and stream JSON efficiently using Encoder and Decoder.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Go Programming Language]]></category>
    </item>
    <item>
      <title><![CDATA[Time in Go]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/golang/articles/time</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/golang/articles/time</guid>
      <description><![CDATA[Learn how Go represents time with wall clock and monotonic readings, and how to work with the time.Time and time.Duration types from the standard library.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Go Programming Language]]></category>
    </item>
    <item>
      <title><![CDATA[HTTP in Go]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/golang/articles/net-http</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/golang/articles/net-http</guid>
      <description><![CDATA[Learn how to build HTTP clients and servers in Go using the net/http package, from making requests to routing with ServeMux and path wildcards.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Go Programming Language]]></category>
    </item>
    <item>
      <title><![CDATA[Context package]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/golang/articles/context</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/golang/articles/context</guid>
      <description><![CDATA[Learn how Go's context package enables cancellation, deadlines, and request-scoped values across API boundaries and concurrent operations.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Go Programming Language]]></category>
    </item>
    <item>
      <title><![CDATA[Testing]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/golang/articles/testing</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/golang/articles/testing</guid>
      <description><![CDATA[Learn how Go's built-in testing package and go test command cover everything you need, from basic assertions to table-driven tests and package-level setup.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Go Programming Language]]></category>
    </item>
    <item>
      <title><![CDATA[Generics]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/golang/articles/generics</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/golang/articles/generics</guid>
      <description><![CDATA[Learn how Go generics enable type-safe code reuse through type parameters and constraints, eliminating duplicate functions and unsafe interface{} casts.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Go Programming Language]]></category>
    </item>
    <item>
      <title><![CDATA[The fmt package in depth]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/golang/articles/fmt</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/golang/articles/fmt</guid>
      <description><![CDATA[Master Go's fmt package — format verbs, width and alignment, the Stringer and GoStringer interfaces, and the full family of print and scan functions.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Go Programming Language]]></category>
    </item>
    <item>
      <title><![CDATA[Concurrency challenges]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/golang/articles/concurrency</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/golang/articles/concurrency</guid>
      <description><![CDATA[Understand what concurrency is, why it matters for multi-core systems, and the challenges it introduces: race conditions, atomicity, and critical sections.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Go Programming Language]]></category>
    </item>
    <item>
      <title><![CDATA[Deadlocks, livelocks, and starvation]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/golang/articles/deadlocks-livelocks-starvation</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/golang/articles/deadlocks-livelocks-starvation</guid>
      <description><![CDATA[Learn to identify and prevent the three classic concurrency hazards in Go — deadlocks, livelocks, and starvation — with code examples and practical fixes.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Go Programming Language]]></category>
    </item>
    <item>
      <title><![CDATA[Go's concurrency model]]></title>
      <link>https://www.eduardoschelive.com/en-US/categories/golang/articles/concurrency-model</link>
      <guid>https://www.eduardoschelive.com/en-US/categories/golang/articles/concurrency-model</guid>
      <description><![CDATA[Explore Go's concurrency philosophy, its roots in CSP, and how goroutines, channels, and the select statement form a coherent model for concurrent programs.]]></description>
      <pubDate>Wed, 06 May 2026 22:11:06 GMT</pubDate>
      <category><![CDATA[Go Programming Language]]></category>
    </item>
  </channel>
</rss>