We will be focusing more higher level design - which database, where the data flows, which service is used where and so on. So you will just need different skills. Coding as a skill won't be that important.
It always turns out that when you have to make a computer execute a very precise set of operations, the absolute best way to communicate this is not English, not diagrams, but code.
It also turns out that the challenge is generally not writing that code, but figuring out that precise set of operations in the first place.
Many of these tools, have started to go one step further, and the traditional ways are supplanted with AI, reducing even further the amount of low code/no code scenarios that a human has to produce.
The only thing left are the few serverless deployments to call into some code that needs more complex integration logic, and that is about it.
I have seen enough of these projects, to realize it is going to happen, not everywhere maybe, but in specific industry sectors certainly, it already is.
I'm just going to leave this here...
On the foolishness of "natural language programming".
- Dijkstra
https://www.cs.utexas.edu/~EWD/transcriptions/EWD06xx/EWD667.htmlBut you just said
> Coding as a skill won't be that important.
So coding is only important if you need to make your software actually work, I guess?
Just like I sometimes need to understand and dive into assembly but not always. Its a spectrum and the value in the spectrum changing has consequences for how we work.
Yes, all those ever-growing layers of intricate abstraction that you take for granted and “don’t have to worry about” are conceived of, designed, built, and maintained by developers. Who do you think wrote the compiler for that syntax you don’t want to learn?
No one in my company writes assembly. very few developers work at that level of abstraction - this means those who made the compilers are doing a good job.
That’s kind of my point: most people will work on higher abstractions but there will be some who maintain lower ones.
I write C# but I barely care about memory, gc nor microcontrollers nor assembly. Vast majority of people work on higher abstractions.
I don’t worry about assembly because the abstraction layer is reliable. I don’t worry about ISAs, ucode, transistors, etc. the abstraction layer is reliable.
The same is not true for LLMs today. Circumstantial evidence: people commit the lower layer. That’s not an abstraction any more than an IDEs tab complete or “new project template” is an abstraction.
When someone stops reading the output entirely and has a codebase that is only prompts, I’ll hear them out on skill obsolescence.
(Edit: changed to hypothetical)
Individual lines of code can bring down an entire system.
> and syntax
I’ve never seen this be a real issue even for lower performing devs.