For the best experience on desktop, install the Chrome extension to track your reading on news.ycombinator.com
Hacker Newsnew | past | comments | ask | show | jobs | submit | history | more ADeerAppeared's commentsregister

> It seems to me you're doing at least 1 thing here, and acknowledging that such DEI program was performative in the first place.

Keep in mind that these statements are made to pander to the incoming president. The implication that "DEI is discrimination against white people" is very much a part of that.

> why the initiative in the first place?

Ultimately this is the same answer as with the broader ESG incentives. It is in fact a good idea to have a diverse workforce for the exact same reasons evolution keeps diversity around.

The pretense that it's "discrimination" is rather silly, especially for tech giants like Meta whose shortlists of qualified applicants number in the hundreds to thousands after initial selection.


> evolution keeps diversity around

Evolution has no built in preference for diversity and certain branches of the evolutionary tree wiping out others is a common occurrence throughout history. For instance, the Neanderthals. That's why there are so many rules about importing foreign plants at the border.


ESG is just a jobs program for stock brokers.


> Inference is basically getting an 10x cheaper per year!

You're gonna need some good citations for that.

There's a big difference between companies saying "The inference costs on our service are down" and the inference costs on the model are down. The former is oft cheated by simplyifying and dumbing down the models used in the service after the initial hype and benchmarks.

> But the "price per unit of [intelligence/quality]" is getting lower and _fast_.

Absolutely not a general trend across models. At best, older models are getting cheaper to run. Newer models are not cheaper "per unit of intelligence". OpenAI's fany new reasoning models are orders of magnitude more expensive to run whilst being ~linear improvements in real world capabilities.


See situational-awareness[1], see the "algorithmic efficiencies" section. He shows many examples of how models are getting cheaper. With many citations.

Costs are not just down on a specific service. Even though I don't see the problem in that, as long as you get the promised level of performance, without being subsidised. See the deepseek model I linked above. It's an open model and you can run it yourself.

> At best, older models are getting cheaper to run.

What's your definition of old here? If you compare the literal bleeding edge model (o3) to 2 years ago best model (GPT-4)? Not only is this a ridiculously misleading comparison, it's not even valid!

o3 is a reasoning model. It can spend money at test time to improve results. Previous models don't even have this capability. You can't look at one example of where they just threw a lot of money and say this is the cost. The cost is unbounded! If they want, they can just not let the model think for ages and have basically "0-thinking" outputs. This is what you use to compare models.

If you compare _todays_ cost for training and inference of a model as good as GPT-4 when it was released, this cost has massively gone down on both counts.

[1] - https://situational-awareness.ai/from-gpt-4-to-agi/#The_tren...


Besides the things other comments mentioned: There is a longstanding sentiment that "It can't happen here".

The wider public in America more or less blocks out the risks involved. "They're not actually going to blow up the power grid."

Hell, just look at the tech industry. Endless whining about not needing to be regulated, and what have they done? Built an enormous surveilance machine, lead by executives who preemptively kowtow to any authoritarian leader. Europe's attempt to regulate this is still angrily opposed by heaps, even on this very site.


Yup

Normalcy bias — it's an absolute killer. The same cognitive failure that has people in a fire thinking it's "just part of the show", or "just something in the kitchen", until it is too late, and panic overtakes everyone. I've never seen a story of a fire where someone in the situation said "I wasn't sure what was going on, but it didn't seem good so I left early, I'm alive because I did!".

Normalcy bias can kill us all if we aren't careful.


Thanks for writing this: things are quite askew right now for various reasons, and it was unexpectedly affirming to hear someone say it loud.

Until now I would have said this is an extreme minority view, even though it's quite obvious and aligns with the core values I've seen on this site over the last 15 years, and thus presumed were tech in general's view.

Maybe I just need to get off X, the Everything App™, 90% of my news consumption and commentary is through there.


I dropped of Twitter, and Facebook in 2014 (or around that time); and I have not missed a single important event since then.

People think they need Facebook, X, whatever to stay up to date. Not so. I have a few online newspapers/sites I scan a few times a week, and that's it.

IMHO (and it's really just MO), Twitter, Facebook and alike are a 100% useless waste of time. (Maybe Facebook had some use in the beginning for staying in contact with more "friends" than I could have by other means.)

I feel better for it. And as I said, I will guarantee you that won't miss anything important going on.


This people would be 100% better off. Not consuming the garbage. I tried to just follow tech peeps on X. Now it is nonstop propaganda even just following a niche.


+1, that's what switched.

I made a decade long transition from dropout waiter => startup founder => exit => Google thanks to getting to soak in all the tech stuff on Twitter, without having the formal education.

It's hard to say without being reductive, but TL;DR it's turned into a very know-nothing atmosphere, to the point it certainly swamps the prior positive effects.

Good example yesterday: OP is excited about Elon newly announcing a new interest in non-regretted user-seconds.

Elon's talked about it a bunch, so some people gently correct OP.

Some other people gently point out this...isn't something you can metric.

Everyone's being polite and pointing out indirectly the excitement is irrational: it's an old idea, and not an actual metric you can optimize for

OP half-rolls-back that its a new idea, but is still excited about the implications.

Someone tells him directly "non-user-regretted-seconds" isn't a metric, he doubles down and says its standard in industry.

I reply saying it's Elon-invented, not a good or bad thing, but certainly not a traditional metric.

OP replies saying that's not true, OP saw it in use at Google a decade ago.

It's a day later and it's completely unclear to me: A) if this is an actual phrase that was used prior to Elon B) if it is a phrase, how it could be a metric and C) if OP is right that it was in use before Elon, given our time at google overlapped by 7 years and I've never, ever, heard of anyone having a metric like that (could someone have used it as a term of art in a meeting? sure! but generic "amount of time people enjoy using our thing" isn't worth noting as a distinct term, unless you actually collect info on it)

