5 ms·
What is programming if not a structured language for describing tasks to a machine. We are not there yet, but outside of the world of core technology, most of t
by _pdp_ 3y ago
What is programming if not a structured language for describing tasks to a machine. We are not there yet, but outside of the world of core technology, most of the programming we will see in the near future will be essentially telling the machine what to do in natural language. So if you want to have some form of job security my recommendation is to go lower level and work on the fundamental pieces of tech because the higher level stuff will be automated away.
- krebby 3y agoWhat's "lower level" in this context? And why shouldn't we assume that assembly language or even circuit design will also be affected by describing in natural language? We've heard variations on this argument for decades and I see no difference why LLMs, despite their immense capabilities, will be massively different. They still take guidance and produce garbage output which requires knowledge and expertise to turn into a cohesive product. Will they replace some script writing, or some business logic translation? Of course. But so did SQL, no-code, and plain-English testing frameworks. LLMs are an incredibly powerful tool but they're not a silver bullet.
- ps256 3y agoThere's nothing stopping LLMs from being good at low-level stuff.
- ilaksh 3y agoRight. It seems like LLMs can be both a huge advantage for one-on-one instruction, but at the same time could just do many tasks for you. Code generation AI systems will continue to get better rapidly. They are not just language models anymore but now can include image input and output. There will be systems trained (or context "trained") for software platforms that put a wide variety of task configurations within easy reach by translating to relatively small amounts of DSL code. The next revolution may come from applying things like Monte Carlo search to concrete domains defined on the fly by LLMs. Or just a tight integration between implementation and testing within the platform and AI loop. Also consider the programming ability increases when models are trained to be able to unroll state very accurately within their platform domains as part of the software design process. Looking anywhere from a few months out to say five years, we should anticipate increasingly capable and more general AI programming systems. Who knows how long it will take for these systems to be fully deployed in all areas. But beyond five years or so, it is kind of hard to imagine what the leading-edge capabilities of these types of systems might be. Maybe no one will want to buy a particular computer game or application anymore. Instead, you buy an AI programmer that comes with a kit for configuring and even coding some custom parts of software specifically tailored for you. Maybe the only thing that really sells at some point are AI asset streaming services which allow your existing AI swarms to on demand pull in new neural radiance models, behavior models, neural world state models, neural avatar models, domain experts, document drafters, etc. These will be integrated with mixed reality. So you are looking at basically portable Holodeck providers. The commodification of all types of skills and knowledge, manifested in person on demand.
- samatman 3y agoThe ability to use natural language as an input to produce code isn't going to eliminate the profession. It will provide an onramp for learning, and allow civilians to learn easier (not faster necessarily) and automate some things themselves, which is a good thing. An LLM is never going to be able to figure out what you need written, and bug-free code is a big ask, putting it mildly. Even structurally correct code is a bug if it doesn't actually do what you want. Someone still has to understand the problem domain, design an architecture to solve it, and verify that it does what it's supposed to do, this is a professional position, no way around it. Where we are now, Copilot and friends are a nice assist for drudge work, a way to learn new libraries/APIs/languages, but a danger to beginners (you have to be able to proof the code it produces, it will still frequently make straightforward errors) and for experts it's less useful. As they improve I expect them to become an essential part of the profession, but they aren't actually able to replace it.