<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: joaohaas</title><link>https://news.ycombinator.com/user?id=joaohaas</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Mon, 25 May 2026 18:38:20 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=joaohaas" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by joaohaas in "Migrating from Go to Rust"]]></title><description><![CDATA[
<p>I know general consensus on this is that it is good, but I hate this. The fact that both assignments do completely different things (with the map one doing heap allocs!) is insane. This would've been much better if it only allowed for anonymous structs.<p><pre><code>  var A string = "A"
  type Foo struct { A string }
  var a Foo
  var b map[string]string
  
  a = {A: "abc"}
  b = {A: "abc"}</code></pre></p>
]]></description><pubDate>Mon, 25 May 2026 12:13:00 +0000</pubDate><link>https://news.ycombinator.com/item?id=48265937</link><dc:creator>joaohaas</dc:creator><comments>https://news.ycombinator.com/item?id=48265937</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48265937</guid></item><item><title><![CDATA[New comment by joaohaas in "Migrating from Go to Rust"]]></title><description><![CDATA[
<p>This post is specifically about backend development, where you're <i>not</i> shipping software to regular users.</p>
]]></description><pubDate>Mon, 25 May 2026 11:51:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=48265780</link><dc:creator>joaohaas</dc:creator><comments>https://news.ycombinator.com/item?id=48265780</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48265780</guid></item><item><title><![CDATA[New comment by joaohaas in "Linux gaming is faster because Windows APIs are becoming Linux kernel features"]]></title><description><![CDATA[
<p>>NTSYNC isn't the first time Linux has gained a new feature specifically because Windows games needed it. A few years back, Linux added a way for software to wait on several events at once, which is something Windows had built in for decades, but Linux didn't.<p>Lol.<p>Post doesn't sound explicitly vibewritten, so probably just a non-technical person.</p>
]]></description><pubDate>Thu, 14 May 2026 00:11:33 +0000</pubDate><link>https://news.ycombinator.com/item?id=48129427</link><dc:creator>joaohaas</dc:creator><comments>https://news.ycombinator.com/item?id=48129427</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48129427</guid></item><item><title><![CDATA[New comment by joaohaas in "Learning Software Architecture"]]></title><description><![CDATA[
<p>Definitely a 'your LLM' case here.</p>
]]></description><pubDate>Tue, 12 May 2026 13:13:17 +0000</pubDate><link>https://news.ycombinator.com/item?id=48107796</link><dc:creator>joaohaas</dc:creator><comments>https://news.ycombinator.com/item?id=48107796</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48107796</guid></item><item><title><![CDATA[New comment by joaohaas in "Optimize for change not application performance"]]></title><description><![CDATA[
<p>Welcome to modern HN.</p>
]]></description><pubDate>Tue, 12 May 2026 13:12:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=48107786</link><dc:creator>joaohaas</dc:creator><comments>https://news.ycombinator.com/item?id=48107786</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48107786</guid></item><item><title><![CDATA[New comment by joaohaas in "If AI writes your code, why use Python?"]]></title><description><![CDATA[
<p>What study?<p>And I don't see how Go design patterns would be any worse. The main issue people have with it is the repetition/verbosity, which LLMs handle just fine.</p>
]]></description><pubDate>Tue, 12 May 2026 11:58:04 +0000</pubDate><link>https://news.ycombinator.com/item?id=48106990</link><dc:creator>joaohaas</dc:creator><comments>https://news.ycombinator.com/item?id=48106990</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48106990</guid></item><item><title><![CDATA[New comment by joaohaas in "Async Rust never left the MVP state"]]></title><description><![CDATA[
<p>Rust uses Zulip for lang-related discussions. The 't-lang/effects' channel is still somewhat active.</p>
]]></description><pubDate>Tue, 05 May 2026 18:25:46 +0000</pubDate><link>https://news.ycombinator.com/item?id=48026513</link><dc:creator>joaohaas</dc:creator><comments>https://news.ycombinator.com/item?id=48026513</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48026513</guid></item><item><title><![CDATA[New comment by joaohaas in "Bugs Rust won't catch"]]></title><description><![CDATA[
<p>The specific use case the GNU maintainer listed followed this exact pattern.</p>
]]></description><pubDate>Wed, 29 Apr 2026 14:01:51 +0000</pubDate><link>https://news.ycombinator.com/item?id=47948615</link><dc:creator>joaohaas</dc:creator><comments>https://news.ycombinator.com/item?id=47948615</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47948615</guid></item><item><title><![CDATA[New comment by joaohaas in "Bugs Rust won't catch"]]></title><description><![CDATA[
<p>>the article says "The Rust rewrite has shipped zero of these [memory saftey bugs], over a comparable window of activity." However, this is not true<p>That bug got fixed before the Ubuntu release, and is from way before Canonical was even involved with the project.</p>
]]></description><pubDate>Wed, 29 Apr 2026 13:56:38 +0000</pubDate><link>https://news.ycombinator.com/item?id=47948549</link><dc:creator>joaohaas</dc:creator><comments>https://news.ycombinator.com/item?id=47948549</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47948549</guid></item><item><title><![CDATA[New comment by joaohaas in "Bugs Rust won't catch"]]></title><description><![CDATA[
<p>Most (if not all) of these issues do not matter at all outside the scope GNU utils run in.<p>For example, using filepaths instead of FDs does not matter in most cases in controlled server environments, or in processes that will never run with elevated privilege (most apps).</p>
]]></description><pubDate>Wed, 29 Apr 2026 13:48:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=47948436</link><dc:creator>joaohaas</dc:creator><comments>https://news.ycombinator.com/item?id=47948436</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47948436</guid></item><item><title><![CDATA[New comment by joaohaas in "40% of lost calories globally are from beef, needing 33 cal of feed per 1 cal"]]></title><description><![CDATA[
<p>The grass most cows eat also need to be planted. The point of this post is that we could be planting stuff we can eat so you don't have to 'pay' the conversion cost.</p>
]]></description><pubDate>Tue, 14 Apr 2026 19:03:46 +0000</pubDate><link>https://news.ycombinator.com/item?id=47769905</link><dc:creator>joaohaas</dc:creator><comments>https://news.ycombinator.com/item?id=47769905</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47769905</guid></item><item><title><![CDATA[New comment by joaohaas in "Stanford report highlights growing disconnect between AI insiders and everyone"]]></title><description><![CDATA[
<p>I think most people oustide the area do not care and do not know about who's on top, and the negative perception is much more related to how the tech will enable users to misuse it (replacing phone lines/support, AI art, things losing quality, etc) than about the companies themselves.</p>
]]></description><pubDate>Mon, 13 Apr 2026 21:47:10 +0000</pubDate><link>https://news.ycombinator.com/item?id=47758252</link><dc:creator>joaohaas</dc:creator><comments>https://news.ycombinator.com/item?id=47758252</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47758252</guid></item><item><title><![CDATA[New comment by joaohaas in "Claude.ai down"]]></title><description><![CDATA[
<p>I can't think of a single big provider that does not provide a status page.<p>Not a lot of them provide uptime in % values, but Anthropic doesn't either.</p>
]]></description><pubDate>Mon, 13 Apr 2026 16:32:22 +0000</pubDate><link>https://news.ycombinator.com/item?id=47754529</link><dc:creator>joaohaas</dc:creator><comments>https://news.ycombinator.com/item?id=47754529</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47754529</guid></item><item><title><![CDATA[New comment by joaohaas in "We sped up bun by 100x"]]></title><description><![CDATA[
<p>With the recent barrage of AI-slop 'speedup' posts, the first thing I always do to see if the post is worth a read is doing a Ctrl+F "benchmark" and seeing if the benchmark makes any fucking sense.<p>99% of the time (such as in this article), it doesn't. What do you mean 'cloneBare + findCommit + checkout: ~10x win'? Does that mean running those commands back to back result in a 10x win over the original? Does that mean that there's a specific function that calls these 3 operations, and that's the improvement of the overall function? What's the baseline we're talking about, and is it relevant at all?<p>Those questions are partially answered on the much better benchmark page[1], but for some reason they're using the CLI instead of the gitlib for comparisons.<p>[1] <a href="https://github.com/hdresearch/ziggit/blob/5d3deb361f03d4aefef29426cf333782fc05d7cf/BENCHMARKS.md#full-workflow" rel="nofollow">https://github.com/hdresearch/ziggit/blob/5d3deb361f03d4aefe...</a></p>
]]></description><pubDate>Thu, 02 Apr 2026 20:01:09 +0000</pubDate><link>https://news.ycombinator.com/item?id=47619449</link><dc:creator>joaohaas</dc:creator><comments>https://news.ycombinator.com/item?id=47619449</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47619449</guid></item><item><title><![CDATA[New comment by joaohaas in "OpenAI closes funding round at an $852B valuation"]]></title><description><![CDATA[
<p>> This is not just product simplification. It is a distribution and deployment strategy.<p>iykyk</p>
]]></description><pubDate>Tue, 31 Mar 2026 20:53:09 +0000</pubDate><link>https://news.ycombinator.com/item?id=47593336</link><dc:creator>joaohaas</dc:creator><comments>https://news.ycombinator.com/item?id=47593336</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47593336</guid></item><item><title><![CDATA[New comment by joaohaas in "Turning a MacBook into a touchscreen with $1 of hardware (2018)"]]></title><description><![CDATA[
<p>As other people mentioned this is obviously not something I would want in my notebook... but I can still appreciate the cool tech!<p>I can also definitely see this kind of thing being used in things budget outdoor displays, specially if the UI is made to accommodate the lack of accuracy, and the camera is positioned on the side (since these displays are usually vertical).</p>
]]></description><pubDate>Mon, 30 Mar 2026 22:35:31 +0000</pubDate><link>https://news.ycombinator.com/item?id=47580571</link><dc:creator>joaohaas</dc:creator><comments>https://news.ycombinator.com/item?id=47580571</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47580571</guid></item><item><title><![CDATA[New comment by joaohaas in "We rewrote our Rust WASM parser in TypeScript and it got faster"]]></title><description><![CDATA[
<p>God I hate AI writing.<p>That final summary benchmark means nothing. It mentions 'baseline' value for the 'Full-stream total' for the rust implementation, and then says the `serde-wasm-bindgen` is '+9-29% slower', but it never gives us the baseline value, because clearly the only benchmark it did against the Rust codebase was the per-call one.<p>Then it mentions:
"End result: 2.2-4.6x faster per call and 2.6-3.3x lower total streaming cost."<p>But the "2.6-3.3x" is by their own definition a comparison against the naive TS implementation.<p>I really think the guy just prompted claude to "get this shit fast and then publish a blog post".</p>
]]></description><pubDate>Fri, 20 Mar 2026 23:52:15 +0000</pubDate><link>https://news.ycombinator.com/item?id=47462440</link><dc:creator>joaohaas</dc:creator><comments>https://news.ycombinator.com/item?id=47462440</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47462440</guid></item><item><title><![CDATA[New comment by joaohaas in "The American Healthcare Conundrum"]]></title><description><![CDATA[
<p>Kinda insane no one else is talking about this.<p>The entire repo reeks of a "Write an extensive analysis comparing the american and japanese medical care systems" prompt.<p>Not saying <i>all</i> the findings are invalid, but most of them are just the LLM trying to justify it, like the life expectancy one.</p>
]]></description><pubDate>Tue, 17 Mar 2026 12:48:40 +0000</pubDate><link>https://news.ycombinator.com/item?id=47411932</link><dc:creator>joaohaas</dc:creator><comments>https://news.ycombinator.com/item?id=47411932</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47411932</guid></item><item><title><![CDATA[New comment by joaohaas in "Redox OS has adopted a Certificate of Origin policy and a strict no-LLM policy"]]></title><description><![CDATA[
<p>It follows the same reasoning as when someone purposefully copies code from a codebase into another where the license doesn't allow.
Yes it might be the only viable solution, and most likely no one will ever know you copied it, but if you get found out most maintainers will not merge your PR.</p>
]]></description><pubDate>Tue, 10 Mar 2026 10:45:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=47321497</link><dc:creator>joaohaas</dc:creator><comments>https://news.ycombinator.com/item?id=47321497</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47321497</guid></item><item><title><![CDATA[New comment by joaohaas in "Addressing the adding situation"]]></title><description><![CDATA[
<p>I think most people wouldn't call proof-reading 'assistance'. As in, if I ask a colleague to review my PR, I wouldn't say he assisted me.<p>I've been throwing my PR diffs at Claude over the last few weeks. It spits a <i>lot</i> of useless or straight up wrong stuff, but sometimes among the insanity it manages to get one or another typo that a human missed, and between letting a bug pass or spending extra 10m per PR going through the nothingburguers Claude throws at me, I'd rather lose the 10m.</p>
]]></description><pubDate>Tue, 02 Dec 2025 15:57:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=46122531</link><dc:creator>joaohaas</dc:creator><comments>https://news.ycombinator.com/item?id=46122531</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46122531</guid></item></channel></rss>