frontpage.
newsnewestaskshowjobs

Open Source @Github

fp.

Mistral Large 4

https://docs.mistral.ai/models/mistral-large-4-0
45•funnym0nk3y•19m ago•0 comments

Today's PHP security release, and how we're strengthening security

https://thephp.foundation/blog/2026/10/21/todays-php-security-release-and-how-were-strengthening-...
381•ejohnso49•3h ago•179 comments

Compromised LiteLLM 1.107.0 on PyPI Installs a Credential Stealer and Backdoor

https://safedep.io/litellm-pypi-compromise-credential-stealer-backdoor/
284•abhisek•5h ago•104 comments

Eight Bits of Trust: eMudhra's CA keys cracked in milliseconds

https://scotthelme.co.uk/eight-bits-of-trust-emudhras-ca-keys-cracked-in-milliseconds/
718•hkc•10h ago•355 comments

DuckDB 2.0.0 LTS “Cinnamon Teal”

https://duckdb.org/2026/10/21/announcing-duckdb-200
285•nnx•5h ago•29 comments

EA is shutting down BioWare

https://www.theverge.com/games/1015647/ea-is-shutting-down-bioware
254•aaronbrethorst•2h ago•144 comments

Why Windows 11 still ships with Windows 95's memory manager hidden inside it

https://www.windowslatest.com/2026/10/19/why-windows-11-still-ships-with-windows-95s-memory-manag...
18•khalidkhair•1d ago•9 comments

Patch the Planet: global response coordination as agents uncover vulnerabilities

https://openai.com/index/coordinated-disclosure-of-critical-vulnerabilities/
182•nr378•5h ago•113 comments

Oregon lawmakers approve money to buy an iconic waterfall listed on Redfin

https://apnews.com/article/oregon-waterfall-for-sale-lawmakers-996de63462d49ec3ad9bee1629fb9488
126•surprisetalk•4h ago•70 comments

Tiny possum and glider thought extinct for 6000 years found in remote West Papua

https://www.bbc.com/news/articles/cp814l80pw2o
91•bryanrasmussen•1d ago•7 comments

PHP 8.2.35

https://github.com/php/php-src/releases/tag/php-8.2.35
877•tuyuri•5h ago•492 comments

Claude Duet

https://claude.com/product/claude-duet
71•kuberwastaken•26m ago•73 comments

New plastic pollution discovered: 'Plasticorals' coral rubble fused with plastic

https://www.oist.jp/news-center/news/2026/9/18/new-form-plastic-pollution-discovered-shores-vulne...
44•giuliomagnifico•3h ago•13 comments

OpenAI models are coming to Google Cloud

https://openai.com/index/openai-models-google-cloud/
153•armcat•6h ago•57 comments

Anthropic's Public Benefit Charter

https://www.anthropic.com/public-benefit-charter
26•pretext•1h ago•8 comments

Canary Tokens

https://canarytokens.org/
32•wiradikusuma•55m ago•8 comments

GitLab CVSS 10.0 Integer Overflow issue

https://docs.gitlab.com/releases/patches/patch-release-gitlab-19-5-1-released/
9•artooro•39m ago•1 comments

Using thousands of AI agents to uncover new leads in biological data

https://openai.com/index/scaling-ai-research-for-complex-biological-data/
98•raahelb•6h ago•48 comments

The bridge to agent-scale Git infrastructure

https://github.blog/engineering/architecture-optimization/the-bridge-to-agent-scale-git-infrastru...
36•Klaster_1•3h ago•5 comments

Google's Rust Style Guide

https://google.github.io/styleguide/rustguide.html
10•kaycebasques•28m ago•1 comments

9 Mothers (YC P26) Is Hiring in Austin, TX

https://9mothers.com/careers
1•ukd1•7h ago

Drupal is now light-years ahead of its reputation

https://dri.es/state-of-drupal-presentation-september-2026
83•scottfalconer•1d ago•94 comments

Your MCU likely escaped the eMudhra intermediate CA compromise

https://danielmangum.com/posts/mcu-emudhra-intermediate-ca-compromise/
41•hasheddan•3h ago•17 comments

Meta ordered to pay $25B penalty in New Mexico Cambridge Analytica case