The only way I can think of to even engage is to say pretty much the above, but it's too aggro and "cares too much" for the level of current discourse, especially since the premise is we should be excited Elon cares about this.

A more factual approach, like trying to find the first instance of "unregretted user-seconds" isn't convincing. I'm not sure how you'd prove the first use was after a certain date.

Even if I try searching for refs between 2000 and 2020 only, there's ~3 pages of obviously re-dated results, i.e. referring to Elon as Twitter owner with a date of "2013"

Then, just because it wasn't on the internet at a certain date, doesn't mean it wasn't in use regularly at Google before that date.

Then, the clunky pseudo-scientific phrasing makes it impossible to debunk there wasn't another form of "unregretted user-seconds" I should be checking.

There's only 8 pages of results for "unregretted user-seconds", all tied to Elon/Twitter, but that means nothing because again, clunky phrasing means maybe there's another form I should be checking, and maybe it was a phrase that had been locked inside companies until Elon used it publicly.

So what was the point of even reading, thinking, replying about this?

Nothing. Waste of time.


True story. I share your frustration.

I found your writing useful.

Hopefully the landscape will improve.


Yes, you should definitely leave X. It is a cesspool of rage bait.


Come to Bluesky. It’s not perfect, but neither was twitter 10 year ago. Bluesky feels a bit like that.


As somebody who successfully avoided twitter stuff my whole life - whats the lure of this? Following some folks reading some random brainfarts is not how I imagine spending my time, and that's all I can see on this. Maybe I have just different type of personality than target audience.

Or is it so addictive like social networks seem to be?


I have left X / Twitter now, but while there it gave me good insights, to an extent. If you follow the right people, you get news without intermediate interpretation by journalists. Who the "right people" are is hard to answer, but basically, select people you trust the judgement of.

But.... I am no longer there. Too much noise and distraction drowns the sane voices. And I can't stand Musk any longer.


I went into twitter for the academic side. Transition to baky has been nice. It's often like RSS feeds but I get to interact with my peers.

I tink it totally depends what your niche is. What bugged me about Twitter is that after Musk took over it was no longer mostly RSS feed-like but all the politics came in. That all ranked higher even when not from accounts I don't follow (now I get notifications from Musk even after muting him)

  > Or is it so addictive
AFAIK the ranking is simple. But since everything is open you could filter as you wish. I'm not aware of anyone doing it but I'd like to see this.


I don't get the point of bluesky if mastodon already exists...

why switch one megacorp for another?


people on this site get angry when you ask this question. apparently we need more microblogging sites.


That's a red herring.

The problem is that these are fundamentally NOT reasoning systems. Even when contorted into "reasoning" models, these are just stochastic parrots guessing the next words in the hopes that it's the correct reasoning "step" in the context.

No approach is going to meaningfully work here. Fiddling with the prompt may get you better guesses, but they will always be guesses. Even without the antonym it's just a diceroll on whether the model will skip or add a step.


> I don't think that's true for their VR/MR hardware.

They literally record the cameras and 'screen', then send it off to their servers.

The VR hardware absolutely spies on you. Even if you tell it not to, it still shows up in the mobile app.


And in what way are they then selling that data (which is what the person I replied to talked about)? Just the fact that the data is being sent to a server doesn't mean much. Tons of modern products relies on literally recording your data and sending it off to a server.


They literally don't.


It is not "free riding" to take the software that is explicitly given away, for free, gratis, nada, nothing, and not pay anything in return.

"I want this to be given away free for ideological reasons but you must also pay me" is a moronic position. Pick one or the other, if you want money, just sell the software.

The refusal of "FOSS" communities to use a direct non-commercial clause is an entirely self-inflicted wound.


> "I want this to be given away free for ideological reasons but you must also pay me" is a moronic position. Pick one or the other, if you want money, just sell the software.

Exactly—it's a position that Matt Mulenweg has now exposed in gory detail as not just a moronic position but an unethical one. You want to get paid? Put it in a contract up front. You want to release Free Software with no extra contracts? Don't expect to get paid—sponsorships are a nice bonus, not something you're entitled to.

The "I should be able to release Free Software for free with no strings attached and also you are morally obligated to pay me" position is inherently an unethical bait and switch. You're only entitled to the compensation that you communicate up front in writing. Red Hat does this right, Canonical does this right, JetBrains does this right.


> Exactly—it's a position that Matt Mulenweg has now exposed in gory detail as not just a moronic position but an unethical one.

You're not obligated to give away your services. Red Hat was putting (still puts?) in their support contracts that to share GPL patches that they distribute to you as a customer will cancel the contract.

Matt Mullenweg distributes Free Software that anybody has the right to fork freely, although he may obligate them to strip the trademark out (although he hasn't until now.) How could Red Hat possibly be doing something right if he's doing something wrong? What is CentOS supposed to be?


Matt has been very clear that he's attempting to use the trademark as a bludgeon to get WP Engine to "give back" (whatever that means). There was no contract ahead of time that required anyone to give back, and the trademark policy has for more than a decade condoned WP Engine's usage as an explicit permission. All the written communication has always been in favor of WP Engine's rights to use all the IP exactly as they have been with no obligation to do anything, yet Matt has decided that he's owed something.

Red Hat, meanwhile, puts a clause into a written contract that says that they will continue to provide support as long as you don't forward what they give you to other people.

We can get into debates all day long about which one is truer to the "spirit of Open Source" or some such philosophical abstraction, but one of the two organizations we're talking about put their expectations for compensation into a detailed written contract and the other, to put it generously, didn't.


> The refusal of "FOSS" communities to use a direct non-commercial clause is an entirely self-inflicted wound.

The self-inflicted wound is non-copyleft licenses. Under copyleft you pay for free code with more code, by making freely available any modifications you publish over the original. Permissive licenses break this, causing a self-inflicted wound. Corporations can just build upon your codebase and privatize your base effort, giving just the middle finger back to community.


> Under copyleft you pay for free code with more code

You do not. There is nothing in the GPL that mandates you contribute. You can simply use the software as-is, and never contribute. Sit on your hands when there's a major exploit and wait until someone else fixes it, then take their fix.

It is, in fact, piss easy to get around the GPL because it only applies to distribution. If you SaaS or simply do not distribute the software, you can do whatever you want. You can dynamic link all day against evil proprietary software so long as you make the user download the GPL'd bit from a third party.

And this is obvious to all because the AGPL exists to fix this, but is an even worse shitshow.

> Corporations can just build upon your codebase and privatize your base effort, giving just the middle finger back to community.

And the humble non-commercial clause trivially resolves this while the copyleft licenses have spent decades trying and failing.


Since this is HN, someone has to be the stickler for definitions I suppose. :-P

It's not given away for free. You are granted certain freedoms (liberties), to wit:

1. freedom to run the program 2. Freedom to study and alter it 3. freedom to redistribute copies 4. freedom to redistribute changes

So it's Free as in speech, not as in beer.

In lots of languages there's two separate words for these concepts: eg german ('Frei' vs 'Gratis') or french ('Libre' vs 'Gratuit).

