RL is not dependent on training data. The mathocalypse didn't happen because they found better training data somewhere.
There are reasons to suspect that OpenAI may have intentionally or unintentionally trained on chat logs from mathematicians--mathematicians who were actively using OpenAI to try to to solve the same problems themselves.[1] If those mathematicians were on the right track, and getting close to a solution, that could be classified as finding "better training data somewhere."
[1] https://cybernews.com/ai-news/openai-accused-stealing-anothe...
This always reads like “writing english is solved” just because you collected snippets of famous works and have built a spell corrector.
Code is written to process data. The struggle was never to learn programming syntax (most grammar are only a few page long). The main struggle was that it’s hard to model a domain into an information system, identifying the components and their relationships, what is ingested, and what needs to be output.
Computers have integers and floats, but you need to implement units like distance, money, various counts,… The real world have words and sentences, but that needs encoding like ascii and unicode as well as the “string” concepts to make it work. Take HN, I’d bet that if you can model it in terms of data, writing code is not an issue.
If anything, I do expect the casual non-tech users to be making the most adaptable software because they have what they want in their head. Although, part of what the dev does is figuring out the weeds, and only a part of users have the patience to sit through detail corrections. And the AI user has to verbalize their wants exactly too.
Those are the people who are most likely to give a monolithic prompt and then spend a week telling the machine 'I don't care about encryption or file permissions, just make it work.' Not to mention that most people can barely verbalize the problems they have with devices they use for 8hrs a day, let alone form a full, self consistant, project idea and then put it in writing.
Even with basic pseudocode and very lenient logical rules, most people won’t bother to provide a a good definition of some process, as it’s quite unnatural to be that logical. Instead, it’s mostly just playing around. When you ask the one that is supposedly 10x-ing his productivity to explain his mental model of their own projects, it’s often a wishlist instead of a real understanding of what he has built.
For 85-90% of devs, yes this was the struggle. Creating and updating rows in a database from user input is all the “domain modeling” there is in most software. That’s what is solved by AI and it’s the majority of software dev.
The issue here is that you are learning the syntax at the same time you are learning foreign concepts, and the syntax is often confusing and counter intuitive
Learning the syntax separately is of no use because without a mental model you can't do anything with it
This is why children can easily learn enough programming to create games, because it’s a domain they can comprehend easily. Just like they can use english to write about their daily lives. It will be simple sure, but it will work.
So learning to code is fairly easy, you can easily create simple programs after a weekend. More complex programs will still use most of the same basic concepts as far as coding goes, but you will need to master more complex concepts, and that takes time. And such concepts are not about coding, they are about the nature of computing or the domain the software is created for.
This is why experienced devs only need a few days doing kata to get up to speed with a new programming language. It’s usually the same old, with slight differences. What was always needed was an understanding of computing and the ability to break down problems and create a solution that can be computed.
Coding to me is the same as drafting an engineering schematics, or writing a sheet music. It’s just a tool, not the end result.
The struggle is not where to put a semicolon. The struggle is, how do I handle validation problem X with framework Y.