https://www.cnbc.com/2026/10/21/meta-new-mexico-cambridge-analytica-penalty.html
76•cbg0•1h ago•38 comments

The compiler was supposed to end programming too

https://hrih.si/articles/the-compiler-was-supposed-to-end-programming/
69•theanonymousone•1h ago•83 comments

Launch HN: Alter (YC S25) – Access control for multi-user agents

https://alterauth.com/
25•simfinii•12h ago•16 comments

C++ futures part 1: The mental model

https://devblogs.microsoft.com/oldnewthing/20261012-00/?p=112767/
53•ibobev•2d ago•11 comments

Trials and Tribulations of Native Lua Compilation

https://samyeyo.github.io/clx/blog.html
16•_samt_•3d ago•4 comments

Way to Play Super Mario 64: On Apple Vision Pro

https://www.pagetable.com/303
176•frizlab•2d ago•68 comments

Show HN: I told people I'm a convicted felon after 20 years of hiding it

https://buford.bg/
24•buf•3h ago•4 comments
Open in hackernews

The compiler was supposed to end programming too

https://hrih.si/articles/the-compiler-was-supposed-to-end-programming/
68•theanonymousone•1h ago

Comments

jmclnx•55m ago
Plus SQL, 4GL and a few others that came out over the years :)

Interesting Read.

margalabargala•52m ago
BASIC as well!
cwoolfe•52m ago
Yes exactly. LLM-assisted coding is just the next layer of abstraction. This has been happening to computer programming for decades. We've always been in search of a way to program in "natural language"
shaky-carrousel•49m ago
Yes, we found it in COBOL.
tdeck•42m ago
It's also an abstraction to hire a software engineer and tell them what kind of app you want, but I don't think we can call it "programming" at that point.
esafak•15m ago
Why? I oversee the design and implementation.
kazinator•40m ago
https://news.ycombinator.com/item?id=48641382

AI generation isn't an abstraction because you have to wrestle with the nitty-grittys of the output.

And that output is what you retain.

You can't clone someone's repository of nothing but prompts and rebuild from scratch.

Abstraction means that I trust the toolchains so much that I think of the source code as the software, and in the right kind of environment/ecosystem such as open source distros, I can actually ship that to the downstream users as my product.

Abstractions are based on very detailed and rigid logical contracts.

Zigurd•39m ago
Conversely, the reason agent assisted coding works so well is that all the tooling meant to keep human coders out of trouble, like lint, leak detectors, profiling tools, test harnesses, etc. prevent agents from making errors.

This is in contrast with general purpose agents like Meta Muse that make some amusing and horrifying errors. These kinds of agents don't have the interfaces and guardrails that were built for human coders. They use a lot of ad hoc screen scraping and guessing at what APIs do.

That's also why Apple and Google haven't shipped fully general purpose agents that use their new app tool calling interfaces yet. For example Google only released their Gemini agent that uses AppFunctions to enterprise customers. Presumably because MDM tools can be used to monitor agents' actions.

kazinator•50m ago
Nope; the compiler was supposed to end coding; when the word coding referred to taking an abstract program written on paper and translating it to machine code.

Compilers were first called automatic coders.

The word compiling referred to something more like linking: producing an image containing multiple library routines. In other words, similar to compiling an anthology of works into a book.

After compilers, the word coding to changed to writing program code in any language.

Because the tooling for automatic coding also compiled the bits of code into a larger image, the term compiler/compiling came to be used for the coding part also.

While the terms reshuffled, the concrete reality was simply that people worked less in assembly language, not that fewer people worked or that programming ended.

dvh•48m ago
This is similar disruption that terminals brought. Before terminals, programming was done in the computer room, it was social gathering, many programmers were women, people were debugging printouts on the floor, punching cards together. Then terminals came and everybody crawled into their dark solitary offices, staring at green or yellow phosphor screens of their terminals. Women didn't like it and left.
david-gpu•43m ago
Some people prioritize their paycheck over enjoying their job, and those people are AMAB more often than not.
post-it•40m ago
"Women didn't like it and left" is certainly an interesting interpretation of the systemic exclusion of women from a field when it transitions from low-prestige manual work to high-prestige intellectual work.
appplication•34m ago
> Women didn't like it and left.