It's entirely possible to sell free software. It's something I do!

Non-commercial actually worsens the free-rider situation imo. I don't count it as Free Software at all.


> So it's Free as in speech, not as in beer.

See how in my comment I use 4 synonyms for "free", including "gratis"? That was not just trying to sound cool. That was trying (and evidently, failing, given you're not the only one) to pre-empt this exact point.

> It's entirely possible to sell free software.

This is much more controversial in the FOSS space than it seems to outsiders.

There is the obvious problem that one of the Freedoms involves the ability to take your purchased copy and give it away 'gratis' to everyone else, thus undercutting the market for the original author.

And this begs the question: Can I practically charge money for the freedoms? Must it be gratis?

It would be relatively easy to write a license with a royalty fee. Every time you distribute a copy of the fork, you must pay the original author. This would be a cromulent way to get around the piracy problem.

Except it is deeply controversial. To the point where even the FSF tries to play games around "selling the software" versus "selling the service of providing a download of the software".

In practice, no you can't really sell Free Software. Just look at all the startups that were Open Source and immediately shut that down when the infinite free venture capital ran out.

> Non-commercial actually worsens the free-rider situation imo. I don't count it as Free Software at all.

I simply do not care about the designation of "Free Software". It sucks and has painted itself into a corner. Modern policing of it's meaning (especially by the OSI which hilariously tries to pretend that "Open Source" is subject to FOSS definitions) is entirely just hypocrisy favouring the GPL.

If you want to get paid, cash money, just fucking put it in the license. Use a user agreement like everyone else on the planet.

If you want it to be Free, slap a 'gratis' license on there and don't get upset when companies don't give anything back.


> This is much more controversial in the FOSS space than it seems to outsiders.

Free software has been sold since the dawn of Free software, by the central figures of Free software.

> There is the obvious problem that one of the Freedoms involves the ability to take your purchased copy and give it away 'gratis' to everyone else, thus undercutting the market for the original author.

This is exactly why it is not at all controversial to sell FOSS. You can easily be undercut. If you're successful selling FOSS, it's because you've made it really easy for your customers, been really helpful to them, or because they want to pay you because they like you, probably because they know you're putting work in. Free not meaning "gratis" doesn't mean that you can't get software gratis, it means that I'm not required to give it to you gratis.

This controversy is made up from whole cloth. I don't doubt that people are arguing about it, but neither person in that argument has any idea what they're talking about. They are people trying to ride the coattails of FOSS to get rich, as well they should (get rich in any ethical way you can.) But Open Source was a ploy to undercut Free software, and is operating just as intended, supplying corporations with free labor in return for nothing.

If you don't want to be copyleft, and you don't want to be ripped off as OSS, just be proprietary. The reason people don't want to do this is either because the software is not good enough to compete, or they can't afford the marketing and infrastructure to sell or even give away a proprietary product. So they pretend there's this honor system called the spirit of open source where the entire world is meant to ignore the freedom that permissive licenses give until the authors have the time to get rich. When Amazon ignores the memo, they pretend it's the concept of Free Software that's to blame, or even for that matter the concept of Open Source.

The problem is trying to benefit from the concept without actually believing in it, and failing. The point of Free Software is that people have access to the software that runs the machines that their lives depend on. The point of Open Source is to supply free labor to others in order to hopefully get attention, praise, or simply personal satisfaction. If neither of these things are what you're into, that's not something wrong with FOSS, and that's not something wrong with you.

> I simply do not care about the designation of "Free Software". It sucks and has painted itself into a corner. Modern policing of it's meaning (especially by the OSI which hilariously tries to pretend that "Open Source" is subject to FOSS definitions) is entirely just hypocrisy favouring the GPL.

These are two unrelated organizations with opposing philosophies. The reason OSI software is Free Software is because anybody can steal OSI licensed and do whatever they want with it, as long as they do some trivial things that the license requires, such as including a copy of the license, or possibly a credit for the author. The GPL is a restrictive license that obligates the people who distribute the software to many explicit and strict responsibilities that people are willing to sue you over. OSI licenses are not.


> You can easily be undercut. If you're successful selling FOSS, it's because you've made it really easy for your customers, been really helpful to them, or because they want to pay you because they like you, probably because they know you're putting work in.

What you are mincing words about here is the fact that no, you are not selling software, you are receiving voluntary donations.

It's the same rhetoric as always "Um akshually you can sell Free Software" when what is meant is "You can put it up for sale".

I am not obliged to humour it, so I will not.

> supplying corporations with free labor in return for nothing.

As opposed to FOSS, which is currently ... Coping and Seething in this thread about receiving nothing in return.

It ain't a ploy. We just don't care if corporations use it.

> The problem is trying to benefit from the concept without actually believing in it, and failing. The point of Free Software is that people have access to the software that runs the machines that their lives depend on. The point of Open Source is to supply free labor to others in order to hopefully get attention, praise, or simply personal satisfaction.

The word for that is "cult".


I think I'll politely back away from this debate, since it seems like you have an axe to grind. Meanwhile, I simply sell the service of 'Making Things That Don't Exist Yet.' Remarkably uncomplicated, and yes, people are willing to pay for that.


I actually agree with you in many ways, but I think FOSS diehards miss the likely outcome of this line of thought: less FOSS will be written.

Everyone still has to pay their bills, but if FOSS-based companies can't survive, the only people writing it will be megacorps funding the likes of Kubernetes, and hobbyists doing stuff for fun.

The entire middle-tier of FOSS companies, the ones that turned to source-available licenses when AWS came for their lunch, will not exist in the future. Either they'll continue to switch off FOSS licenses when AWS comes knocking, or they'll conclude FOSS isn't a good strategy in the first place.

Anyway, I value FOSS, but I value fair compensation more. I don't believe in giving billionaire Bezos anything for free.


Seems to be precisely what "free-rider" means; entities benefiting from public resources without contributing anything back.


Also, if the end user can't use it for commercial purposes then the software is by definition not FOSS software. That would be a major restriction on their freedom. It is impossible to have a FOSS community that restricts its software from being used in commerce. The emphasis has always been on the F-for-freedom part of FOSS, especially after the schism with the OSS people who don't see freedom as the same level of priority.


> if the end user can't use it for commercial purposes then the software is by definition not FOSS software.

Okay but like, who cares. The definition of "Free Software" is just whatever RMS screeches about. The OSI is rather biased towards them, and importantly, does not own the trademark.

> That would be a major restriction on their freedom.

Then why complain that they excercise that freedom.

Either commercial use without paying back is an explicitly granted and supported freedom, and then companies doing that is fine. Or it is not, in which case restrict commercial use on the free license if you want companies to pay up.


> Okay but like, who cares.

People who care about freedom. The question answers itself. If the person writing the software is laying down the law about how it is going to be used then, as a simple and practical matter, the user is being denied freedom. If code can't be used for business purposes it is a bit of stretch to say it is free software. We may as well call pirated software free software if we're being that loose with language that we only mean price; people don't pay for it either. The "free" stands for freedom.

> Then why complain that they excercise that freedom.

They've just legally given up all the coercive options, so the only tool left is complaint. That is one of the major points of the whole thing - for everyone to have the most freedom communities have to try and resolve disputes by clear communication, vocalising concerns, argument and persuasion.

Although I think you've misread KingMob's comment. Exactly what they meant is open to interpreting, but what they actually said isn't a complaint. "Free-riders" is a technical term for what most FOSS software users are doing. It might be explicitly endorsed by the software maintainer but it is still free-riding.


> They've just legally given up all the coercive options, so the only tool left is complaint

My previous comment on this was unclear.

The very act of complaining about it betrays the idea that it's "freedom".

Either companies have the freedom to take without giving back, in which case forcing them to buy the software breaks those freedoms, but you shouldn't complain.

Or they do not have the freedom, in which case just sell the software normally.


Public transit companies that make tickets explicitly free and then get upset nobody pays them would get laughed out the room for bemoaning "free-riders".

It may be a "technically correct" use of the word, but it's not a useful definition to include this.


The public transit companies are being paid though ? Through tax instead of through direct payment


Are they "public resources" or are they gifts?

If you have a precise idea in mind about how you want it to be used and how they should reward you, put that in the license.

You even have OSI-approved options here, like AGPL.


> Anyone who says AI is useless

Most of those people are a bit bad at making their case. What they mean but don't convey well is that AI is useless for it's proclaimed uses.

You are correct that LLMs are pretty good at guessing this kind of well-documented & easily verifiable but hard to find information. That is a valid use. (Though, woe betide the fool who uses LLMs for irreversible destructive actions.)

The thing is though, this isn't enough. There just aren't that many questions out there that match those criteria. Generative AI is too expensive to serve that small a task. Charging a buck a question won't earn the $100 billion OpenAI needs to balance the books.

Your use case gets dismissed because on it's own, it doesn't sustain AI.


I think you’re on to something. I find the sentiment around LLMs (which is at the early adoption stage) to be unnecessarily hostile. (beyond normal HN skepticism)

But it can be simultaneously true that LLMs add a lot of value to some tasks and less to others —- and less to some people. It’s a bit tautological, but in order to benefit from LLMs, you have to be in a context where you stand to most benefit from LLMs. These are people who need to generate ideas, are expert enough to spot consequential mistakes, know when to use LLMs and when not to. They have to be in a domain where the occasional mistake generated costs less than the new ideas generated, so they still come out ahead. It’s a bit paradoxical.

LLMs are good for: (1) bite-sized chunks of code; (2) ideating; (3) writing once-off code in tedious syntax that I don’t really care to learn (like making complex plots in seaborn or matplotllib); (4) adding docstrings and documentation to code; (5) figuring out console error messages, with suggestions as to causes (I’ve debugged a ton of errors this way — and have arrived at the answer faster than wading through Stackoverflow); (6) figuring out what algorithm to use in a particular situation; etc.

They’re not yet good at: (1) understanding complex codebases in their entirety (this is one of the overpromises; even Aider Chat’s docs tell you not to ingest the whole codebase); (2) any kind of fully automated task that needs to be 100% deterministic and correct (they’re assistants); (3) getting math reasoning 100% correct (but they can still open up new avenues for exploration that you’ve never even thought about);

It takes practice to know what LLMs are good at and what they’re not. If the initial stance is negativity rather than a growth mindset, then that practice never comes.

But it’s ok. The rest of us will keep on using LLMs and move on.


I've been sold AI as if it can do anything. It's being actively sold like a super intelligent independent human that never needs breaks.

And it just isn't that thing. Or, rather, it is super intelligent but lacks any wisdom at all; thus rendering it useless for how it's being sold to me.

>which is at the early adoption stage

I've said this in other places here. LLM's simply aren't at early adoption stage anymore. They're being packaged into literally every saas you can buy. They're a main selling point for things like website builders and other direct to business software platforms.


Why not ignore the hype, and just quietly use what works?

I don’t use anything other than ChatGPT 4o and Claude Sonnet 3.5v2. That’s it. I’ve derived great value from just these two.

I even get wisdom from them too. I use them to analyze news, geopolitics, arguments around power structures, urban planning issues, privatization pros and cons, and Claude especially is able to give me the lay of the land which I am usually able to follow up on. This use case is more of the “better Google” variety rather than task-completion, and it does pretty well for the most part. Unlike ChatGPT, Claude will even push back when I make factually incorrect assertions. It will say “Let me correct you on that…”. Which I appreciate.

As long as I keep my critical thinking hat on, I am able to make good use of the lines of inquiry that they produce.

Same caveat applies even to human-produced content. I read the NYTimes and I know that it’s wrong a lot, so I have to trust but verify.


I agree with you, but it's just simply not how these things are being sold and marketed. We're being told we do not have to verify. The AI knows all. It's undetectable. It's smarter and faster than you.

And it's just not.

We made a scavenger hunt full of puzzles and riddles for our neighbor's kids to find their Christmas gifts from us (we don't have kids at home anymore, so they fill that niche and are glad to because we go ballistic at Christmas and birthdays). The youngest of the group is the tech kid.

