<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: sa46</title><link>https://news.ycombinator.com/user?id=sa46</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Tue, 13 Oct 2026 02:08:22 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=sa46" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by sa46 in "Our AI Midwife"]]></title><description><![CDATA[
<p>> but this time the author and his wife pushed harder for it to happen<p>This is the essence of how to make the medical system work for you. Advocate for yourself. AI helps know what to ask, why you should ask, and how to get past the first few layers of dismissals.</p>
]]></description><pubDate>Sat, 03 Oct 2026 21:16:07 +0000</pubDate><link>https://news.ycombinator.com/item?id=49947861</link><dc:creator>sa46</dc:creator><comments>https://news.ycombinator.com/item?id=49947861</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49947861</guid></item><item><title><![CDATA[New comment by sa46 in "As A.I. makes law firms more efficient, clients ask: 'Where's my discount?'"]]></title><description><![CDATA[
<p>I understood the OP's point as follows:<p>The fee agreement was an hourly rate for producing a legal document. The resulting document looks like it took 10 seconds to produce. The lawyer billed $1000 worth of hours.<p>So, either the document was much more complex than anticipated (in which case the lawyer should have said so), or the lawyer inflated the hours.</p>
]]></description><pubDate>Mon, 28 Sep 2026 05:16:29 +0000</pubDate><link>https://news.ycombinator.com/item?id=49873935</link><dc:creator>sa46</dc:creator><comments>https://news.ycombinator.com/item?id=49873935</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49873935</guid></item><item><title><![CDATA[New comment by sa46 in "As A.I. makes law firms more efficient, clients ask: 'Where's my discount?'"]]></title><description><![CDATA[
<p>The difference is that lawyers typically charge by the hour. Software is not sold based on how long it took to create.<p>So, if a lawyer bills $1000 for "10 seconds of work", it smells fraudulent.<p>If $1000 was a flat rate, then it's similar to software: you're purchasing some IP and passing off legal liability to the lawyer. How long the lawyer spent on it doesn't matter.</p>
]]></description><pubDate>Mon, 28 Sep 2026 04:56:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=49873818</link><dc:creator>sa46</dc:creator><comments>https://news.ycombinator.com/item?id=49873818</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49873818</guid></item><item><title><![CDATA[New comment by sa46 in "Platform-independent SIMD in Go"]]></title><description><![CDATA[
<p>> But you also went 13 years without generics<p>Go shipped with generics (aka bounded parametric polymorphism), but only for built-in types: slices, arrays, and maps. That, with subtyping via interfaces, handled most demand for generics. The most common pain point was custom containers.<p>Go was first released in November 2009. Russ Cox posted "The Generic Dilemma" [1] in December 2009. The comments show the generics debate raging from the earliest days.<p>As a fun side note, I forgot I posted a comment on that post pointing to Ada's generics. I was in college, and Ada was our intro language.<p>[1]: <a href="https://research.swtch.com/generic" rel="nofollow">https://research.swtch.com/generic</a><p>> the designers didn't want that complexity inside Go.<p>Yes, with some nuance. Go's goal of writing server programs didn't require the type-system complexity and run-time hit of user-defined generics. [2]<p>> Go was intended as a language for writing server programs [...] Polymorphic programming did not seem essential [...] so was initially left out for simplicity.
> 
> Generics are convenient but they come at a cost in complexity in the type system and run-time. It took a while to develop a design that we believe gives value proportionate to the complexity.<p>[2]: <a href="https://go.dev/doc/faq#beginning_generics" rel="nofollow">https://go.dev/doc/faq#beginning_generics</a><p>Out of curiosity, I collected all proposals for Go's journey to generics. <a href="https://gist.github.com/jschaf/eaa7aff1af14ea7276a18a1b7370d7a4" rel="nofollow">https://gist.github.com/jschaf/eaa7aff1af14ea7276a18a1b7370d...</a></p>
]]></description><pubDate>Fri, 25 Sep 2026 19:52:53 +0000</pubDate><link>https://news.ycombinator.com/item?id=49849091</link><dc:creator>sa46</dc:creator><comments>https://news.ycombinator.com/item?id=49849091</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49849091</guid></item><item><title><![CDATA[New comment by sa46 in "We made Playwright 2x faster and 80% more token efficient"]]></title><description><![CDATA[
<p>Tests typically drive the browser on the same machine. What round trip are we talking about here? Process-to-process over CDP?</p>
]]></description><pubDate>Sun, 20 Sep 2026 02:53:13 +0000</pubDate><link>https://news.ycombinator.com/item?id=49772141</link><dc:creator>sa46</dc:creator><comments>https://news.ycombinator.com/item?id=49772141</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49772141</guid></item><item><title><![CDATA[New comment by sa46 in "I accidentally turned LLM memory into program analysis"]]></title><description><![CDATA[
<p>Weather is fun choice since it’s a contronym. It has opposing definitions: to endure and to erode.<p>“He weathered the storm” vs “the stone weathered into an arch”.</p>
]]></description><pubDate>Sun, 30 Aug 2026 17:36:31 +0000</pubDate><link>https://news.ycombinator.com/item?id=49500865</link><dc:creator>sa46</dc:creator><comments>https://news.ycombinator.com/item?id=49500865</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49500865</guid></item><item><title><![CDATA[New comment by sa46 in "Codefloe Is a Professionally Hosted Public Git Forge"]]></title><description><![CDATA[
<p>That’s a great blog post, lots of details, helpful animations, historical context, and an interspersing of war stories.<p><a href="https://cursor.com/blog/git-at-any-scale" rel="nofollow">https://cursor.com/blog/git-at-any-scale</a></p>
]]></description><pubDate>Tue, 25 Aug 2026 03:36:33 +0000</pubDate><link>https://news.ycombinator.com/item?id=49428800</link><dc:creator>sa46</dc:creator><comments>https://news.ycombinator.com/item?id=49428800</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49428800</guid></item><item><title><![CDATA[New comment by sa46 in "GitHub degradation affects Cursor Origin, its new Git platform"]]></title><description><![CDATA[
<p>I was confused. The title is bad. “its” is ambiguous and usually refers to the first subject in this sentence structure.</p>
]]></description><pubDate>Tue, 18 Aug 2026 03:11:54 +0000</pubDate><link>https://news.ycombinator.com/item?id=49340797</link><dc:creator>sa46</dc:creator><comments>https://news.ycombinator.com/item?id=49340797</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49340797</guid></item><item><title><![CDATA[New comment by sa46 in "The Dunning-Kruger effect may just be a data artefact (2020)"]]></title><description><![CDATA[
<p>Weird take. The author corresponded with Dunning and reproduced the classic graph using random data.</p>
]]></description><pubDate>Tue, 04 Aug 2026 05:44:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=49164699</link><dc:creator>sa46</dc:creator><comments>https://news.ycombinator.com/item?id=49164699</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49164699</guid></item><item><title><![CDATA[New comment by sa46 in "Incident Report: May 19, 2026 – GCP Account Suspension"]]></title><description><![CDATA[
<p>Railway has an overwhelming incentive to pin the blame on Google. This report doesn't answer why Google suspended Railway's account.<p>I'd wait for more details before adjudicating.</p>
]]></description><pubDate>Wed, 20 May 2026 18:25:09 +0000</pubDate><link>https://news.ycombinator.com/item?id=48211911</link><dc:creator>sa46</dc:creator><comments>https://news.ycombinator.com/item?id=48211911</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48211911</guid></item><item><title><![CDATA[New comment by sa46 in "Zero-copy protobuf and ConnectRPC for Rust"]]></title><description><![CDATA[
<p>Presumably, OP refers to the generated rust types which depend on the specific protobuf framework.<p>I had the same issue when looking to adopt ConnectRPC for Go, which uses a custom wrapper type to model requests.</p>
]]></description><pubDate>Tue, 21 Apr 2026 05:15:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=47844800</link><dc:creator>sa46</dc:creator><comments>https://news.ycombinator.com/item?id=47844800</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47844800</guid></item><item><title><![CDATA[New comment by sa46 in "Ada, its design, and the language that built the languages"]]></title><description><![CDATA[
<p>It might interest you to know JS has real private fields, formally introduced in ES2022. [1]<p>[1]: <a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Classes/Private_elements" rel="nofollow">https://developer.mozilla.org/en-US/docs/Web/JavaScript/Refe...</a></p>
]]></description><pubDate>Sat, 18 Apr 2026 03:15:22 +0000</pubDate><link>https://news.ycombinator.com/item?id=47812858</link><dc:creator>sa46</dc:creator><comments>https://news.ycombinator.com/item?id=47812858</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47812858</guid></item><item><title><![CDATA[New comment by sa46 in "A tail-call interpreter in (nightly) Rust"]]></title><description><![CDATA[
<p>A new Go protobuf parser [1] made the rounds here eight months ago [2] with a specialized VM that outperforms the default generated protobuf code by 3x.<p>[1]: <a href="https://mcyoung.xyz/2025/07/16/hyperpb/" rel="nofollow">https://mcyoung.xyz/2025/07/16/hyperpb/</a><p>[2]: <a href="https://news.ycombinator.com/item?id=44591605">https://news.ycombinator.com/item?id=44591605</a></p>
]]></description><pubDate>Sun, 05 Apr 2026 22:01:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=47654356</link><dc:creator>sa46</dc:creator><comments>https://news.ycombinator.com/item?id=47654356</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47654356</guid></item><item><title><![CDATA[New comment by sa46 in "France's aircraft carrier located in real time by Le Monde through fitness app"]]></title><description><![CDATA[
<p>About 15 years ago, our brigade conducted a training exercise to test overall readiness. The opposing force (OPFOR) figured out how to triangulate the brigade headquarters' position using Tinder.<p>Tinder provided 1-mile granularity, so OPFOR would roam around until they had enough points to locate the headquarters. Then, they'd artillery it out of existence. The brigade commander was most displeased—moving a brigade headquarters is not for the weak or fainthearted.</p>
]]></description><pubDate>Fri, 20 Mar 2026 18:55:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=47458995</link><dc:creator>sa46</dc:creator><comments>https://news.ycombinator.com/item?id=47458995</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47458995</guid></item><item><title><![CDATA[New comment by sa46 in "A case for Go as the best language for AI agents"]]></title><description><![CDATA[
<p>govulncheck analyzes symbol usage and only warns if your code reaches the affected symbol(s).<p>I’m not sure about cargo audit specifically, but most other security advisories are package scoped and will warn if your code transitively references the package, regardless of which symbols your code uses.</p>
]]></description><pubDate>Mon, 02 Mar 2026 19:10:55 +0000</pubDate><link>https://news.ycombinator.com/item?id=47222593</link><dc:creator>sa46</dc:creator><comments>https://news.ycombinator.com/item?id=47222593</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47222593</guid></item><item><title><![CDATA[New comment by sa46 in "Prek: A better, faster, drop-in pre-commit replacement, engineered in Rust"]]></title><description><![CDATA[
<p>The problem is that pre-commit hooks are much slower with a much higher false-positive rate than type checking.<p>Pre-commit checks should be opt-in with CI as the gate. It's useful to be able to commit code in a failing state.</p>
]]></description><pubDate>Tue, 03 Feb 2026 19:45:35 +0000</pubDate><link>https://news.ycombinator.com/item?id=46876217</link><dc:creator>sa46</dc:creator><comments>https://news.ycombinator.com/item?id=46876217</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46876217</guid></item><item><title><![CDATA[New comment by sa46 in "Un-Redactor"]]></title><description><![CDATA[
<p>Wouldn’t a mono space font provide more information since you can extrapolate the exact number of characters?</p>
]]></description><pubDate>Tue, 23 Dec 2025 21:28:04 +0000</pubDate><link>https://news.ycombinator.com/item?id=46369671</link><dc:creator>sa46</dc:creator><comments>https://news.ycombinator.com/item?id=46369671</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46369671</guid></item><item><title><![CDATA[New comment by sa46 in "Go ahead, self-host Postgres"]]></title><description><![CDATA[
<p>I’ve been very happy with Pganalyze.</p>
]]></description><pubDate>Sat, 20 Dec 2025 19:00:13 +0000</pubDate><link>https://news.ycombinator.com/item?id=46338578</link><dc:creator>sa46</dc:creator><comments>https://news.ycombinator.com/item?id=46338578</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46338578</guid></item><item><title><![CDATA[New comment by sa46 in "Locks in PostgreSQL: 3. Other locks (2020)"]]></title><description><![CDATA[
<p>Advisory locks aren’t all sunshine and rainbows. They can only be unlocked by the Postgres connection that acquired the lock. That means you need to track the connection, typically by dedicating a connection to the job that needs locking.<p>Here’s a good issue describing the tradeoffs between a lock table and advisory locks.<p><a href="https://github.com/bensheldon/good_job/discussions/831" rel="nofollow">https://github.com/bensheldon/good_job/discussions/831</a></p>
]]></description><pubDate>Sun, 07 Dec 2025 18:45:15 +0000</pubDate><link>https://news.ycombinator.com/item?id=46183971</link><dc:creator>sa46</dc:creator><comments>https://news.ycombinator.com/item?id=46183971</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46183971</guid></item><item><title><![CDATA[New comment by sa46 in "Transparent leadership beats servant leadership"]]></title><description><![CDATA[
<p>That's quite a strong claim. I disagree. Military leadership, like business leadership, is imperfect. Both vary based on individuals, the operating environment, and culture.</p>
]]></description><pubDate>Thu, 04 Dec 2025 19:09:17 +0000</pubDate><link>https://news.ycombinator.com/item?id=46151497</link><dc:creator>sa46</dc:creator><comments>https://news.ycombinator.com/item?id=46151497</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46151497</guid></item></channel></rss>