I appreciate the rose-tinted, high-agency historical take, but I think the factors that led to computer science/programming becoming male-dominated were largely external to and independent of the preferences of women themselves.

mbil•47m ago
> It’s 7:40 on a Tuesday morning in 2031, and you haven’t written a line of code yet. You probably won’t today, and that’s fine.

This sounds exactly like all my Tuesday mornings this year, except that I wasn't at work at 7:40

cbarrick•35m ago
OP is describing a distopia.

I _want_ to write code for my job.

Unfortunately, this is exactly the direction the industry is heading.

solyin•24m ago
I'm sure the people that rode horses as their job loved to ride horses. Ah well.
seanw444•22m ago
People keep making these comparisons like they're equivalent. The whole point of AI is to replace the human factor. Horses being replaced by automobiles didn't remove the human factor. Humans continued to drive a different, non-organic vehicle for the following century.
ultrarunner•20m ago
This is fine until we reduce it all the way to "but I liked being a human"
goda90•20m ago
You're the horse in this analogy.
gonzalohm•44m ago
Can we please stop comparing AI with a compiler?

A compiler takes a programming language as input

float x = 3.1;

Has only one translation into assembly. The programming language is well defined (or it should be). If you try to do

float x = '3.1'; you will get an error

However, the human language is not a programming language. It's open to interpretation "create a variable x and assign it 3.1" is not a well defined programming instruction. Is x a number or a string? If it's a number, what's the precision. Etc.

voxic11•41m ago
might a compiler turn "float x = 3.1;" into no instructions at all in some situations? So it has at least 2 possible translations into assembly depending on the context.
gonzalohm•15m ago
And "code a to-do app" has infinite possible compilations. That's exactly my point. If C instructions already have multiple compilations that could end up in bugs, why make it even more complex? After all programming is not that complicated, are we really getting enough benefits by going up in the abstraction layer?
xkcd-sucks•36m ago

    In [1]: def f(x: int) -> float:
       ...:     return f"the input was {x}"
    In [2]: f(b'deadbeef')
    Out[2]: "the input was b'deadbeef'"
gonzalohm•17m ago
Python is a dynamically typed language. That's exactly my point! The less "strict" the language, the more open to interpretation.

It is not bad per se, but it comes with huge downsides. And the more abstract the language the messier it gets.

I just don't think that the gains in coding speed we get from using AI + human language as outweigh the downsides of having poorly defined programs

coldtea•43m ago
>The compiler was supposed to end programming too

Bad analogy. The case with AI is not the same.

Jtsummers•42m ago
And it's a false claim. Compilers and assemblers meant eliminating coding, turning your higher level expressions into machine code by hand. And they did exactly that. Very few people, primarily hobbyists or those with a very niche architecture, actually bother to write machine code by hand at this point for any significant amount of work.
tmountain•41m ago
Except, the lived experience today is that I don’t need to program to do my job anymore, and I say this as an engineer with almost 30 years of experience.
jacquesm•40m ago
If you can't see the difference between a compiler and an LLM then that's on you.

LLMs are a game changer in a completely different way than compilers. With compilers there is a (roughly, barring optimizations) 1:1 correspondence between input and output. With LLMs you take an idea and it will drive the whole thing from the beginning all the way to the end.

This is unlike anything that we've done so far. It's also strange to focus on programming: LLMs are coming for all information related jobs. If your job is somehow described as 'staring at a screen' then that job is on the line, if not sooner, than later.

amunozo•34m ago
It's definitely going to be a socioeconomic shock, but staring at a screen for 8 hours a day is something I won't miss.
esafak•17m ago
Aren't you just doing more work now, still staring at the screen, in the same eight hours?
rwyinuse•34m ago
I agree. Programming was just a natural first problem to tackle, but the impact will not be limited there. If you give today's best model access to all the data sources and systems an average white collar worker has, it probably could do most of their job. But organizational change takes its time, systems need to be integrated into new AI tools and so on, so it will take a while.

People tend to overestimate change in short term, and underestimate it in long term. AI hasn't replaced programmers yet, but I believe it will replace most white collar workers in 20 years.

