10 ms·
The most important thing I need from a programmer I work with is their ability to have a fruitful conversation with me about why the code might be written one w
by erikpukinskis 4y ago
The most important thing I need from a programmer I work with is their ability to have a fruitful conversation with me about why the code might be written one way or another, and for them to iterate on the code in response to those conversations.
If a coder can write code, but they can’t do that, they’re useless to the org. It will be faster for me to write their code myself than to maintain what they’ve done.
So really that’s what I’d need from an AI coder. Writing the code is good, but can we talk about it and can you learn the specific architecture principles we have applie in this specific codebase.
- roflyear 4y ago99% of companies don't care about that. I would say 90% of companies you'll create friction trying to have those conversations "just get it done!"
- jchanimal 4y agoIt's true. For almost all of my career I've worked in the software equivalent of a lab building a diamond making robot. I did a stint at a consulting firm -- that was more like coal mining than manufacturing gemstones. By this I mean never ending surface area, and very little incentive to ever go back and refactor anything.
- londons_explore 4y agoFor most orgs, code isn't the end product. Code is the way to build the product to sell to the user. Therefore, in most orgs, code architecture/style is a distant secondary to 'does it achieve what the user will pay money for' and 'why isn't it finished yesterday?'.
- belter 4y ago"I'm sorry Dave...I can't do that"
- cdelsolar 4y agoChatGPT can actually do that sometimes. I've been using it as a rubber duck to help me debug code and it tells me what is wrong with what I wrote and how to fix it.
- soco 4y agoBut does it give real and useful answers or is making pleasant imaginary arguments?
- hgsgm 4y agoA rubber duck doesn't even give imaginary arguments. The point is to stimulate brainstorming, not get answers.
- soco 4y agoYes, rubber duck debugging is self-talk so the task still sits with the programmer. However with the AI one get external answers which may or may be not correct, and could or could not influence one's decisions.
- drakenot 4y agoI don't know if this is a philosophical question or not, but the answer for me is: most of the time it is useful answers.
- john-radio 4y agoI can't speak for ChatGPT but the "AI" that I use for this sort of development, the `M-x doctor` feature of emacs, only makes pleasant imaginary arguments, mainly because it was written in 1966, but it is still useful sometimes and at least it doesn't make any incorrect assertions about code: https://en.wikipedia.org/wiki/ELIZA https://en.wikipedia.org/wiki/ELIZA
- borbulon 4y agoYou're making it seem like AI will replace coders. Do you think Dall-E will replace artists, or just make an artist's job different? IMO it's more like a coder using AI to make their job easier. It's still up to a human to come up with the individual problem the function solves, architect a solution from multiple functions/objects/etc, come up with a data model, and so on and so on. The AI just generates the code itself. And at least as of now, the code needs to be double-checked.
- spaceman_2020 4y agoNo, but it is very likely that it reduces to demand for coders and artists. Sure, there will always be demand for a Linus Torvalds or a Damien Hirst. But will there be demand for Coder #365968 at Infosys or a graphic designer pumping out $50 ad banners? We’re looking at the possibility of some white collar jobs having the same income disparity as creative jobs. Just as there are some musicians who make hundreds of millions while the vast majority barely make ends meet, we may have a future where the star programmers make millions while the average players are automated out of the competition.
- weatherlite 4y ago> No, but it is very likely that it reduces to demand for coders and artists Eventually, I agree yes. But there could be a boom of huge new investments into A.I products, more devs needed and in fact teams getting way more requirements since they are more productive. Imagine the stuff we will be able to build in things like search, personal assistants, biomed, in fact what industry won't this affect? Its unbelievable to me that people are now saying Google search might become obsolete, that's absolutely crazy. Not many people saw that one coming. But at least initially I don't think GPT models will be able to do everything themselves. So its very hard to determine that say in the coming 5 years devs will find it more difficult to get a job. 10-20 years from now sure, I don't see how anyone gets a cognitive job anymore let alone devs. In fact our entire school/university system is probably obsolete, kids are probably learning skills they won't be able to apply in any job market. We need to start think about stuff like teaching kids emotional intelligence, spirituality and meditation...not cramming for a math test.
- welshwelsh 4y agoChatGPT can already do that. You can ask questions about the code, make suggestions and it will take this into account and write improved code. You can tell it the code it wrote produces an error, and it will then find the error, explain what it did wrong and fix it.
- SketchySeaBeast 4y agoPersonally, if I can track the problem down to a specific chunk of code and know the input and expected outputs, I'm 99% of the way to the solution.
- bcrosby95 4y agoYou can also tell it the code it wrote produces an error-that-isn't-an-error, it will find that "error", explain what it did "wrong" and "fix" it. If you don't understand the program ChatGPT wrote, it will happily butcher it for you, because it doesn't really understand it either.
- thedorkknight 4y agoI did this and it is pretty inconsistent. It kept telling me I was using the wrong version of a library (which from what I could tell by looking at documentation was just not correct, but I didn't look into it too long), and at one point it just kept insisting that it's code solution was correct when in reality the error was due to it importing two different libraries that use the same namespace, which led to an error saying it couldn't find the function being called.
- furyofantares 4y agoWhat I've found is each iteration with ChatGPT is alright at fixing or adding to the existing code per my instruction but every iteration includes a significant chance of introducing a new bug or simply forgetting some piece of the existing code in the next iteration.
- deleted 4y ago[deleted]
- coldtea 4y ago>The most important thing I need from a programmer I work with is their ability to have a fruitful conversation with me about why the code might be written one way or another, and for them to iterate on the code in response to those conversations. If a coder can write code, but they can’t do that, they’re useless to the org. Don't worry, you wont be there at the org to make these "fruitful conversations" either. The AI will take your job too
- WrtCdEvrydy 4y ago> Don't worry, you wont be there at the org to make these "fruitful conversations" either. The AI will take your job too I've been waiting for something to take my job for 15 years. I started as a small developer testing radio firmware, moved on to test web firmware, now I instruct terraform how to build infrastructure and now I instruct developers on how to do things to build proper infrastructure. I'm ready to retire but apparently I'm incapable of having an AI that can actually simulate Super Power ADHD at work, so we'll have to wait a bit.
- npigrounet 4y ago
- soperj 4y agoIf you're ready to retire, retire. If they can't replace you, they should be paying you way more.
- Supermancho 4y agoI have observed that companies will choose not to invest further in irreplaceable labor, under any circumstance. Every single company with, that I have been part of over the decades (30ish?), exhibits the same behavior when it becomes common knowledge that someone is a linchpin. Put the company in a game of chicken for a raise (which includes an implicit, or-I-quit) and they let the "irreplaceable" employee go. Every single time. It's not hard to see why. No company wants to have a disgruntled linchpin nor do they want to be beholden to some lower level character.
- lowbloodsugar 4y agoPretty sure there are managers who don’t know WTF you talking about and will be happy to address your inability to work with the new “hire” by letting you go. This wont fly at organizations that need the code to work, every time, but think about the explosion of non-programmers who can now make systems that “basically work”. If you don’t think “basically works” is a high enough bar to succeed in e-commerce, let me show you my recent support email threads with companies from whom I’ve been trying to purchase Xmas gifts for my wife.
- jimbob45 4y agoI couldn’t agree more. Most of my job consists of gathering requirements and brokering deals between affected departments. I think most college students dream of the type of job that could feasibly be replaced by AI. In reality, the coding is the easiest part of the job and takes the least amount of time.
- nashashmi 4y agoCan’t say anything more after what coldtea wrote! But this thing is not a sub for coders. It is an assistant to coders. And yes, being able to explain the code is incredibly important. Just as it is to verify the code. To me, this is just another exercise where coder becomes manager of his very own coder. And has to check the code his coder produced.