Earlier quoted context omitted.
This resonates strongly with me. I don't want to describe the painting, I want to paint it. If this is indeed where we end up, I don't know that I'll change professions (I'm 30+ years into it), but the joy will be gone. It will truly become "just a job".
I remember back in the 80s I had friends who enjoyed coding in assembly and felt that using higher-level languages was "cheating" - isn't this just a continuation of that?
Thoughts on the Future of Software Development
191–200 of 434 posts
Re: Thoughts on the Future of Software Development
#192As long as there is no AGI, no software engineer needs to be worried about their job. And when there is, obviously everything in every field will change and this discussion will soon be futile.
I would argue future engineers should be worried a bit. We no longer need to hire new developers. I was not trained professionally yet I'm writing production code that's passing code reviews in languages I never used. I will create a prompt, validate it compiles, passes tests, have it explain so I understand it was written as expected and write documentation about the code, write the PR, and I am seen as a competent…
Your coworkers likely aren't doing a very good job at reviewing, but also I don't blame them. The only way to be sure code works is to use it for its intended task. Brains are bad interpreters, and LLMs are extremely good bullshit generators. If the code makes it to prod and works, good. But honestly, if you aren't just pushing DB records around or slinging HTML, I doubt it'll be good enough to get you very far without taking down prod.
Re: Thoughts on the Future of Software Development
#193Re: Thoughts on the Future of Software Development
#194from min 1:29:55 — Sam Altman & Lex Fridman’s new interview, incl questions about AGI
https://youtu.be/jvqFAi7vkBc?si=tZXNdVnOSk1iWX34
I agree but there will likely be demand for experts to help direct AI to create a better solution than otherwise and even write pseudocode and math formulas sometimes. The key is for the expert to understand the user’s needs better than AI by itself and ideally better than the user themselves.
Many/most software engineers could act more like art directors rather than artists, or conductors instead of musicians.
Re: Thoughts on the Future of Software Development
#195It's a good overview, but I think there's one important aspect that's not discussed. We're looking at AI competing with the jobs that programmers do today, but it's likely that these new AI tools will change software itself. I mean, why have a complicated UI with design/validation/etc when you can just tell your phone you want a plane ticket to Paris tomorrow ? I'm just going to guesstimate that at least half of the…
Re: Thoughts on the Future of Software Development
#196Earlier quoted context omitted.
Can't we just RLHF code reviews?
RLHF works on problems that are difficult to specify yet easy to judge. While RLHF will help improve systems, code correctness is not easy to judge outside of the simplest cases. Note how on OpenAI's technical report, they admit performance on college level tests is almost exclusively from pre-training. If you look at LSAT as an example, all those questions were probably in the corpus. https://arxiv.org/abs/2303.0877…
But that's the thing, that it seems that everyone here on HN (and elsewhere) finds it easy to judge the flaws of AI-generated code, and they seem relatively consistent. So if we start offering these critiques as RLHF at scale, we should be able to bring the LLM output to the level where further feedback is hard (or at least inconsistent), right?
Re: Thoughts on the Future of Software Development
#197Earlier quoted context omitted.
Most knifes today are mass produced. But there are still knife craftsman. You could become a software craftsman/artist if you enjoy writing software.
The market is different, and so is the supply. The market for artisanal cutlery is basically an art market. The programmer supply today is an approaching-standardization factory worker. There IS an art market for software, in the indie gaming space, so perhaps that will survive (and AI could actually really help individual creators tremendously). But the work-a-day enterprise developer's days are numbered. The great…
- Dominance of neoliberalism thought, with its strong belief that for any disease markets will be the cure.
- Strong lobby from big corporates.
You don't want to intervene to early, but you have to make sure you have at least some limits before you let the winners do too much damage. The EU has to be applauded for having a critical look on what effects these developments might have, for instance which sectors will face unemployment.
That is in the interest of both people and business, because the winner takes it all means economic and scientific stagnation. I fear that 90% of the worlds' data is already in the hand of just a few behemots, so there is already no level playing field (which is btw caused by aforementioned dominance of neoliberalism).
Re: Thoughts on the Future of Software Development
#198As long as there is no AGI, no software engineer needs to be worried about their job. And when there is, obviously everything in every field will change and this discussion will soon be futile.
Speaking from an ethics point of view: at what point do we say that AGI has crossed a line and deserves self autonomy? And how would we ever know when the line is crossed?
Re: Thoughts on the Future of Software Development
#199I’ll admit the tech demo was impressive on the face of it. But it had all the flags showing it was a well rehearsed demo (think Steve Jobs and original iPhone debut) or even simulated images and videos. For all we know the code was written well in advance and recorded by people then tech ceo Steve Job’d the shit out of that performance.
I notice the ai is still in preview and locked behind gate
Re: Thoughts on the Future of Software Development
#200Earlier quoted context omitted.
This resonates strongly with me. I don't want to describe the painting, I want to paint it. If this is indeed where we end up, I don't know that I'll change professions (I'm 30+ years into it), but the joy will be gone. It will truly become "just a job".
I remember back in the 80s I had friends who enjoyed coding in assembly and felt that using higher-level languages was "cheating" - isn't this just a continuation of that?
"Automatic programming always has been a euphemism for programming with a higher level language than was then available to the programmer. Research in automatic programming is simply research in the implementation of higher-level languages.
Of course automatic programming is feasible. We have known for years that we can implement higher-level programming languages. The only real question was the efficiency of the resulting programs. Usually, if the input 'specification' is not a description of an algorithm, the resulting program is woefully inefficient. I do not believe that the use of nonalgorithmic specifications as a programming language will prove practical for systems with limited computer capacity and hard real-time deadlines. When the input specification is a description of an algorithm, writing the specification is really writing a program. There will be no substantial change from out present capacity.
The use of improved languages has led to a reduction in the amount of detail that a programmer must handle and hence to an improvement in reliability. However, extant programming languages, while far from perfect, are not that bad. Unless we move to nonalgorithmic specifications as an input to those systems, I do not expect a drastic improvement to result from this research.
On the other hand, our experience in writing nonalgorithmic specifications has shown that people make mistakes in writing them just as they do in writing algorithms."
Programming with AI, so far, tries to specify something precise, algorithms, in a less precise language than what we have.
If AI programming can find a better way to express the problems we're trying to solve, then yes, it could work. It would become a matter of "how well the compiler works". The current proposals, with AI and prompting, is to use natural language as the notation. That's not better than what we have.
It's the difference between Euclid and modern notation, with AI programming being like Euclidean notation and current programming languages being the modern notation:
"if a first magnitude and a third are equal multiples of a second and a fourth, and a fifth and a sixth are equal multiples of the second and fourth, then the first magnitude and fifth, being added together, and the third and sixth, being added together, will also be equal multiples of the second and the fourth, respectively."
a(x + y) = ax + by
You can't make something simpler by making it more complex.