<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: Kerrick</title><link>https://news.ycombinator.com/user?id=Kerrick</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Thu, 29 Oct 2026 16:28:01 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=Kerrick" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by Kerrick in "Rust off Rails: The opinionated web stack for the AI era"]]></title><description><![CDATA[
<p>Try reading the aforementioned book, and look at the classes in the Rails API. They are often named very simply after the pattern.<p>For example, Active Record is on Page 160, and inspired <a href="https://api.rubyonrails.org/classes/ActiveRecord.html" rel="nofollow">https://api.rubyonrails.org/classes/ActiveRecord.html</a>. Model View Controller is on page 330 and inspired <a href="https://api.rubyonrails.org/classes/ActiveModel.html" rel="nofollow">https://api.rubyonrails.org/classes/ActiveModel.html</a>, <a href="https://api.rubyonrails.org/classes/ActionView.html" rel="nofollow">https://api.rubyonrails.org/classes/ActionView.html</a>, and <a href="https://api.rubyonrails.org/classes/ActionController.html" rel="nofollow">https://api.rubyonrails.org/classes/ActionController.html</a>. Template View is on page 350, and inspired <a href="https://api.rubyonrails.org/classes/ActionView/Template.html" rel="nofollow">https://api.rubyonrails.org/classes/ActionView/Template.html</a>.<p>Not all patterns used in Rails are so directly named, though. Layer Supertype is on page 475 and is behind the `class Company < ActiveRecord::Base; end` style. Single Table Inheritance is on page 278, and inspired <a href="https://api.rubyonrails.org/classes/ActiveRecord/Inheritance.html" rel="nofollow">https://api.rubyonrails.org/classes/ActiveRecord/Inheritance...</a>. Repository is on page 322, and inspired <a href="https://api.rubyonrails.org/classes/ActiveRecord/FinderMethods.html" rel="nofollow">https://api.rubyonrails.org/classes/ActiveRecord/FinderMetho...</a>. Value Object is on page 486, and is a key part of <a href="https://api.rubyonrails.org/classes/ActiveRecord/Aggregations/ClassMethods.html" rel="nofollow">https://api.rubyonrails.org/classes/ActiveRecord/Aggregation...</a>.<p>See also: <a href="https://signalvnoise.com/posts/3375-the-five-programming-books-that-meant-most-to-me#:~:text=Great%20inventory%20of%20many%20of%20the%20patterns%20that%20underpin%20Rails%20itself" rel="nofollow">https://signalvnoise.com/posts/3375-the-five-programming-boo...</a></p>
]]></description><pubDate>Wed, 21 Oct 2026 17:42:49 +0000</pubDate><link>https://news.ycombinator.com/item?id=50184773</link><dc:creator>Kerrick</dc:creator><comments>https://news.ycombinator.com/item?id=50184773</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50184773</guid></item><item><title><![CDATA[New comment by Kerrick in "Why don't more developers “use the platform”?"]]></title><description><![CDATA[
<p>I am reminded of <a href="https://xkcd.com/1425/" rel="nofollow">https://xkcd.com/1425/</a></p>
]]></description><pubDate>Mon, 05 Oct 2026 03:52:33 +0000</pubDate><link>https://news.ycombinator.com/item?id=49960496</link><dc:creator>Kerrick</dc:creator><comments>https://news.ycombinator.com/item?id=49960496</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49960496</guid></item><item><title><![CDATA[New comment by Kerrick in "Ask HN: What are you reading?"]]></title><description><![CDATA[
<p>I just finished <i>Domain-Driven Transformation</i> by Lilienthal & Schwentner. It's the book I've been seeking for years.<p>I'm currently reading <i>More Fearless Change</i> by Manns & Rising. I've always enjoyed being a change agent, and I would've been more effective if I'd read this book a decade ago.<p>Next up, I plan to read <i>Facilitating Software Architecture</i> by Harmel-Law.<p>Oh, and every day or two I read aloud a chapter of <i>Magic and Meaning Expanded</i> by Burger & Neale to my wife. We're both magicians and big fans of Eugene Burger's work.</p>
]]></description><pubDate>Wed, 30 Sep 2026 03:55:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=49904192</link><dc:creator>Kerrick</dc:creator><comments>https://news.ycombinator.com/item?id=49904192</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49904192</guid></item><item><title><![CDATA[Mathematicians, Here's a Way to Think About Your Existential Crisis]]></title><description><![CDATA[
<p>Article URL: <a href="https://newsletter.kentbeck.com/p/mathematicians-heres-a-way-to-think">https://newsletter.kentbeck.com/p/mathematicians-heres-a-way-to-think</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=49895636">https://news.ycombinator.com/item?id=49895636</a></p>
<p>Points: 4</p>
<p># Comments: 0</p>
]]></description><pubDate>Tue, 29 Sep 2026 16:03:40 +0000</pubDate><link>https://newsletter.kentbeck.com/p/mathematicians-heres-a-way-to-think</link><dc:creator>Kerrick</dc:creator><comments>https://news.ycombinator.com/item?id=49895636</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49895636</guid></item><item><title><![CDATA[New comment by Kerrick in "The revolt of the reader"]]></title><description><![CDATA[
<p>Other translations keep Zinsser's preferred lack of fuzz but avoid using "is ... to" for possession.<p>For example, the Lexham English Bible:<p>> I looked again and saw under the sun that the race does not belong to the swift, the battle does not belong to the mighty, food does not belong to the wise, wealth does not belong to the intelligent, and success does not belong to the skillful, for time and chance befalls all of them.</p>
]]></description><pubDate>Sun, 06 Sep 2026 05:42:53 +0000</pubDate><link>https://news.ycombinator.com/item?id=49583661</link><dc:creator>Kerrick</dc:creator><comments>https://news.ycombinator.com/item?id=49583661</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49583661</guid></item><item><title><![CDATA[New comment by Kerrick in "That post never existed. Stop listening to that thing"]]></title><description><![CDATA[
<p>For some things, good enough is good enough. For many things, it is <i>not</i> (and neither are random posts on the internet). Before Web 2.0, it was similar to whether I'd trust some random person on the street with it versus going and looking it up in Encyclopaedia Britannica, or the American Heritage Dictionary, or Roget's Thesaurus, or the UC Davis Book of Dogs, or the Cornell Book of Cats, or the Merck Manual, or even the World Almanac or Bartlett’s Quotations if I was feeling petty.</p>
]]></description><pubDate>Tue, 21 Jul 2026 00:04:20 +0000</pubDate><link>https://news.ycombinator.com/item?id=48986502</link><dc:creator>Kerrick</dc:creator><comments>https://news.ycombinator.com/item?id=48986502</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48986502</guid></item><item><title><![CDATA[New comment by Kerrick in "That post never existed. Stop listening to that thing"]]></title><description><![CDATA[
<p>No, the sense had nothing to do with the content and everything to do with the context. Perfect grammar and writing style were never enough to get me to trust an anonymous forum post or unknown bloggers post for certain topics like health advice. Sloppy grammar and writing style were never a deterrent for me believing them for other kinds of topics like where to check on the HVAC system to find the sticker. I think the line could more accurately be described as the <i>level of risk if it's wrong</i>.</p>
]]></description><pubDate>Mon, 20 Jul 2026 19:29:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=48983729</link><dc:creator>Kerrick</dc:creator><comments>https://news.ycombinator.com/item?id=48983729</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48983729</guid></item><item><title><![CDATA[New comment by Kerrick in "That post never existed. Stop listening to that thing"]]></title><description><![CDATA[
<p>I have a distinct line between when I'm willing to believe an LLM's output and when I'm not: whether I would believe the same thing from an anonymous Internet forum post or a blogger I don't know. Those posts are not unlikely to be misinformed, biased, lies, or otherwise untrustworthy. And yet, I spent plenty of years honing a sense of when they were <i>good enough</i> for certain things.</p>
]]></description><pubDate>Mon, 20 Jul 2026 18:36:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=48983000</link><dc:creator>Kerrick</dc:creator><comments>https://news.ycombinator.com/item?id=48983000</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48983000</guid></item><item><title><![CDATA[New comment by Kerrick in "Proof of care in the age of AI"]]></title><description><![CDATA[
<p>You can handwrite more than just your first draft. It was common before the proliferation of computers to handwrite early drafts in pencil, and then handwrite the final manuscript with ink.</p>
]]></description><pubDate>Tue, 14 Jul 2026 14:48:51 +0000</pubDate><link>https://news.ycombinator.com/item?id=48907782</link><dc:creator>Kerrick</dc:creator><comments>https://news.ycombinator.com/item?id=48907782</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48907782</guid></item><item><title><![CDATA[New comment by Kerrick in "Physical disc production ending in Jan 2028 for new games on PlayStation"]]></title><description><![CDATA[
<p>Most blu-rays are 1080p, not 4K. The latter gets marketed as "UHD" and sold in a black case, to contrast the blue case of traditional FHD blu-rays.</p>
]]></description><pubDate>Wed, 01 Jul 2026 17:27:27 +0000</pubDate><link>https://news.ycombinator.com/item?id=48750344</link><dc:creator>Kerrick</dc:creator><comments>https://news.ycombinator.com/item?id=48750344</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48750344</guid></item><item><title><![CDATA[New comment by Kerrick in "Why AI hasn't replaced software engineers, and won't"]]></title><description><![CDATA[
<p>I suspect that vibe coders who hit a wall need the same thing that programmers from 2003 who hit a wall needed. Talk to the business people, get an understanding of their domain and the problem at hand, and model that as a series of anthropomorphic objects that encode the business rules in the language that the domain experts already used (tweaked by the need for disambiguation and clarity). Back in the day, this was <i>software design</i>, a distinct skill (and often job!) from <i>computer programming</i>.<p>I'd love to read your book, if you write it. Anybody who's talked to a thousand people trying to solve the same problems will have an amazing perspective and a lot to teach.</p>
]]></description><pubDate>Sat, 13 Jun 2026 14:35:05 +0000</pubDate><link>https://news.ycombinator.com/item?id=48517748</link><dc:creator>Kerrick</dc:creator><comments>https://news.ycombinator.com/item?id=48517748</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48517748</guid></item><item><title><![CDATA[New comment by Kerrick in "Why AI hasn't replaced software engineers, and won't"]]></title><description><![CDATA[
<p>That wall was detailed in 2003 in <i>Domain-Driven Design: Tackling Complexity in the Heart of Software</i> by Eric Evans, Chapter Four, "Smart UI Anti-Pattern." The context is the same, the problem is the same, the solution is the same. Even the advantages and disadvantages are the same as what you see in vibe-coded projects.<p>> A project needs to deliver simple functionality, dominated by data entry and display, with few business rules. Staff is not composed of advanced object modelers.<p>> [...] Simple projects come with short time lines and modest expectations. Long before the team completes the assigned task, much less demonstrates the exciting possibilities of its approach, the project will have been canceled. [...] And in the end, if they do surmount these challenges, they will have produced a simple system. Rich capabilities were never requested.<p>> Therefore, when circumstances warrant:<p>> Put all the business logic into the user interface. Chop the application into small functions and implement them as separate user interfaces, embedding the business rules into them. Use a relational database as a shared repository of the data. Use the most automated UI building and visual programming tools available.<p>> [...] Yet it is a legitimate pattern in some other contexts. In truth, there are advantages to the SMART UI, and there are situations where it works best—which partially accounts for why it is so common. Considering it here helps us understand why we need to separate application from domain and, importantly, when we might not want to.<p>> <i>Advantages</i>: Productivity is high and immediate for simple applications; Less capable developers can work this way with little training; Even deficiencies in requirements analysis can be overcome by releasing a prototype to users and then quickly changing the product to fit their requests; Applications are decoupled from each other, so that delivery schedules of small modules can be planned relatively accurately; Expanding the system with additional, simple behavior can be easy; Relational databases work well and provide integration at the data level; 4GL tools work well; When applications are handed off, maintenance programmers will be able to quickly redo portions they can’t figure out, because the effects of the changes should be localized to each particular UI.<p>> <i>Disadvantages</i>: Integration of applications is difficult except through the database; There is no reuse of behavior and no abstraction of the business problem. Business rules have to be duplicated in each operation to which they apply; Rapid prototyping and iteration reach a natural limit because the lack of abstraction limits refactoring options; Complexity buries you quickly, so the growth path is strictly toward additional simple applications. There is no graceful path to richer behavior.<p>> [...] Remember, one of the consequences of this pattern is that you can’t migrate to another design approach except by replacing entire applications. [...] Don’t bother hedging your bet. Just using a flexible language doesn’t create a flexible system, but it may well produce an expensive one.</p>
]]></description><pubDate>Thu, 11 Jun 2026 13:57:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=48490432</link><dc:creator>Kerrick</dc:creator><comments>https://news.ycombinator.com/item?id=48490432</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48490432</guid></item><item><title><![CDATA[New comment by Kerrick in "A few interesting modern pixel fonts"]]></title><description><![CDATA[
<p>Analog Mono and Two Slice are really neat. If you like those, you'll probably also like another of my favorite modern pixel fonts: Departure Mono. <a href="https://departuremono.com" rel="nofollow">https://departuremono.com</a></p>
]]></description><pubDate>Tue, 26 May 2026 19:22:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=48284661</link><dc:creator>Kerrick</dc:creator><comments>https://news.ycombinator.com/item?id=48284661</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48284661</guid></item><item><title><![CDATA[New comment by Kerrick in "The West forgot how to make things, now it’s forgetting how to code"]]></title><description><![CDATA[
<p><a href="https://awnist.com/slop-cop" rel="nofollow">https://awnist.com/slop-cop</a> (via <a href="https://news.ycombinator.com/item?id=47806845">https://news.ycombinator.com/item?id=47806845</a>) points out Staccato Burst, Dramatic Fragment, Colon Elaboration, and Short-Hook Paragraph. To me, those define the tone of this article.</p>
]]></description><pubDate>Sun, 26 Apr 2026 14:32:59 +0000</pubDate><link>https://news.ycombinator.com/item?id=47910680</link><dc:creator>Kerrick</dc:creator><comments>https://news.ycombinator.com/item?id=47910680</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47910680</guid></item><item><title><![CDATA[New comment by Kerrick in "Asahi Linux Progress Linux 7.0"]]></title><description><![CDATA[
<p><a href="https://asahilinux.org/docs/platform/feature-support/m4/" rel="nofollow">https://asahilinux.org/docs/platform/feature-support/m4/</a></p>
]]></description><pubDate>Sun, 26 Apr 2026 13:07:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=47910023</link><dc:creator>Kerrick</dc:creator><comments>https://news.ycombinator.com/item?id=47910023</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47910023</guid></item><item><title><![CDATA[New comment by Kerrick in "Britannica11.org – a structured edition of the 1911 Encyclopædia Britannica"]]></title><description><![CDATA[
<p>> What I’ve built here is a structured edition — the parsing, reconstruction, linking, indexing, etc. I haven’t published a formal license for that yet.<p>If you live in the U.S. I recommend you read <i>No Sweat of the Brow Copyright</i>: <a href="https://www.gutenberg.org/help/no_sweat_copyright.html" rel="nofollow">https://www.gutenberg.org/help/no_sweat_copyright.html</a></p>
]]></description><pubDate>Wed, 22 Apr 2026 03:50:35 +0000</pubDate><link>https://news.ycombinator.com/item?id=47858719</link><dc:creator>Kerrick</dc:creator><comments>https://news.ycombinator.com/item?id=47858719</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47858719</guid></item><item><title><![CDATA[New comment by Kerrick in "Qwen3.6-Max-Preview: Smarter, Sharper, Still Evolving"]]></title><description><![CDATA[
<p>Z.ai's Coding Plan with GLM 5.1 (Max) <i>did</i> more than double in price. It was $80 two weeks ago, and now it's $160.</p>
]]></description><pubDate>Mon, 20 Apr 2026 18:34:16 +0000</pubDate><link>https://news.ycombinator.com/item?id=47838634</link><dc:creator>Kerrick</dc:creator><comments>https://news.ycombinator.com/item?id=47838634</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47838634</guid></item><item><title><![CDATA[New comment by Kerrick in "Show HN: boringBar – a taskbar-style dock replacement for macOS"]]></title><description><![CDATA[
<p>> By default, minimize button not present in titlebars<p>This is explained by the ElementaryOS H.I.G.:<p>> Apps should save their current state when closed so they can be reopened right to where the user left off. Typically, closing and reopening an app should be indistinguishable from the legacy concept of minimizing and unminimizing an app; that is, all elements should be saved including open documents, scroll position, undo history, etc.<p>> Because of the strong convention of saved state, elementary OS does not expose or optimize for legacy minimize behavior; e.g. there is no minimize button, and the Multitasking View does not distinguish minimized windows.<p>More: <a href="https://docs.elementary.io/hig/user-workflow/closing" rel="nofollow">https://docs.elementary.io/hig/user-workflow/closing</a></p>
]]></description><pubDate>Mon, 13 Apr 2026 15:00:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=47753002</link><dc:creator>Kerrick</dc:creator><comments>https://news.ycombinator.com/item?id=47753002</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47753002</guid></item><item><title><![CDATA[New comment by Kerrick in "Where does all the milk go?"]]></title><description><![CDATA[
<p>I didn't want to put a spiked nose ring on the first calf born on my small farm because of the visual shock. Its mother didn't kick the calf off as it grew up. The calf wouldn't stop nursing, kept the cow in milk for far too long, and I believe eventually caused her death.<p>These are not sapient beings that are capable of looking out for their own well-being. We've bred that out of them over hundreds of human generations.</p>
]]></description><pubDate>Thu, 09 Apr 2026 19:25:39 +0000</pubDate><link>https://news.ycombinator.com/item?id=47708522</link><dc:creator>Kerrick</dc:creator><comments>https://news.ycombinator.com/item?id=47708522</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47708522</guid></item><item><title><![CDATA[New comment by Kerrick in "Where does all the milk go?"]]></title><description><![CDATA[
<p>I think there's a linguistically-driven temporal misunderstanding happening here. A cow couldn't have a calf if it hadn't become pregnant.<p>But there's <i>so</i> much to the linguistics of animal husbandry and dairy that many folks don't know. It goes way deeper than just the milk-oriented terms in the article: Heifer versus cow, freshening and calving, steer versus ox versus bull, AI (not the LLM kind) versus natural service, the barn, parlor, and pasture, and more. Plus plenty of technical knowledge. If you're not hand milking, how many mmHg of negative pressure should you use? Do you use a surcingle, or a claw, or a robot?<p>Even in the milk-oriented terms, there are others not covered by the article. HTST and UHT aren't the only options, there's also LTLT. Pasteurization can be done in a pipeline, or in a vat. Smaller vats for home and small farm usage can be multi-purpose: I pasteurized milk <i>and</i> cultured yogurt in mine. Some folks even care about the specific proteins (A1 beta-casein versus A2), which is genetically determined by the cow (and can be bred for).<p>I got a cow in 2020 and there was a <i>lot</i> to learn.</p>
]]></description><pubDate>Thu, 09 Apr 2026 19:21:24 +0000</pubDate><link>https://news.ycombinator.com/item?id=47708476</link><dc:creator>Kerrick</dc:creator><comments>https://news.ycombinator.com/item?id=47708476</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47708476</guid></item></channel></rss>