HNHacker News
TopNewBestAskShowJobs

haimez

908 karma · joined September 20, 2012

submissionscomments
haimez··on Python: The Optimization Ladder
Generating code at runtime is often an anti-goal because you can’t easily introspect it. “Build-time” generation gives you that, but print often choose to go further and check the generated code to source control to be able to see the change history.
haimez··on Flock Exposed Its AI-Powered Cameras to the Internet. We Tracked Ourselves
Are we the baddies?
haimez··on Memory safety is table stakes
Java is both compiled (first to bytecode, then to machine code by the JIT) and fast (once JIT compiled).
haimez··on The xz attack shell script
It stands for “Advanced Persistent Threat” - https://en.m.wikipedia.org/wiki/Advanced_persistent_threat
haimez··on Free data transfer out to internet when moving out of AWS
Delete API calls are free, listing the objects in a bucket to know what to delete is not.
haimez··on Cousins are disappearing. Is this reshaping the experience of childhood?
Let’s be a little charitable here- having and raising children has been a much, much more dangerous proposition health wise even at your parents generation to say nothing of your grandparents generation.
haimez··on S3 Express Is All You Need
10x reduction in latency, higher storage costs with lower access costs (SSD instead of spinning disks). So high I/O, small files situations (with no need for cross AZ access) are where the benefits can be found.
haimez··on S3 Express Is All You Need
Or like SSD’s vs spinning disks…
haimez··on Apple's Trademark Exploit
Counterfeiting parts, including passing even a small part off as an original OEM one, absolutely enters into it
haimez··on My personal C coding style as of late 2023
Yikes. I did have to go down a little rabbit hole to understand the semantics of that builtin (I don’t normally write C if that wasn’t immediately obvious from the question) but that seems like a really questionable interpretation of “this should never happen”. I would expect the equivalent of a fault being triggered and termination of the program, but I guess this is what the legacy of intentionally obtuse undefined behavior handling in compilers gets you.
haimez··on My personal C coding style as of late 2023
> This seems like a bad idea, because the whole point of an assert is that something shouldn't happen, but might due to a (future?) bug.

And so it’s a bad idea because…?

The whole idea is to notice a bug before it ships. Asserts are usually enabled in test and debug builds. So having an assert hit the “unreachable” path should be a good way to notice “hey, you’ve achieved the unexpected” in a bad way. You’re going to need to clarify in more detail why you think that’s a bad thing. I’m guessing because you would prefer this to be a real runtime check in non debug builds?

haimez··on Today's Large Language Models Are Essentially BS Machines
…or the nature of the question and corpus?
haimez··on Today's Large Language Models Are Essentially BS Machines
LLM’s are spitting out responses based on their inputs. It is (or was) shockingly effective, but there is no generalized math processing going on. That’s not what LLM’s are, that’s not how they work.
haimez··on UK air traffic control meltdown
The other “tabs” here are other airplanes in flight, depending on being able to land before they run out of fuel. You don’t just ignore one and move on.
haimez··on Load Balancing: The Intuition Behind the Power of Two Random Choices
> "Pick two randomly" requires no state. Every thread and server can run the same algorithm without regard for each other.

That’s not quite true. Picking between two “buckets” still requires knowing how many “balls” are in each which is state. That state can be local to each server or global, that state can be accessed concurrently or synchronously, but you still have the same problem to solve.