jvanderbot•27m ago
kenjackson•40m ago
We do pretty much just use compilers now though. The last time I read dissassembly to fix an issue was at least a decade ago. Even bytecode I rarely look at.

So you're saying that we'll still be coding, but it will be through talking to our agents and only occasionally we will look at generated source? That seems like a pretty big change still.

ninininino•39m ago
Agents are more like employees, compilers are more like calculators.
jackb4040•37m ago
I have a pretty negative opinion about LLM's coding abilities (and predictions about how they will improve). But I don't get a lot out of this type of argument. Compilers created a perfect, deterministic, provable abstraction so that we could have 99% of developers no longer know how assembly works and not suffer any consequences. Humans don't have to give up any control or make any quality compromises to deploy them as widely as possible.

If the author is contending that AI models will improve to a point that they actually make no mistakes while coding, and have that same level of reliability, then they're on exactly the same side as AI doom trolls just wearing a different costume.

bookofjoe•32m ago
Best new phrase of the month: "AI doom trolls"
layer8•32m ago
> In 1954, IBM said FORTRAN would virtually eliminate coding and debugging.

Only because Fortran was viewed as transcribing mathematical notation, which wasn’t considered coding. Coding originally referred to having to work with numeric machine codes. Programming languages like Fortran removed the need for having to deal with how to encode the program for a specific machine, and to deal with human errors in that encoding process (debugging). It didn’t mean abandoning formal specifications that you can reason about with a high degree of precision.

I also want to take the opportunity to point out the concept of notation as a tool of thought, coined a quarter century later by IBM fellow Iverson in his Turing Award lecture: https://www.recurse.com/blog/58-paper-of-the-week-notation-a...

ryanSrich•31m ago
Idk where to start

First, it's a bad comparison. Compilers and LLMs/Agents are not remotely comparable.

Second, the example used for 2031 is already outdated in 2026. There is almost no reason to even use PRs anymore [1, 2], and the example question should be easily answered by an agent that has enough context and planning.

1. https://r.rich/blog/ai-native-change-management 2. https://ampcode.com/notes/thats-not-soc-2-compliant

bigfishrunning•11m ago
your experience with AI generated code, and AI code reviews, must be very different then mine.
vatsachak•26m ago
Yeah, after some thinking I am starting to realize that Linus' take of AI being like compilers is kind of true.

Vibecoding maintainable code requires providing the LLM a specification. It's still coding, but you now have the liberty of just providing the spec as opposed to worrying about syntax. Since they are non deterministic and love to cheat you still need to review though

jdw64•20m ago
I also looked into the history of software[1] thought a while ago, and the fact is that, setting aside the determinism of compilers, ultimately no matter what tool comes out, programmers will keep arguing about how software should be built

Looking at history, I think LLMs will settle down too. Because, in fact, if you look at the history of software thought, there were actually many people who would have welcomed LLMs.

[1]https://www.makonea.com/en-US/blog/people-who-build-things-t...

captainclam•16m ago
"The agent could write refund code all day long. What it can’t do is decide what your company owes a customer whose card has expired..."

In 2031: Why on earth not?

Jtsummers•14m ago
Because apparently this agent isn't capable of reading the business rules that exist today that determine things like that. Seems like the prediction is a regression over the next 5 years.
GuB-42•2m ago
> The spec and the tests become the source

Sufficiently precise spec is called code. It is the compiler story all over again.

Notably absent from the timeline is visual programming, or Rapid Application Development, think Visual Basic. It was all the rage in the 90s, and for some reason, we don't hear much about it today. We used to make fun of Visual Basic and the people using it back in the days, but the reality is that people with little skill could do something useful. Reminds you of something?

Honestly, I don't really understand why we write so much code today when a lot of use cases can be taken care of using templates and moving boxes into place, "low code" and "no code" never really seem to have taken off as much as they could have. That reliance on code was a boon for LLMs by the way, as text is the thing they have the easiest time working with.

My theory is that every project is unique in some way. As in, my CRUD has a little something that makes it different from other CRUD, and that's why it is valuable. You can't use an off the shelf component because no suitable component exists, and you want code because with code, you can express what you want with precision.

But it is also what limits AI. AI is very good at doing what other people did, but you don't want to do like everyone else, so you have to be very precise in what you are asking, and the most precise way of asking things is to write code.

However, when you really want what others did, then AI is really effective: rewrites, ports, decomp, etc... But this is not really programming, it is at best a translation job, and it will never be as good as the original. To make it better, you need to inject something unique, and for that, the best way to do it is with code. Like the translator of a novel who injects elements of his own culture that go beyond the work of the original author, to make up for what can't be literally translated.

pjmlp•21m ago
"Please send an email with subject XYZ to recipient ABC@somehere with this body AAA"

You can enter this as is on an Workato or Boomi agentic workflow.

For plenty of people this is how programming looks like in 2026.

Also your example has multiple translations into Assembly, depending on the optimizations levels, and where the statement happens to be located, it might even be part of auto vectorisation, or completely thrown away.

timerol•5m ago
Loading a float value of 3.1 does not have only one translation into assembly. On Godbolt, flipping through various ARM 32-bit compilers, I define a function that returns 3.1 as a float:

    float constant(void) {
      return 3.1f;
    }
And can get a handful of different results. I trimmed the function setup and teardown to simplify things.

Option 1 (loading high 16 bits and low 16 bits, then moving to fp register):

    movw     r3, #26214
    movt     r3, 16454
    vmov     s15, r3
    vmov.f32 s0, s15
Option 2 (hardcoding the hex value into program text and loading it into r0 via r3, no specific fp conversion):

    ldr     r3, .L3
    mov     r0, r3
    .L3:
        .word   1078355558
Option 3 (similar to 2, but using the load for SIMD and FP registers):

    vldr.32 s0, .L3
    .L3:
        .word   1078355558
You actually claimed two very different things.

1) that LLMs can do existing white collar work well once some (possibly significant amount of) work is done to fully plug them in and get specifications settled.

2) That all white collar workers will be replaced by LLMs.

Perhaps a typo, but I don't think (1) implies (2).

bigfishrunning•21m ago
> and get specifications settled.

In my ~20 year career in software, I've never once gotten adequate specifications. I honestly don't feel threatened.

ferris-booler•18m ago
I think the question of whether (1) implies (2) is the core of AI economic concerns. Will this be another 'normal' technological revolution where the jobs and workers adapt to provide value on top of the models that are able to automate their current work, or will there simply not be room in many areas to provide additional value on top of the automated work?

I think the latter would not occur under the current state of AI/LLMs, but the rapid pace of growth gives me pause.

mosura•34m ago
You can absolutely spot people that aren’t using the latest models personally because they succeed in clinging to notions that doing so would dispel in three seconds.

Opus 5.5 produces code far better than 95% of professional devs, and it only stands to get “worse” from here on out.

Quite where this leaves any of the people in these information processing jobs is anyone’s guess.

mjhay•31m ago
Opus makes boneheaded mistakes and engages in severe anti-patterns constantly. I use it, but it requires careful handholding on complex projects. It absolutely isn’t better than 95% of professional devs, that’s a ridiculous statement.
georgemcbay•24m ago
> Opus makes boneheaded mistakes and commits enormous anti-patterns constantly.

I would agree that it still does, but much less often than it did in the past. Compare what it produces today vs what it produced one year ago and the improvement is staggering.

