<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Go on Spaghetti Code 🍝</title>
    <link>https://spaghetti-code.net/en/tags/go/</link>
    <description>Recent content in Go on Spaghetti Code 🍝</description>
    <image>
      <title>Spaghetti Code 🍝</title>
      <url>https://spaghetti-code.net/images/og-default.png</url>
      <link>https://spaghetti-code.net/images/og-default.png</link>
    </image>
    <generator>Hugo -- 0.160.0</generator>
    <language>en</language>
    <lastBuildDate>Mon, 26 Oct 2026 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://spaghetti-code.net/en/tags/go/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Exceptions vs Error Values: How to Pick a Strategy</title>
      <link>https://spaghetti-code.net/en/posts/clean-code/exceptions-vs-error-values/</link>
      <pubDate>Mon, 26 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/en/posts/clean-code/exceptions-vs-error-values/</guid>
      <description>Exceptions and error values solve the same problem in different ways. The real tradeoffs, shown in Python, Go, and Rust, and how to pick one for your own code.</description>
    </item>
    <item>
      <title>Goroutines and Channels Explained With Examples</title>
      <link>https://spaghetti-code.net/en/posts/go/goroutines-and-channels-explained/</link>
      <pubDate>Sun, 11 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://spaghetti-code.net/en/posts/go/goroutines-and-channels-explained/</guid>
      <description>How goroutines and channels work in Go: starting concurrent work with go, buffered vs unbuffered channels, select, and the mistakes that leak or deadlock them.</description>
    </item>
  </channel>
</rss>
