HNHacker News
TopNewBestAskShowJobs

theamk

9,650 karma · joined May 4, 2016

submissionscomments
theamk··on The bizarre world of the V Programming Language
> If Alex had been conservative, never sharing until he was done and never risking a promise he might not keep, would you know his name?

I think you misunderstood the article - it's great to try new things, and it's not a problem to promise things you are not 100% sure about. What's important is the honesty - "I've tried, I've failed, here is what I learned". OP said the the best:

> "Failure" does not have to be a failure, and V itself does not have to be the sole product of V's development. Alex has time and time again promised to write blog articles on various aspects of V's development. Had he done that, instead of silently backpedalling on claims about V, we could have had very interesting reads reflecting on the challenges of creating a new programming language.

instead, we have disappearing claims that require internet archive to find out, denial of any problems, and blaming of every problem on "misinformation from haters".

You don't need to be corporate or in in academia for basic integrity.

theamk··on At Work, AI Is Mandatory. After Work, It's Forbidden
It's under paywall, so I can't get the full story, but from the initial snippet, seems like a story of a person who tried to submit AI-coded PR to open-source project and got rejected.

To the author: project maintenance is hard work. Your PR might work for you just fine on your machine, but what about other setups? Will your code still work after the next library upgrade? If not, who will fix it? That's why the maintainers can reject any changes they want - they are ultimately on the hook for all that so they are the ones with final words.

theamk··on Mail Spam – Im stuck need help
that's system working as intended.

SPAM is officially described as UCE, "Unsolicited Commercial Emails". Your emails are both unsolicited and commercial, so people rightfully block it. I know I always click "report spam" when I see an unsolicited commercial email, not just to clean my inbox ("report spam" and "delete" are right next to each other), but to make sure sender's reputation takes a hit and fewer other people get spam email.

theamk··on Nobody Is Listening on Port 8125
> We replaced the listener with an eBPF program that watches port 8125 at the traffic control layer of every interface, and a JavaScript decoder that turns the lines into Prometheus families.

this is insane! Why on earth would one to replace a short, simple, highly debugable program with this crazy combination. Why would you trade a simple socket(2) call which shows up in ss, netstat, strace etc.. with something that opaque? Especially given the bandwidth is minuscule and the destination is already localhost.

theamk··on Recursive `make` and `-j`
Disagree on main premise of that.

If you have sub-projects which cross-depend on each other (no total ordering), then recursive make will have a bad time. I agree.

Author thinks the best way is to stop doing recursive make. I disagree.

IMHO, the best way to solve this is to arrange your sub-projects properly, so the are no circular dependencies and thus there is one correct order. Not only your build should be a DAG on file level, it should also be a DAG on the sub-project/directory level. Then a single recursive "make" pass builds everything properly, no need for ugly tricks like running make twice, or intentionally omitting some dependencies.

