HNHacker News
TopNewBestAskShowJobs

ramchip

3,964 karma · joined October 24, 2008

submissionscomments
ramchip··on Norway became a global salmon behemoth. Now it's facing the consequences
I think most people like uni, but it's also one of the most expensive sushi you can get at kaitenzushi
ramchip··on Norway became a global salmon behemoth. Now it's facing the consequences
Salmon sushi is very popular, but it's not part of the traditional Edomae style (fish from the Tokyo bay), so the more upscale or traditional restaurants often don't serve it.
ramchip··on Structure and Interpretation of Computer Programs Video Lectures (1986)
LLM bot account
ramchip··on Elixir v1.20: Now a gradually typed language
> you don't get bugs related to typing because elixir is somehow magic

Really? All the Elixir fans were saying that?

ramchip··on What I've Learned (So Far) Building Online Mini Games with Elixir and Swift
I love the BEAM and programmed on it for many years, but it really does not provide anything like durable objects.

1) It's very difficult to ensure globally serialized ownership with strong consistency in a distributed Erlang cluster when nodes are allowed to fail. Stuff like Horde will let you do some rough "run an instance of this process somewhere in the cluster", but it's eventually consistent (you may have multiple instances at times) and doesn't deal with netsplits well.

2) Mnesia is fine to replicate state within a network switch or very reliable LAN, but not over WLAN/Internet. It can enter split brain conditions and require external reconciliation. RabbitMQ suffered from Mnesia problems for many years and ended up replacing it with their own DB implementation using the Raft protocol.

ramchip··on Content-defined chunking added to Bazel
The same is true without CDC, and you can configure a maximum size.
ramchip··on Erlang/OTP 29.0
It's still referred as such through the official documentation: https://www.erlang.org/faq/introduction.html#idm24

You may be thinking of comments like: https://erlangforums.com/t/should-otp-be-the-standard-librar...

ramchip··on Getting arrested in Japan
It'd be a pretty horrible system if it was possible to get anyone you dislike tortured for a month by mailing them CSAM they didn't ask for...
ramchip··on My adventure in designing API keys
That second hash is called a Message Authentication Code (MAC), it's what the JWT HS256 algorithm does
ramchip··on My adventure in designing API keys
The purpose of the checksum is to help secret scanners avoid false positives, not to optimize the (extremely rare) case where an API key has a typo
ramchip··on A cryptography engineer's perspective on quantum computing timelines
He's obviously not saying that you can "trust blindly" any PQ algorithm out there, just that there are some that have appeared robust over many years of analysis.
ramchip··on The future of version control
Looks like it's "Show Base" under the top-level "..." menu when working on a merge conflict

https://github.com/microsoft/vscode/issues/155277#issuecomme...

ramchip··on I wasted years of my life in crypto
These kind of things are part of transparency log threat models, for example: https://www.rfc-editor.org/rfc/rfc6962.html#page-24.
ramchip··on I wasted years of my life in crypto
You're describing a transparency log, which doesn't require a blockchain.
ramchip··on Microsoft's lack of quality control is out of control
Sometimes it's impossible even with an account. I can't search in English on my phone in Japan. If I go into options and change the language, the moment I click OK, it switches everything right back to Japanese. I know multiple colleagues who've had the same issue for years.
ramchip··on Becoming a compiler engineer
It's incredibly rude, and wrong, to assume that a woman was hired because she "checks off a bunch of HR checkboxes" rather than skill or hard work when you know nothing about her.
ramchip··on Frozen String Literals: Past, Present, Future?
An iolist isn't a string, you can't pass it to the uppercase function for instance. It's really meant for I/O as the name implies. Regular string concatenation is optimized to avoid copying when possible: https://www.erlang.org/doc/system/binaryhandling.html#constr...
ramchip··on A worker fell into a nuclear reactor pool
> This by itself means that it is not potable

Do you mean because it's distilled? Distilled water is perfectly safe to drink.

ramchip··on A worker fell into a nuclear reactor pool
From: https://www.vice.com/en/article/a-nuclear-plant-worker-fell-...

> According to federal reports, the contractor ingested some of the reactor water before being yanked out, scrubbed down, and checked for radiation. They walked away with only minor injuries and about 300 counts per minute of radiation detected in their hair.

> That sounds like a lot, but apparently it isn't terribly serious. He underwent a decontamination scrubdown and was back on the job by Wednesday.

ramchip··on The working-class hero of Bletchley Park you didn't see in the movies
One-time pads are not vulnerable to gardening.
ramchip··on Don't Build Multi-Agents
Personally I found the article informative and well-written. I had been wondering for a while why Claude Code didn't more aggressively use sub-agents to split work, and it wasn't obvious to me (I don't build agents for a living).
ramchip··on Don't Build Multi-Agents
I've done a lot of Erlang and I don't see the relation? Supervisors are an error isolation tool, they don't perform the work, break it down, combine results, or act as a communication channel. It's kind of the point that supervisors don't do much so they can be trusted to be reliable.
ramchip··on Why tail-recursive functions are loops
If you dereference it you get back an integer, not a variable. A variable is a name that identifies a value; the pointer points to the value, not to the name.
ramchip··on Claude Sonnet will ship in Xcode
There's a free tier, and various paid tiers: https://github.com/features/copilot/plans
ramchip··on Why tail-recursive functions are loops
That's a pointer to an integer.
ramchip··on Why tail-recursive functions are loops
> There, the reference to `i` is being mutated.

That's rebinding. Mutation is when you change the state of an object. Variables are not objects. You can't have a reference (aka pointer) pointing to a variable.

ramchip··on Claude Code is all you need
It's a wide field so it depends on the specialization. I did computer engineering 15+ years ago and we never touched SQL, but I think the software engineering people did have a class on it.
ramchip··on Why tail-recursive functions are loops
I think you're confusing mutation and variable reassignment?
ramchip··on Don't “let it crash”, let it heal
I recommend https://ferd.ca/the-zen-of-erlang.html starting from "if my configuration file is corrupted, restarting won't fix anything". The tl;dr is it helps with transient bugs.
ramchip··on GPT-5: Overdue, overhyped and underwhelming. And that's not the worst of it
> Gary Marcus always, always says AI doesn't actually work - it's his whole thing. If he's posted a correct argument it's a coincidence.

https://news.ycombinator.com/item?id=44278811

I think you're absolutely right about this being a wider problem though.

Page 1 of 34Next →