HN user

andrewf

2,284 karma

{firstname}@sullust.net (checked every week or two) github.com/andrewffff

Posts6
Comments779
View on HN

It strikes me as like setting up an IDE. People have preferences, switching is possible, but there are advantages to saying "we are a Visual Studio + Resharper shop" or "everyone uses IntelliJ to work on this project".

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.

The author's answer as of 2021: https://news.ycombinator.com/item?id=28586767

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.

dBase: 1979-2026 2 months ago

I wonder if anyone ever tried to make the Clipper 5 pre-processor spit out Delphi..

dBase: 1979-2026 2 months ago

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'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).

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.

I find the constant use of punchy style tiring.

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.

Mozilla Thunderbolt 3 months ago

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

2. Separate entity spun up to focus on Thunderbird only. Now you can support Thunderbird development directly.

3. New separate entity is now in the business of extensible AI clients?

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.

[1] https://blog.thunderbird.net/2020/01/thunderbirds-new-home/

Did he write down everything he learned? That way the next person only needs to cover the intervening time period.

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.

https://devblogs.microsoft.com/oldnewthing/20130108-00/?p=56...

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 https://learn.microsoft.com/en-us/cpp/build/reference/nodefa... (and /Zi for the Microsoft compiler)

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". https://wiki.osdev.org/Libgcc occupies this role for GCC-compiled code. See https://godbolt.org/z/fb75PPobz for an example (64-bit division on 32-bit x86 generates a call to ___divdi3)

I'm on a media engineering team and agree that applying the tech to a new use case often involves people with deep expertise spending a lot of time in the code.

I'd guess there are fewer media/codec engineers around today than there were web developers in 2006. In 2006, Gmail existed, but today's client- and server-side frameworks did not. It was a major bespoke lift to do many things which are "hello world" demos with a modern framework in 2025.

It'd be nice to have more flexible, orthogonal and adaptable interfaces to a lot of this tech, but I don't think the demand for it reaches critical mass.