<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: holtwick</title><link>https://news.ycombinator.com/user?id=holtwick</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Sun, 01 Nov 2026 15:26:59 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=holtwick" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by holtwick in "Backdoor in Claude Code for VS Code extension on the Cursor Marketplace"]]></title><description><![CDATA[
<p>Put it inside <a href="https://bxsandbox.app" rel="nofollow">https://bxsandbox.app</a></p>
]]></description><pubDate>Fri, 30 Oct 2026 19:03:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=50308656</link><dc:creator>holtwick</dc:creator><comments>https://news.ycombinator.com/item?id=50308656</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50308656</guid></item><item><title><![CDATA[New comment by holtwick in "Git for the US Code"]]></title><description><![CDATA[
<p>German Constitution "Grundgesetz" on Github with proper time stamps
<a href="https://github.com/c3e/grundgesetz" rel="nofollow">https://github.com/c3e/grundgesetz</a></p>
]]></description><pubDate>Wed, 28 Oct 2026 07:11:46 +0000</pubDate><link>https://news.ycombinator.com/item?id=50270137</link><dc:creator>holtwick</dc:creator><comments>https://news.ycombinator.com/item?id=50270137</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50270137</guid></item><item><title><![CDATA[New comment by holtwick in "Selling Software Worldwide from Europe"]]></title><description><![CDATA[
<p>AFAIK: Lemon Squeezy is owned by Stripe and development is discontinued; I sold my software via FastSpring before I switched to Paddle, it is not very modern and you have to bring a lot of your own implementation; Paddle is quite easy to set up; more modern providers like tiun from Switzerland offer MCP so AI can do the setup for you (probably Paddle can as well)</p>
]]></description><pubDate>Thu, 03 Sep 2026 19:22:54 +0000</pubDate><link>https://news.ycombinator.com/item?id=49555318</link><dc:creator>holtwick</dc:creator><comments>https://news.ycombinator.com/item?id=49555318</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49555318</guid></item><item><title><![CDATA[New comment by holtwick in "Selling Software Worldwide from Europe"]]></title><description><![CDATA[
<p>The author here. Thanks for mentioning my article. I'm looking forward to learn how others experience selling software online. Let's get into the discussion :)</p>
]]></description><pubDate>Thu, 03 Sep 2026 07:51:11 +0000</pubDate><link>https://news.ycombinator.com/item?id=49547114</link><dc:creator>holtwick</dc:creator><comments>https://news.ycombinator.com/item?id=49547114</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49547114</guid></item><item><title><![CDATA[New comment by holtwick in "Hacker News but for Independent Blogs"]]></title><description><![CDATA[
<p>The briefing pages also have RSS, this way you see the most relevant stuff  <a href="https://bubbles.town/editions" rel="nofollow">https://bubbles.town/editions</a></p>
]]></description><pubDate>Wed, 17 Jun 2026 09:21:53 +0000</pubDate><link>https://news.ycombinator.com/item?id=48567831</link><dc:creator>holtwick</dc:creator><comments>https://news.ycombinator.com/item?id=48567831</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48567831</guid></item><item><title><![CDATA[New comment by holtwick in "Hacker News but for Independent Blogs"]]></title><description><![CDATA[
<p>I love it!</p>
]]></description><pubDate>Wed, 17 Jun 2026 08:28:23 +0000</pubDate><link>https://news.ycombinator.com/item?id=48567432</link><dc:creator>holtwick</dc:creator><comments>https://news.ycombinator.com/item?id=48567432</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48567432</guid></item><item><title><![CDATA[Show HN: Bx – macOS native sandbox for AI and coding tools]]></title><description><![CDATA[
<p>Wrapper around Apple's macOS sandbox-exec tool, which usually sandboxes native apps. It is "allow-first" i.e. it will not overprotect everything, just crucial information and therefore allows most tools to run without issues. Limiting is done using a .gitignore like file schema. Further TOML config options available.<p>I built it because Docker sandboxing requires config and planning. Build in sandboxing of AI tools instead is limited to the very tools themselves, instead I wanted to have a simple cage around Claude running inside VSCode. Also needed to protect files inside a folder like .env.local or keys.<p>Install via: brew install holtwick/tap/bx<p>Run like: bx claude .</p>
<hr>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=47674056">https://news.ycombinator.com/item?id=47674056</a></p>
<p>Points: 8</p>
<p># Comments: 0</p>
]]></description><pubDate>Tue, 07 Apr 2026 12:14:30 +0000</pubDate><link>https://github.com/holtwick/bx-mac</link><dc:creator>holtwick</dc:creator><comments>https://news.ycombinator.com/item?id=47674056</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47674056</guid></item><item><title><![CDATA[Bubbles – HN-like frontpage for personal indie blogs]]></title><description><![CDATA[
<p>Article URL: <a href="https://bubbles.town/">https://bubbles.town/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=47629815">https://news.ycombinator.com/item?id=47629815</a></p>
<p>Points: 6</p>
<p># Comments: 0</p>
]]></description><pubDate>Fri, 03 Apr 2026 17:56:05 +0000</pubDate><link>https://bubbles.town/</link><dc:creator>holtwick</dc:creator><comments>https://news.ycombinator.com/item?id=47629815</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47629815</guid></item><item><title><![CDATA[New comment by holtwick in "Show HN: I built a frontpage for personal blogs"]]></title><description><![CDATA[
<p>Small web, try this one <a href="https://bubbles.town" rel="nofollow">https://bubbles.town</a></p>
]]></description><pubDate>Fri, 03 Apr 2026 17:31:24 +0000</pubDate><link>https://news.ycombinator.com/item?id=47629532</link><dc:creator>holtwick</dc:creator><comments>https://news.ycombinator.com/item?id=47629532</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47629532</guid></item><item><title><![CDATA[New comment by holtwick in "Proton meet isn't what they told you it was"]]></title><description><![CDATA[
<p>There's nothing bad about SFU, particularly the version you wrote, which forms the basis of Livekit. It would be my first choice for supporting larger groups in Briefing anyway. If the traffic is E2EE, it doesn't matter if an SFU is involved. The critical part is the signalling, in my opinion. This is where the initial communication is established. In the current version of my app, whose source code is yet to be published, this can happen via an untrusted server.</p>
]]></description><pubDate>Fri, 03 Apr 2026 11:41:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=47625538</link><dc:creator>holtwick</dc:creator><comments>https://news.ycombinator.com/item?id=47625538</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47625538</guid></item><item><title><![CDATA[New comment by holtwick in "Proton Meet Isn't What They Told You It Was"]]></title><description><![CDATA[
<p>For small groups SFU like Livekit is not needed at all. Still E2E and realtime collab. I wrote such a thing: <a href="https://brie.fi/ng" rel="nofollow">https://brie.fi/ng</a></p>
]]></description><pubDate>Fri, 03 Apr 2026 11:16:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=47625360</link><dc:creator>holtwick</dc:creator><comments>https://news.ycombinator.com/item?id=47625360</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47625360</guid></item><item><title><![CDATA[New comment by holtwick in "Go hard on agents, not on your filesystem"]]></title><description><![CDATA[
<p>Inspired by this tool I wrote something that fits macOS better. It uses the native sandbox-exec from Apple and can wrap other apps as well, like VSCode in which you usually run AI stuff. <a href="https://github.com/holtwick/bx-mac" rel="nofollow">https://github.com/holtwick/bx-mac</a></p>
]]></description><pubDate>Sat, 28 Mar 2026 12:27:19 +0000</pubDate><link>https://news.ycombinator.com/item?id=47553953</link><dc:creator>holtwick</dc:creator><comments>https://news.ycombinator.com/item?id=47553953</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47553953</guid></item><item><title><![CDATA[New comment by holtwick in "Handy – Free open source speech-to-text app"]]></title><description><![CDATA[
<p>FluidVoice for macOS is pretty handy as well. Open source under Apache License. 
<a href="https://altic.dev/fluid" rel="nofollow">https://altic.dev/fluid</a>
<a href="https://github.com/altic-dev/FluidVoice" rel="nofollow">https://github.com/altic-dev/FluidVoice</a></p>
]]></description><pubDate>Thu, 15 Jan 2026 12:30:00 +0000</pubDate><link>https://news.ycombinator.com/item?id=46631499</link><dc:creator>holtwick</dc:creator><comments>https://news.ycombinator.com/item?id=46631499</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46631499</guid></item><item><title><![CDATA[New comment by holtwick in "Czech Republic: Petition for open source in public administration"]]></title><description><![CDATA[
<p>I'm keeping my fingers crossed! Hopefully it won't just remain at the announcement stage.</p>
]]></description><pubDate>Fri, 06 Jun 2025 15:59:37 +0000</pubDate><link>https://news.ycombinator.com/item?id=44202159</link><dc:creator>holtwick</dc:creator><comments>https://news.ycombinator.com/item?id=44202159</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44202159</guid></item><item><title><![CDATA[New comment by holtwick in "Czech Republic: Petition for open source in public administration"]]></title><description><![CDATA[
<p>I wonder there is not already such a petition in the EU or Germany. I searched, but didn't find any. Somebody who wants to create one? I'm not that good in writing such texts:<p>Europe: <a href="https://www.europarl.europa.eu/petitions/de/home" rel="nofollow">https://www.europarl.europa.eu/petitions/de/home</a><p>Germany: <a href="https://epetitionen.bundestag.de/epet/startseite.nc.html" rel="nofollow">https://epetitionen.bundestag.de/epet/startseite.nc.html</a></p>
]]></description><pubDate>Fri, 06 Jun 2025 14:27:34 +0000</pubDate><link>https://news.ycombinator.com/item?id=44201285</link><dc:creator>holtwick</dc:creator><comments>https://news.ycombinator.com/item?id=44201285</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44201285</guid></item><item><title><![CDATA[New comment by holtwick in "Resilient Sync for Local First"]]></title><description><![CDATA[
<p>Thanks for sharing, this is super interesting. Although it doesn't seem to be super active these days. Probably because it is difficult to commercialize local first. That might be why we need a widely adopted and super flexible standard to become attractive to hosters of such services.</p>
]]></description><pubDate>Tue, 25 Jun 2024 12:30:00 +0000</pubDate><link>https://news.ycombinator.com/item?id=40787730</link><dc:creator>holtwick</dc:creator><comments>https://news.ycombinator.com/item?id=40787730</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40787730</guid></item><item><title><![CDATA[New comment by holtwick in "Resilient Sync for Local First"]]></title><description><![CDATA[
<p>I would like to refine my answer regarding the rapidly growing log. If we assume that we have a real-time application, then every keystroke or pointer action can indeed create a change entry.<p>But this storage format is designed for "long term" and "slow" operations. Where "slow" means in the time lapse of a second instead of a milisecond. This allows us to combine multiple changes into a single log entry.<p>CRDT implementations like Yjs are good at concentrating such changes into smaller chunks of data. For example, writing text in a rich text editor like Prosemirror is then reduced to something like a string and a position.<p>But the UI can also be lazy and throttle things. A string input field can only fire changes when the field is left or not typed for a second or so.<p>These steps will significantly reduce the size of the log. They did in my implementations.<p>But this is not the end of realtime for such applications. These applications could still pass changes directly over P2P, as long as the log remains consistent, so that the resulting document will always eventually consistent.</p>
]]></description><pubDate>Tue, 25 Jun 2024 12:03:54 +0000</pubDate><link>https://news.ycombinator.com/item?id=40787455</link><dc:creator>holtwick</dc:creator><comments>https://news.ycombinator.com/item?id=40787455</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40787455</guid></item><item><title><![CDATA[New comment by holtwick in "Resilient Sync for Local First"]]></title><description><![CDATA[
<p>Thanks for feedback. The link is broken for me, but I think you are referring to this page? <a href="https://jack-vanlightly.com/analyses/2024/4/29/understanding-delta-lakes-consistency-model" rel="nofollow">https://jack-vanlightly.com/analyses/2024/4/29/understanding...</a><p>Indeed, the approach is similar. Especially the separation of assets (they call it "Data files") from the log ("Data log") is something I consider being a good choice.</p>
]]></description><pubDate>Tue, 25 Jun 2024 11:52:09 +0000</pubDate><link>https://news.ycombinator.com/item?id=40787355</link><dc:creator>holtwick</dc:creator><comments>https://news.ycombinator.com/item?id=40787355</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40787355</guid></item><item><title><![CDATA[New comment by holtwick in "Resilient Sync for Local First"]]></title><description><![CDATA[
<p>For certain scenarios there will be conflicts, take a boolean value. Client A sets it and client B unsets it. There can only be one winner.<p>But that might be a benefit from the proposed log sync, because these conflicting situations can be shown and marked for human review in the UI. Each step of change is well documented and the history can fully be reviewed.</p>
]]></description><pubDate>Tue, 25 Jun 2024 08:32:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=40785950</link><dc:creator>holtwick</dc:creator><comments>https://news.ycombinator.com/item?id=40785950</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40785950</guid></item><item><title><![CDATA[New comment by holtwick in "Resilient Sync for Local First"]]></title><description><![CDATA[
<p>Thanks for the detailed feedback.<p>The growth of the log is indeed a weak point that could be improved by regularly merging entries. Missing entries are easily recognizable because a consecutive index is used. The checksums on the previous entry should improve data consistency.<p>The point that CRDTs themselves already contain all the information required for an update is absolutely correct. I have been working on this protocol for some time and one objective was the reproducibility of the individual changes fro accountability reasons. But this may not be necessary for all applications and could possibly be achieved in other ways. Thank you for pointing this out, I will reconsider the concept in this respect!</p>
]]></description><pubDate>Tue, 25 Jun 2024 07:31:59 +0000</pubDate><link>https://news.ycombinator.com/item?id=40785551</link><dc:creator>holtwick</dc:creator><comments>https://news.ycombinator.com/item?id=40785551</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40785551</guid></item></channel></rss>