haimez··on Oxide Computer: Docs
Hopefully they end up with a German market only SKU before the next generation of hardware ships, otherwise it’s a real missed opportunity.
haimez··on Show HN: Live coaching app for remote SWE interviews, uses Whisper and GPT-4
The cost of time from the interviewers is likely to be more expensive since you have senior people interview candidates for senior roles.
haimez··on Negativity drives online news consumption
News is just what’s “New”. It’s name is already prefectly descriptive :)
haimez··on Research: The Transformative Power of Sabbaticals
Except basically everyone who takes that sabbatical immediately quits after it’s over. Seriously.
haimez··on Only Debate The Non-Linear
It’s not only uninteresting- it’s wrong. Linear costs of bad decisions can kill a business in so many ways.
haimez··on Meta’s Push to Solve the Noisy Office
They already did, it’s called working from home
haimez··on Linode rebranded as Akamai’s cloud computing services
My guess is equity holders in Linode fully expect Akamai to destroy the brand, and that’s fine because they’re cashing out today.
haimez··on Military shoots down another high-altitude object, over Lake Huron: officials
His article on the matter from 2021 is quiet helpful in understanding what’s (probably) going on here: https://www.thedrive.com/the-war-zone/40054/adversary-drones...
haimez··on US aircraft shoots down new airborne object over Canada
They didn’t say they weren’t balloons, just that they were calling them “objects” and not balloons. Sure, that could be because they definitely want to emphasize the “we don’t know who owned them” aspect and calling it a balloon would immediately evoke China associations, or maybe they already know they’re not balloons. Either way, they also didn’t say “it wasn’t a balloon”
haimez··on Nullness markers to enable flattening
I think declaration vs use Sue distinction is much more helpful to reason about in this context, and named tuples are a classic example of “if you didn’t declare these tuples to be compatible at definition time, it’s probably a bug to let you pass them around as if they were”
haimez··on Building the perfect memory bandwidth beast
Maybe a low latency hybrid cache & query engine where data is mostly in memory but some computation (eg: aggregation at different percentiles on the fly) with low latency requirements would benefit.

Generally speaking, something where:

1. The data is in memory or can be made to be, for the duration of the need.

2. The overall throughput isn’t limited by some external I/O operation (eg: cache servers might seem like “memory hungry” things, but will bottleneck on network throughput before memory throughput [note: latency is definitely not throughput here]). - the CPU operations involved once data is fetched from memory are very cheap, but also generate a sequential but high volume of writes. Maybe an ideal example is incrementing every integer in a large array by 1 since reads and writes are predictable and SIMD instructions can push the theoretical per clock CPU throughput even higher.

Disclaimer: I might be missing some other scenarios from a lack of creativity. The question you asked got more interesting the longer I thought about it, and I think it might have something to do with why this “Memory Bandwidth Beast” hasn’t yet had its day in the sun.

haimez··on Apple issues security update for the almost 10-year-old iPhone 5S
I don’t think anyone should be shocked that Apple isn’t currently prioritizing adding new features to iPhone 5’s over functionality for newer and forthcoming devices.
haimez··on ChatGPT Has Passed the United States Medical Licensing Examination (USMLE)
They don’t even learn, they confabulate. “Correct” responses are an accident, and there is no notion of (especially medical) correctness involved.
haimez··on Rust vs. C++ Formatting
My basic suggestion is that the standard library _should_ be useless at supporting multiple languages, because it’s not a goal that can be achieved for almost anyone’s actual use case. You’re going to have to actually design internationalization into your own codebase in a way that makes sense for your application, and a half-measured implementation just doesn’t have a place at the language core.

Format strings, for example- are essentially compile time macros in rust in order to avoid all the fun kinds of string handling bugs that C’s implementation allowed- but that means no runtime customization without also defining were alternate formats live (and how they’re verified, etc). Not supporting multiple languages is a feature, not a bug. If you need multi language support, you need to a library to define those semantics in a way that fits or use case.

haimez··on Rust vs. C++ Formatting
It seems reasonable to me that this is not a compile time constraint, but rather one of tooling and the deployed environment- ie: is the Japanese translation available here at runtime? How? Is there a runtime configuration flag? Is the translations file available at runtime? Is the date formatter configured appropriately?

Maybe if you bake in assumptions about the deployed environment at compile time you can catch errors earlier for your specific environment, but all environments? No. That’s not the responsibility of the standard library and given the language lacks a single specific runtime target- definitely not the responsibility of the language/compiler. This is instead a classic use case for tests and opinionated (optional/third party) libraries instead.

Page 1 of 12Next →