<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: sshine</title><link>https://news.ycombinator.com/user?id=sshine</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Sun, 11 Oct 2026 19:03:53 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=sshine" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by sshine in "I paid people to try and follow my README"]]></title><description><![CDATA[
<p>Nix.<p>I know, I know: It's complicated. But have you heard of AI agents?<p>But I just onboarded 4 interns on a project where all they had to do was<p><pre><code>  1. Install the Nix package manager
  2. Install direnv, enter the project repo, and `direnv allow`
  3. Toolchain, git hooks, MCP servers, in-repo issue tracker, everything is available
</code></pre>
Our project manager requested information that was available in the issue tracker. I told her, she could get all her answers by asking our agent, and it'd automatically reference the issue tracker. I figured I'd just need to show her how to install the Nix package manager. But no, she already had it because another project by another team depended on it.<p>Putting wrong information is README is so outdated when you have programmatic setup of your entire toolchain.</p>
]]></description><pubDate>Sun, 11 Oct 2026 13:11:27 +0000</pubDate><link>https://news.ycombinator.com/item?id=50042995</link><dc:creator>sshine</dc:creator><comments>https://news.ycombinator.com/item?id=50042995</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=50042995</guid></item><item><title><![CDATA[New comment by sshine in "Why Common Lisp is now the best programming language"]]></title><description><![CDATA[
<p>Why, you are right on all of these. I used Rust a lot before AI, and I use it a lot after. But I recognise the shortcoming of long compilation: it doesn't just shorten how many times I can have feedback in one day, it is also difficult to fit compilation into constrained environments. Like when an ultra secure Kubernetes cluster doesn't let me compile source code anywhere near it, and I have to compile inside of it; my colleagues insistence on using Go here because "Rust is difficult" (it surely is 100% longer to type when prompting an LLM) really has the main benefit that this code compiles fast and easily within the cluster.<p>So picking languages for their compilation and especially runtime properties is key.<p>What I've learned, though, is that languages with reckless error handling produce more errors at runtime. My Rust programs just don't crash because I don't need it to be explicit about reaching a "total" approach.<p>If you're in a C# environment, I see a case for F#. And if you want fast but more solid than Python, why not Mojo? Although who reads code.<p>This article convinces me. But I suspect like my lack of domain knowledge of Lisp makes me spend time learning the runtime: how and when can I switch to JIT, what's the async story, how does the harness become part of the Lisp program, etc.</p>
]]></description><pubDate>Tue, 06 Oct 2026 05:23:29 +0000</pubDate><link>https://news.ycombinator.com/item?id=49974529</link><dc:creator>sshine</dc:creator><comments>https://news.ycombinator.com/item?id=49974529</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49974529</guid></item><item><title><![CDATA[New comment by sshine in "Let's Ditch Google (Verb)"]]></title><description><![CDATA[
<p>I anticipate the day where saying you did a web search is looked weirdly upon.<p>You did... what? You mean you asked AI?</p>
]]></description><pubDate>Wed, 30 Sep 2026 19:20:41 +0000</pubDate><link>https://news.ycombinator.com/item?id=49913123</link><dc:creator>sshine</dc:creator><comments>https://news.ycombinator.com/item?id=49913123</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49913123</guid></item><item><title><![CDATA[New comment by sshine in "Tesla takes on $30B in credit as it approaches unprofitability"]]></title><description><![CDATA[
<p>Right, it's part of SpaceX.</p>
]]></description><pubDate>Wed, 30 Sep 2026 18:55:18 +0000</pubDate><link>https://news.ycombinator.com/item?id=49912850</link><dc:creator>sshine</dc:creator><comments>https://news.ycombinator.com/item?id=49912850</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49912850</guid></item><item><title><![CDATA[New comment by sshine in "The GitHub wiki is an anti-pattern (2022)"]]></title><description><![CDATA[
<p>> developers are now checking out a 50GB repo in its entirety periodically<p>It would, of course, be easy to say "But that's not the fault of monorepos! Clearly, 50GB is a nonsensical amount of source code, and clearly someone committed something they shouldn't have in the past."<p>But also, with monorepos, the probability of that happening to the repo you use the most is the cumulative sum of all of its projects, since more people's potential git mistakes now happen in the same place.<p>For the sake of comparison, nixpkgs is 4.5GB right now. It hosts ~140.000 packages, ~12.000 open PRs, one million commits, yadda. So when you reach ten times that size with, presumably, less traffic, I would consider cleaning up the history.<p>Polyrepos can definitely work; I use them extensively in open-source. I also wouldn't be doing that without Nix flakes all over to chain them together. And even then, I have constant drift because one repo is pinning an old version of another repo, and once I bump the pin, things break lazily.<p>The biggest benefit, by far, you get from monorepos, is eager evaluation of your dependencies.</p>
]]></description><pubDate>Sun, 27 Sep 2026 22:15:35 +0000</pubDate><link>https://news.ycombinator.com/item?id=49871384</link><dc:creator>sshine</dc:creator><comments>https://news.ycombinator.com/item?id=49871384</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49871384</guid></item><item><title><![CDATA[New comment by sshine in "I am done with this shit"]]></title><description><![CDATA[
<p>Recently: When asking any colleague about anything they did in relation to the project we’re working on, like “How does it work?” the answer is always “I don’t know.”<p>I get that there’s cognitive debt. Some just seem to never even pay interest or get a basic understanding of the domain model.<p>My suspicion is that these people were always lazy programmers, but now they can take the laziness to a point where, after weeks of working on a project, they don’t get the basic vocabulary right.<p>I just want to say: #notallvibecoders</p>
]]></description><pubDate>Wed, 23 Sep 2026 21:20:50 +0000</pubDate><link>https://news.ycombinator.com/item?id=49822772</link><dc:creator>sshine</dc:creator><comments>https://news.ycombinator.com/item?id=49822772</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49822772</guid></item><item><title><![CDATA[New comment by sshine in "The GitHub wiki is an anti-pattern (2022)"]]></title><description><![CDATA[
<p>Exactly because monorepos have least overhead when they’re small, monorepos generally win because you need to be small for a long while until you get big.<p>By the time you’re “at scale” (who knows), and all these monorepo at scale problems start to overwhelm, you can switch strategy, because the economy of polyrepos is so obvious by then.<p>So far, I’ve started a new job a handful of times by collapsing a premature polyrepo strategy: people were not experienced enough to merge two git repos without a common root.<p>I’ve only once went the other way, and it incurred so much overhead, it decreased developer productivity by some small but not insignificant percentage.<p>To be clear: I’m not a maximalist. All of my open-source work is exceedingly compartmentalised. My DNS library is separate from my external-dns webhook is separate from my fork of external-dns. They could all live in one repo. But FOSS encourages reusability, commercial software encourages clumping and vendoring.</p>
]]></description><pubDate>Wed, 23 Sep 2026 20:39:11 +0000</pubDate><link>https://news.ycombinator.com/item?id=49822230</link><dc:creator>sshine</dc:creator><comments>https://news.ycombinator.com/item?id=49822230</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49822230</guid></item><item><title><![CDATA[New comment by sshine in "Jev Can't Be Calibrated"]]></title><description><![CDATA[
<p>Do you provide Jev that the probability is 1/6 and yet it gives back a probability that is way off?</p>
]]></description><pubDate>Wed, 23 Sep 2026 16:22:24 +0000</pubDate><link>https://news.ycombinator.com/item?id=49818440</link><dc:creator>sshine</dc:creator><comments>https://news.ycombinator.com/item?id=49818440</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49818440</guid></item><item><title><![CDATA[New comment by sshine in "Show HN: Rickub – The Smartest Git in the Universe"]]></title><description><![CDATA[
<p>Forgejo/gitea are just so damn CVE ridden, and GitLab asks for 16G RAM as a minimum. All Rust-written forges have terrible web UI.</p>
]]></description><pubDate>Fri, 18 Sep 2026 17:47:29 +0000</pubDate><link>https://news.ycombinator.com/item?id=49757777</link><dc:creator>sshine</dc:creator><comments>https://news.ycombinator.com/item?id=49757777</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49757777</guid></item><item><title><![CDATA[New comment by sshine in "Rust is tier-1 language at Microsoft"]]></title><description><![CDATA[
<p>What if the user changes location?<p>Sounds like unbounded, dynamic allocation to me!</p>
]]></description><pubDate>Thu, 10 Sep 2026 18:55:33 +0000</pubDate><link>https://news.ycombinator.com/item?id=49648634</link><dc:creator>sshine</dc:creator><comments>https://news.ycombinator.com/item?id=49648634</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49648634</guid></item><item><title><![CDATA[New comment by sshine in "I Don't Want to Interact with Stochastic Parrots"]]></title><description><![CDATA[
<p>Maybe we just shouldn't fill out every optional text field with as much Claude nonsense as it can possibly fill in there. It really feels like they went from "Co-authored-by" propaganda to "You'll know, don't worry. Just watch these invisible watermarks!"<p>Here's an AI-generated pull request I made, but you wouldn't know because there's no slop:<p><a href="https://github.com/numtide/devshell/commit/a67c0f87b63bcbdbdcb56785bec0205a2e3d6026" rel="nofollow">https://github.com/numtide/devshell/commit/a67c0f87b63bcbdbd...</a><p>It got merged by someone who is too busy to respond to personal emails.<p>"Don't waste my precious attention" is only getting more real.</p>
]]></description><pubDate>Wed, 09 Sep 2026 20:25:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=49633689</link><dc:creator>sshine</dc:creator><comments>https://news.ycombinator.com/item?id=49633689</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49633689</guid></item><item><title><![CDATA[New comment by sshine in "Ask HN: Why were OpenAI, Claude, and Grok simultaneously down?"]]></title><description><![CDATA[
<p>Secretly, they are.</p>
]]></description><pubDate>Sat, 05 Sep 2026 00:32:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=49571830</link><dc:creator>sshine</dc:creator><comments>https://news.ycombinator.com/item?id=49571830</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49571830</guid></item><item><title><![CDATA[New comment by sshine in "The creator of Jujutsu has joined ERSC"]]></title><description><![CDATA[
<p>Reminds me of the git-svn bridge.<p>Points of no return.</p>
]]></description><pubDate>Tue, 01 Sep 2026 21:24:01 +0000</pubDate><link>https://news.ycombinator.com/item?id=49528440</link><dc:creator>sshine</dc:creator><comments>https://news.ycombinator.com/item?id=49528440</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49528440</guid></item><item><title><![CDATA[New comment by sshine in "The creator of Jujutsu has joined ERSC"]]></title><description><![CDATA[
<p>Without having tried JJ, as a hype chaser, I can say it's both worth it and not worth it.<p>I run NixOS, work with Kubernetes, code Rust, use a 40% split, layered keyboard with Dvorak layout and open source firmware, kaj mi parolas Esperanton.<p>They're just hobbies that, once you've sunk the hours in, they're awesome.<p>I don't actually type faster. Or maybe I do type a little faster because it made me use all 12 fingers instead of the ad-hoc 7-finger system you taught yourself in primary school, but typing was never a bottleneck, and split keyboards actually hurt my wrists more.<p>Jujutsu is marginally better than git, but costs time. If you like to spend the time, it will probably make you a little better. If you care deeply about your time, and it's already being allocated for anything but arbitrary intellectual pursuit, it's not worth it. Some people grow businesses, plants, or sedentary habits.</p>
]]></description><pubDate>Tue, 01 Sep 2026 19:09:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=49526565</link><dc:creator>sshine</dc:creator><comments>https://news.ycombinator.com/item?id=49526565</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49526565</guid></item><item><title><![CDATA[New comment by sshine in "The creator of Jujutsu has joined ERSC"]]></title><description><![CDATA[
<p>Are you saying push + undo = unpush?</p>
]]></description><pubDate>Tue, 01 Sep 2026 19:06:17 +0000</pubDate><link>https://news.ycombinator.com/item?id=49526520</link><dc:creator>sshine</dc:creator><comments>https://news.ycombinator.com/item?id=49526520</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49526520</guid></item><item><title><![CDATA[New comment by sshine in "Not Becoming a Cyborg"]]></title><description><![CDATA[
<p>Mathematicians and computer scientists will also say<p><pre><code>  "for all" / "there exists" instead of "every" / "there's at least one"
  "let" as an imperative for establishing facts
  "fix" for choosing a value
  "given" instead of "if"
  "modulo" instead of "except for"
  "if, and only if," when the occasion warrants it
  "implies" instead of "means"
  "trivial" without intending to be mean
  "yes" when asked an "or" question
  "transitively"
  "by symmetry"
  "it follows"
  "canonical"
