<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: jtbetz22</title><link>https://news.ycombinator.com/user?id=jtbetz22</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Wed, 15 Apr 2026 11:21:28 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=jtbetz22" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by jtbetz22 in "Ask HN: What Are You Working On? (April 2026)"]]></title><description><![CDATA[
<p>I believe that AI-powered software development means we need to fundamentally rethink how we preserve code quality.<p>Model output volumes mean that code review only as a final check before merge is way too late, and far too burdensome. Using AI to review AI-generated code is a band-aid, but not a cure.<p>That's why I built Caliper (<a href="http://getcaliper.dev" rel="nofollow">http://getcaliper.dev</a>). It's a system that institutes multiple layers of code quality checks throughout the dev cycle. The lightest-weight checks get executed after every agent turn, and then increasingly more complex checks get run pre-commit and pre-merge.<p>Early users love it, and the data demonstrates the need - 40% of agent turns produce code that violates a project's own conventions (as defined in CLAUDE.md). Caliper catches those violations immediately and gets the model to make corrections before small issues become costly to unwind.<p>Still very early, and all feedback is welcome! <a href="http://getcaliper.dev" rel="nofollow">http://getcaliper.dev</a></p>
]]></description><pubDate>Sun, 12 Apr 2026 19:28:51 +0000</pubDate><link>https://news.ycombinator.com/item?id=47743448</link><dc:creator>jtbetz22</dc:creator><comments>https://news.ycombinator.com/item?id=47743448</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47743448</guid></item><item><title><![CDATA[New comment by jtbetz22 in "Show HN: AgentLint – ESLint for your coding agents"]]></title><description><![CDATA[
<p>Oh this is really useful. There's definitely a problem to be solved here. agent guidance files, like all forms of documentation, can quickly grow stale.<p>I've tried to tackle a similar problem with a couple different approaches.<p>One is a command I call "/retro" which basically goes through all recent history on a project - commits, prs, pr comments, etc, and analyzes the existing documentation to identify how to improve it in ways that would prevent any observed issues from happening again. This is less about adding structure to the docs (as AgentLint does) and more about identifying coverage gaps.<p>The other is a set of tooling I've built to introduce multiple layers of checks on the outputs of agentic code. The initial observation was that many directives in CLAUDE.md files can actually be implemented as deterministic checks (ex: "never use 'as any'" --> "grep 'as any'"; by creating those deterministic checks and running them after every agent turn, I'm able to effectively force the agent to retain appropriate context for directions.<p>The results are pretty astounding - among early users, 40% of agent turns produce code that doesn't comply with a project's own conventions.<p>The system then layers on a sequence of increasingly AI-driven reviews at further checkpoints.<p>I'd love feedback: <a href="http://getcaliper.dev" rel="nofollow">http://getcaliper.dev</a></p>
]]></description><pubDate>Tue, 07 Apr 2026 14:59:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=47676460</link><dc:creator>jtbetz22</dc:creator><comments>https://news.ycombinator.com/item?id=47676460</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47676460</guid></item><item><title><![CDATA[New comment by jtbetz22 in "Reinventing the pull request"]]></title><description><![CDATA[
<p>> So even when you have a nicely structured commit history, you end up realizing that some things need to be changed and start appending a bunch of "fix" and "actual fix" commits at the end.<p>I have found that this no longer needs to be an issue with agentic coding tools.<p>Once I am happy with the end state of a branch, I tell Claude to rebuild the change from scratch as a set of atomic incremental commits. It adds about 2 minutes to the dev process, but creates a pr that is infinitely easier to review.<p>The overall thrust of the article is great, though. The tooling around prs needs a ton of attention.</p>
]]></description><pubDate>Fri, 03 Apr 2026 10:22:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=47624985</link><dc:creator>jtbetz22</dc:creator><comments>https://news.ycombinator.com/item?id=47624985</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47624985</guid></item><item><title><![CDATA[New comment by jtbetz22 in "Show HN: Forcing Claude Code to Write Maintainable TypeScript"]]></title><description><![CDATA[
<p>Maintaining (and, ideally, improving!) code quality is, IMO, the biggest open problem in agentic development.<p>I've been coming at this from a slightly different angle, building a system that encodes checks that run against code authored by Claude, with escalating levels of enforcement.<p>It's still really early, but, among early users, we see that about 40% of agent turns produce code that violates the guidance in the project's own CLAUDE.md. We catch the violations at the end of the turn and direct Claude to correct them.<p>Still looking for early users and feedback. <a href="http://getcaliper.dev" rel="nofollow">http://getcaliper.dev</a></p>
]]></description><pubDate>Thu, 02 Apr 2026 23:15:35 +0000</pubDate><link>https://news.ycombinator.com/item?id=47621430</link><dc:creator>jtbetz22</dc:creator><comments>https://news.ycombinator.com/item?id=47621430</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47621430</guid></item><item><title><![CDATA[New comment by jtbetz22 in "I built IDE-layer policy enforcement for Claude Code/Cursor agents"]]></title><description><![CDATA[
<p>This is really cool.<p>In general I think there has been (a) too little utilization of the hooks provided by agents for deterministic checks and follow-ups to agentic coding, and (b) too little investment in creating re-usable org-wide monitoring controls and reporting on convention enforcement.<p>Oculi looks like a strong advance on both fronts.</p>
]]></description><pubDate>Mon, 30 Mar 2026 10:20:46 +0000</pubDate><link>https://news.ycombinator.com/item?id=47572528</link><dc:creator>jtbetz22</dc:creator><comments>https://news.ycombinator.com/item?id=47572528</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47572528</guid></item><item><title><![CDATA[New comment by jtbetz22 in "Ask HN: Leaving Notion, Codebase as a Wiki?"]]></title><description><![CDATA[
<p>I find it is now 1000x more effective to draft documents in collaboration with Claude, working with a markdown file as the output format.<p>However, git doesn't work in my team as a document collaboration mechanism - the commenting and discussion on a file has so much more friction that Google Docs or Notion.<p>What I've ended up on is a workflow where I iterate on the doc until I am satisfied, then export it to notion (via MCP) and publish that for feedback. Once there is consensus on the notion doc, that becomes the artifact of record.<p>It's a suboptimal solution, though - claude makes a number of poor design choices when exporting .md -> notion.</p>
]]></description><pubDate>Fri, 27 Mar 2026 10:52:35 +0000</pubDate><link>https://news.ycombinator.com/item?id=47541110</link><dc:creator>jtbetz22</dc:creator><comments>https://news.ycombinator.com/item?id=47541110</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47541110</guid></item><item><title><![CDATA[New comment by jtbetz22 in "Show HN: Hopsule – Persistent Memory Layer for AI Engineering"]]></title><description><![CDATA[
<p>Earlier discussion: <a href="https://news.ycombinator.com/item?id=47415402">https://news.ycombinator.com/item?id=47415402</a></p>
]]></description><pubDate>Thu, 19 Mar 2026 20:28:31 +0000</pubDate><link>https://news.ycombinator.com/item?id=47445522</link><dc:creator>jtbetz22</dc:creator><comments>https://news.ycombinator.com/item?id=47445522</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47445522</guid></item><item><title><![CDATA[New comment by jtbetz22 in "Are developers trusting AI-generated code too much?"]]></title><description><![CDATA[
<p>Interesting. I don't know if people are trusting AI-generated code too much, but AI is generating way more code than humans can review, and the 'looks fine' bar is what the AI gets held to.<p>I strongly agree with you that the solution likely involves pushing the correction mechanism much closer to the point of code generation. You want to put the AI back on track as soon as it starts to stray, you can't let it build a lot on top of a mistake.<p>My own attempt at resolving this involves running a set of deterministic checks on agent-generated code at the end of every agent turn, along with a lightweight AI-powered review on every commit, and deep AI review on PRs before merge. I am pretty happy with the results so far.</p>
]]></description><pubDate>Wed, 18 Mar 2026 16:24:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=47427746</link><dc:creator>jtbetz22</dc:creator><comments>https://news.ycombinator.com/item?id=47427746</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47427746</guid></item><item><title><![CDATA[New comment by jtbetz22 in "Ask HN: Is vibe coding a new mandatory job requirement?"]]></title><description><![CDATA[
<p>At my company, we ask everyone in the hiring process about how they have used any kind of agentic coding tools.<p>We're not concerned about hiring for the 'skill' of using these things, but more as a culture check - we are a very AI-forward company, and we are looking for people who are excited to incorporate AI into their workflow. The best evidence for such excitement is when they have already adopted these tools.<p>Among the team, the expectation is that most code is being produced with AI, but there is no micromanager checking how much everyone is using the AI coding tools.</p>
]]></description><pubDate>Wed, 18 Mar 2026 09:54:39 +0000</pubDate><link>https://news.ycombinator.com/item?id=47423612</link><dc:creator>jtbetz22</dc:creator><comments>https://news.ycombinator.com/item?id=47423612</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47423612</guid></item><item><title><![CDATA[New comment by jtbetz22 in "Get Shit Done: A meta-prompting, context engineering and spec-driven dev system"]]></title><description><![CDATA[
<p>I have been ~obsessed~ with exactly this problem lately.<p>We built AI code generation tools, and suddenly the bottleneck became code review. People built AI code reviewers, but none of the ones I've tried are all that useful - usually, by the time the code hits a PR, the issues are so large that an AI reviewer is too late.<p>I think the solution is to push review closer to the point of code generation, catch any issues early, and course-correct appropriately, rather than waiting until an entire change has been vibe-coded.</p>
]]></description><pubDate>Wed, 18 Mar 2026 01:07:04 +0000</pubDate><link>https://news.ycombinator.com/item?id=47420473</link><dc:creator>jtbetz22</dc:creator><comments>https://news.ycombinator.com/item?id=47420473</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47420473</guid></item><item><title><![CDATA[New comment by jtbetz22 in "Show HN: Hopsule – Persistent memory and decision layer for AI development"]]></title><description><![CDATA[
<p>This is a real problem. Hopsule looks interesting.<p>IIUC, the core of your approach is that decisions get locked as immutable constraints and then served to agents via MCP when they query for context — is that right? Is there anything you can do to ensure that the MCP actually gets called?<p>I've been experimenting with an approach that triggers a set of checks on the Claude Code stop hook for lightweight, deterministic checks, then does a quick AI-powered review as a pre-commit hook, with a mechanism in place to ensure that appropriate elements of context from repo docs get loaded into context during the review.<p>One thing I've had to put a good bit of work into is orchestrating what happens when the existing rules don't cover some particular case. How do you think about that?</p>
]]></description><pubDate>Tue, 17 Mar 2026 21:06:22 +0000</pubDate><link>https://news.ycombinator.com/item?id=47418320</link><dc:creator>jtbetz22</dc:creator><comments>https://news.ycombinator.com/item?id=47418320</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47418320</guid></item><item><title><![CDATA[New comment by jtbetz22 in "Show HN: Scryer – Visual architecture modeling for AI agents"]]></title><description><![CDATA[
<p>The architectural drift problem you're describing is exactly what I see with AI-assisted development — agents move fast but conventions slip. I built Caliper to catch that at the hook level: it reads your CLAUDE.md (or existing .cursor/rules) and runs deterministic convention checks after every Claude Code turn, completely free and sub-second.<p>For the messier stuff — logic bugs, security issues, spec drift against your project's actual policy — there's an optional AI review layer that evaluates changes before commit. It learns from feedback and runs entirely in your environment. You bring your own API key, and select the model to use, so you control the costs.<p>The two feel complementary to me: Scryer gives you the visual understanding of what changed architecturally, Caliper enforces that it stays compliant. If you're exploring this workflow, we're actively looking for alpha testers.<p><a href="https://getcaliper.dev" rel="nofollow">https://getcaliper.dev</a> has docs and the install is just `npm install --save-dev @caliperai/caliper && npx caliper init`.</p>
]]></description><pubDate>Mon, 16 Mar 2026 14:40:12 +0000</pubDate><link>https://news.ycombinator.com/item?id=47399678</link><dc:creator>jtbetz22</dc:creator><comments>https://news.ycombinator.com/item?id=47399678</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47399678</guid></item><item><title><![CDATA[New comment by jtbetz22 in "Show HN: Vibecheck – lint for AI-generated code smells (JS/TS/Python)"]]></title><description><![CDATA[
<p>Yeah, this is a common problem, I have been thinking about it a fair bit.<p>I ran into a related problem at scale though: deterministic linters catch syntax and obvious anti-patterns, but they miss the harder stuff. Logic bugs that pass all the rules. Spec drift. Security issues hiding in otherwise "clean" code.<p>So I built Caliper to layer AI review on top of deterministic checks. It reads your coding conventions (CLAUDE.md, .cursor/rules, whatever you use) and compiles them into checks that run after each AI turn—free and instant. Then optionally an AI layer evaluates changes against your project's actual policy. Catches what linters structurally can't.<p>Very different approach from Vibecheck but complementary. Actively looking for alpha testers if you want to try it — <a href="https://getcaliper.dev" rel="nofollow">https://getcaliper.dev</a></p>
]]></description><pubDate>Mon, 16 Mar 2026 14:38:08 +0000</pubDate><link>https://news.ycombinator.com/item?id=47399650</link><dc:creator>jtbetz22</dc:creator><comments>https://news.ycombinator.com/item?id=47399650</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47399650</guid></item><item><title><![CDATA[New comment by jtbetz22 in "Ask HN: What is it like being in a CS major program these days?"]]></title><description><![CDATA[
<p>I am not in a CS program myself, but I guest lecture for CS students at CMU about 2x/year, and I'm in a regular happy hour that includes CS professors from other high-tier CS schools.<p>Two points of anecdata from that experience:<p>- The students believe that the path to a role in big tech has evaporated. They do not see Google, Meta, Amazon, etc, recruiting on campus. Jane Street and Two Sigma are sucking up all the talent.<p>- The professors do not know how to adapt their capstone / project-level courses. Core CS is obviously still the same, but for courses where the goal is to build a 'complex system', no one knows what qualifies as 'complex' anymore. The professors use AI themselves and expect their students to use it, but do not have a gauge for what kinds of problems make for an appropriately difficult assignment in the modern era. The capabilities are also advancing so quickly that any answer they arrive at today could be stale in a month.<p>FWIW.</p>
]]></description><pubDate>Mon, 16 Mar 2026 10:58:26 +0000</pubDate><link>https://news.ycombinator.com/item?id=47397411</link><dc:creator>jtbetz22</dc:creator><comments>https://news.ycombinator.com/item?id=47397411</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47397411</guid></item><item><title><![CDATA[New comment by jtbetz22 in "Ask HN: What Are You Working On? (March 2026)"]]></title><description><![CDATA[
<p>Agentic code construction has broken traditional models for code review - the volume is just too high for humans to keep up with.<p>There are some good tools out there  for automating pr review; IMO, they don't catch enough, and they catch it too late.<p>I've been experimenting with some ideas about a very opinionated AI code reviewer, one that makes an ideal tradeoff between cost and immediacy (eg, how soon after composition does the code get feedback).<p>Currently in an invite-only alpha, but check out the landing page and lmk if you'd like to be a trial user!<p><a href="https://getcaliper.dev/" rel="nofollow">https://getcaliper.dev/</a></p>
]]></description><pubDate>Mon, 09 Mar 2026 11:17:01 +0000</pubDate><link>https://news.ycombinator.com/item?id=47307557</link><dc:creator>jtbetz22</dc:creator><comments>https://news.ycombinator.com/item?id=47307557</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47307557</guid></item><item><title><![CDATA[New comment by jtbetz22 in "Great ideas in theoretical computer science"]]></title><description><![CDATA[
<p>I am old enough to remember when it was 15-199, taught by Steven Rudich, titled "How to think like a computer scientist".<p>They had to run it for a few years before they realized CS kids who did poorly in the class dropped the major - the implicit signal being "you don't know how to think like a computer scientist".</p>
]]></description><pubDate>Fri, 19 Dec 2025 11:59:15 +0000</pubDate><link>https://news.ycombinator.com/item?id=46324865</link><dc:creator>jtbetz22</dc:creator><comments>https://news.ycombinator.com/item?id=46324865</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46324865</guid></item><item><title><![CDATA[New comment by jtbetz22 in "Persuasion methods for engineering managers"]]></title><description><![CDATA[
<p>Oh wow, I appreciate this post as vivid reminder for how I grew to loathe being an EM at Google. Folks like this are pervasive in the org these days.</p>
]]></description><pubDate>Tue, 13 May 2025 09:55:20 +0000</pubDate><link>https://news.ycombinator.com/item?id=43971278</link><dc:creator>jtbetz22</dc:creator><comments>https://news.ycombinator.com/item?id=43971278</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43971278</guid></item><item><title><![CDATA[New comment by jtbetz22 in "Ask HN: What are you working on? (February 2025)"]]></title><description><![CDATA[
<p><a href="https://www.tabomagic.com" rel="nofollow">https://www.tabomagic.com</a><p>I've been obsessed with making it easier to handle tab overload in the browser without requiring any sort of active "tab management".<p>I have a working extension that replaces the "new tab" page with a clean view of all open tabs, along with simple ways to search and select which tab to switch to, including search over bookmarks and history. There are also some simple tools to allow for creating and reorganizing tab groups.<p>For a small group of people, it revolutionizes the browser experience. I'm still trying to decide if there is a widely-useful product there, or if it's just a niche use case.<p>Any and all feedback welcome!</p>
]]></description><pubDate>Mon, 24 Feb 2025 13:07:57 +0000</pubDate><link>https://news.ycombinator.com/item?id=43159107</link><dc:creator>jtbetz22</dc:creator><comments>https://news.ycombinator.com/item?id=43159107</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43159107</guid></item><item><title><![CDATA[New comment by jtbetz22 in "Undergraduate shows that searches within hash tables can be much faster"]]></title><description><![CDATA[
<p>Krapivin's work was a result of his study of the Tiny Pointers paper; his paper has already been linked in another response.</p>
]]></description><pubDate>Tue, 11 Feb 2025 11:00:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=43011393</link><dc:creator>jtbetz22</dc:creator><comments>https://news.ycombinator.com/item?id=43011393</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43011393</guid></item><item><title><![CDATA[New comment by jtbetz22 in "100 years of Bell Labs [pdf]"]]></title><description><![CDATA[
<p>This is a fun read, and, unlike a lot of material on the Labs, goes back a lot further than 1947.<p>As a software engineer, my favorite book on the topic is "Unix: A History and a Memoir" by Brian Kernighan. It tells many of the same stories that are told elsewhere about the modern history of the Labs, but through the first-person perspective of someone who was there, for whom the characters are not just historical figures, but friends.</p>
]]></description><pubDate>Sun, 26 Jan 2025 18:49:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=42832722</link><dc:creator>jtbetz22</dc:creator><comments>https://news.ycombinator.com/item?id=42832722</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42832722</guid></item></channel></rss>