<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>Unshipped Weekly Digest</title>
    <link>https://unshipped.dev/archive/</link>
    <description>Recent abandoned software projects and the lessons worth studying.</description>
    <language>en</language>
    <lastBuildDate>Mon, 25 May 2026 17:46:07 GMT</lastBuildDate>
    <item>
      <title>Tidepool</title>
      <link>https://unshipped.dev/entry/?id=tidepool</link>
      <guid isPermaLink="true">https://unshipped.dev/entry/?id=tidepool</guid>
      <pubDate>Thu, 01 Aug 2024 00:00:00 GMT</pubDate>
      <category>team</category>
      <description>Good architecture cannot rescue a team that never chooses whose product instincts win. A mobile-first habit tracker that used tidal metaphors — habits were waves, streaks were tides, and missed days were receding water. Gorgeous UI with fluid animations. The founding team of three split over product direction: one wanted gamification, one wanted minimalism, one wanted social features. No one shipped. It shows how a healthy technical foundation cannot compensate for missing product governance. The codebase could support multiple visions, which turned into a liability because none was chosen.</description>
    </item>
    <item>
      <title>Neural Garden</title>
      <link>https://unshipped.dev/entry/?id=neural-garden</link>
      <guid isPermaLink="true">https://unshipped.dev/entry/?id=neural-garden</guid>
      <pubDate>Sat, 01 Jun 2024 00:00:00 GMT</pubDate>
      <category>funding</category>
      <description>Delight can teach the wrong thing if the metaphor gets ahead of the model. An interactive visualization platform where users could &apos;grow&apos; neural networks in a garden metaphor — each neuron was a plant, weights were root systems, and training was seasons passing. Built as an educational tool for ML newcomers. Ran out of funding after the grant period ended, despite strong user engagement in beta. The project is a strong case study in how expressive interface metaphors can increase engagement while quietly distorting technical understanding. It is especially useful for teams building developer education products.</description>
    </item>
    <item>
      <title>Verdant</title>
      <link>https://unshipped.dev/entry/?id=verdant</link>
      <guid isPermaLink="true">https://unshipped.dev/entry/?id=verdant</guid>
      <pubDate>Wed, 01 May 2024 00:00:00 GMT</pubDate>
      <category>timing</category>
      <description>Granularity is not a product advantage if buyers still need the top-line number first. A carbon footprint calculator for CI/CD pipelines — it estimated the energy cost of every build, test run, and deployment in your GitHub Actions workflow. Had promising accuracy for compute-bound jobs but couldn&apos;t reliably estimate network and storage I/O. The market timing was wrong: companies wanted carbon dashboards, not pipeline-level granularity. This entry is a strong reminder that product resolution matters as much as technical resolution. The team built the detailed tool before buyers were ready to care about the detailed metric.</description>
    </item>
    <item>
      <title>Unshipped-Mock</title>
      <link>https://unshipped.dev/entry/?id=ybeldi-mock-project</link>
      <guid isPermaLink="true">https://unshipped.dev/entry/?id=ybeldi-mock-project</guid>
      <pubDate>Wed, 01 May 2024 00:00:00 GMT</pubDate>
      <category>technical-debt</category>
      <description>Mocking early saves time. A project that focuses on showcasing how to handle a mock submission. It explores various techniques for mock creation and integration. Valuable for understanding how to integrate mock data early in the development cycle.</description>
    </item>
    <item>
      <title>CollabScript</title>
      <link>https://unshipped.dev/entry/?id=collabscript</link>
      <guid isPermaLink="true">https://unshipped.dev/entry/?id=collabscript</guid>
      <pubDate>Fri, 01 Mar 2024 00:00:00 GMT</pubDate>
      <category>pivot</category>
      <description>Do not attack a platform incumbent on the one surface where it has native leverage. A real-time collaborative code editor built from scratch, aiming to outperform Google Docs for code. Supported 12 languages with syntax highlighting, had operational transform conflict resolution, and a WebSocket relay that handled 200 concurrent sessions in testing. The team pivoted when VS Code Live Share launched with deeper IDE integration than a browser app could match. A clean example of a technically credible product getting outflanked by a platform-native competitor. The code solved hard realtime problems, but the winning surface area turned out to be integration, not editing fidelity.</description>
    </item>
    <item>
      <title>RouteCraft</title>
      <link>https://unshipped.dev/entry/?id=routecraft</link>
      <guid isPermaLink="true">https://unshipped.dev/entry/?id=routecraft</guid>
      <pubDate>Mon, 01 Jan 2024 00:00:00 GMT</pubDate>
      <category>technical-debt</category>
      <description>Smart systems in the critical path must be more debuggable than the simple systems they replace. A developer-facing microservice router that used ML to predict optimal service mesh paths based on real-time latency data. Achieved 15% latency reduction in synthetic benchmarks but introduced unpredictable routing in production that made debugging nearly impossible. Abandoned when the team realized Istio with manual tuning was more reliable. A useful warning for teams tempted to place learned systems inside critical infrastructure paths before they have strong observability and rollback controls.</description>
    </item>
    <item>
      <title>Ghostwriter API</title>
      <link>https://unshipped.dev/entry/?id=ghostwriter-api</link>
      <guid isPermaLink="true">https://unshipped.dev/entry/?id=ghostwriter-api</guid>
      <pubDate>Wed, 01 Nov 2023 00:00:00 GMT</pubDate>
      <category>scope-creep</category>
      <description>A useful kernel can still die if every adjacent surface becomes mandatory before launch. A style-transfer API for technical writing — feed it your draft and a target author&apos;s corpus, and it would rewrite your prose to match their voice. Worked surprisingly well for blog posts but hallucinated citations in academic contexts. Shelved after scope creep turned a focused API into an attempted full writing suite. This one is valuable because the technical core already worked. The failure came from product sprawl around a solid API kernel, which makes it an unusually clear lesson in sequencing and restraint.</description>
    </item>
    <item>
      <title>CompilerQuest</title>
      <link>https://unshipped.dev/entry/?id=compilerquest</link>
      <guid isPermaLink="true">https://unshipped.dev/entry/?id=compilerquest</guid>
      <pubDate>Fri, 01 Sep 2023 00:00:00 GMT</pubDate>
      <category>burnout</category>
      <description>A sustainable build loop matters as much as a beautiful architecture in long solo projects. A roguelike game where each dungeon level was a compiler pass — lexing, parsing, type-checking, optimization, codegen. Enemies were bugs, weapons were design patterns, and bosses were famous unsolved CS problems. Technically impressive but too niche for a viable audience. Development stopped when the solo dev burned out after 14 months. The build is worth studying less for its market fit and more for the relationship between architecture choices and solo-maintainer stamina. It turns burnout into an engineering planning lesson.</description>
    </item>
    <item>
      <title>Mirror</title>
      <link>https://unshipped.dev/entry/?id=mirror-lang</link>
      <guid isPermaLink="true">https://unshipped.dev/entry/?id=mirror-lang</guid>
      <pubDate>Thu, 01 Jun 2023 00:00:00 GMT</pubDate>
      <category>technical-debt</category>
      <description>Elegant constraints compound until real-world language features force the abstraction to reveal its cost. A programming language where every function had to declare its inverse. If you wrote `encrypt(key, data)`, you had to write `decrypt(key, data)` in the same block. Designed for data pipeline debugging — you could run any transformation backwards. The type system became intractable for real-world use cases beyond simple ETL. An excellent example of elegant local ideas colliding with real-world language surface area. It bridges academic curiosity and practical compiler design better than most postmortems do.</description>
    </item>
  </channel>
</rss>