</code></pre>
It's a lovely, concise language.<p>You can say a lot with few words when you have rich definitions.</p>
]]></description><pubDate>Tue, 01 Sep 2026 18:12:18 +0000</pubDate><link>https://news.ycombinator.com/item?id=49525655</link><dc:creator>sshine</dc:creator><comments>https://news.ycombinator.com/item?id=49525655</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49525655</guid></item><item><title><![CDATA[New comment by sshine in "Not Becoming a Cyborg"]]></title><description><![CDATA[
<p>When I have conversations with uncritical agentic coding maximalists, they will use "load-bearing" in daily speech.<p>I don't cringe when I know it went through their head, because they didn't literally copy-paste it.<p>It's just a side-effect of immersion. It's exactly a tic, and I don't frown when people tic.<p>Economists say "all things equal" (which they're never outside of economic models).<p>My vanity compels me to not use Claude's linguistic identity. It gets sooo boring.<p>And in spite of reading hours of Claude every day, I don't sound anything like Claude.<p>Maybe I'm not as impressionable as Nolan. Maybe I'm less aware of my own words.<p>I was cultivating a "make an effort when you write" mental space, and this area only got stronger in my brain with Claude.<p>I suppose it's a fight to preserve my own linguistic identity. Or maybe I have enough monologue to keep the pressure out always.<p>Also, unrelated, I already had one of Nolan's blog posts open in my most recent tab. It should prove a thing or two about authentic human voice.</p>
]]></description><pubDate>Tue, 01 Sep 2026 11:36:18 +0000</pubDate><link>https://news.ycombinator.com/item?id=49520576</link><dc:creator>sshine</dc:creator><comments>https://news.ycombinator.com/item?id=49520576</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49520576</guid></item><item><title><![CDATA[New comment by sshine in "The growing divide between AI hype and software engineering reality"]]></title><description><![CDATA[
<p>> <i>with AI you can produce software even more slowly but even higher quality than you did in the past before AI</i><p>I hadn't thought about it before, but this is precisely what I did in one project.<p>After replacing a webhook that I've been monkey-patching for ten straight bugs, I had enough of an idea of how the software worked and what edge cases to look out for to reproduce the software without the bugs and with a well-modelled, well-tested foundational client library.<p>After testing the foundational client library with all the methods I know (unit tests, property tests, mock tests, integration tests, and live tests), I had a race condition in my live tests that accidentally turned into a fuzz test of the live service the client connects to, and discovered a bug in the server.<p>The actual webhook has been brewing for a long time. For weeks I've just casually added more tests. Nothing interesting happened. I've went live with it now, and nothing comes up. So on to make a load test with mock endpoints.<p>I love how AI makes advanced, extensive testing techniques (and TDD) take little enough time to justify using them all.<p>As someone who taught CS for some years, it is very satisfying to finally come to a point where "we're not testing" cannot be justified from an economic perspective, it is purely a cultural (or lack of cultural) decision, and a lack of knowledge of any testing techniques beyond unit testing.</p>
]]></description><pubDate>Tue, 01 Sep 2026 07:03:52 +0000</pubDate><link>https://news.ycombinator.com/item?id=49518892</link><dc:creator>sshine</dc:creator><comments>https://news.ycombinator.com/item?id=49518892</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49518892</guid></item><item><title><![CDATA[New comment by sshine in "What my dad taught me about AI coding in the 90s"]]></title><description><![CDATA[
<p>> <i>if a seasoned programmer sits behind Claude Code, the quality output will likely be higher than if a non technical person does it</i><p>Anecdotal: I recently rewrote a service in Rust for a much needed 100x performance boost (largely due to architectural changes, somewhat due to better runtime).<p>My colleague who now maintains the app is not a Rust developer and knows little about threads and tokio. Debugging a problem, he said he’d reach the context window before pinning the problem. I never have that problem and effortlessly find problems in the first 100k tokens without trying.<p>The difference must be in the wording that initially guides the agent.</p>
]]></description><pubDate>Mon, 31 Aug 2026 11:44:32 +0000</pubDate><link>https://news.ycombinator.com/item?id=49508496</link><dc:creator>sshine</dc:creator><comments>https://news.ycombinator.com/item?id=49508496</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49508496</guid></item><item><title><![CDATA[New comment by sshine in "My hobby of building miniatures and taking pretty pictures"]]></title><description><![CDATA[
<p>The miniatures come prepainted but as tiny bits, like a croissant, or a lamp, or a sofa. So it's not so much about painting them as it is gluing tiny magnets to them and making small installations that are repluggable.<p>Some of the items have tiny electrics inside, e.g. an actual tiny LED lamp.<p>The "scenery" (much like Warhammer battlefields) are then made from cardboard and hobby materials. You can also buy them pre-assembled, but they're much less impressive (usually one color, generic, e.g. "doll house" or "house sliced halfway"). There's a subgenre for 3D printing the scenery.<p>My wife uses small glass jars upside down. so the items live on the jar's lid. Looks very cute with a small LED lamp and lights off.<p>I think none of this is rare, but surely some items are more unusual than others.<p>The rarity comes from this being a hobby that not many know about.<p>Tiny magnets seems to be the item you run out of.</p>
]]></description><pubDate>Mon, 31 Aug 2026 08:03:31 +0000</pubDate><link>https://news.ycombinator.com/item?id=49506903</link><dc:creator>sshine</dc:creator><comments>https://news.ycombinator.com/item?id=49506903</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49506903</guid></item></channel></rss>