Hacker Newsnew | past | comments | ask | show | jobs | submit | ahartmetz's commentslogin

"Tech Company: At long last, we have created the Torment Nexus from classic sci-fi novel Don't Create The Torment Nexus"

It was a Mike Judge type joke, aka ha-ha only serious.


This "create a default-constructed value just so you can return a reference" logic is pretty terrible tbh. For insert: first create a default-constructed value, then assign to it. For retrieval: in the not found case, (permanently) insert a default-constructed value into the map. Need to return a valid reference!

Qt containers do it better: upsert with insert() and retrieve with value(), which, in the not found case, will return a default-constructed value (or a caller-supplied value) but without inserting it into the map.


I keep being puzzled by the unwillingness of developers to deal with scheduling issues. Many developers avoid optimization, almost all avoid scheduling. There are some pretty interesting algorithms and data structures in that space, and doing it well almost always improves user experience. Often it even decreases total wall-clock time for a given set of tasks.

The private sector - banks, insurances, your e-mail provider, cloud storage provider... - can mess with you pretty well, too.

> Generative AI for source code learns from developers - who mostly publish their source with licenses that allow this.

As far as I'm concerned, not at all. FOSS code that I have written is not intended to enrich LLM companies and make developers of closed source competition more effective. The legal situation is not clear yet.


To me, if the AI is trained on GPLv3/AGPL code, any code it generate should be GPLv3/AGPL too, the licence seems clear imho.

FOSS code is the backbone of many closed source for-profit companies. The license allows you to use FOSS tools and Linux, for instance, to build fully proprietary software.

Well, if its GPL you are supposed to provide the source code to any binaries you ship. So if you fed GPL code into your model, the output of it should be also considered GPL licensed, with all implications.

Sure, that usage is allowed by the license. The license does not allow copying the code (edit: into your closed-source product). LLMs are somewhere in between.

Interesting point, actually - LLMs are a return to curated information. In some ways. In others, they tell everyone what they want to hear.

Not sure if that is relevant to your point, but: For better and for worse, closing over any outer scope variables is syntactically free in Rust lambdas. You just access them.

It's syntactically free, but it can cause borrow-checker errors thst cause your code to outright fail to compile.

Yes, exactly. My concerns were semantic, not syntactic.

It sounds like you're fighting the language - Rust is sort of FP-light and you're encouraged to return a null/error value from the intermediate calculation instead of doing an early return from the outer scope. It's a nice and easy to follow way to structure the code IME. Yes, it's more verbose when an early return would have been just right - so be it.

For the case where `try` is useful over the functional form (i.e. parent's situation of having a desired Result, plus some unrelated early-returning), that ends up with nested `Result`s though, i.e. spamming an `Ok(Ok(x))` on all the non-erroring cases, which gets ugly fast.

Why couldnt you flatten it?

You have three different value cases (main value, main Err case for `?` to consume, and whatever early-return case). And the `?` operator fully taking up the Err result case means your main-result+early-return values strictly must both be wrapped in an Ok.

There is a difference between "FYI, we're rejecting a ton of money for us, that's how serious we are about not selling out" and "We ran the numbers, and on balance, taking these 30% more money doesn't seem like the right thing to do because it would be against our stated mission statement".

The second one doesn't sound like real conviction.


Thank you for directly addressing my point! I disagree but I respect your prioritization of of substance. I agree that notionally there's a difference but (1) they never said they "ran the numbers", (2) there are other good reasons for having access to that data that don't involve selling out, and (3) this all hinges on squinting and interpreting and projecting, and splitting the difference on linguistic interpretation is about as weak as circumstantial evidence can possibly get.

Real argument: "they said they're doing "privacy preserving" ads, look at this post where they announce it". Real argument "they say they're putting AI in the browser, I don't like that. Here's the statement!" Real argument: " they purchased Anonym and are dabbling in adtech, here's the news article announcing the acquisition!"

Not real argument: "They said they didn't want to take money to kill ad blockers but if you squint maybe it kinda implies they considered it, at least if you don't consider other reasons they might be aware of that figure." At best it's like 0.001% circumstantial evidence that has to be reconciled with their history of opposing the Manifest changes. If reading tea leaves matters so much, then certainly their more explicit statements need to matter too.

The thing that's unfortunate here is I would like to think this goes without saying, but ordinary standards of charitable interpretation are so far in the rear view mirror that I don't know that people comfortable making these accusations would even recognize charitable interpretation as a shared value. Not in the sense of bending over backwards to apologize or make excuses, but in the ordinary Daniel Dennett sense of a built-in best practice to minimize one's own biases.


> At best it's like 0.001% circumstantial evidence that has to be reconciled with their history of opposing the Manifest changes. If reading tea leaves matters so much, then certainly their more explicit statements need to matter too.

Their history is less relevant now because it's a fresh CEO that came up with this statement on his first day. New leaders often means a change in direction and this is a worrying sign. Also the number he quoted is far too explicit. Doing something like that would instantly move Firefox to be the absolute worst browser possible considering even advertising- and tracking-loaded crap like Chrome and Edge don't go that far.

Clearly they have been running the numbers and clearly he feels fine talking about it which is a pretty strong departure of previous values.

Of course I'd not continue using Firefox in this case, and I'm sure it would get widely forked. I found it pretty shocking.

The other examples don't reassure me one bit because they're not the same teams and in many cases they were simply external pushes like offers that were rejected. Here it's a different team that already has been changing direction for the worse recently (e.g. PPA, purchasing Anonym), and came up with this without external pressure. There's also plenty of situations where FOSS projects did go full evil.

Anyway I don't really have any better options than firefox and I'm sure that it would get heavily forked if they started siding with the advertisers, but it is worrying to me especially coming from a new leader on his very first day. Not only because it's about ads. Just because it removes user freedom of choice completely if they were to enforce this.


I remember some absolute nonsense garbage post from A16Z's cryptocurrency arm being posted on HN. They are scumbags.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: