I wonder if - there are sort of broadly speaking a few different types of learners.
Jensen Huang has been CEO of NVIDIA for 33 years. That is a role
with a very specific type of information environment. He is sort of this weird combination of specialist and - he necessarily has to operate within a certain level of abstraction.
I’m somewhere in the middle, I’m a high achiever but not the highest. I would say I’m above average in my usage of AI at my tech job. The way I’ve learned systems thinking is by being a bit non-specific in what I learn. British history, psychology, software engineering, queuing theory, cooking.
The idea of learning systems but not basic math - the idea of being too discerning in what I’m willing to learn. The entire idea of passing up the ability to learn something like basic math.
So many mental models of the world are developed by engaging with things like basic math. How do you learn systems without learning patterns behind numbers?
If the whole argument is something like it’s now about taste or creativity or being a builder? The way you learn those skills is engagement with all the things. It’s not abandoning all the things to read a book on systems thinking and product management.
It’s not never focus, but if your default position is “maybe I shouldn’t be curious about that”. You’re operating from a deficit.
I listened to this podcast and it was maddening. A few of his frames :
AI is just software, nothing new to see here.
AI safety is primarily a sandboxing problem.
There is no collective action problem, and every company should just slow down if they think they need to slow down.
There is no need for regulation because the existing incentives in the market keep companies from acting badly, which is why no company has ever done anything bad.
If something bad does happen, then we can regulate after the fact.
We will end up creating more jobs than we destroy, so don't worry about it.
Our kids might forget a whole bunch of stuff or never learn it in the first place. But don't worry, they'll come up with new things to learn instead.
The only way to get safety is to move faster because then we will more quickly arrive at safety.
Recursive self-improvement is just what we've always done.
The real danger is alarmism that might scare the public and the young people.
I think this is overly optimistic; it assumes universities reacted instantly and pivoted to teaching coding with AI as soon as it was feasible. In actuality, university curriculums cannot change quickly, and AI capabilities are changing much faster. In my experience, some students are using AI to write code, but then have no idea what's going on. The "skill" of typing "Write a function to do [basic thing]" will not make them AI-native or help them in the workplace.
It also is naive to think, if AI is shrinking head count, that companies will seek anything other than seniors.
2008 triggered a glut of cheap experienced workers that slowly reengaged juniors but this time that the entire ladder is going to be more valuable than any grad.
For CS students I agree. For non-CS students, who need programming as a way to use computers as a tool, I think they do need a solid understanding of what a computer does and what it's limitations are (and what it's capable of), but for their day jobs (once they graduate), they will most likely be getting AI to do everything for them. As long as they can reason about what's happening, to understand the results and to improve them, this seems likely to be the path in the future.
In my experience, some students are using AI to write code, but then have no idea what's going on. The "skill" of typing "Write a function to do [basic thing]" will not make them AI-native or help them in the workplace.
How many of them can read x64 or ARM assembly emitted by their compilers?
It’s how I deeply understand what a RAM lookup vs having it already in a register means for optimization.
Me, too, but we should both understand what we're talking about: a hobby.
It's like teaching cursive to schoolkids. All well and good, but don't you dare complain about limited classroom time for instruction in other, more important subjects.
Understanding how computer architecture works is a hobby? Is unimportant?
I built and deployed embedded systems robotics that protect water and oil pipeline infrastructure that costs billions of dollars if there is a failure.
That is not a hobby, that’s a career.
The tools I built just helped fix the fresh water access for my entire city of 2 million people. Explain to me what’s more important than people having access to water.
That's great, you sound proud of your work and you should be. But what about all the human pipeline-inspection crews you've put out of work with your robots?
That is a different matter. And you are probably wrong here as well. Plenty of people care about a program doing exactly what they want. Nothing more, nothing less. If not every one would have been writing programs in Ruby (not that Ruby is non-deterministic) .
Pro tip: Feedback fixes everything, including whatever you think is wrong with AI-generated code. If you can wrap a feedback loop around it, you can automate it safely. If you can't, then you're in a really bad place to begin with.
When I say that nobody cares about determinism, that's what I mean. Determinism is indeed important, but only at the delivery level. There are many routes to achieving it, none of which require you to write low-level code yourself. If you insist on doing that, you have a hobby, not a profession.
Everything needs to be test-driven now, in my experience. The test harness is the part that needs the most careful vetting.
My workflow used to be:
1. Draft rough spec
2. Write a bunch of C/C++ code
3. Test manually
Now it's more like:
1. Put some actual care into a detailed spec
2. Write equally detailed test harness spec
3. Hand both specs to clanker. Surf HN for a while
4. Review target code casually
5. Review test harness very carefully
6. Run test(s) manually (or, lately, get the clanker to do that too)
7. Iterate if necessary, going back to step 1, 2, or 3 as appropriate
This doesn't necessarily even save that much time, but it makes the job easier and more enjoyable, and it forces me to do things I should've been doing all along. If steps 1, 2, and 5 are done properly, step 4 can be "Meh, whatever, LGTM."
The analogy I like to use is Harold Black's work in the 1930s, trying to convince the patent office and his peers that yes, negative feedback is a huge, huge F'ing deal, because it only takes a small amount to make a large improvement in linearity. Anytime you have something that is 95% as good as it needs to be, it will be good enough if you can wrap a loop around it.
Oh, I didn't mean your token budget running out. I meant, when no prompt accomplishing the exact thing you want to do, and you have to dig in manually....
But you can always throw the entire program, and start from scratch...You have every behavior captured in tests, right?...right?
AI is not an abstraction layer. If you work entirely on the level of prompting without any knowledge or understanding of the underlying code, you are not actually an engineer, but more of a half-assed technical manager. (And your job will be first on the chopping block.)
This is an introductory programming course, designed for non-CS students e.g. engineers and scientists.
> Learning outcomes
> 2. Explain key concepts in AI-assisted programming, including Large Language Models (LLMs), prompting, problem decomposition, and top-down design.
> 3. Apply the workflow of AI-assisted programming and prompt-engineering techniques to guide and improve code generated by AI assistants.
This course used to be non-AI (last year), and they rewrote recently to incorporate AI tools, as they realised the writing's on the wall for non-programmers.
It must be quite challenging to write curriculum when the underlying technology (AI) is changing so quickly.
>"The first chip Huang worked on had 200 transistors, each of which he said he knew by name, while today’s engineers assemble systems from chips containing hundreds of trillions of them without ever working at that level. “Some of the lower-level knowledge is gone,” he acknowledged, and he later described AI as “clearly” a new abstraction level in the same progression."
for a guy who is in the middle of it all, the opinion seems sophomoric at best. LLMs are based on heuristics and they will always make mistakes no matter how better they get. You'd need someone to 'fine-tune' the conversation with the LLM.
love love this theoretically but in practice, at least in this “phase 1 of AI craze, unknown how long it’ll last” that someone coming out of Uni with deep knowledge of ABCDs of SWE will be unemployable unless she/he is AI native with harnesses coming out of their ears
With the massive layoffs there have been massive spikes of suicides and od deaths that will only get worse. Articles like this are simply trying to cover it up.
I'd love to see Huang's definition of abstraction in which AI is somehow "a new abstraction level" but having some contractors build your product is not.
I wonder if - there are sort of broadly speaking a few different types of learners.
Jensen Huang has been CEO of NVIDIA for 33 years. That is a role with a very specific type of information environment. He is sort of this weird combination of specialist and - he necessarily has to operate within a certain level of abstraction.
I’m somewhere in the middle, I’m a high achiever but not the highest. I would say I’m above average in my usage of AI at my tech job. The way I’ve learned systems thinking is by being a bit non-specific in what I learn. British history, psychology, software engineering, queuing theory, cooking.
The idea of learning systems but not basic math - the idea of being too discerning in what I’m willing to learn. The entire idea of passing up the ability to learn something like basic math.
So many mental models of the world are developed by engaging with things like basic math. How do you learn systems without learning patterns behind numbers?
If the whole argument is something like it’s now about taste or creativity or being a builder? The way you learn those skills is engagement with all the things. It’s not abandoning all the things to read a book on systems thinking and product management.
It’s not never focus, but if your default position is “maybe I shouldn’t be curious about that”. You’re operating from a deficit.
I listened to this podcast and it was maddening. A few of his frames :
AI is just software, nothing new to see here.
AI safety is primarily a sandboxing problem.
There is no collective action problem, and every company should just slow down if they think they need to slow down.
There is no need for regulation because the existing incentives in the market keep companies from acting badly, which is why no company has ever done anything bad.
If something bad does happen, then we can regulate after the fact.
We will end up creating more jobs than we destroy, so don't worry about it.
Our kids might forget a whole bunch of stuff or never learn it in the first place. But don't worry, they'll come up with new things to learn instead.
The only way to get safety is to move faster because then we will more quickly arrive at safety.
Recursive self-improvement is just what we've always done.
The real danger is alarmism that might scare the public and the young people.
Nothing bad can happen, it can only good happen.
I unironically agree with most of these points.
Happy path coding is certainly the most fun.
The implication being that you only ironically agree with the rest?
>We will end up creating more jobs than we destroy, so don't worry about it.
The destroyed jobs and the persons doing them will be different from the new ones created..
>If something bad does happen, then we can regulate after the fact.
How does regulating after the fact undo the harms caused?
> they'll come up with new things to learn instead.
Like they forgot how to communicate face to face, but have learned to communicate via social media?
A whole bunch of fluff without any evidence to back it up.
I think this is overly optimistic; it assumes universities reacted instantly and pivoted to teaching coding with AI as soon as it was feasible. In actuality, university curriculums cannot change quickly, and AI capabilities are changing much faster. In my experience, some students are using AI to write code, but then have no idea what's going on. The "skill" of typing "Write a function to do [basic thing]" will not make them AI-native or help them in the workplace.
It also is naive to think, if AI is shrinking head count, that companies will seek anything other than seniors.
2008 triggered a glut of cheap experienced workers that slowly reengaged juniors but this time that the entire ladder is going to be more valuable than any grad.
I'm not sure if AI use even aligns with the purpose of the university program, which is usually understanding.
For CS students I agree. For non-CS students, who need programming as a way to use computers as a tool, I think they do need a solid understanding of what a computer does and what it's limitations are (and what it's capable of), but for their day jobs (once they graduate), they will most likely be getting AI to do everything for them. As long as they can reason about what's happening, to understand the results and to improve them, this seems likely to be the path in the future.
In my experience, some students are using AI to write code, but then have no idea what's going on. The "skill" of typing "Write a function to do [basic thing]" will not make them AI-native or help them in the workplace.
How many of them can read x64 or ARM assembly emitted by their compilers?
How many of them will ever need to?
There's your answer.
I learned how to code assembly. Knowing it makes me a better developer.
It’s how I deeply understand what a RAM lookup vs having it already in a register means for optimization.
These are things you need to know if you want to work on high performance applications or in limited embedded systems.
So, yes, many of us need to and it’s important we keep teaching it to future students.
It’s how I deeply understand what a RAM lookup vs having it already in a register means for optimization.
Me, too, but we should both understand what we're talking about: a hobby.
It's like teaching cursive to schoolkids. All well and good, but don't you dare complain about limited classroom time for instruction in other, more important subjects.
Understanding how computer architecture works is a hobby? Is unimportant?
I built and deployed embedded systems robotics that protect water and oil pipeline infrastructure that costs billions of dollars if there is a failure.
That is not a hobby, that’s a career.
The tools I built just helped fix the fresh water access for my entire city of 2 million people. Explain to me what’s more important than people having access to water.
That's great, you sound proud of your work and you should be. But what about all the human pipeline-inspection crews you've put out of work with your robots?
I'm not putting any inspection crews out of work.
Humans put the tool in the pipe and analyse the data. This isn't newfangled shiny tech, it's old stuff designed and maintained from a decade ago.
There's no fancy AI, no magical automated robots. Just humans using EM tools to scan pipes.
I don't think reading disassembly is actually that weird. I spend a lot of time doing it at work.
>How many of them will ever need to?
This is a category error. LLMs are probabilistic. The ones run by an AI company over API, even more so.
Compilers are not.
LLMs are probabilistic. Compilers are not.
Nobody cares. Deal with it and get over it.
Your argument was dumb.
>Nobody cares.
That is a different matter. And you are probably wrong here as well. Plenty of people care about a program doing exactly what they want. Nothing more, nothing less. If not every one would have been writing programs in Ruby (not that Ruby is non-deterministic) .
Get over that camperbob2
Pro tip: Feedback fixes everything, including whatever you think is wrong with AI-generated code. If you can wrap a feedback loop around it, you can automate it safely. If you can't, then you're in a really bad place to begin with.
When I say that nobody cares about determinism, that's what I mean. Determinism is indeed important, but only at the delivery level. There are many routes to achieving it, none of which require you to write low-level code yourself. If you insist on doing that, you have a hobby, not a profession.
> feedback
What exactly do you mean by this? Can you give an example..
Everything needs to be test-driven now, in my experience. The test harness is the part that needs the most careful vetting.
My workflow used to be:
Now it's more like:
This doesn't necessarily even save that much time, but it makes the job easier and more enjoyable, and it forces me to do things I should've been doing all along. If steps 1, 2, and 5 are done properly, step 4 can be "Meh, whatever, LGTM."
The analogy I like to use is Harold Black's work in the 1930s, trying to convince the patent office and his peers that yes, negative feedback is a huge, huge F'ing deal, because it only takes a small amount to make a large improvement in linearity. Anytime you have something that is 95% as good as it needs to be, it will be good enough if you can wrap a loop around it.
>Review target code casually..
Lol, you are in for a world of pain when you run out of prompts!
It's a concern, all right. Fortunately my local rig won't "run out of prompts" as long as I pay the electric bill.
Oh, I didn't mean your token budget running out. I meant, when no prompt accomplishing the exact thing you want to do, and you have to dig in manually....
But you can always throw the entire program, and start from scratch...You have every behavior captured in tests, right?...right?
AI is not an abstraction layer. If you work entirely on the level of prompting without any knowledge or understanding of the underlying code, you are not actually an engineer, but more of a half-assed technical manager. (And your job will be first on the chopping block.)
Some unis have: https://programsandcourses.anu.edu.au/2027/course/COMP1730
This is an introductory programming course, designed for non-CS students e.g. engineers and scientists.
> Learning outcomes
> 2. Explain key concepts in AI-assisted programming, including Large Language Models (LLMs), prompting, problem decomposition, and top-down design.
> 3. Apply the workflow of AI-assisted programming and prompt-engineering techniques to guide and improve code generated by AI assistants.
This course used to be non-AI (last year), and they rewrote recently to incorporate AI tools, as they realised the writing's on the wall for non-programmers.
It must be quite challenging to write curriculum when the underlying technology (AI) is changing so quickly.
They’re all backpedaling hard on all that “AI is going to replace you” hype.
>"The first chip Huang worked on had 200 transistors, each of which he said he knew by name, while today’s engineers assemble systems from chips containing hundreds of trillions of them without ever working at that level. “Some of the lower-level knowledge is gone,” he acknowledged, and he later described AI as “clearly” a new abstraction level in the same progression."
Jensen gets it!
Related:
https://en.wikipedia.org/wiki/Coupling_(computer_programming...
https://en.wikipedia.org/wiki/Abstraction_layer
https://www.joelonsoftware.com/2002/11/11/the-law-of-leaky-a...
https://en.wikipedia.org/wiki/Tower_of_Babel
https://en.wikipedia.org/wiki/Prat%C4%ABtyasamutp%C4%81da
for a guy who is in the middle of it all, the opinion seems sophomoric at best. LLMs are based on heuristics and they will always make mistakes no matter how better they get. You'd need someone to 'fine-tune' the conversation with the LLM.
Universities need to be "hardcore" non-AI.
It is so, so easy to pick up LLM aided development.
What is way harder is self-managed slop mitigation which is only achieved with employees who know the A,B,C's of software development.
love love this theoretically but in practice, at least in this “phase 1 of AI craze, unknown how long it’ll last” that someone coming out of Uni with deep knowledge of ABCDs of SWE will be unemployable unless she/he is AI native with harnesses coming out of their ears
With the massive layoffs there have been massive spikes of suicides and od deaths that will only get worse. Articles like this are simply trying to cover it up.
I'd love to see Huang's definition of abstraction in which AI is somehow "a new abstraction level" but having some contractors build your product is not.