(I'm talking across the whole LLM spectrum here, not really Opus in particular).

And AI doesn't have to replace literally 100% of the workforce to have a catastrophic economic impact.

If AI takes 50% of the jobs instead of 100% the economic destruction is roughly the same in the sense that you will already hit calamitous society-level tipping points long before you replace literally everyone.

For context the Great Depression was "only" 25% unemployment.

ithkuil•9m ago
Yes it does but yes you can also steer it clear of those mistakes in a similar way as you would have to steer tour human team.

It still requires a lot of work and care to leverage correctly and it's a moving target.

But it's quite impressive

goolz•27m ago
While this may be true Opus 5.5 still sucks at a ton of things that make being a software engineer a software engineer.
georgemcbay•9m ago
> While this may be true Opus 5.5 still sucks at a ton of things that make being a software engineer a software engineer.

It absolutely does in some ways, but how confident are you that this will continue to be the case indefinitely?

What has filled me with a low-key but growing existential dread over the past year isn't the snapshot of where LLMs are right now, but the continual rate of improvement, particularly since approximately November 2025 to now.

pjmlp•8m ago
Office politics for one.
azey47•24m ago
I’m not sure I agree. I’m using Fable 5.1, Opus 5.5, and Astra on a continual basis all day long professionally for software development but it’s still very much the case that the models are inclined to over-engineer and produce fairly sloppy code. Of course the ROI is outstanding and I wouldn’t go back but I still find it’s necessary to have robust sets of rules around how to write code by domain. We have DB rules and conventions, React rules and conventions, etc. which help steer output towards something sensible. I would basically never ship “out of the box code” from these models and still periodically do “slop cleanup” throughout our codebase.
B4uler5•21m ago
I have used Opus 5.5, it is great when the shape and outcome is simple and well trodden but as soon as you ask it for something more novel it is liable to drop the ball, and leave you cleaning up the mess. I feel so gaslit by comments like this. What devs do you know that code like Opus 5.5? Are they also marvelling at its incredible output as if they’ve seen God? Maybe the tech industry needed a culling because people really be voluntarily shouting about how terrible they programmed without AI, its embarrassing.
mosura•10m ago
You’re holding it wrong.

Treat it like it’s got an inspired brilliant side, talk to it as if it has, and it will show it. If you talk to these things like they’re idiots they act like them - this is one of the most unfortunate aspects of the whole development.

I am seriously seeing it churn out well structured clean code solving problems that saying 95% of devs couldn’t do is being generous, to the humans.

sunaurus•14m ago
I hear this meme of "Opus writes better code than me" repeated a lot. I am absolutely baffled by it.

I use all the latest and greatest Anthropic (and OpenAI) models, and interact with them probably on average 10h a day. I experiment with changing effort levels, with different ways of prompting and guardrailing, etc. Giving more instructions, giving less instructions. Doing heavy planning, just giving vague ideas.

I've done everything from fully vibe coding massive projects, to using LLMs regularly in my day job and reviewing every single line they produce.

Unless you are *really* on top of your agents, they inevitably end up writing an absolute mess. Not only does the code become impossible for humans to reason about very quickly, it actually becomes difficult for agents to reason about it. It turns into a total garbage in = garbage out situation.

Have you honestly reviewed a vibe coded project after it has been going for a while, even one written by current SOTA models, and thought "yep, this is great code"?

mosura•2m ago
Yes. A project I am working on now the code quality it is producing I would put at less than ten people I have ever met could do, and they would struggle with the OCD tedium induced.

There is clearly a trick to coaxing these results, and a major factor is to treat the model like it is something you fully expect to get it right because it knows how to do it, not you micromanaging it into compliance.

srdjanr•34m ago
I think a better comparison is website builders, and people still paid web devs.
bcghbcdy•33m ago
bro they've been saying this for five years now and the only people affected are copywriters and translators, and for the latter, unwisely. it is absolutely not coming for all white collar jobs. anyone who uses a coding agent sees these things fail in familiar machine misunderstanding ways that make sense to programmer, and in roles where data is not easily captured in text, humans are needed to keep the LLM in touch with reality

when is it going to happen already? OpenAI says Astra is AGI. why hasn't your prediction already come to pass? it's not early, it's late, these companies owe $1.5T. It's time for your side to start explaining why exactly GPT 3 or 4 or 5 or Astra hasn't already caused this in the way it's been predicted over and over by the labs

bananamogul•31m ago
Hasn't Sam Altman achieved AGI three different times now?
automatic6131•30m ago
No it isn't lmao, it's coming for the rote, statistically average part of a job. It can't do the unexpected. While it has turned out that the unexpected is way, way smaller than many presupposed, it remains true. And if it did take over all information jobs, that would be the end of LLM improvement, forever. Hapsburg, model degeneration, whatever.
layer8•26m ago
> It can't do the unexpected.

Employers typically want their employees to do what’s expected from them. ;)

pjmlp•28m ago
Only for those not up to date with modern compilers and language runtimes.

The 1:1 is long gone, that is the UNIX K&R C days.

Modern compilers are full of heuristics, PGO driven optimizations, machine learning compiler passes, JIT compilers, and various kinds of GC implementations, the time of 1:1 mappings is long gone.

john_strinlai•24m ago
while true, this does not change the overall point the parent was making.

i cannot type "make me an exploit based on whatever these diffs fixed" into a compiler and get usable output. and i cannot type "make me a budget, here is 6 months of credit card receipts" into a compiler and get a budget. etc.

pjmlp•19m ago
Learn to use low code, no code tools with agentic workflows.

Here are some suggestions,

Workato, Boomi, Sitecore AI, Optimizely Opal, Workfront AI...

You will naturally have to split the budget calculation in a few agentic nodes, and maybe a couple of tools.

john_strinlai•17m ago
>no code tools with agentic workflows. [...] a few agentic nodes, and maybe a couple of tools

i thought we were talking about compilers vs. llms.

pjmlp•13m ago
Compilers are one way to implement execution workflows, which can be surfaced in many forms.

Agentic programming tools are nothing other than the old ideas from UML code generation in a new package.

cwnyth•16m ago
I'm not sure you're even reading the comments to which you're replying.
pjmlp•12m ago
More like some people are in denial where we unfortunately are all going, the dream of 4 GLs predating previous AI winter.

Better accept that in a few more model iterations, the code being generated is a matter of changing a markdown file.

xw333•5m ago
I'm not so sure about that in the generic sense.

This sentence from the article really stuck out to me.

> and you write the rule down so clearly that nobody (human or otherwise) has to guess again.

Writing rules, or steps, unambiguously in a high level language and having those statements translated to lower level languages, that ultimately get executed by a machine, is what compilers do.

jacquesm•24m ago
I did say barring optimizations to ensure that that was taken into account. The link is a deterministic one, which is what matters. If the program would do something you did not program you'd see that as a compiler bug.
pjmlp•17m ago
Yeah, but only toy compilers don't do optimizations.
Veserv•3m ago
Which is a strawman. They are clearly attempting to say that a compiler is supposed to generate a program that is semantically identical to the source code.

All observable and defined side effects should be identical otherwise you have a compiler bug. Optimizations that are not generically semantics preserving may be used, but should only be used where the program is semantically identical for your use case otherwise you have incorrectly used the options available in your compiler.

nostrademons•12m ago
There's a whole rats nest of undefined behavior (at least in languages like C, C++, PHP, and Perl) where it's very easy to write a syntactic utterance whose output is not deterministic, and the usual outcome is "your machine is now pwned". A significant portion of the Internet was taken offline this morning because of one, with numerous HN stories documenting it.

Newer languages consider this to be a misfeature, and have taken pains to define far more of the language semantics outright, even if the definition is simply "This is a compile error" or "This is a panic." It's interesting that we're now going back the opposite way with LLMs, with their ability to generate code that does something for any natural-language prompt being a major selling point.

bluegatty•21m ago
"With LLMs you take an idea and it will drive the whole thing from the beginning all the way to the end."

Well if you think that's what it's doing - that's on you.

For gosh sakes, start with Claude Shannon's 'noisy channel problem' and consider why the notion of idea -> program is a fallacy.

That's for the Wix, Lovable and Shopify - wherein AI is only a component, and where the conditions are highly constrained.

To manage the output in detail, we need abstractions ... which do not exist.

Code -> Machine Instructions is not a noisy channel - it's deterministic.

Idea -> Code is theoretically not possible at any scale in a stable scenario because it's not deterministic, it won't make 'what you want' - then you have to spend a Million Mythical Man Hours to get it to do what you want.

Given that only a small portion of a developers job was ever 'writing code' in the first place - and that we write on average a fairly small number of 'usable lines of code' per day, the 'coding' was never it.

Research, prototypes, corners cases, help, bug fixes, ideation - so many ways it's powerful ... but not like a compiler.

Ignoring AI is like ignoring the industrial revolution, but AI is something very different than.

Also while some jobs are going to go - software hiring is up, not down - that should be a clue.

john_strinlai•18m ago
>For gosh sakes, start with Claude Shannon's 'noisy channel problem' and consider why the notion of idea -> program is a fallacy.

start with opening up codex or whatever you use. type "make me a calculator app". get your calculator app in an hour or whatever.

it's fair to describe this process as taking an idea and getting a program.

