<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: andrewf</title><link>https://news.ycombinator.com/user?id=andrewf</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Sat, 13 Jun 2026 15:47:27 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=andrewf" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by andrewf in "Serving Netflix Video Traffic at 400Gb/S and Beyond (2022) [pdf]"]]></title><description><![CDATA[
<p>Browser behavior like mixed content warnings (and a clear slide towards discouraging all non-HTTPS traffic) was the impetus for us at Twitch to TLS all our video in the mid-2010s. Mixed content delivery on a website would, I think, also fall below the bar for doing certain kinds of commerce, and ejecting people from your webapp to a separate payment flow discourages spending.</p>
]]></description><pubDate>Thu, 21 May 2026 20:17:26 +0000</pubDate><link>https://news.ycombinator.com/item?id=48228346</link><dc:creator>andrewf</dc:creator><comments>https://news.ycombinator.com/item?id=48228346</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48228346</guid></item><item><title><![CDATA[New comment by andrewf in "Serving Netflix Video Traffic at 400Gb/S and Beyond (2022) [pdf]"]]></title><description><![CDATA[
<p>The author's answer as of 2021: <a href="https://news.ycombinator.com/item?id=28586767">https://news.ycombinator.com/item?id=28586767</a><p>EDIT: I recall reading that the Netflix client can continuously select between multiple content caches. I'm guessing they do this because it's a quality-of-service and capacity win over making a "best guess" at the start of a session, and sticking with it. It should also enable transparent recovery from a broken or slow cache node. If you test in a busy place with multiple caches, the loss of one needn't be a big deal.</p>
]]></description><pubDate>Thu, 21 May 2026 20:07:59 +0000</pubDate><link>https://news.ycombinator.com/item?id=48228261</link><dc:creator>andrewf</dc:creator><comments>https://news.ycombinator.com/item?id=48228261</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48228261</guid></item><item><title><![CDATA[New comment by andrewf in "dBase: 1979-2026"]]></title><description><![CDATA[
<p>I wonder if anyone ever tried to make the Clipper 5 pre-processor spit out Delphi..</p>
]]></description><pubDate>Mon, 11 May 2026 23:26:18 +0000</pubDate><link>https://news.ycombinator.com/item?id=48102129</link><dc:creator>andrewf</dc:creator><comments>https://news.ycombinator.com/item?id=48102129</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48102129</guid></item><item><title><![CDATA[New comment by andrewf in "dBase: 1979-2026"]]></title><description><![CDATA[
<p>> <i>Bizarrely, to protect dBase, there was no compatible Turbo C++ objects integration in dBase (you could import OBJ files from Microsoft C++). There was no way to natively use dBase from Turbo C++ or TurboPascal.</i><p>I'm guessing dBase was itself built using Microsoft's compilers, so pulling in other code from the same compiler was plausible. Not a product choice re: the Turbo compilers, just a disjoint path dependency between two acquired product lines (Ashton-Tate's dBase, and Wizard C).<p>This is the reason that Clipper, a third-party dBase compiler, could only link against .OBJs from particular versions of Microsoft C. Clipper compiles to p-code whose interpreter is implemented in Microsoft C; "linking" a Clipper program is actually linking a Microsoft C program with a static array comprising the Clipper compiler's output. So you can mix in a .OBJ expecting that version of the Microsoft C runtime library. Not a .OBJ expecting the Turbo C++ runtime library.</p>
]]></description><pubDate>Mon, 11 May 2026 21:27:22 +0000</pubDate><link>https://news.ycombinator.com/item?id=48100902</link><dc:creator>andrewf</dc:creator><comments>https://news.ycombinator.com/item?id=48100902</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48100902</guid></item><item><title><![CDATA[New comment by andrewf in "What we lost the last time code got cheap"]]></title><description><![CDATA[
<p>I find the constant use of punchy style tiring.<p>Sometimes a "punch in the face" is useful. Makes you re-evaluate things. Being punched in the face all day, every day, is just tiring.</p>
]]></description><pubDate>Fri, 08 May 2026 21:04:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=48068750</link><dc:creator>andrewf</dc:creator><comments>https://news.ycombinator.com/item?id=48068750</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48068750</guid></item><item><title><![CDATA[New comment by andrewf in "IBM didn't want Microsoft to use the Tab key to move between dialog fields"]]></title><description><![CDATA[
<p>OS/2 1.0 and the first edition of the CUA were both released in December 1987 according to Wikipedia; Raymond's story isn't dated but could've happened before this. (If I had to make a wild guess, I could imagine this request was a side effect of some internal IBM battle about what the CUA should dictate).</p>
]]></description><pubDate>Tue, 05 May 2026 19:42:56 +0000</pubDate><link>https://news.ycombinator.com/item?id=48027494</link><dc:creator>andrewf</dc:creator><comments>https://news.ycombinator.com/item?id=48027494</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48027494</guid></item><item><title><![CDATA[New comment by andrewf in "Linux 7.0 Broke PostgreSQL: The Preemption Regression Explained"]]></title><description><![CDATA[
<p>I don't think hardware page size has to match database page size. It would if Postgres was mmap'ing it. <a href="https://www.postgresql.org/docs/current/runtime-config-preset.html" rel="nofollow">https://www.postgresql.org/docs/current/runtime-config-prese...</a> says the database page size is 8KB by default.</p>
]]></description><pubDate>Wed, 29 Apr 2026 22:41:05 +0000</pubDate><link>https://news.ycombinator.com/item?id=47955673</link><dc:creator>andrewf</dc:creator><comments>https://news.ycombinator.com/item?id=47955673</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47955673</guid></item><item><title><![CDATA[New comment by andrewf in "Diatec, known for its mechanical keyboard brand FILCO, has ceased operations"]]></title><description><![CDATA[
<p>Some keyboard enthusiasts obtain lighter keypresses by adding weight to the underside of the keys.</p>
]]></description><pubDate>Sat, 25 Apr 2026 20:31:04 +0000</pubDate><link>https://news.ycombinator.com/item?id=47904328</link><dc:creator>andrewf</dc:creator><comments>https://news.ycombinator.com/item?id=47904328</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47904328</guid></item><item><title><![CDATA[New comment by andrewf in "Advancing human gut microbiota research by considering gut transit time"]]></title><description><![CDATA[
<p>Then you'll love <a href="https://onlinelibrary.wiley.com/doi/full/10.1111/jpc.14309" rel="nofollow">https://onlinelibrary.wiley.com/doi/full/10.1111/jpc.14309</a><p>"Six paediatric health-care professionals were recruited to swallow a Lego head."</p>
]]></description><pubDate>Mon, 20 Apr 2026 10:47:52 +0000</pubDate><link>https://news.ycombinator.com/item?id=47832509</link><dc:creator>andrewf</dc:creator><comments>https://news.ycombinator.com/item?id=47832509</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47832509</guid></item><item><title><![CDATA[New comment by andrewf in "Mozilla Thunderbolt"]]></title><description><![CDATA[
<p>1. Potential donors get upset that they can't make directed donations to specifically support Firefox or Thunderbird rather than the whole kit-and-kaboodle<p>2. Separate entity spun up to focus on Thunderbird only. Now you can support Thunderbird development directly.<p>3. New separate entity is now in the business of extensible AI clients?<p>EDIT: I went back and read the launch announcement [1]. I'll concede it does say "will also allow us to explore offering our users products and services that were not possible under the Mozilla Foundation" which could mean anything, really. And this development was funded by a Mozilla grant, importantly not by Thunderbird donors. I'm still struggling to not see this as a distraction from the core mission. I wish they'd spun up a new entity instead.<p>[1] <a href="https://blog.thunderbird.net/2020/01/thunderbirds-new-home/" rel="nofollow">https://blog.thunderbird.net/2020/01/thunderbirds-new-home/</a></p>
]]></description><pubDate>Thu, 16 Apr 2026 22:24:55 +0000</pubDate><link>https://news.ycombinator.com/item?id=47800314</link><dc:creator>andrewf</dc:creator><comments>https://news.ycombinator.com/item?id=47800314</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47800314</guid></item><item><title><![CDATA[New comment by andrewf in "IBM Announces Strategic Collaboration with Arm"]]></title><description><![CDATA[
<p>AIX is still ppc64be. That and s390x are the only big-endian CPUs I can think of which aren't end-of-life, which I think is going to be an increasing maintenance burden over time for IBM alone.</p>
]]></description><pubDate>Thu, 02 Apr 2026 20:38:22 +0000</pubDate><link>https://news.ycombinator.com/item?id=47619857</link><dc:creator>andrewf</dc:creator><comments>https://news.ycombinator.com/item?id=47619857</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47619857</guid></item><item><title><![CDATA[New comment by andrewf in "Microsoft blocks trick to unlock native NVMe driver, but workarounds still exist"]]></title><description><![CDATA[
<p>They may not be confident in its reliability over the fall gamut of cheap consumer drives.</p>
]]></description><pubDate>Tue, 24 Mar 2026 21:22:17 +0000</pubDate><link>https://news.ycombinator.com/item?id=47509533</link><dc:creator>andrewf</dc:creator><comments>https://news.ycombinator.com/item?id=47509533</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47509533</guid></item><item><title><![CDATA[New comment by andrewf in "How do you capture WHY engineering decisions were made, not just what?"]]></title><description><![CDATA[
<p>Did he write down everything he learned? That way the next person only needs to cover the intervening time period.<p>Conceivably LLMs might be good at answering questions from an unorganized mass of timestamped documents/tickets/chat logs. All the stuff that exists anyway without any extra continuous effort required to curate it - I think that's key.</p>
]]></description><pubDate>Fri, 13 Mar 2026 21:28:59 +0000</pubDate><link>https://news.ycombinator.com/item?id=47370191</link><dc:creator>andrewf</dc:creator><comments>https://news.ycombinator.com/item?id=47370191</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47370191</guid></item><item><title><![CDATA[New comment by andrewf in "Practical Guide to Bare Metal C++"]]></title><description><![CDATA[
<p><a href="https://github.com/arobenko/embxx_on_rpi/blob/master/src/asm/startup.s" rel="nofollow">https://github.com/arobenko/embxx_on_rpi/blob/master/src/asm...</a><p>Their stuff isn't running on top of Linux on the Pi.</p>
]]></description><pubDate>Wed, 11 Mar 2026 09:49:37 +0000</pubDate><link>https://news.ycombinator.com/item?id=47333563</link><dc:creator>andrewf</dc:creator><comments>https://news.ycombinator.com/item?id=47333563</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47333563</guid></item><item><title><![CDATA[New comment by andrewf in "Palm OS User Interface Guidelines (2003) [pdf]"]]></title><description><![CDATA[
<p>I worked for a company that published a PalmOS app. Palmgear.com was a very important distribution channel, but so was our own website, I forget the exact ratios.</p>
]]></description><pubDate>Fri, 27 Feb 2026 00:23:47 +0000</pubDate><link>https://news.ycombinator.com/item?id=47174461</link><dc:creator>andrewf</dc:creator><comments>https://news.ycombinator.com/item?id=47174461</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47174461</guid></item><item><title><![CDATA[New comment by andrewf in "Ask HN: Anyone have a good solution for modern Mac to legacy SCSI converters?"]]></title><description><![CDATA[
<p>You could do "network shares" as in mount the filesystem from Linux and export over Samba/NFS/etc; it would probably also be possible to export the drive as an iSCSI device and mount HFS(+) filesystems directly from the Mac.</p>
]]></description><pubDate>Thu, 15 Jan 2026 20:09:09 +0000</pubDate><link>https://news.ycombinator.com/item?id=46638444</link><dc:creator>andrewf</dc:creator><comments>https://news.ycombinator.com/item?id=46638444</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46638444</guid></item><item><title><![CDATA[New comment by andrewf in "Tell HN: Properly using dishwasher reduced friction with my wife"]]></title><description><![CDATA[
<p>> I assume we are using a lot more energy<p>What I've learned from visiting my own parents is, you can alleviate the energy concern, if you (1) get solar panels and (2) ban your spouse from running the dishwasher at night :P</p>
]]></description><pubDate>Thu, 15 Jan 2026 02:25:55 +0000</pubDate><link>https://news.ycombinator.com/item?id=46627244</link><dc:creator>andrewf</dc:creator><comments>https://news.ycombinator.com/item?id=46627244</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46627244</guid></item><item><title><![CDATA[New comment by andrewf in "Ask HN: Help with LLVM"]]></title><description><![CDATA[
<p><a href="https://devblogs.microsoft.com/oldnewthing/20130108-00/?p=5623" rel="nofollow">https://devblogs.microsoft.com/oldnewthing/20130108-00/?p=56...</a><p>Sounds like this is about making .OBJs that fit in the conventions set by Win32 and the Microsoft linker. If you were using Microsoft's LINK.EXE I'd look at <a href="https://learn.microsoft.com/en-us/cpp/build/reference/nodefaultlib-ignore-libraries?view=msvc-170" rel="nofollow">https://learn.microsoft.com/en-us/cpp/build/reference/nodefa...</a> (and /Zi for the Microsoft compiler)<p>More generally, a lot of compiler generated code (including from LLVM IR -> native) will rely on compiler-specific runtime library functions, which aren't necessarily considered part of the "C runtime". <a href="https://wiki.osdev.org/Libgcc" rel="nofollow">https://wiki.osdev.org/Libgcc</a> occupies this role for GCC-compiled code. See <a href="https://godbolt.org/z/fb75PPobz" rel="nofollow">https://godbolt.org/z/fb75PPobz</a> for an example (64-bit division on 32-bit x86 generates a call to ___divdi3)</p>
]]></description><pubDate>Mon, 05 Jan 2026 13:05:12 +0000</pubDate><link>https://news.ycombinator.com/item?id=46498336</link><dc:creator>andrewf</dc:creator><comments>https://news.ycombinator.com/item?id=46498336</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46498336</guid></item><item><title><![CDATA[New comment by andrewf in "The compiler is your best friend"]]></title><description><![CDATA[
<p>Swap the parameters around for C++ and similar langs where `assert(a, b)` evaluates the same as `(void) a; assert(b)`.</p>
]]></description><pubDate>Thu, 01 Jan 2026 04:42:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=46451364</link><dc:creator>andrewf</dc:creator><comments>https://news.ycombinator.com/item?id=46451364</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46451364</guid></item><item><title><![CDATA[New comment by andrewf in "Loss32: Let's Build a Win32/Linux"]]></title><description><![CDATA[
<p>True</p>
]]></description><pubDate>Wed, 31 Dec 2025 14:40:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=46444447</link><dc:creator>andrewf</dc:creator><comments>https://news.ycombinator.com/item?id=46444447</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46444447</guid></item></channel></rss>