He thought he fixed us when he realized he could use chatgpt to solve the riddles and cyphers. It recognized the Caesar letter shift to negative 3, but then made up a random phrase with words the same length to solve it. So the process was right, but the outcome was just outlandishly incorrect. It wasted about a half hour of his day. . .

Now apply that to complex systems or just a simple large database, hell, even just a spreadsheet. You check the process, and it's correct. You don't know the outcome, so you can't verify unless you do it yourself. So what's the point?

For context, I absolutely use LLM's for things that I know roughly, but don't want to spend the time to do. They're useful for that.

They're simply not useful for how they're being marketed, which is too solve problems you don't already know.


>We're being told we do not have to verify. The AI knows all.

Where are you being told all of these things? I haven't heard anything like it.


An example that might be of interest to readers: I gave it two logs, one failing and one successful, and asked it to troubleshoot. It turned out a loosely pinned dependency (Docker image) had updated in the failing one. An error mode I was familiar with and could have solved on my own, but the LLM saved me time. They are reliable at sifting through text.


Hostility and a few swift kicks are in order when the butt scratchers start saying their stochastic parrot machine is intelligent and a superman.


> So yes, LLMs will make mistakes, but humans do too

Are you using LLMs though? Because pretty much all of these systems are fairly normal classifiers, what would've been called Machine Learning 2-3 years ago.

