<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: gklitt</title><link>https://news.ycombinator.com/user?id=gklitt</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Tue, 14 Apr 2026 15:50:28 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=gklitt" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by gklitt in "Pushing and Pulling: Three reactivity algorithms"]]></title><description><![CDATA[
<p><a href="https://lord.io/spreadsheets/" rel="nofollow">https://lord.io/spreadsheets/</a> is one of my favorite technical blog posts of all time. Highly recommend everyone check it out!</p>
]]></description><pubDate>Mon, 09 Mar 2026 00:57:41 +0000</pubDate><link>https://news.ycombinator.com/item?id=47303513</link><dc:creator>gklitt</dc:creator><comments>https://news.ycombinator.com/item?id=47303513</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47303513</guid></item><item><title><![CDATA[New comment by gklitt in "Code like a surgeon"]]></title><description><![CDATA[
<p>Yes, I cite Brooks (and Harlan Mills, seemingly the original source of the idea) in the post!</p>
]]></description><pubDate>Fri, 24 Oct 2025 19:54:38 +0000</pubDate><link>https://news.ycombinator.com/item?id=45698467</link><dc:creator>gklitt</dc:creator><comments>https://news.ycombinator.com/item?id=45698467</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45698467</guid></item><item><title><![CDATA[New comment by gklitt in "Enough AI copilots, we need AI HUDs"]]></title><description><![CDATA[
<p>Author here. I thought about including TCAS in the article but it felt too tangential…<p>You’re right that there’s a voice alert. But TCAS also has a map of nearby planes which is much more “HUD”! So it’s a combo of both approaches.<p>(Interestingly it seems that TCAS may predate Weiser’s 1992 talk)</p>
]]></description><pubDate>Mon, 28 Jul 2025 02:18:26 +0000</pubDate><link>https://news.ycombinator.com/item?id=44706589</link><dc:creator>gklitt</dc:creator><comments>https://news.ycombinator.com/item?id=44706589</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44706589</guid></item><item><title><![CDATA[New comment by gklitt in "Enough AI copilots, we need AI HUDs"]]></title><description><![CDATA[
<p>Author here. Yes, I think the original GitHub Copilot autocomplete UI is (ironically) a good example of a HUD! Tab autocomplete just becomes part of your mental flow.<p>Recent coding interfaces are all trending towards chat agents though.<p>It’s interesting to consider what a “tab autocomplete” UI for coding might look like at a higher level of abstraction, letting you mold code in a direct-feeling way without being bogged down in details.</p>
]]></description><pubDate>Mon, 28 Jul 2025 01:05:33 +0000</pubDate><link>https://news.ycombinator.com/item?id=44706203</link><dc:creator>gklitt</dc:creator><comments>https://news.ycombinator.com/item?id=44706203</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44706203</guid></item><item><title><![CDATA[New comment by gklitt in "Malleable software: Restoring user agency in a world of locked-down apps"]]></title><description><![CDATA[
<p>Neat —- Scrappy looks like a lovely prototype! As the creators say in their writeup, it fits nicely into the lineage of HyperCard-style “media with optional scripting” editors, which provide a gentle slope into programming.<p>In the section on dynamic documents towards the end of our essay, we show several of our lab’s own takes on this category of tool, including an example of integrating AI as an optional layer over a live programmable document.</p>
]]></description><pubDate>Wed, 11 Jun 2025 02:12:39 +0000</pubDate><link>https://news.ycombinator.com/item?id=44243567</link><dc:creator>gklitt</dc:creator><comments>https://news.ycombinator.com/item?id=44243567</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44243567</guid></item><item><title><![CDATA[New comment by gklitt in "Malleable software: Restoring user agency in a world of locked-down apps"]]></title><description><![CDATA[
<p>Actually, Patchwork has surprisingly few features! Think of it more like an OS than a product. The goal is a small set of composable primitives that let you build many things - documents, tools, branching/diffs, plugins…<p>To answer your question: although we use Patchwork every day, it’s currently very rough around the edges. The SDK for building stuff needs refinement (and SDKs are hard to change later…) Reliability and performance need improvement, in coordination with work on Automerge. We also plan to have more alpha users outside our lab before a broader release, to work through some of these issues.<p>In short, we feel that it’s promising and headed in a good direction, but it’s not there yet.</p>
]]></description><pubDate>Tue, 10 Jun 2025 23:01:33 +0000</pubDate><link>https://news.ycombinator.com/item?id=44242469</link><dc:creator>gklitt</dc:creator><comments>https://news.ycombinator.com/item?id=44242469</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44242469</guid></item><item><title><![CDATA[New comment by gklitt in "Malleable software: Restoring user agency in a world of locked-down apps"]]></title><description><![CDATA[
<p>> I agree, I feel like the authors are underestimating the effect the new AI is already having on the concept of local software crafting<p>Coauthor here -- did you catch our section on AI? [1]<p>We emphatically agree with you that AI is already enabling new kinds of local software crafting. That's one reason we are excited about doing this work now!<p>At the same time, AI code generation doesn't solve the structural problems -- our whole software world was built assuming people can't code! We think things will <i>really</i> take off once we reorient the OS around personal tools, not prefabricated apps. That's what the rest of the essay is about.<p>[1] <a href="https://www.inkandswitch.com/essay/malleable-software/#ai-assisted-coding" rel="nofollow">https://www.inkandswitch.com/essay/malleable-software/#ai-as...</a></p>
]]></description><pubDate>Tue, 10 Jun 2025 19:04:24 +0000</pubDate><link>https://news.ycombinator.com/item?id=44240211</link><dc:creator>gklitt</dc:creator><comments>https://news.ycombinator.com/item?id=44240211</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44240211</guid></item><item><title><![CDATA[New comment by gklitt in "Malleable software: Restoring user agency in a world of locked-down apps"]]></title><description><![CDATA[
<p>Yes, I think atproto is a great example of the “shared data” pattern for composable tools! Especially since it handles public social scale, which is not addressed by the other systems we mention.<p>AFAIK, atproto is primarily designed to support multiple distinct clients over shared data, but I also wonder if it could help with composing more granular views within a client. I previously worked on a browser extension for Twitter, and data scraping was a major challenge - which seems easier building on an open protocol like atproto.<p>Sorry we didn’t mention — it is on our radar but we ran out of space and had to omit lots of good prior art..<p>I should also mention btw that Bluesky user-configurable feeds is a perfect example of a gentle slope from user to creator!</p>
]]></description><pubDate>Tue, 10 Jun 2025 18:17:26 +0000</pubDate><link>https://news.ycombinator.com/item?id=44239684</link><dc:creator>gklitt</dc:creator><comments>https://news.ycombinator.com/item?id=44239684</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44239684</guid></item><item><title><![CDATA[New comment by gklitt in "Malleable software: Restoring user agency in a world of locked-down apps"]]></title><description><![CDATA[
<p>I gotta say I don’t understand  your point about cooking — billions of people who aren’t professional chefs cook meals every day! These meals may not live up to restaurant standards but they have different virtues — like making it taste just the way you like it, or carrying on a family tradition.<p>On that note, Robin Sloan has a beautiful post about software as a home cooked meal…<p><a href="https://www.robinsloan.com/notes/home-cooked-app/" rel="nofollow">https://www.robinsloan.com/notes/home-cooked-app/</a><p>That said, I think talking about cars may be stronger ground for the argument you’re making. Mass production is incredible at making cheap uniform goods. This applies even more in software, where marginal costs are so low.<p>The point of our essay, though, is that the uniformity of mass produced goods can hinder people when there’s no ability to tweak or customize at all. I’m not a car guy, but it seems like cars have reasonably modular parts you can replace (like the tires)  and I believe some people do deeper aftermarket mods as well. In software, too often you can’t even make the tiniest change. It’s as if everyone had to agree on the same tires, and you needed to ask the original manufacturer to change the tires for you!</p>
]]></description><pubDate>Tue, 10 Jun 2025 18:11:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=44239645</link><dc:creator>gklitt</dc:creator><comments>https://news.ycombinator.com/item?id=44239645</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44239645</guid></item><item><title><![CDATA[New comment by gklitt in "Malleable software: Restoring user agency in a world of locked-down apps"]]></title><description><![CDATA[
<p>Coauthor here.<p>You make a fair point! Ease of use matters. We all want premade experiences some of the time. The problem is that even in those (perhaps rare!) cases where we want to tweak something, even a tiny thing, we’re out of luck.<p>An analogy: we all want to order a pizza sometime. But at the same time, a world with only food courts and no kitchens wouldn’t be ideal. That’s how software feels today—-the “kitchen” is missing.<p>Also, you may be right in the short term. But in the long run, our tools also shape our culture. If software makes people feel more empowered, I believe that’ll eventually change people’s preferences.</p>
]]></description><pubDate>Tue, 10 Jun 2025 17:43:38 +0000</pubDate><link>https://news.ycombinator.com/item?id=44239384</link><dc:creator>gklitt</dc:creator><comments>https://news.ycombinator.com/item?id=44239384</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44239384</guid></item><item><title><![CDATA[New comment by gklitt in "Sketchy Calendar"]]></title><description><![CDATA[
<p>We're happy to share the Embark prototype with anyone who wants to try it out - just email me at geoffrey@inkandswitch.com and I can share a link with you.<p>A couple reasons we've decided not to share the demo widely: 1) it's research software, not developed to the quality standards of a commercial product, so we don't want people to get confused or disappointed by that, 2) the prototype heavily uses the paid Google Maps API.<p>We've also publicly released demos of some related work, like Potluck, an interactive medium built on text notes:<p><a href="https://www.inkandswitch.com/potluck/demo/" rel="nofollow">https://www.inkandswitch.com/potluck/demo/</a></p>
]]></description><pubDate>Fri, 23 May 2025 14:54:56 +0000</pubDate><link>https://news.ycombinator.com/item?id=44073467</link><dc:creator>gklitt</dc:creator><comments>https://news.ycombinator.com/item?id=44073467</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44073467</guid></item><item><title><![CDATA[New comment by gklitt in "OpenAI Codex CLI: Lightweight coding agent that runs in your terminal"]]></title><description><![CDATA[
<p>I tried one task head-to-head with Codex o4-mini vs Claude Code: writing documentation for a tricky area of a medium-sized codebase.<p>Claude Code did great and wrote pretty decent docs.<p>Codex didn't do well. It hallucinated a bunch of stuff that wasn't in the code, and completely misrepresented the architecture - it started talking about server backends and REST APIs in an app that doesn't have any of that.<p>I'm curious what went so wrong - feels like possibly an issue with loading in the right context and attending to it correctly? That seems like an area that Claude Code has really optimized for.<p>I have high hopes for o3 and o4-mini as models so I hope that other tests show better results! Also curious to see how Cursor etc. incorporate o3.</p>
]]></description><pubDate>Wed, 16 Apr 2025 20:37:00 +0000</pubDate><link>https://news.ycombinator.com/item?id=43710093</link><dc:creator>gklitt</dc:creator><comments>https://news.ycombinator.com/item?id=43710093</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43710093</guid></item><item><title><![CDATA[New comment by gklitt in "A hackable AI assistant using a single SQLite table and a handful of cron jobs"]]></title><description><![CDATA[
<p>I just tried making it public, sorry!</p>
]]></description><pubDate>Mon, 14 Apr 2025 19:54:15 +0000</pubDate><link>https://news.ycombinator.com/item?id=43685568</link><dc:creator>gklitt</dc:creator><comments>https://news.ycombinator.com/item?id=43685568</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43685568</guid></item><item><title><![CDATA[New comment by gklitt in "A hackable AI assistant using a single SQLite table and a handful of cron jobs"]]></title><description><![CDATA[
<p>yeah i actually do handle inbound email! just forgot to include that code in the shared version. the telegram inbound handler shows the rough pattern.</p>
]]></description><pubDate>Mon, 14 Apr 2025 16:43:23 +0000</pubDate><link>https://news.ycombinator.com/item?id=43683222</link><dc:creator>gklitt</dc:creator><comments>https://news.ycombinator.com/item?id=43683222</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43683222</guid></item><item><title><![CDATA[New comment by gklitt in "Avoid the Nightmare Bicycle"]]></title><description><![CDATA[
<p>(post author here)<p>Yes, it's absolutely great to have a "low floor" -- common use cases should be easy to do, without needing to learn a ton up front. But, hiding the structure is not the only way to achieve that!<p>For example: a microwave could have presets like "we recommend cooking a potato with this power for this time. If it's undercooked, try higher power, but avoid max power because XYZ."<p>The simple use cases should guide the user while building up a coherent mental model. If there are fancier sensors being used, those could be explained and exposed to the user directly.<p>Otherwise you end up with no path to further learning. If I have no idea how potato mode works, then I don't know when it applies or doesn't apply, I don't know how to adjust when it doesn't work well, and I don't know how it relates to the other modes at all.</p>
]]></description><pubDate>Tue, 04 Mar 2025 21:07:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=43259813</link><dc:creator>gklitt</dc:creator><comments>https://news.ycombinator.com/item?id=43259813</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43259813</guid></item><item><title><![CDATA[New comment by gklitt in "Distributed systems programming has stalled"]]></title><description><![CDATA[
<p>This is outside my area of expertise, but the post sounds like it’s asking for “choreographic programming”, where you can write an algorithm in a single function while reasoning explicitly about how it gets distributed:<p><a href="https://en.m.wikipedia.org/wiki/Choreographic_programming" rel="nofollow">https://en.m.wikipedia.org/wiki/Choreographic_programming</a><p>I’m curious to what extent the work in that area meets the need.</p>
]]></description><pubDate>Thu, 27 Feb 2025 17:45:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=43196617</link><dc:creator>gklitt</dc:creator><comments>https://news.ycombinator.com/item?id=43196617</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43196617</guid></item><item><title><![CDATA[New comment by gklitt in "Ambsheets: Spreadsheets for Exploring Scenarios"]]></title><description><![CDATA[
<p>We totally agree! Stay tuned for our next posts on that topic :)</p>
]]></description><pubDate>Wed, 05 Feb 2025 16:47:46 +0000</pubDate><link>https://news.ycombinator.com/item?id=42951258</link><dc:creator>gklitt</dc:creator><comments>https://news.ycombinator.com/item?id=42951258</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42951258</guid></item><item><title><![CDATA[New comment by gklitt in "Wildcard: Customize HN using a spreadsheet view (2020)"]]></title><description><![CDATA[
<p>Code is here! Totally support any riffing on this concept.<p><a href="https://github.com/geoffreylitt/wildcard">https://github.com/geoffreylitt/wildcard</a></p>
]]></description><pubDate>Sun, 05 Jan 2025 22:07:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=42605461</link><dc:creator>gklitt</dc:creator><comments>https://news.ycombinator.com/item?id=42605461</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42605461</guid></item><item><title><![CDATA[New comment by gklitt in "Wildcard: Customize HN using a spreadsheet view (2020)"]]></title><description><![CDATA[
<p>Creator of Wildcard here! Neat to see this pop up on HN after several years. As others have noted, this project isn't under active development anymore.<p>One reason: while I still think there's great potential in browser extensions, I ultimately felt limited by scraping and fetching bits of data from a server, and grew more interested in a deeper overhaul of how we build applications in order to locate more data on the client. Eg: check out this demo [1] of a Wildcard-esque data manipulation but in an app that stores all its data in a client-side database. I'm still continuing this work today, exploring "local-first" architectures at the Ink & Switch research lab, in support of malleable customizable interfaces.<p>It would be interesting to revisit Wildcard now that LLMs exist—I suspect that many of the scraping parts (building "site adapters" in Wildcard parlance) would be far more possible to automate now. A few years ago we explored some semi-automated programming-by-example interactions for scraping [2] but the friction was always really noticeable without any AI support.<p>[1]: <a href="https://riffle.systems/essays/prelude/#data-centric-design-encourages-interoperability" rel="nofollow">https://riffle.systems/essays/prelude/#data-centric-design-e...</a><p>[2]: <a href="https://www.geoffreylitt.com/wildcard/Joker-LIVE-2022.pdf" rel="nofollow">https://www.geoffreylitt.com/wildcard/Joker-LIVE-2022.pdf</a></p>
]]></description><pubDate>Sun, 05 Jan 2025 14:32:12 +0000</pubDate><link>https://news.ycombinator.com/item?id=42601963</link><dc:creator>gklitt</dc:creator><comments>https://news.ycombinator.com/item?id=42601963</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42601963</guid></item><item><title><![CDATA[100M Token Context Windows]]></title><description><![CDATA[
<p>Article URL: <a href="https://magic.dev/blog/100m-token-context-windows">https://magic.dev/blog/100m-token-context-windows</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=41393252">https://news.ycombinator.com/item?id=41393252</a></p>
<p>Points: 94</p>
<p># Comments: 22</p>
]]></description><pubDate>Thu, 29 Aug 2024 17:32:23 +0000</pubDate><link>https://magic.dev/blog/100m-token-context-windows</link><dc:creator>gklitt</dc:creator><comments>https://news.ycombinator.com/item?id=41393252</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41393252</guid></item></channel></rss>