<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Hacker News: hmaxdml</title><link>https://news.ycombinator.com/user?id=hmaxdml</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Sat, 13 Jun 2026 03:38:47 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=hmaxdml" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by hmaxdml in "pg_durable: Microsoft open sources in-database durable execution"]]></title><description><![CDATA[
<p>The database is exactly the hardcore piece of engineering that's been designed to scale and be fault tolerant for decades</p>
]]></description><pubDate>Sat, 06 Jun 2026 11:53:53 +0000</pubDate><link>https://news.ycombinator.com/item?id=48424048</link><dc:creator>hmaxdml</dc:creator><comments>https://news.ycombinator.com/item?id=48424048</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48424048</guid></item><item><title><![CDATA[New comment by hmaxdml in "pg_durable: Microsoft open sources in-database durable execution"]]></title><description><![CDATA[
<p>Because you likely already have a  database and likely don't need to bring on an entire new distributed system to orchestrate your workflows.</p>
]]></description><pubDate>Sat, 06 Jun 2026 11:52:01 +0000</pubDate><link>https://news.ycombinator.com/item?id=48424033</link><dc:creator>hmaxdml</dc:creator><comments>https://news.ycombinator.com/item?id=48424033</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48424033</guid></item><item><title><![CDATA[New comment by hmaxdml in "pg_durable: Microsoft open sources in-database durable execution"]]></title><description><![CDATA[
<p>A PG-backed queue is in code right after being in PG, and the beauty of a neat durable queue framework is in exposing it conveniently and efficiently.</p>
]]></description><pubDate>Sat, 06 Jun 2026 11:43:59 +0000</pubDate><link>https://news.ycombinator.com/item?id=48423970</link><dc:creator>hmaxdml</dc:creator><comments>https://news.ycombinator.com/item?id=48423970</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48423970</guid></item><item><title><![CDATA[New comment by hmaxdml in "Building durable workflows on Postgres"]]></title><description><![CDATA[
<p>Postgres does scale pretty well: <a href="https://www.dbos.dev/blog/benchmarking-workflow-execution-scalability-on-postgres" rel="nofollow">https://www.dbos.dev/blog/benchmarking-workflow-execution-sc...</a><p>Tens of thousands of workflows per second</p>
]]></description><pubDate>Tue, 02 Jun 2026 16:23:20 +0000</pubDate><link>https://news.ycombinator.com/item?id=48372376</link><dc:creator>hmaxdml</dc:creator><comments>https://news.ycombinator.com/item?id=48372376</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48372376</guid></item><item><title><![CDATA[New comment by hmaxdml in "SQLite is all you need for durable workflows"]]></title><description><![CDATA[
<p>That's why their entire business model -- like Astronomer's -- is geared toward cloud hosting. The architecture is so complex it takes a full time team to run it.</p>
]]></description><pubDate>Sat, 30 May 2026 20:54:42 +0000</pubDate><link>https://news.ycombinator.com/item?id=48340534</link><dc:creator>hmaxdml</dc:creator><comments>https://news.ycombinator.com/item?id=48340534</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48340534</guid></item><item><title><![CDATA[New comment by hmaxdml in "SQLite is all you need for durable workflows"]]></title><description><![CDATA[
<p>Have you looked into DBOS? Same thesis: durable and reliable workflows are hard to manage -- it just doesn't have to be as hard as Temporal makes it be :)</p>
]]></description><pubDate>Sat, 30 May 2026 20:51:42 +0000</pubDate><link>https://news.ycombinator.com/item?id=48340494</link><dc:creator>hmaxdml</dc:creator><comments>https://news.ycombinator.com/item?id=48340494</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48340494</guid></item><item><title><![CDATA[New comment by hmaxdml in "Building durable workflows on Postgres"]]></title><description><![CDATA[
<p>DBOS python supports SQLite. Go is supporting it next release</p>
]]></description><pubDate>Fri, 29 May 2026 22:18:07 +0000</pubDate><link>https://news.ycombinator.com/item?id=48330045</link><dc:creator>hmaxdml</dc:creator><comments>https://news.ycombinator.com/item?id=48330045</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48330045</guid></item><item><title><![CDATA[New comment by hmaxdml in "Building durable workflows on Postgres"]]></title><description><![CDATA[
<p>I've talked to dozens of engineers who built their home grown "durable" stack. Most of them eventually moved on to buying vs building, when their system actually scaled. It's just not a side-hustle to build a foundational reliability layer.</p>
]]></description><pubDate>Thu, 28 May 2026 23:07:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=48316787</link><dc:creator>hmaxdml</dc:creator><comments>https://news.ycombinator.com/item?id=48316787</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48316787</guid></item><item><title><![CDATA[New comment by hmaxdml in "Building durable workflows on Postgres"]]></title><description><![CDATA[
<p>Yeah, we've observed that too: people start implementing their own retry logic, idempotency, etc. But then they grow a hard to maintain, complex stack that's not their core business logic. There's a reason why there is a dedicated team building DBOS, every day. Because it's not that easy to build a solid durable workflows engine on Postgres.</p>
]]></description><pubDate>Thu, 28 May 2026 23:03:40 +0000</pubDate><link>https://news.ycombinator.com/item?id=48316760</link><dc:creator>hmaxdml</dc:creator><comments>https://news.ycombinator.com/item?id=48316760</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48316760</guid></item><item><title><![CDATA[New comment by hmaxdml in "Building durable workflows on Postgres"]]></title><description><![CDATA[
<p>Listen/notify is poised to become much better in PG 18 and 19</p>
]]></description><pubDate>Thu, 28 May 2026 19:46:39 +0000</pubDate><link>https://news.ycombinator.com/item?id=48314392</link><dc:creator>hmaxdml</dc:creator><comments>https://news.ycombinator.com/item?id=48314392</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48314392</guid></item><item><title><![CDATA[New comment by hmaxdml in "Building durable workflows on Postgres"]]></title><description><![CDATA[
<p>As you said, the example is simple and it might not be obvious to people without prod experience what the problems can be. Postgres can give you all the primitives you need to solve this at the application layer. Durable workflows on Postgres is an effective way to access these primitives.</p>
]]></description><pubDate>Thu, 28 May 2026 19:35:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=48314288</link><dc:creator>hmaxdml</dc:creator><comments>https://news.ycombinator.com/item?id=48314288</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48314288</guid></item><item><title><![CDATA[New comment by hmaxdml in "Agents need control flow, not more prompts"]]></title><description><![CDATA[
<p>We've found that durable workflows is a much needed primitive for agents control flow. They give a structure for deterministic replays, observability, and, of course, fault tolerance, that operators need to make the agent loop reliable.</p>
]]></description><pubDate>Thu, 07 May 2026 19:54:29 +0000</pubDate><link>https://news.ycombinator.com/item?id=48054051</link><dc:creator>hmaxdml</dc:creator><comments>https://news.ycombinator.com/item?id=48054051</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48054051</guid></item><item><title><![CDATA[Stonebraker on Postgres, Disagreeing with Google, and Future Problems [video]]]></title><description><![CDATA[
<p>Article URL: <a href="https://www.youtube.com/watch?v=YPObBOwIrHk">https://www.youtube.com/watch?v=YPObBOwIrHk</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=47883452">https://news.ycombinator.com/item?id=47883452</a></p>
<p>Points: 1</p>
<p># Comments: 0</p>
]]></description><pubDate>Thu, 23 Apr 2026 23:13:35 +0000</pubDate><link>https://www.youtube.com/watch?v=YPObBOwIrHk</link><dc:creator>hmaxdml</dc:creator><comments>https://news.ycombinator.com/item?id=47883452</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47883452</guid></item><item><title><![CDATA[New comment by hmaxdml in "Go-Native Durable Execution"]]></title><description><![CDATA[
<p>Automatic crash detection for your process is built-in our Conductor offering. The library has a default recovery mode when used standalone.<p>What do you find strange with workflow versioning? Would love to consider improving the semantics. In fact, we started doing it: <a href="https://github.com/dbos-inc/dbos-transact-py/pull/598" rel="nofollow">https://github.com/dbos-inc/dbos-transact-py/pull/598</a></p>
]]></description><pubDate>Tue, 03 Mar 2026 17:19:26 +0000</pubDate><link>https://news.ycombinator.com/item?id=47235584</link><dc:creator>hmaxdml</dc:creator><comments>https://news.ycombinator.com/item?id=47235584</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47235584</guid></item><item><title><![CDATA[New comment by hmaxdml in "Go-Native Durable Execution"]]></title><description><![CDATA[
<p>I notice you didn't provide any specific comparison alongside that comment, which makes me feel frustrated because I think the Temporal workflow SDK is very different. Architecturally, Temporal and DBOS are at two opposites of the durable execution spectrum. I'd love to understand what makes you think this work is a mere copy and paste. Would you be willing to share some more with me?</p>
]]></description><pubDate>Tue, 03 Mar 2026 02:26:00 +0000</pubDate><link>https://news.ycombinator.com/item?id=47227161</link><dc:creator>hmaxdml</dc:creator><comments>https://news.ycombinator.com/item?id=47227161</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47227161</guid></item><item><title><![CDATA[New comment by hmaxdml in "Go-Native Durable Execution"]]></title><description><![CDATA[
<p>Thanks for the comment (author here). I wanted this post to focus on the Golang specific implementation, not dwell on the durable execution ecosystem at large.<p>With respect to context, I don't know that anyone invented "having their own context". Go interface are extendable and pretty much every major framework I know of implement their own context.<p>Would love to learn more about the gaps that offset you. We're constantly improving here ;)</p>
]]></description><pubDate>Mon, 02 Mar 2026 17:26:24 +0000</pubDate><link>https://news.ycombinator.com/item?id=47221040</link><dc:creator>hmaxdml</dc:creator><comments>https://news.ycombinator.com/item?id=47221040</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47221040</guid></item><item><title><![CDATA[New comment by hmaxdml in "Go-Native Durable Execution"]]></title><description><![CDATA[
<p>Conductor is about enterprise features like automatic workflow recovery, alerting, or RBAC. The GUI is a nice to have -- but all your workflow data are in Postgres. You can access it very easily.</p>
]]></description><pubDate>Mon, 02 Mar 2026 17:25:11 +0000</pubDate><link>https://news.ycombinator.com/item?id=47221023</link><dc:creator>hmaxdml</dc:creator><comments>https://news.ycombinator.com/item?id=47221023</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47221023</guid></item><item><title><![CDATA[Go-Native Durable Execution]]></title><description><![CDATA[
<p>Article URL: <a href="https://www.dbos.dev/blog/how-we-built-golang-native-durable-execution">https://www.dbos.dev/blog/how-we-built-golang-native-durable-execution</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=47160065">https://news.ycombinator.com/item?id=47160065</a></p>
<p>Points: 56</p>
<p># Comments: 19</p>
]]></description><pubDate>Thu, 26 Feb 2026 00:17:52 +0000</pubDate><link>https://www.dbos.dev/blog/how-we-built-golang-native-durable-execution</link><dc:creator>hmaxdml</dc:creator><comments>https://news.ycombinator.com/item?id=47160065</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47160065</guid></item><item><title><![CDATA[New comment by hmaxdml in "Designing a Passively Safe API"]]></title><description><![CDATA[
<p>Durable execution has already been mentioned as the existing solution for this problem, but I would like to call out a specific pattern that DE makes obsolete: the outbox pattern. Imagine just being able to do do<p>send a()
send b()<p>And know both will be sent at least once, without having to introduce an outbox and re-architect your code to use a message relay. We can nitpick the details, but being able to "just write normal code" and get strong guarantees is, imo, real progress.</p>
]]></description><pubDate>Sat, 31 Jan 2026 17:00:12 +0000</pubDate><link>https://news.ycombinator.com/item?id=46838353</link><dc:creator>hmaxdml</dc:creator><comments>https://news.ycombinator.com/item?id=46838353</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46838353</guid></item><item><title><![CDATA[New comment by hmaxdml in "Designing a Passively Safe API"]]></title><description><![CDATA[
<p>These are all important concerns, but I'd go for an off the shelf library that does it for me (disclaimer I work at <a href="https://github.com/dbos-inc" rel="nofollow">https://github.com/dbos-inc</a>)</p>
]]></description><pubDate>Sat, 31 Jan 2026 16:55:23 +0000</pubDate><link>https://news.ycombinator.com/item?id=46838309</link><dc:creator>hmaxdml</dc:creator><comments>https://news.ycombinator.com/item?id=46838309</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46838309</guid></item></channel></rss>