The "AI hype is real because medical AI is already in use" argument (and it's siblings) perform a rhetorical trick by using two definitions of AI. "AI (Generative AI) hype is real because medical AI (ML classifiers) is already in use" is a non-sequitur.

Image classifiers are very narrow intelligences, which makes them easy to understand and use as tools. We know exactly what their failure modes are and can put hard measurements on them. We can even dissect these models to learn why they are making certain classifications and either improve our understanding of medicine or improve the model.

...

Basically none of this applies to Generative AI. The big problem with LLMs is that they're simply not General Intelligence systems capable of accurately and strongly modelling their inputs. e.g. Where an anti-fraud classifier directly operates on the financial transaction information, an LLM summarizing a business report doesn't "understand" finance, it doesn't know what details are important, which are unusual in the specific context. It just stochastically throws away information.


Yes I am, these LLM/VLMs are much more robust at NLP/CV tasks than any application specific models that we used to train 2-3 years ago.

I also wasted a lot of time building complex OCR pipelines that required dewarping / image normalization, detection, bounding box alignment, text recognition, layout analysis, etc and now open models like Qwen VL obliterate them with an end to end transformer model that can be defined in like 300 lines of pytorch code.


Different tasks then? If you are using VLMs in the context of medical imaging, I have concerns. That is not a place to use hallucinatory AI.

But yes, the transformer model itself isn't useless. It's the application of it. OCR, image description, etc, are all that kind of narrow-intelligence task that lends itself well to the fuzzy nature of AI/ML.


The world is a fuzzy place, most things are not binary.

I haven't worked in medical imaging in a while but VLMs make for much better diagnostic tools than task specific classifiers or segmentation models which tend to find hacks in the data to cheat on the objective that they're optimized for.

The next token objective turns our to give us much better vision supervision than things like CLIP or classification losses. (ex: https://arxiv.org/abs/2411.14402)

I spent the last few years working on large scale food recognition models and my multi label classification models had no chance of competing with GPT4 Vision, which was trained on all of the internet and has an amazing prior thanks to it's vast knowledge of facts about food (recipes, menus, ingredients and etc).

Same goes for other areas like robotics, we've seen very little progress outside of simulation up until about a year ago, when people took pretrained VLMs and tuned them to predict robot actions, beating all previous methods by a large margin (google Vision-Language-Action models). It turns out you need good foundational model with a core understanding of the world before you can train a robot to do general tasks.


> sorry, not to nitpick, but I am really not a fan of one-based indexing

It is very funny how this is just the one sole criticism that always gets brought up. Not that other problems don't exist, but they're not very talked about.

Lua's strength as a language is that it does a lot quite well in ways that aren't noticeable. But when you compare things to the competition then they're quite obvious.

E.g. Type Coercion. Complete shitshow in lots of languages. Nightmare in Javascript. In Lua? It's quite elegant but most interestingly, effortlessly elegant. Very little of the rest of the language had to change to accomodate the improvement. (Excercise for the reader: Spot the one change that completely fixes string<->number conversion)

Makes Brendan Eich look like a total clown in comparison.


To be fair, having to work with 1 based indexing when you're used to 0 would be a frustrating source of off-by-one errors and extra cognitive load


As someone who's used Lua a lot as an embedded language in the VFX industry (The Games industry wasn't the only one that used it for that!), and had to deal with wrapping C++ and Python APIs with Lua (and vice-versa at times!), this is indeed very annoying, especially when tracing through callstacks to work out what's going on.

Eventually you end up in a place where it's beneficial to have converter functions that show up in the call stack frames so that you can keep track of whether the index is in the right "coordinate index system" (for lack of a better term) for the right language.


Oh that’s super interesting, where in the VFX industry is Lua common? I typically deal with Python and maybe Tcl (I do mostly Nuke and pipeline integrations), and I can’t think of a tool that is scripted in Lua. But I’ve never worked with Vega or Shake or what this is/was called


Katana uses LuaJIT quite extensively for user-side OpScripts, and previously both DNeg and MPC (they've largely moved on to newer tech now) had quite a lot of Lua code...


Oh, I had no idea! I don’t have much to do with Katana, I just assumed it was also all python


It used to in older (pre 2.0) versions, but due to Python's GIL lock (and the fact Python's quite a bit slower than lua anyway), it was pretty slow an inefficient using Python with AttributeScripts, so 2.0 moved to Lua with OpScripts...


It absolutely is. For a language whose biggest selling factor is embeddability with C/C++, that decision (and I'm being polite) is a headscratcher (along with the other similar source of errors: 0 evaluating to true).


It's the perfect distraction: once you start accepting one-based, everything else that might be not quite to your liking isn't worth talking about. I could easily imagine an alternative timeline where lua was zero-based, but never reached critical mass.


Absolutely so. It’s just one obvious thing from a large set of issues with it.

One can read through “mystdlib” part of any meaningful Lua-based project to see it. Things you’ll likely find there are: NIL, poor man’s classes, __newindex proxying wrapper, strict(), empty dict literal for json, “fixed” iteration protocols.

You don’t even have to walk too far, it’s all right there in neovim: https://neovim.io/doc/user/lua.html


Perhaps that's the secret to lua's success: they got the basics so wrong that they can't fall into the trap of chasing the dream of becoming a better language, focusing on becoming a better implementation instead. Or perhaps even more important: not changing at all when it's obviously good enough for the niche it dominates.


This is very valuable! Thank you!


That's an interesting notion but I think that Lua had no competition - it was almost unique in how easy it was to integrate vs the power it gives. Its popularity was inevitable that way.


The language actually started as a data entry notation for scientists.


I don't really blame Lua for that, though. 1-based indexing comes naturally to humans. It's the other languages which are backwards. I get why other languages are backwards from human intuition, I do. But if something has to be declared the bad guy, imo it's the paradigm which is at odds with human intuition which deserves that label, not the paradigm which fits us well.


1-based indexing is not any more natural than 0-based, it’s just that humans started indexing before the number 0 was conceptualized.


https://www.cs.utexas.edu/~EWD/transcriptions/EWD08xx/EWD831...

Why numbering should start at zero. -- Dijkstra


Argument by authority.

To me 1 based indexing is natural if you stop pretending that arrays are pointers + index arithmetics. Especially with slicing syntax.

It's one of the things that irked me when switching to Julia from Python but which became just obviously better after I made the switch.

E.g. in Julia `1:3` represents the numbers 1 to 3. `A[1]` is the first element of the array, `A[1:3]` is a slice containing the first to third element. `A[1:3]` and `A[4:end]` partitions the array. (As an aside: `For i in 1:3` gives the number 1, 2, 3.)

The same sentence in python:

`1:3` doesn't make sense on its own. `A[0]` is the first element of the array. `A[0:3]` gives the elements `A[0], A[1]` and `A[2]`. `A[0:3]` and `A[3:]` slice the array.

For Python, which follows Dijkstra for its Slice delimiters, I need to draw a picture for beginners (I feel like the numpy documentation used to have this picture, but not anymore). The Julia option requires you to sometimes type an extra +1 but it's a meaningful +1 ("start at the next element") and even beginners never get this wrong.

That said, it seems to me that for Lua, with the focus on embedding in the C world, 0 index makes more sense.


I admire Dijkstra for many things, but this has always been a weak argument to me. To quote:

"when starting with subscript 1, the subscript range 1 ≤ i < N+1; starting with 0, however, gives the nicer range 0 ≤ i < N"

So it's "nicer", ok! Lua has a numeric for..loop, which doesn't require this kind of range syntax. Looping is x,y,step where x and y are inclusive in the range, i.e. Dijkstra's option (b). Dijkstra doesn't like this because iterating the empty set is awkward. But it's far more natural (if you aren't already used to languages from the 0-indexed lineage) to simply specify the lower and upper bounds of your search.

I actually work a lot with Lua, all the time, alongside other 0-indexed languages such as C and JS. I believe 0 makes sense in C, where arrays are pointers and the subscript is actually an offset. That still doesn't make the 1st item the 0th item.

Between this, and the fact that, regardless of language, I find myself having to add or subtract 1 frequently in different scenarios, I think it's less of a deal than people make it out to be.


In any language, arrays are inherently regions of memory and indexes are -- whether they start at 0 or 1 -- offsets into that region. When you implement more complicated algorithms in any language, whether or not it has pointers or how arrays are syntactically manipulated, you start having to do mathematical operations on both indexes and on ranges of index, and it feels really important to make these situations easier.

If you then even consider the simple case of nested arrays, I think it becomes really difficult to defend 1-based indexing as being cognitively easier to manipulate, as the unit of "index" doesn't naturally map to a counting number like that... if you use 0-based indexes, all of the math is simple, whereas with 1-based you have to rebalance your 1s depending on "how many" indexes your compound unit now represents.


And the reason to dismiss c) and d) is so that the difference between the delimiters is the length. That's not exactly profound either.

