5 ms·
It's not exactly wrong. Not since the advent of AI systems (a.k.a. compilers) have developers had to worry about code. Instead they type in what they want and t
by 9rx 11mo ago
It's not exactly wrong. Not since the advent of AI systems (a.k.a. compilers) have developers had to worry about code. Instead they type in what they want and the compiler generates the code for them.
Well, except developers have never had to worry about code as even in the pre-compiler days coders, a different job done by a different person, were responsible for producing the code. Development has always been about writing down what you want and letting someone or something else generate the code for you.
But the transition from human coders to AI coders happened like, what, 60-70 years ago? Not sure why this is considered newsworthy now.
- IceDane 11mo agoI'm wondering: do you genuinely not understand how compilers work at all or is there some deeper point to your AI/compiler comparison that I'm just not getting?
- 9rx 11mo agoMy understanding is that compilers work just like originally described. I type out what I want. I feed that into a compiler. It takes that input of what I want and generates code. Is that not your understanding of how compilers work? If a compiler does not work like that, what do you think a complier does instead?
- IceDane 11mo agoA compiler does so deterministically and there is no AI involved.
- 9rx 11mo agoA compiler can be deterministic in some cases, but not necessarily so. A compiler for natural language cannot be deterministic, for example. It seems you're confusing what a compiler is with implementation details. Let's get this topic back on track. What is it that you think a compiler does if not take in what you typed out for what you want and use that to generate code?
- IceDane 11mo agoI've written more than one compiler, so I definitely understand how compilers work. It seems you're trying to call anything that transforms one thing into another a compiler. We all know what a compiler is and what it does (except maybe you? It's not clear to me) so I genuinely don't understand why you're trying to overload this terminology further so that you can call LLMs compilers. They are obviously and fundamentally different things even if an LLM can do its best to pretend to be one. Is a natural language translation program a compiler?
- 9rx 11mo ago> Is a natural language translation program a compiler? We have always agreed that a natural language compiler is theoretically possible. Is a natural language translation program the same as a natural language compiler, or do you see some kind of difference? If so, what is the difference?
- gitremote 11mo ago> We have always agreed that a natural language compiler is theoretically possible. No. Nobody here except you agrees with this. The distinction between natural languages and formal languages exists for a reason.
- kkapelon 11mo ago> We have always agreed that a natural language compiler is theoretically possible citation? source? Who is we?
- marbletiles 11mo agoThis doesn't feel like good-faith. There are leagues of difference between "what you typed out" when that's in a highly structured compiler-specific codified syntax *expressly designed* as the input to a compiler that produces computer programs, and "what you typed out" when that's an English-language prompt, sometimes vague and extremely high-level That difference - and the assumed delta in difficulty, training and therefore cost involved - is why the latter case is newsworthy.
- wakawaka28 11mo agoCompilers are not AI, and code in high-level languages is still code in the proper sense. It is highly dishonest to call someone who is not a competent software engineer a "developer" even if their job consists entirely of telling actual software engineers or "coders" what to do.
- 9rx 11mo ago> Compilers are not AI They are if you define them as such. But there is already a silly semantic thread going on if that's what you are looking for. > and code in high-level languages is still code in the proper sense. Sure. As is natural language (e.g. criminal code). > It is highly dishonest to call someone who is not a competent software engineer a "developer" even if their job consists entirely of telling actual software engineers or "coders" what to do. Okay. But coders, as spoken of earlier, were not software engineers. They were human compilers. They took the higher level instructions written by the software engineers and translated that into machine code. Hence the name. Developer in the above referred to what you call software engineer. It seems your misinterpretation is down to thinking that software engineer and coder were intended to be the same person. That was not the intent. Once the job of coding went away it has become common to use those terms synonymously, but the above was clearly written about the past. Again, if you're looking for a silly semantic discussion, there is already another thread for that.
- wakawaka28 11mo ago>They are if you define them as such. If a compiler counts as AI then so does literally every other program out there (at least the ones with well-defined inputs and outputs). >Sure. As is natural language (e.g. criminal code). Natural language is too ambiguous and self-referential to count as a programming language, per se. While a subset of natural language can obviously be used to describe programs, we distinguish programming languages from natural languages in that they are formally defined and bound to be interpreted in one way by a machine with a relatively small amount of context (notwithstanding minor differences between implementations). Natural language has the unfortunate property of semantic drift (or whatever it's called). The sounds, spellings, meanings of words, etc. are extremely context-sensitive and unsuitable for reliably encoding computer programs or anything else over long periods of time. It is very common for a single word in a natural language to have several meanings, even contradictory meanings. >They took the higher level instructions written by the software engineers and translated that into machine code. Hence the name. Developer in the above referred to what you call software engineer. I am well aware of what you're trying to say, and the historical context, but I think you're applying modern terminology to old practices to draw a bad conclusion. >It seems your misinterpretation is down to thinking that software engineer and coder were intended to be the same person. That was not the intent. I didn't misinterpret anything. These jobs were not "intended" into existence. It just so happens that writing any kind of code is challenging enough to require its own dedicated professionals. That has always been true. >Once the job of coding went away it has become common to use those terms synonymously, but the above was clearly written about the past. The job of "coding" never went away. The type of code being written changed. The product is still CODE as in a procedure or specification encoded in a purpose-built, machine-oriented, unambiguous, socially neutral, and essentially eternal language. >Again, if you're looking for a silly semantic discussion, there is already another thread for that. It's not a silly semantic discussion, it's a serious one. You think that one can be a "software developer" merely by using natural language, and that there is historical precedent for that. But this is very wrong, especially in the historical context. By your own argument, any dumbass manager could be a "software developer" if only he found an entity to write the software for him based on natural language instructions. It matters not whether the entity generating the actual code is a human being or a machine. Since there are actual people trying to hire software developers and engineers with real skills, it is a waste of everyone's time for vibecoders to call themselves "software engineers" or "software developers" because they're not. They are JUST vibecoders. That skill set may be sufficient for... something. But stop trying to make it into something it isn't with these misleading arguments and analogies. It is slightly hilarious that this entire "silly semantic discussion" is a product of the properties of natural language. One of the massive benefits of computer languages is that you DON'T get into stupid discussions about the meanings of things very often. When you DO, it is usually because some goofball wrote a bad spec. The ambiguities and other nonsense are hammered out in the spec, and from there on the language has a concrete meaning that is not up for debate.