nostrademons•21m ago
> With compilers there is a (roughly, barring optimizations) 1:1 correspondence between input and output.

This is repeated in a lot of comments here but hasn't really been true for a while. I remember, c. 2010, Kenton Varda complaining to Google's internal compiler team about how it generated some particularly non-intuitive assembly code out of the protobuf generated code, and the response was "Yeah everything is adaptive optimization now. Benchmark it and give us a profile and we'll put it in the compiler test suite. Trying to reason about what the compiler is doing and micro-optimize accordingly hasn't worked since the mid-90s."

I do think that LLMs are a step change in how we program computers, but the main step change is that the source language is now English, which opens up programming to a wider market accordingly. And this'll come with all the downsides of English: the ambiguity, lack of precision, multiple meanings, and so on. If you try to recover that control over what the computer generates, you end up reinventing computer science. (Which isn't that far off from how I use LLMs to program: anything that has widely accepted "best practices", I'll just let the LLM do, but if there's anything novel or requiring high-precision, I'll tell it "leave that function body blank; here are the inputs and outputs to the rest of the program; I will fill in the algorithm details myself.")

I also think that people are underselling the extent to which compilers were a step change to previous practices of programming. For someone accustomed to C, try doing register allocation or inlining yourself; you will suck at it, and it will take up the vast majority of your head space that could be spent on better things. For someone accustomed to a garbage-collected language like Python, try doing manual memory allocation and object ownership yourself; you will suck at it, and it will take up the vast majority of your head space that could be spent on better things.

win311fwg•19m ago
> With compilers there is a (roughly, barring optimizations) 1:1 correspondence between input and output.

Maybe if you are using a compiler to provider a portable assembler (i.e. C) where ~1:1 mapping is the whole point. But in that case you'd be actually be using assembler instead in a world where all CPUs were the same.

That is very narrow view, though. Often — and I'd say most often — people use compilers so they can think in higher levels of abstraction, like SQL. Taking SQL and adding millions or billions of additional keywords doesn't really change anything with respect to the concept. Its still the same thing at the end of the day, even of those millions/billions of additional keywords are much more powerful than a small set of keywords.

david-gpu•16m ago
Whenever I read these arguments, it seems to me like folks are talking past each other because programmers tend to fall into two camps.

Those who spend time thinking about a problem, then writing design notes, specifications, and test plans, and focus on the implementation last. For these people, AI agents primarily act like an extension to their existing toolchain, and thus like the analogy of "AI as the new compiler".

The other side are people who don't like writing specifications and such, and rather prefer to sit down figure things out as they start coding. For them, an agent feels radically different from a compiler.

In both instances the AI agent is still the same tool, with the same real-world capabilities and limitations. It is not like one camp is blind, they just have very different workflows.

It also seems to me like many in the "sit down and code" camp then slowly figure out that doing some planning ahead of time helps them get better results, and they see this as another AI-led paradigm shift, when in reality it is how many other programmers have worked for decades.

CoolestBeans•1m ago
Everyone in this thread is being pedantic about what optimization is but missing the point that code is a precise description of some virtual machine that is realized with near perfect accuracy by the compiler. Yeah you don't know exactly what the silicon is doing with a modern compiler but you do know that the final result of the program for any input will be defined by whatever the correct interpretation of the program is, as if the structure the programming language implies actually existed.

LLMs are not this, and they cannot be this because it is their ability to operate on vague instructions that make them as powerful as they are. They can take an imprecise natural language description of a process and realize it as a process in a programming language. The problem is that understanding and manipulating the precise problem description is your job as a software engineer. The LLM can and will make its best attempt based on what exists in its training data, but it cannot know what is the precise behavior that actually fulfills goals and I think, contrary to the parent article, it cannot determine where the edges are to ask you with enough certainty that you will be able to take your hands completely off the wheel.

I think the nature of LLMs also explains why it is good at the verticals it is good at. Porting is an extremely well defined, replicate the behavior on another platform. There are far fewer vagueries in that. Game dev is not extremely well defined, but the consequences of imprecision do not have a lot on the line. Furthermore, games are pretty self-contained, so there's not a lot of guessing about what could happen or what the behavior of a counterparty system could be. With some pretty big exceptions, it is all there for the LLM to see in C++ (or whatever).