If the word for word same argument was made by an anonymous blogger no one would even consider citing this as a definitive argument that ends the discussion.


Associative arrays are also "nicer" with 1 based indexing

  t={}
  t[#t+1] --> t[1] DONE!
  t[#t==0 and 0 or #t+1]
Now, in order to fix this (or achieve the same behavior as #t+1), the length operator must return -1, which would be ridiculous. its empty, and we have a perfect representation of emptiness in math "0".

This is also true in awk as well, nobody ever whines about awk "arrays" being 0


Especially when one of the language's main purposes is to be embedded in applications written in other languages (which are predominantly zero based) - and so you tend to have a lot of back-and-forth integration between these two styles that can get confusing. Even from the C API side, for example, the Lua stack is one-based but addressed exclusively from the host language which is likely zero-based.


Don't forget that not equals is ~=, the horror.

The real gripes should be globals by default and ... nothing. Lua is wonderful.


"Don't forget that not equals is ~=, the horror."

I get you are taking the piss but ~= is just as logical as != being the symbols for: "not equals", if you've been exposed to some math(s) as well as ... well, ! means factorial, doesn't it?

Syntax is syntax and so is vocabulary! In the end you copy and paste off of Stack Exchange and all is golden 8)


! is commonly used as the unary not operator, so "a != b" makes sense as a shortcut for "!(a == b)". a not equals b.


But in Lua, the unary not is written as “not”.


For a language apparently inspired from Wirth, one would have expected <> (greater-or-lesser-than). But the real horror, to me, is Windows not letting one disable the so~called "dead keys" easily.


I'm more familiar with CSS than I am with Lua. The syntax for the former has a very different meaning[1].

  [attr~=value]
  Represents elements with an attribute name of attr whose value is a whitespace-separated list of words, one of which is exactly value.

[1] https://developer.mozilla.org/en-US/docs/Web/CSS/Attribute_s...


It's _ENV by default, it just defaults to _G.


Yeah, 36 years of Unicode and it's still not ‘≠’.


In unicode != on a keyboard


It is funny, isn't it? I always wonder how the language would be perceived had they gone with zero based indexing from the start.

I'm a big fan of Lua, including for the reasons you mention. I suspect the reason this one thing is always brought up is twofold: it's easy to notice, and it's very rare these days outside of Lua (if you consider VB.NET to be a legacy language, anyway). Other criticisms take more effort to communicate, and you can throw a rock and hit ten other languages with the same or similar issues.


>Makes Brendan Eich look like a total clown in comparison.

To be fair, Brendan Eich was making a scripting language for the 90's web. It isn't his fault Silicon Valley decided that language needed to become the Ur-language to replace all application development in the future.


Most of the blame should go to Netscape management. They didn't give Eich much time, then burst in before he was done and made him copy a bunch of things from Java. (The new language, codenamed "Mocha" internally, was first publicly announced as "LiveScript", and then Sun threw a bunch of money at Netscape.)

IIRC, Eich was quite influenced by Python's design. I wish he'd just used Lua - would likely have saved a lot of pain. (Although, all that said, I have no idea what Lua looked like in 1994, and how much of its design has changed since then.)


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

If you don't know what Lua was like then, don't wish that I'd "just used Lua".

Other issues include Netscape target system support, "make it look like Java" orders from above, without which it wouldn't have happened, and more.


Oh hi Yoz! LTNS! Hi Brendan!

It sounds like you're saying Yoz got the sequence of events wrong, and that MILLJ was a necessary part of getting scripting in the browser? I sort of had the impression that the reason they hired you in the first place was that they wanted scripting in the browser, but I wasn't there.

I don't think Lua was designed to enforce a security boundary between the user and the programmer, which was a pretty unusual requirement, and very tricky to retrofit. However, contrary to what you say in that comment, I don't think Lua's target system support or evolutionary path would have been a problem. The Lua runtime wasn't (and isn't) OS-dependent, and it didn't evolve rapidly.

But finding that out would have taken time, and time was extremely precious right then. Also, Lua wasn't open-source yet. (See https://compilers.iecc.com/comparch/article/94-07-051.) And it didn't look like Java. So Lua had two fatal flaws, even apart from the opportunity cost of digging into it to see if it was suitable. Three if you count the security role thing.


Hi Kragen, hope you are well.

Yes, the Sun/Netscape Java deal included MILLJ orders from on high, and thereby wrecked any Scheme, HyperTalk, Logo, or Self syntax for what became JS.

Lua differed a lot (so did Python) back in 1995. Any existing language, ignoring the security probs, would be flash-frozen and (at best) slowly and spasmodically updated by something like the ECMA TC39 TG1 group, a perma-fork from 1995 on.


Well, I'm not dead yet! Looking for work, which is harder since I'm in Argentina.

Flash-freezing Lua might not have been so bad; that's basically what every project using Lua does anyway. And by 01995 it was open source.

In case anyone is interested, here's a test function from the Lua 2.1 release (February 01995):

    function savevar (n,v)
     if v == nil then return end;
     if type(v) == "number" then print(n.."="..v) return end
     if type(v) == "string" then print(n.."='"..v.."'") return end
     if type(v) == "table" then
       if v.__visited__ ~= nil then
         print(n .. "=" .. v.__visited__);
       else
        print(n.."=@()")
        v.__visited__ = n;
        local r,f;
        r,f = next(v,nil);
        while r ~= nil do
          if r ~= "__visited__" then
            if type(r) == 'string' then
              savevar(n.."['"..r.."']",f)
            else
              savevar(n.."["..r.."]",f)
            end
          end
          r,f = next(v,r)
        end
       end
     end
    end
It wouldn't have been suitable in some other ways. For example, in versions of Lua since 4.0 (released in 02000), most Lua API functions take a lua_State* as their first argument, so that you can have multiple Lua interpreters active in the same process. All earlier versions of Lua stored the interpreter state in static variables, so you could only have one Lua interpreter per process, clearly a nonstarter for the JavaScript use case.

The Lua version history https://www.lua.org/versions.html gives some indication of what a hypothetical Sketnape Inc. would have been missing out on by embedding Lua instead of JavaScript. Did JavaScript have lexical scoping with full (implicit) closures from the beginning? Because I remember being very pleasantly surprised to discover that it did when I tried it in 02000, and Lua didn't get that feature until Lua 5.0 in 02003.


> It isn't his fault Silicon Valley decided that language needed to become the Ur-language to replace all application development in the future.

Which remains one of the most baffling decisions of all time, even to this day. Javascript is unpleasant to work with in the browser, the place it was designed for. It is utterly beyond me why anyone would go out of their way to use it in contexts where there are countless better languages available for the job. At least in the browser you pretty much have to use JS, so there's a good reason to tolerate it. Not so outside of the browser.


Wasn't the language he was making for the web Scheme?


No, Scheme was defined in 1975.


So? That doesn't stop Brendan Eich from putting it in a web browser 20 years later.


No, it does not. I see I misunderstood your q.


> To be fair, Brendan Eich was making a scripting language for the 90's web.

He was, and he doesn't deserve the full blame for being bad at designing a language when that wasn't his prior job or field of specialization.

But Lua is older so there's this element of "it didn't need to be this bad, he just fucked up" (And Eich being a jerk makes it amusing to pour some salt on that wound. Everyone understands it's not entirely serious.)


"Silicon Valley" is not an actor (human or organization of humans) that decided any such thing. This is like saying a virus decides to infect a host. JS got on first, and that meant it stuck. After getting on first, switching costs and sunk costs (fallacy or not) kept it going.

The pressure to evolve JS in a more fair-play standards setting rose and fell as browser competition rose and fell, because browser vendors compete for developers as lead users and promoters. Before competition came back, a leading or upstart browser could and did innovate ahead of the last JS standard. IE did this with DHTML mostly outside the core language, which MS helped standardize at the same time. I did it in Mozilla's engine in the late '90s, implementing things that made it into ES3, ES5, and ES6 (Array extras, getters and setters, more).

But the evolutionary regime everyone operated in didn't "decide" anything. There was and is no "Silicon Valley" entity calling such shots.


> "Silicon Valley" is not an actor (human or organization of humans) that decided any such thing.

Oh come on, you understand full well that they're referring to the wider SV business/software development "ecosystem".

Which is absolutely to blame for javascript becoming the default language for full-stack development, and the resulting JS-ecosystem being a dysfunctional shitshow.

Most of this new JS-ecosystem was built by venture capital startups & tech giants obsessed with deploying quickly, with near-total disregard for actually building something robustly functional and sustainable.

e.g. React as a framework does not make sense in the real world. It is simply too slow on the median device.

It does, however, make sense in the world of the Venture Capital startup. Where you don't need users to be able to actually use your app/website well. You only need that app/website to exist ASAP so you can collect the next round of investment.


Oh come on yourself.

Companies including Bloomberg and Microsoft (neither in or a part of Silicon Valley), also big to small companies all over the world, built on JS once Moore’s Law and browser tech combined to make Oddpost, and then gmail, feasible.

While the Web 2.0 foundations were being laid by indie devs, Yahoo!, Google, others in and out of the valley, most valley bigcos were building “RIAs” on Java, then Flash. JS did not get some valley-wide endorsement early or all at once.

While there was no command economy leader or bureaucracy to dictate “JS got on first but it is better to replace it with [VBScript, likeliest candidate]”, Microsoft did try a two-step approach after reacting to and the reverse-engineering JS as “JScript”.

They also created VBS alongside JS, worked to promote it too (its most used sites were MS sites), but JS got on first, so MS was too late even by IE3 era, and IE3 was not competitive vs. Netscape or tied to Windows. IE4 was better than Netscape 3 or tardy, buggy 4 on Windows; and most important, it was tied. For this tying, MS was convicted in _U.S. v. Microsoft_ of abusing its OS monopoly.

Think of JS as evolution in action. A 2024-era fable about the Silly Valley cartel picking JS early or coherently may make you feel good, but it’s false.


I don't think JavaScript will replace all application development in the future. WebAssembly will displace JavaScript. With WebAssembly you can use whatever language you like and achieve higher performance than JavaScript.


One based indexing is also the one thing every beginners course has to hammer into people, as its so non-intuitive until you know about pointers.


Honestly, it might almost act as a "honeypot" to give people a convenient target to complain about, which makes it easier for the rest of the language to get viewed as a whole rather than nitpicked. Sometimes I think people like to have at least one negative thing to say about something new they learn, whether it's to show that they understand enough to be able to find something or it's to be "cool" enough not to just like everything.


that would be a galaxy brain move on the part of lua.


To be clear, I'm not claiming that I think this was the original intent for implementing array indexes like this; I'm just theorizing that this might explain why this ends up being such a fixation when it comes to discusses downsides of Lua.


Do keep in mind that both Trump and Andreessen & co are not interested in deregulation for ideological reasons, only because this specific deregulation is favourable for the men in question.

It's not about "open AI" but just opposition to the tech giants. And as a consequence, there's a danger that they may pivot on AI regulation the moment anything happens to the current AI bubble that makes it unappealing for VC funding. (OpenAI & co raising the prices on the models to above operating costs would almost certainly eviscerate the AI startup scene)


Consider applying for YC's Summer 2026 batch! Applications are open till May 4

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

Search:

HN For You