<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: hanwenn</title><link>https://news.ycombinator.com/user?id=hanwenn</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Sun, 12 Apr 2026 11:49:31 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=hanwenn" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by hanwenn in "We've raised $17M to build what comes after Git"]]></title><description><![CDATA[
<p>Is anyone from GitButler reading this?<p>As others alluded, JJ already exists and is a credible successor to Git for the client side.<p>Technical desides aside though: how is this supposed to make money for the investors?</p>
]]></description><pubDate>Fri, 10 Apr 2026 08:42:35 +0000</pubDate><link>https://news.ycombinator.com/item?id=47715274</link><dc:creator>hanwenn</dc:creator><comments>https://news.ycombinator.com/item?id=47715274</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47715274</guid></item><item><title><![CDATA[New comment by hanwenn in "BuildKit: Docker's Hidden Gem That Can Build Almost Anything"]]></title><description><![CDATA[
<p>blaze/bazel was a big improvement over its predecessor (a set of python scripts that generated huge makefiles), but that did not make it free of accidental engineering. The google infrastructure teams were very tightly staffed, so for a long time, it was held together with proverbial duct tape and heroism.<p>Source: I was on part of the team that did the open sourcing, and had to clean lots of cruft in the code base that had accreted over 8 years.</p>
]]></description><pubDate>Sat, 07 Mar 2026 20:50:01 +0000</pubDate><link>https://news.ycombinator.com/item?id=47291345</link><dc:creator>hanwenn</dc:creator><comments>https://news.ycombinator.com/item?id=47291345</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47291345</guid></item><item><title><![CDATA[New comment by hanwenn in "Rob Pike goes nuclear over GenAI"]]></title><description><![CDATA[
<p>Rob left Google a couple of years ago.</p>
]]></description><pubDate>Fri, 26 Dec 2025 14:47:52 +0000</pubDate><link>https://news.ycombinator.com/item?id=46392477</link><dc:creator>hanwenn</dc:creator><comments>https://news.ycombinator.com/item?id=46392477</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46392477</guid></item><item><title><![CDATA[New comment by hanwenn in "Pricing Changes for GitHub Actions"]]></title><description><![CDATA[
<p>"WarpBuild are still the better option."<p>what makes you think they won't hike the control plane price again? They can turn this knob arbitrarily to put you out of business.</p>
]]></description><pubDate>Wed, 17 Dec 2025 08:35:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=46299562</link><dc:creator>hanwenn</dc:creator><comments>https://news.ycombinator.com/item?id=46299562</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46299562</guid></item><item><title><![CDATA[New comment by hanwenn in "Fast trigram based code search"]]></title><description><![CDATA[
<p>more background: <a href="https://sourcegraph.com/blog/zoekt-creating-internal-tools-at-google" rel="nofollow">https://sourcegraph.com/blog/zoekt-creating-internal-tools-a...</a></p>
]]></description><pubDate>Fri, 05 Dec 2025 07:27:33 +0000</pubDate><link>https://news.ycombinator.com/item?id=46157680</link><dc:creator>hanwenn</dc:creator><comments>https://news.ycombinator.com/item?id=46157680</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46157680</guid></item><item><title><![CDATA[New comment by hanwenn in "Blockdiff: We built our own file format for VM disk snapshots"]]></title><description><![CDATA[
<p>IIUC, on EC2, the disk (EBS)is one service, and snapshots are in another service (S3). Taking a snapshot involves copying the entire disk to S3, while restoring a snapshot pages blocks in from S3 as the VM accesses the disk.</p>
]]></description><pubDate>Wed, 01 Oct 2025 15:30:39 +0000</pubDate><link>https://news.ycombinator.com/item?id=45438927</link><dc:creator>hanwenn</dc:creator><comments>https://news.ycombinator.com/item?id=45438927</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45438927</guid></item><item><title><![CDATA[New comment by hanwenn in "Blockdiff: We built our own file format for VM disk snapshots"]]></title><description><![CDATA[
<p>Also: did you consider using LVM snapshots?</p>
]]></description><pubDate>Wed, 01 Oct 2025 09:43:11 +0000</pubDate><link>https://news.ycombinator.com/item?id=45435946</link><dc:creator>hanwenn</dc:creator><comments>https://news.ycombinator.com/item?id=45435946</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45435946</guid></item><item><title><![CDATA[New comment by hanwenn in "Blockdiff: We built our own file format for VM disk snapshots"]]></title><description><![CDATA[
<p>Thanks for writing the blog post; it was a fascinating read!<p>I was curious about a couple of things:<p>* Have you considered future extensions where you can start the VM before you completed the FS copy?<p>* You picked XFS over ZFS and BTRFS. Any reason why XFS in particular?<p>* You casually mention that you wrote 'otterlink', your own hypervisor.  Isn't that by itself a complicated effort worthy of a blog post? Or is it just mixing and matching existing libraries from the Rust ecosystem?</p>
]]></description><pubDate>Wed, 01 Oct 2025 07:33:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=45435285</link><dc:creator>hanwenn</dc:creator><comments>https://news.ycombinator.com/item?id=45435285</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45435285</guid></item><item><title><![CDATA[New comment by hanwenn in "Artisanal handcrafted Git repositories"]]></title><description><![CDATA[
<p>IIRC it already uses content defined chunking for finding object deltas.</p>
]]></description><pubDate>Thu, 17 Jul 2025 12:41:17 +0000</pubDate><link>https://news.ycombinator.com/item?id=44592682</link><dc:creator>hanwenn</dc:creator><comments>https://news.ycombinator.com/item?id=44592682</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44592682</guid></item><item><title><![CDATA[Birth of the Bazel; An inside perspective of open sourcing Google's build tool]]></title><description><![CDATA[
<p>Article URL: <a href="https://blog.engflow.com/2024/10/01/birth-of-the-bazel/">https://blog.engflow.com/2024/10/01/birth-of-the-bazel/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=41721283">https://news.ycombinator.com/item?id=41721283</a></p>
<p>Points: 2</p>
<p># Comments: 0</p>
]]></description><pubDate>Wed, 02 Oct 2024 14:58:04 +0000</pubDate><link>https://blog.engflow.com/2024/10/01/birth-of-the-bazel/</link><dc:creator>hanwenn</dc:creator><comments>https://news.ycombinator.com/item?id=41721283</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41721283</guid></item><item><title><![CDATA[New comment by hanwenn in "Show HN: Sourcebot, an open-source Sourcegraph alternative"]]></title><description><![CDATA[
<p>Hi!<p>sorry for not responding to your email, I was swamped.<p>I looked through the sourcecode, but I can only find UI (ie. browser) code. Does this do anything beyond delivering a more functional and prettier UI on top of an existing zoekt deployment? If no, everybody would be better served if you tried to improve the UI inside Zoekt, which currently is a live demonstration of (my lack of) web app programming skills.<p>Have you thought of how you will achieve your further goals (eg. semantic search)? That will require server-side changes, but you currently have no Go code at all.</p>
]]></description><pubDate>Wed, 02 Oct 2024 08:07:37 +0000</pubDate><link>https://news.ycombinator.com/item?id=41718303</link><dc:creator>hanwenn</dc:creator><comments>https://news.ycombinator.com/item?id=41718303</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41718303</guid></item><item><title><![CDATA[New comment by hanwenn in "How AlphaChip transformed computer chip design"]]></title><description><![CDATA[
<p>don't forget Android.</p>
]]></description><pubDate>Sat, 28 Sep 2024 08:00:38 +0000</pubDate><link>https://news.ycombinator.com/item?id=41678679</link><dc:creator>hanwenn</dc:creator><comments>https://news.ycombinator.com/item?id=41678679</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41678679</guid></item><item><title><![CDATA[New comment by hanwenn in "David Chang on the long, hard, stupid way"]]></title><description><![CDATA[
<p>Both David Chang and his staff are ridiculous.<p>Different parts of the bird take different times to cook, so for food quality, cooking a bird as a whole makes no sense: either the breasts are overcooked, or the thighs are undercooked. There is just one reason, which is that cooking the animal whole makes for an arresting presentation. Then, you'd carve the animal tableside (like is done for Peking duck, see one of the other comments).<p>This requires having waitstaff that can carve a bird or having cooks that are presentable to the guests, and extra space in the dining room.<p>Clearly, David Chang is taking a shortcut already by carving the chicken in the kitchen.</p>
]]></description><pubDate>Thu, 12 Sep 2024 08:44:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=41518793</link><dc:creator>hanwenn</dc:creator><comments>https://news.ycombinator.com/item?id=41518793</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41518793</guid></item><item><title><![CDATA[New comment by hanwenn in "Why GitHub won"]]></title><description><![CDATA[
<p>Developer infrastructure at google reported into cloud from 2013 to 2019, and we (i was there) tried to do exactly that: building products for gcp customers based on our experience with building interval developer tools. It was largely a disaster. The one product I was involved with (git hosting and code review) had to build an  
MVP product to attract entry level GCP customers, but also keep our service running for large existing internal customers, who were servicing billion+ users and continuously growing their load. When Thomas Kurian took over GCP, he put all the dev products on ice and moved the internal tooling group out of cloud.</p>
]]></description><pubDate>Mon, 09 Sep 2024 20:27:16 +0000</pubDate><link>https://news.ycombinator.com/item?id=41493310</link><dc:creator>hanwenn</dc:creator><comments>https://news.ycombinator.com/item?id=41493310</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41493310</guid></item><item><title><![CDATA[New comment by hanwenn in "Google Common Lisp Style Guide"]]></title><description><![CDATA[
<p>Haskell is another oddball. It was for a hardware project that used the to-be-auctioned analog TV RF spectrum for a new WAN standard.<p>It was canceled when it became clear the spectrum wasn´t going to be available. The Haskell rules then stuck around for another ~7 years before I deleted them as part of the cleanup for the Bazel release. They then promptly reemerged as one of the first language rules to be expressed in Bazel's newfangled Starlark language (then still called Skylark).</p>
]]></description><pubDate>Tue, 16 Apr 2024 10:08:09 +0000</pubDate><link>https://news.ycombinator.com/item?id=40050229</link><dc:creator>hanwenn</dc:creator><comments>https://news.ycombinator.com/item?id=40050229</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40050229</guid></item><item><title><![CDATA[New comment by hanwenn in "Code search is hard"]]></title><description><![CDATA[
<p>Hi,<p>I wrote zoekt. From what I understand valtown does, I would try to use brute force first (ie. something equivalent to ripgrep). Once that starts breaking down, you could use last-updated-timestamps to reduce the brute force:<p>* make a trigram index using Zoekt or Hound for JS snippets older than X
* do brute force on snippets newer than X
* advance X as you're indexing newer data.<p>If the snippets are small, you can probably use a (trigram => snippets) index for space savings relative to a (trigram => offset) index.</p>
]]></description><pubDate>Fri, 12 Apr 2024 09:01:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=40010657</link><dc:creator>hanwenn</dc:creator><comments>https://news.ycombinator.com/item?id=40010657</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40010657</guid></item><item><title><![CDATA[New comment by hanwenn in "How I tripped over the Debian weak keys vulnerability"]]></title><description><![CDATA[
<p>github uses something called babeld (just telnet to github.com port 22; the version string is printed immediately.)</p>
]]></description><pubDate>Tue, 09 Apr 2024 06:47:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=39976749</link><dc:creator>hanwenn</dc:creator><comments>https://news.ycombinator.com/item?id=39976749</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39976749</guid></item><item><title><![CDATA[New comment by hanwenn in "Backdoor in upstream xz/liblzma leading to SSH server compromise"]]></title><description><![CDATA[
<p>In the Bazel build system, you would mark the test data blob as testonly=1. Then the build system guarantees that the blob can only be used in tests.<p>This incident shows that killing the autoconf goop is long overdue.</p>
]]></description><pubDate>Sat, 30 Mar 2024 15:40:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=39875884</link><dc:creator>hanwenn</dc:creator><comments>https://news.ycombinator.com/item?id=39875884</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39875884</guid></item><item><title><![CDATA[New comment by hanwenn in "European banks want to torpedo the digital euro"]]></title><description><![CDATA[
<p>intra EU bank transfers cost much less than 1-3%.</p>
]]></description><pubDate>Fri, 01 Mar 2024 17:22:09 +0000</pubDate><link>https://news.ycombinator.com/item?id=39564079</link><dc:creator>hanwenn</dc:creator><comments>https://news.ycombinator.com/item?id=39564079</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39564079</guid></item><item><title><![CDATA[New comment by hanwenn in "She Stole $54M from Her Town. Then Something Unexpected Happened"]]></title><description><![CDATA[
<p>This story appears quite similar to the scandal at the Texas fruitcake bakery
 <a href="https://collinstreet.com/blog/the-sandy-jenkins-embezzlement-scandal" rel="nofollow">https://collinstreet.com/blog/the-sandy-jenkins-embezzlement...</a><p>In both cases there was a single person that both managed the books and executed transactions. They gained enough trust of their peers so nobody second guessed their lavish lifestyle.</p>
]]></description><pubDate>Sun, 18 Feb 2024 16:49:23 +0000</pubDate><link>https://news.ycombinator.com/item?id=39420561</link><dc:creator>hanwenn</dc:creator><comments>https://news.ycombinator.com/item?id=39420561</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=39420561</guid></item></channel></rss>