<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: Jemaclus</title><link>https://news.ycombinator.com/user?id=Jemaclus</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Sat, 04 Jul 2026 14:57:20 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=Jemaclus" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by Jemaclus in "Goto Considered Harmful: Why Event-Driven Is a Poor Architecture"]]></title><description><![CDATA[
<p>Leaving aside the conflict of interest here ("EDA bad, workflows good, buy DBOS workflows"), this is a significant straw man. The author more or less picked the worst example of event-driven architecture, then says, "See? It's bad."<p>The flow of reserve item -> check credit -> process payment -> fulfill order is actually a pretty synchronous process. There's no reason to make that event-driven unless you actually need it.<p>Should people reach for event-driven first? No, almost certainly not. Is this something that should be event-driven? Not as presented.<p>But if you imagine that the process becomes "process payment -> [5 other things]," such as fulfilling order, sending receipts, updating analytics, initiating fraud detection... those are all things that should be done in parallel and none of them need to know about the others, nor does the payments system need to know about them. _That_ is a better use-case for EDA that justifies the additional complexity and cost that the author is warning about.</p>
]]></description><pubDate>Thu, 14 May 2026 18:29:15 +0000</pubDate><link>https://news.ycombinator.com/item?id=48139268</link><dc:creator>Jemaclus</dc:creator><comments>https://news.ycombinator.com/item?id=48139268</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48139268</guid></item><item><title><![CDATA[New comment by Jemaclus in "Sabotaging projects by overthinking, scope creep, and structural diffing"]]></title><description><![CDATA[
<p>Ah, but you're talking about something else: hardware is quite different from software. Once your machine is out in the wild, you can't update it remotely. But with software, shipping MVPs and iterating is not only possible, it's almost always the right way to go about it.<p>I frequently tell my software teams "We aren't putting rockets in space; we're shipping an admin panel. We can revert code or change things if we don't like it."</p>
]]></description><pubDate>Sat, 25 Apr 2026 15:07:15 +0000</pubDate><link>https://news.ycombinator.com/item?id=47902058</link><dc:creator>Jemaclus</dc:creator><comments>https://news.ycombinator.com/item?id=47902058</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47902058</guid></item><item><title><![CDATA[New comment by Jemaclus in "Show HN: I turned my MacBook notch into a live Claude Code dashboard"]]></title><description><![CDATA[
<p>Hey, this is very cool and creative! I like it a lot! Great job!</p>
]]></description><pubDate>Sat, 18 Apr 2026 14:10:12 +0000</pubDate><link>https://news.ycombinator.com/item?id=47816060</link><dc:creator>Jemaclus</dc:creator><comments>https://news.ycombinator.com/item?id=47816060</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47816060</guid></item><item><title><![CDATA[New comment by Jemaclus in "Ask HN: How do you deal with obvious AI assistant usage in interviews"]]></title><description><![CDATA[
<p>I guess my question to you would be: does it matter if they're using AI? I don't think anyone in 2026 would criticize a candidate for using a calculator, and Googling syntax and so on hasn't been forbidden in any interview I've had in over 10 years. AI is just another tool, an increasingly ubiquitous one.<p>Why play games? Just say "Are you using AI to answer these questions? It's OK if you are, but that will change the types of questions I ask." And honestly, maybe that just reveals that we've been asking the wrong questions all along.</p>
]]></description><pubDate>Sat, 28 Mar 2026 14:33:38 +0000</pubDate><link>https://news.ycombinator.com/item?id=47554983</link><dc:creator>Jemaclus</dc:creator><comments>https://news.ycombinator.com/item?id=47554983</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47554983</guid></item><item><title><![CDATA[New comment by Jemaclus in "Ask HN: How do you deal with obvious AI assistant usage in interviews"]]></title><description><![CDATA[
<p>I'll go the opposite direction: if your Sr Release Engineer will use AI assistants (Claude Code, etc) on the job, let them use it in the interview.<p>The best interviews test critical thinking and problem-solving, not recall. AI makes generating solutions easier, but it also makes validating those solutions harder. That validation skill is what _actually_ matters now. Focus on that. "How do you validate that your solution is correct?" is a great next question.<p>I also don't think it's wrong to say, "I know you're using an AI tool, that's fine, but I'd like you to answer _this_ question without it. I'm trying to determine whether you can validate whether an AI is giving you good information."<p>But today? The toothpaste is out of the tube, my friend. AI assistants are ubiquitous in 2026. Pretending otherwise isn't a strategy that's going to lead you to success. Instead, it's just filtering out candidates who've adapted to modern tooling. And isn't the ability to adapt to change one of the best qualities of an engineer?<p>My advice: learn to interview people who use AI well. You'll hire someone who knows how to leverage it effectively, rather than actively selecting against people who do.<p>(And if you're asking "absurd questions" to catch AI users, you're just wasting everyone's time. Ask real problems and evaluate how they approach solutions, with or without assistance.)</p>
]]></description><pubDate>Fri, 27 Mar 2026 14:04:59 +0000</pubDate><link>https://news.ycombinator.com/item?id=47542795</link><dc:creator>Jemaclus</dc:creator><comments>https://news.ycombinator.com/item?id=47542795</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47542795</guid></item><item><title><![CDATA[New comment by Jemaclus in "Show HN: NerdFlair, a Claude Code QoL Plugin"]]></title><description><![CDATA[
<p>Love it! I ran into some trouble installing it (`/plugin install nerdflair@...` didn't work), but ultimately got it in. Great upgrades, though. Nice job!</p>
]]></description><pubDate>Thu, 26 Mar 2026 16:43:03 +0000</pubDate><link>https://news.ycombinator.com/item?id=47532712</link><dc:creator>Jemaclus</dc:creator><comments>https://news.ycombinator.com/item?id=47532712</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47532712</guid></item><item><title><![CDATA[New comment by Jemaclus in "The SDLC Is Dead"]]></title><description><![CDATA[
<p>Sure, but the author is presenting it in the present tense ("I don't know anyone who writes code anymore") which isn't grounded in fact or reality, but wishful thinking about the future masquerading as current reality.<p>A more interesting take on this, in my mind, would be "The SDLC lifecycle has shifted away from engineers and toward product managers," but that's not the author's argument either. They're arguing that it's _dead_, which is clearly not the case.</p>
]]></description><pubDate>Thu, 19 Mar 2026 03:34:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=47434590</link><dc:creator>Jemaclus</dc:creator><comments>https://news.ycombinator.com/item?id=47434590</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47434590</guid></item><item><title><![CDATA[New comment by Jemaclus in "The SDLC Is Dead"]]></title><description><![CDATA[
<p>This is a pretty wild take. "They don't know what DevOps or SRE is" is not the flex the author thinks it is. That's just ignorance of the consequences of shipping.<p>There's a huge load-bearing assumption in it, as well, which is that AI agent-generated code is correct and bug free. The tight loop only works if the agent reliably produces working, correct, production-ready code. If that were the case, the loop might be intent -> build -> observe. But in reality, it's likely intent -> build -> realize the AI hallucinated an API that doesn't exist -> fix -> discover it broke something else -> fix -> realize the architecture doesn't fit a constraint you thought you had -> start over.<p>Not to mention that SDLC things like, I dunno, PR reviews and requirements planning aren't some arcane ceremony designed to waste everyone's time. The ceremonies themselves might be bloated, but the function serves a purpose. Generating 500 PRs isn't a flex either. Volume is not a feature. If your system produces more changes than you can verify, you don't have a review problem, you have a quality problem.<p>There's some truth buried in here, but the overarching post is so wildly disconnected from real software development that I'm having a hard time following along.<p>Greenfield prototypes? Sure, maybe there's a case for that. But the minute you hit any novel or complex system with more than a couple of engineers, this falls apart pretty fast.</p>
]]></description><pubDate>Thu, 19 Mar 2026 03:18:07 +0000</pubDate><link>https://news.ycombinator.com/item?id=47434477</link><dc:creator>Jemaclus</dc:creator><comments>https://news.ycombinator.com/item?id=47434477</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47434477</guid></item><item><title><![CDATA[New comment by Jemaclus in "WA income tax clears House after 24-hour debate"]]></title><description><![CDATA[
<p>how can i structure my income to avoid income tax? asking for a friend.</p>
]]></description><pubDate>Wed, 11 Mar 2026 14:31:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=47336054</link><dc:creator>Jemaclus</dc:creator><comments>https://news.ycombinator.com/item?id=47336054</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47336054</guid></item><item><title><![CDATA[New comment by Jemaclus in "Ask HN: Remember Fidonet?"]]></title><description><![CDATA[
<p>Same!</p>
]]></description><pubDate>Tue, 10 Mar 2026 15:56:53 +0000</pubDate><link>https://news.ycombinator.com/item?id=47325006</link><dc:creator>Jemaclus</dc:creator><comments>https://news.ycombinator.com/item?id=47325006</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47325006</guid></item><item><title><![CDATA[New comment by Jemaclus in "Ask HN: Remember Fidonet?"]]></title><description><![CDATA[
<p>Legend of the Red Dragon (LoRD), Solar Realms Elite and Barren Realms Elite, and Tradewars were the best.<p>When I want to learn a new programming language, I always try to recreate Tradewars in it as a language. I know Tradewars like the back of my hand, so it allows me to focus on the nuances of the language while I build it. Such a fun project. The only thing I never quite figured out were the economics mechanics (it technically works, but it's a bit more predictable than TW2002 has in practice) and the Big Bang algorithm (I came up with my own, it's fine, but it doesn't have quite the same feel to it).<p>Less often, I'll try to create SRE/BRE, which, again is very fun but hard to reverse engineer. Amit (creator) lost the source code years ago, but wrote up some notes here: <a href="http://www-cs-students.stanford.edu/~amitp/Articles/SRE-Design.html" rel="nofollow">http://www-cs-students.stanford.edu/~amitp/Articles/SRE-Desi...</a><p>Funny, I just googled SRE/BRE to find the notes, and my last comment about it on HN was one of the top Google results... It's truly a lost art!</p>
]]></description><pubDate>Tue, 10 Mar 2026 14:29:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=47323787</link><dc:creator>Jemaclus</dc:creator><comments>https://news.ycombinator.com/item?id=47323787</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47323787</guid></item><item><title><![CDATA[New comment by Jemaclus in "Darkrealms BBS"]]></title><description><![CDATA[
<p>I think about fidonet all the time. It was a magical concept.</p>
]]></description><pubDate>Tue, 10 Mar 2026 14:20:31 +0000</pubDate><link>https://news.ycombinator.com/item?id=47323660</link><dc:creator>Jemaclus</dc:creator><comments>https://news.ycombinator.com/item?id=47323660</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47323660</guid></item><item><title><![CDATA[New comment by Jemaclus in "How important was the Battle of Hastings?"]]></title><description><![CDATA[
<p>Not affiliated, just a fan, but if this is a topic you're interested in, I highly recommend Michael Livingston's "1066: A Guide to the Battles and Campaigns."<p>I<a href="https://www.michaellivingston.com/non-fiction/1066-a-guide-to-the-battles-and-the-campaigns/" rel="nofollow">https://www.michaellivingston.com/non-fiction/1066-a-guide-t...</a></p>
]]></description><pubDate>Sun, 08 Mar 2026 05:01:41 +0000</pubDate><link>https://news.ycombinator.com/item?id=47294564</link><dc:creator>Jemaclus</dc:creator><comments>https://news.ycombinator.com/item?id=47294564</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47294564</guid></item><item><title><![CDATA[New comment by Jemaclus in "Why I stopped using JSON for my APIs"]]></title><description><![CDATA[
<p>"Better than JSON" is a pretty bold claim, and even though the article makes some great cases, the author is making some trade-offs that I wouldn't make, based on my 20+ year career and experience. The author makes a statement at the beginning: "I find it surprising that JSON is so omnipresent when there are far more efficient alternatives."<p>We might disagree on what "efficient" means. OP is focusing on computer efficiency, where as you'll see, I tend to optimize for human efficiency (and, let's be clear, JSON is efficient _enough_ for 99% of computer cases).<p>I think the "human readable" part is often an overlooked pro by hardcore protobuf fans. One of my fundamental philosophies of engineering historically has been "clarity over cleverness." Perhaps the corollary to this is "...and simplicity over complexity."  And I think protobuf, generally speaking, falls in the cleverness part, and certainly into the complexity part (with regards to dependencies).<p>JSON, on the other hand, is ubiquitous, human readable (clear), and simple (little-to-no dependencies).<p>I've found in my career that there's tremendous value in not needing to execute code to see what a payload contains. I've seen a lot of engineers (including myself, once upon a time!) take shortcuts like using bitwise values and protobufs and things like that to make things faster or to be clever or whatever. And then I've seen those same engineers, or perhaps their successors, find great difficulty in navigating years-old protobufs, when a JSON payload is immediately clear and understandable to any human, technical or not, upon a glance.<p>I write MUDs for fun, and one of the things that older MUD codebases do is that they use bit flags to compress a lot of information into a tiny integer. To know what conditions a player has (hunger, thirst, cursed, etc), you do some bit manipulation and you wind up with something like 31 that represents the player being thirsty (1), hungry (2), cursed (4), with haste (8), and with shield (16). Which is great, if you're optimizing for integer compression, but it's really bad when you want a human to look at it. You have to do a bunch of math to sort of de-compress that integer into something meaningful for humans.<p>Similarly with protobuf, I find that it usually optimizes for the wrong thing. To be clear, one of my other fundamental philosophies about engineering is that performance is king and that you should try to make things fast, but there are certainly diminishing returns, especially in codebases where humans interact frequently with the data. Protobufs make things fast at a cost, and that cost is typically clarity and human readability. Versioning also creates more friction. I've seen teams spend an inordinate amount of effort trying to ensure that both the producer and consumer are using the same versions.<p>This is not to say that protobufs are useless. It's great for enforcing API contracts at the code level, and it provides those speed improvements OP mentions. There are certain high-throughput use-cases where this complexity and relative opaqueness is not only an acceptable trade off, but the right one to make. But I've found that it's not particularly common, and people reaching for protobufs are often optimizing for the wrong things. Again, clarity over cleverness and simplicity over complexity.<p>I know one of the arguments is "it's better for situations where you control both sides," but if you're in any kind of team with more than a couple of engineers, this stops being true. Even if your internal API is controlled by "us," that "us" can sometimes span 100+ engineers, and you might as well consider it a public API.<p>I'm not a protobuf hater, I just think that the vast majority of engineers would go through their careers without ever touching protobufs, never miss it, never need it, and never find themselves where eking out that extra performance is truly worth the hassle.</p>
]]></description><pubDate>Mon, 01 Dec 2025 19:38:22 +0000</pubDate><link>https://news.ycombinator.com/item?id=46112053</link><dc:creator>Jemaclus</dc:creator><comments>https://news.ycombinator.com/item?id=46112053</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46112053</guid></item><item><title><![CDATA[New comment by Jemaclus in "A 4k-Room Text Adventure Written by One Human in QBasic No AI"]]></title><description><![CDATA[
<p>IIRC, AvatarMUD (avatar.outland.org) has 20,000+ rooms in it. It's been a long time since I played, but it's absolutely massive!</p>
]]></description><pubDate>Fri, 17 Oct 2025 02:05:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=45612689</link><dc:creator>Jemaclus</dc:creator><comments>https://news.ycombinator.com/item?id=45612689</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45612689</guid></item><item><title><![CDATA[New comment by Jemaclus in "How AI hears accents: An audible visualization of accent clusters"]]></title><description><![CDATA[
<p>That's exactly what the pin-pen merger is! As you know, it's not limited to pin/pen, and hearing ability (in my case, profound hearing loss) is not related to the ability to hear the difference. I don't understand the linguistics, but my very bad understanding is that there's actual brain chemistry here that means that you _can't_ hear the difference because you never learned it, never spoke it, and you pronounce them the same.<p>My partner is from the PNW and she pronounces "egg" as "ayg" (like "ayyyy-g") but when I say "egg" she can't hear the difference between what I'm saying and what she says. And she has perfect hearing. But she CAN hear the difference between "pin" and "pen", and she gets upset when i say them the same way. lol<p>But yeah, that's one of the things that makes accents accents. It's not just the sounds that come out of our mouths but the way we hear things, too. Kinda crazy. :)</p>
]]></description><pubDate>Wed, 15 Oct 2025 16:28:27 +0000</pubDate><link>https://news.ycombinator.com/item?id=45594985</link><dc:creator>Jemaclus</dc:creator><comments>https://news.ycombinator.com/item?id=45594985</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45594985</guid></item><item><title><![CDATA[New comment by Jemaclus in "How AI hears accents: An audible visualization of accent clusters"]]></title><description><![CDATA[
<p>I'm also deaf, and I took 14 years of speech therapy. I grew up in Alabama. The only way you would know I'm from the South is because of the pin-pen merger[1]. Otherwise, you'd think I grew up in the American Midwest, due to how my speech therapy went. Almost nobody picks up on it, unless they are linguists that already knew about the pin-pen merger.<p>[1]<a href="https://www.acelinguist.com/2020/01/the-pin-pen-merger.html" rel="nofollow">https://www.acelinguist.com/2020/01/the-pin-pen-merger.html</a></p>
]]></description><pubDate>Wed, 15 Oct 2025 00:52:47 +0000</pubDate><link>https://news.ycombinator.com/item?id=45586803</link><dc:creator>Jemaclus</dc:creator><comments>https://news.ycombinator.com/item?id=45586803</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45586803</guid></item><item><title><![CDATA[New comment by Jemaclus in "Show HN: Lore Engine – Turn 10-hour lectures into 2 hours of comprehensive notes"]]></title><description><![CDATA[
<p>This is WILD. I love it. Congrats on shipping!</p>
]]></description><pubDate>Fri, 10 Oct 2025 01:46:05 +0000</pubDate><link>https://news.ycombinator.com/item?id=45534739</link><dc:creator>Jemaclus</dc:creator><comments>https://news.ycombinator.com/item?id=45534739</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45534739</guid></item><item><title><![CDATA[New comment by Jemaclus in "Experimenting with Local LLMs on macOS"]]></title><description><![CDATA[
<p>Oh, interesting. Well, TIL.</p>
]]></description><pubDate>Mon, 08 Sep 2025 16:07:33 +0000</pubDate><link>https://news.ycombinator.com/item?id=45170009</link><dc:creator>Jemaclus</dc:creator><comments>https://news.ycombinator.com/item?id=45170009</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45170009</guid></item><item><title><![CDATA[New comment by Jemaclus in "Experimenting with Local LLMs on macOS"]]></title><description><![CDATA[
<p>Does that even exist? It's basically what they described but with some additional installation? Once you install it, you can select the LLM on disk and run it? That's what they asked for.<p>Maybe I'm misunderstanding something.</p>
]]></description><pubDate>Mon, 08 Sep 2025 15:53:24 +0000</pubDate><link>https://news.ycombinator.com/item?id=45169836</link><dc:creator>Jemaclus</dc:creator><comments>https://news.ycombinator.com/item?id=45169836</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45169836</guid></item></channel></rss>