(Even better option is to stop using make for such large projects - it's great for smaller ones, but for the huge ones, there are much better runners available. But I assume there is some reason to use make)

theamk··on Reverse-engineering a $35 backup camera display (AMT630A)
Neat! Can you add the pictures of your setup? Display, soldered wires, some overlays?

(sorry if they in the video - I generally don't watch the videos before reading the text first)

theamk··on The systems that no one will test
Not OP, but yeah, the data diodes need special software, you can't just proxy regular internet protocols over them. The way I've seen it, some use cases are:

- For ingress, you use special "file transfer" software. Run the receiver on secure side, run the sender on insecure side. It blasts the file "blind" - it has has no way to know if anyone ever received it. Make sure the receiver is fast enough, and the error-correcting codes are a great idea too, as they don't need feedback. It's up to user to want to secure side computer and check that the file was received without problems. Yeah, this is similar to sneakernet, but more secure, as you can't accidentally carry a virus on seemingly-empty drive.

- For status egress, you have secure side broadcast status periodically, say every minute. Insecure side receives the status, updates the database, and runs the regular web server to share the status. Again, secure side has no way to know if someone is listening on the other end, it just blasts out the messages and it's done.

And you are correct, if the secure system has both egress and ingress diodes, it is no longer isolated, and devious enough malware can establish two-way communications. But even if it won't save you from Stuxnet, the simple fact that it is no longer possible to have direct network connection to the outside raises security bar quite a bit - all the ideas about "let's just open this one port on firewall, it'll fine I swear" are completely stopped.

(Which reminds me of something in GP's (mikewaro) message: _why_ would a data diode need a promiscuous mode? Given every single data diode I have seen needs a special software on both sides, you should not need anything beoynd a basic TCP session)

theamk··on Mosquitoes Are a Choice
another misleading title. The subtitle is much clearer:

> The technology to eradicate mosquito-borne disease already exists.

One approach is eliminate one specific kind of mosquitoes, another is to change them so they don't carry diseases. Either way, we'd still get mosquito bites.

theamk··on Booted up in 1993, this server still runs – but not for much longer (2017)
It's really not that hard to keep computers non-crashing, as long as you have good hardware and run a limited subset of software.

Many servers I've owned had multiple years of uptime, and the only reason they'd go down is because they will get decommissioned or because of power outage.

The article says:

> disk drives, power supplies and some other components have been replaced but Hogan estimates that close to 80% of the system is original.

so I am guessing there was no reboots, nor CPU replacements.

theamk··on There's a new way to break RSA that's faster than anything we've seen before
relevant parts from linked repo:

> The algorithm only works if a raw signing oracle is available. Most RSA usage in practice (that is, RSA signatures using PKCS#1v1.5 or RSA-PSS padding) do not expose such an oracle, and thus this attack does not pose a practical risk. Examples of RSA use that do expose such a signing oracle would include blind RSA signatures (e.g. Privacy Pass) or HSM APIs.

> Are people actually still using RSA?

> Yes, particularly for digital signatures (e.g. certificates, TLS handshakes, tokens, OAuth). Key exchange for protocols like TLS uses ECDH or has transitioned to ML-KEM, and the attack does not apply to these algorithms.

This is breaking only some rare kinds of RSA usage... And if you are considering new system that uses RSA signatures, please don't. Use elliptic curves - the operations are faster, the signatures and keys are smaller, and there are fewer attacks.

Even PrivacyPass stopped using RSA signatures for that reason [0], which means that the only example of applicable technology is no longer correct.

[0] https://blog.cloudflare.com/privacy-pass-the-math/#previousl...

theamk··on Hydraulic RAM
misleading title - it's not RAM (random access memory), it's ram (a mechanical device for exerting pressure or for driving or forcing something by impact)
theamk··on Show HN: We built a way for web apps to message users' phones without SMS
So.. like a telegram/whatsapp/signal/some other IM, but one way only?

One could achieve the same with a Telegram bot, right? And unlike your app, which must be installed separately, there are already 1 billion users who already have the app installed.

theamk··on Openprinter
Reminder: Openprinter uses BY-NC-SA 4.0 license. That "NC" there means only the creator, Open Tools, can sell the parts commercially. In software world, it'd be called "source-available" (and yes, the same license applies to software too).

If Open Tools decide it's not worth it to sell replacement parts? Or they decide to raise prices 10x? Or they get bought and discontinue the printer? Then the community is dead.

You will have the drawings so for plastic parts, so in theory you can 3d-print them yourself / send them to print house, but on only for personal non-commercial use. But larger parts have large minimum order/setup costs, and "group buy" orders are illegal under NC licenses.

(yes, they say all parts are either 3d printed or standard.. I don't think it is true, the photos show custom-bent metal parts and clear plastic which looks injection-molded)

theamk··on Oblivious Compute: Still Consensus?
Your kernel page, once all the made-up terminology is stripped, just says "nodes send entire state to each other and verify if the state is valid.". This has so little details it is pretty useless.

The "halt" program is mainly scaffolding: ascii graphics, terminal startup.. and some very simple UDP code, with "linchpin" being a simple check if the new state is valid or not. This is something that beginner students write as one of the first distributed systems labs, not some grand invention or a demo of some new principle.

Again.

(1) what is the specific problem you are solving,

(2) how are you solving it

(3) what are the alternatives and how is your thing better/different than them

Right now, your website answers none of them

theamk··on Oblivious Compute: Still Consensus?
Bad case of AI-ism?

This is written as it is some sort of a great invention, but seems to lack of actual "meat" - I don't see any novel algorithms or ideas there, just some basic replicated data structures, even simpler than CRDTs or blockchain's network consensus.

But there is tons of pseudo-philosophy, making up new terms, and trying to make a it sound deep and mysterious.

Author: if you want to be taken seriously, add one-page intro about (1) what is the problem you are solving, (2) how are you solving it, and (3) what are the alternatives and how is your thing better than them. And (3) is especially important here, it's the difference between clueless person bamboozled by AI and someone who is actually familiar with the field.

theamk··on The Normalization of Inexplicable Failures
> When a button breaks on a website, I have a model about what should have happened. Somewhere a contract got broken. [...] I might not have access to debug just an HTTP status 500, but I expect there to be somebody whose job is to understand why the endpoint is 500ing. The ownership is well-defined albeit opaque³.

> For many users, however, the actual experience is roughly just "stupid thing sucks." Software already feels capricious; more failures just change the rate of frustration.

I am betting author does not use cloud services much. It is not just "users", it's developers as well. Github is returning 5xx? AWS service does not work? Your email did not get delivered? Nothing we (developers) can do, "stupid thing sucks".

theamk··on Modern Object Pascal Introduction for Programmers
> 5.1. Remember to free the class instances

> The class instances have to be manually freed, otherwise you get memory leaks.

manual memory management in 2026?

theamk··on [dead]
You have not lost much. From what I can see, their "new way to manage memory" is simply arena allocator (which was apparently invented in 1967).
theamk··on Advice for Computer Buyers (Djb)
needs (2005)
theamk··on California is chasing wealth that has feet
The cooperative will of people?

The argument is not "pay taxes or we kill you", it's "pay taxes or get out of our town". No one is a slave, if the government asks for too much and provides too little, people will move.

I live in a town with non-trivial taxes. It was my personal decision to move there, no one said "move there or we kill you". When choosing a place to live, I could have moved to some other city/state/country with lower taxes, but I've decided not to. I like that we have working utilities, parks, roads, schools, law enforcement, stores. The town had a vote to increase town tax to raise money for schools and libraries, more than 70% approved.

I don't care about your ethical reasoning about tax types, if you want to live in my town, you contribute to the town's well-being. If you refuse to, on any grounds... well, maybe some other place will be a better fit for you.

theamk··on California is chasing wealth that has feet
Seems backward, especially for California.

A hedge fund or a lawyer office with with a huge income but a a small office pays some tax. A sandwich shop close to them which barely had ends meet pays the same amount of tax.

I believe we should tax hedge funds much more than sandwich shops.

theamk··on Human Glitch – twenty small web experiences, each one starts free
charging real money for useless, dime-a-dozen gimmick.. it's one of those AIs trying to earn their keep, isn't it?
theamk··on A Strange Four Days
> I was messing around with a large language model,

> Again, my assumption was basically that this was just the language model generating a really elaborate narrative.

> That doesn't mean I believe it was actually a non-human intelligence. I can't prove that. I can't even establish that the material came from anything other than the language model itself.

> Or maybe there's something else going on. I don't know.

I think that's the textbook case of AI psychosis..

theamk··on Transit rewards
Probably because of UX?

At least in the US, the traditional taxis were terrible - only way to order is via phone call, you have no idea when your car will arrive, nor how much your trip will cost, there is no easy way to send feedback to driver, and there was a good chance for an generally unpleasant experience...

Uber/Lyft changed this all and actually made the car-for-hire services usable. In my circles, this was the real reason why everyone simply stopped using taxis completely the moment any alternatives appeared.

And Waymo has a nice app and clean experience, and won't take you long way so it can charge you more, hence people group it with rideshares, despite it technically being closer to taxi.

(I understand that in other countries, taxis were much better. Before Lyft, I always felt envious while reading about their taxi systems)

theamk··on Transit rewards
American busses are infrequent and often don't follow the schedule. This means any trip where you have to be at certain time (work meeting? class? personal meeting? some event? etc...), you have to add 30-60 minutes buffer, and that's on top of bus being already slower than the car.
theamk··on The Agent Economy Has No Auditor
> A bad employee loses money until a manager notices. A bad agent loses money at machine speed, around the clock, on every channel at once, and files a beautiful report about it.

> When banks are asked to finance businesses that are run in part by agents, what proof will they accept? A dashboard? A screenshot? A performance report written by the same agent that spent the money? No underwriter on earth should accept that. Eventually none will.

Good, that's exactly what we need. People believe Big AI companies way too much. We need loud, widely-published stories of AI agents making horrible decisions and wrapping them in beautifully-formatted reports, so that a layman working with AI knows it will lie with the straight face, and even that smart-looking, cleanly formatted report might have a completely incorrect content.

theamk··on Anecdotally, programmers dislike "reduce"
I think your arguments would be much stronger with some actual code samples.

Usually, when the same code can be written either as range-based "for" or as a "while", the "for" will look better and have fewer possibility of bugs. If you have examples otherwise, I'd like to see them.

(Note I am specifically talking about range-based/iterator-based "for", not the C's variant. Nor am I talking the cases where the "for" is hard to use, like when the size might change at runtime)

theamk··on Anecdotally, programmers dislike "reduce"
you mean like that?

    todo_iter = iter(todo)
    while True:
        try:
            value = next(todo_iter)
        except StopIteration:
            break
        process(value)
or like that?

    todo_iter = iter(todo)  # Note: assume "todo" does not contain None
    while value := next(todo_iter, None):
        process(value)
I'd say neither of those are as clean as a simple for loop:

    for value in todo:
        process(value)
and yes, that's the case of a personal preference, although I'd bet a lot of Python programmers will share that preference with me. That's what "code smell" means, after all - it's not a bug which is clearly incorrect, it's a code which is best avoided based on reviewer's personal experience.
theamk··on Anecdotally, programmers dislike "reduce"
I assume OP refers to the cases where "while" is used to re-implement existing operations... imagine finding code like this:

     i = 0
     while i != len(todo):
         process(todo[i])
         i = i + 1
sure, there may be a good reason to implement things this way (maybe "todo" grows during iteration?), but maybe not, and then the loop should be instead simplified to:

     for value in todo:
         process(value)
(as an aside, this is exactly the case where the comments are required: "# not using for loop because todo might grow" will make it clear it's an intentional decision and not hallucination or something written from ignorance)
theamk··on PS5 Linux lead quits: "a bunch of noobs using LLMs" that "they don't understand"
I dunno, here is an entrant from 2025: https://news.ycombinator.com/item?id=45071024

(not a JS dev myself, but I read HN so I see those posts every once in a while..)

Page 1 of 34Next →