Ask Slashdot: Have AI Coding Tools Killed the Joy of Programming? 143
Longtime Slashdot reader DaPhil writes: I taught myself to code at 12 years old in the 90s and I've always liked the back-and-forth with the runtime to achieve the right result. I recently got back from other roles to code again, and when starting a new project last year, I decided to give the new "AI assistants" a go.
My initial surprise at the quality and the speed you can achieve when using ChatGPT and/or Copilot when coding turned sour over the months, as I realized that all the joy I felt about trying to get the result I want -- slowly improving my code by (slowly) thinking, checking the results against the runtime, and finally achieving success -- is, well, gone. What I do now is type English sentences in increasingly desperate attempts to get ChatGPT to output what I want (or provide snippets to Copilot to get the right autocompletion), which -- as they are pretty much black boxes -- is frustrating and non-linear: it either "just works," or it doesn't. There is no measure of progress. In a way, having Copilot in the IDE was even worse, since it often disrupts my thinking when suggesting completions.
I've since disabled Copilot. Interestingly, I myself now feel somehow "disabled" without it in the IDE; however, the abstention has given me back the ability to sit back and think, and through that, the joy of programming. Still, it feels like I'm now somehow an ex-drug addict always on the verge of a relapse. I was wondering if any of you felt the same, or if I'm just... old.
My initial surprise at the quality and the speed you can achieve when using ChatGPT and/or Copilot when coding turned sour over the months, as I realized that all the joy I felt about trying to get the result I want -- slowly improving my code by (slowly) thinking, checking the results against the runtime, and finally achieving success -- is, well, gone. What I do now is type English sentences in increasingly desperate attempts to get ChatGPT to output what I want (or provide snippets to Copilot to get the right autocompletion), which -- as they are pretty much black boxes -- is frustrating and non-linear: it either "just works," or it doesn't. There is no measure of progress. In a way, having Copilot in the IDE was even worse, since it often disrupts my thinking when suggesting completions.
I've since disabled Copilot. Interestingly, I myself now feel somehow "disabled" without it in the IDE; however, the abstention has given me back the ability to sit back and think, and through that, the joy of programming. Still, it feels like I'm now somehow an ex-drug addict always on the verge of a relapse. I was wondering if any of you felt the same, or if I'm just... old.
The joy of programming is... (Score:5, Insightful)
...actually writing and debugging code, and having the time and resources to do it well.
Getting frustrated by undocumented and bizarre bugs in frameworks or libraries is not joy.
Cutting and pasting sample code into your project and accepting that it works poorly is not joy.
Trying to figure out how really old, bad, undocumented code works is not joy.
Being forced to ship buggy code because the manager insists on meeting a date is not joy.
It's hard to see how AI assistants can make it any worse
Re:The joy of programming is... (Score:4, Insightful)
Re: (Score:2)
Re: The joy of programming is... (Score:2)
Re: The joy of programming is... (Score:2)
Re: The joy of programming is... (Score:5, Insightful)
I feel you may have missed the point, because your suggested comment says nothing about why the code does what it does.
This, I agree, is a pointless comment:
x += 3
However, this is more useful - because it answers the questions anyone looking at the code will immediately want to ask, namely "why on earth did whoever wrote this code decide to modify the x coordinate like that?" and "that seems wrong, can I remove it?". It's also much harder to convey the required information just by using good variable names:
x += 3
Re: (Score:2)
Re: The joy of programming is... (Score:2)
Re: The joy of programming is... (Score:3)
Re: (Score:3)
Oh God is this true!!! I have been struggling to find that love again, but, I fear the 25 years in the industry battling all of the above has killed it.
You nailed it buddy
Re: (Score:2)
I recovered my passion by a back to the roots personal project. Learn Verilog, design a simple 16bit RISC CPU (16 bits makes it challenging to fit all you want into the instruction space) and design an assembler for it. Simulate in iverilog and Then use a FPGA to debug and test. With my small FPGA I have 16 bits of IO and this is enough info to debug the entire tool chain. Very challenging, very interesting.
Build a VGA card and start writing assembly things to test it. Building your own computer from Silico
Re: (Score:2)
RISC-V has a 16 bit compressed instruction set, but a 16 bit platform strikes me as somewhat unambitious these days.
Being able to harness existing compiler infrastructure is a massive plus imo. Unless you'd want to do a compiler backend for LLVM, say, for your own ISA. That could certainly be fun in its own right.
Re: (Score:3, Interesting)
Getting frustrated by undocumented and bizarre bugs in frameworks or libraries is not joy
Figuring out these bugs and how to get around them can be. And, if it happens to be Open Source, fixing them for others can be.
Cutting and pasting sample code into your project and accepting that it works poorly is not joy
Agreed. So don't do that. Write it yourself.
Trying to figure out how really old, bad, undocumented code works is not joy.
I dunno, maybe it's just me, but I actually get a hoot out of it. And, y'know, sometimes that old, bad, undocumented code has some truths in it that I didn't know or think about.
Being forced to ship buggy code because the manager insists on meeting a date is not joy
Agreed, but I also enjoy getting a paycheck.
Re: (Score:2)
Agreed, but I also enjoy getting a paycheck.
I blame it on my housing, transportation, and culinary addiction.
Re: (Score:2)
Yes! Some of the most frustrating and ultimately rewarding work has been decoding programs, whether from machine language or sources, to figure out what they do, what they were supposed to do, and the simplest and least disruptive ways to fix them. There's real satisfaction in finding a bug in two hours that a team of your "betters" couldn't find in two weeks.
Re: The joy of programming is... (Score:4, Insightful)
I actually enjoy most of what you wrote above. Learning. Making sense of things. Putting things right. Massive joy.
removed due to decades of lameness (Score:2)
The programming practice has been drifting towards lameness in spurts from the 1990s.
- Mainstream programming languages evolving by just collecting any cool feature from other languages for 20 years.
- Needing frameworks after frameworks built on tens of thousands of packages of uncertain quality and uncertain long term viability
- Using scripting languages for ever larger systems (JavaScript)
- Reducing software tools, dev tools, production software, platforms, and cloud resource production lifespans from 5+
Re: (Score:2)
Adding a couple more
- Having entry level developers coming in the door less motivated, less skilled, less open to learn, less adaptable and less able to concentrate
- Having less and less time and budget to produce solutions and maintain existing ones
Re: (Score:2)
To add:”I studies. Haines of history and attended a bootca p in Rails” does not qualify you as “entry level” been there, done that.
Re: (Score:2)
I hear you brother. I'm over it. I've been coding since my grandfather (and old mainframe guy from the days when valves where a thing in more than just guitar amps , RIP) sat me down with my first computer, an Amstrad 6128 and taught me basic. Coding brought me joy for decades
But now, nothing. Its an alien landscape. Javascript shit everywhere, nobody knows how to Document. Database skills? forget it. Buzzword driven tech stacks. Dumb fucking devops shit that never works as well as the trusty old VM. It jus
As someone still on the outside (Score:3)
Thanks for the insight.
The whole sign-up process put me off from trying it out in the first place. I had wondered how the chatbot interaction went when actually using it for coding.
Re: (Score:3)
And yes, I do enjoy programming as a hobby. So am not too interested in AI anyway.
Programming will soon be an obsolete skill (Score:2, Insightful)
Right now "programming" (such as it is) only still exists as a profession because as programmers we're the only folks who can really sanity check the AI's output, improve it where needed and/or know how to refine the input we give to the AI to get the desired code as output. Or do create code on our own when absolutely necessary because the AI just doesn't produce what is needed. But over time as we use AI more and more to create more and more of the code that we used to create ourselves, are our skills g
Re:Programming will soon be an obsolete skill (Score:4, Insightful)
That is really nonsense. AI can only create simple code. Not all coding problems are simple. Sure, if you do nothing but simplistic "business logic", AI and then checking the results may do it. But personally, that is maybe 10% of all coding I have ever done. And for more advanced stull, AI does not cut it and you do not either if you relied in AI for the simple things.
Re: (Score:2)
Re: (Score:2)
I find LLMs start to fall over very quickly as programming complexity advances beyond trivial tasks. Sure, single purpose style "write me an algorithm" tasks are handled remarkably well. However, asking any LLM to write you an app that fetches sports scores, parses the data into a heat map of the teams that are playing best, displays the heat map, and allows the user to add comments that are seen by other users. It'll spit out some basic boilerplate code that cannot fetch scores, determine what "best" is, c
Re: (Score:3, Insightful)
And for the foreseeable future. Do not believe the lies of people that want to sell you something...
Re: (Score:3)
Just like calculators have eliminated mathematicians?
No (Score:4, Interesting)
AI tools are just an attempt to circumvent copyright while also benefiting from copyright
Re: (Score:2)
Certification is useless and doesn't provide any insight into how much value a prospective employee is. I watched a guy get Linux certification in 2 days, I doubt if he was qualified to be a Linux admin. Although hiring him as a junior and seeing if he can learn would be a possibility. My company wants people to get certification, but from what I an tell, I know far more about AWS than my other team members that are certified since
It makes for a reasonable auto-complete (Score:4, Interesting)
No, but I empathize. (Score:5, Interesting)
For example, I used to carefully name all my variables. Now it's almost pointless because the AI will overwrite my variable names and its suggestions aren't that bad. However, if I really wanted to customize variable names I could just tell it and do.
It does change coding from a slower iterative process to a more frenetic iteration mode.
But personally I don't see it as it "'just works', or it doesn't" because a lot of times it doesn't work and a series of iterations via the AI get it to the working condition. It's just faster to do it that way than from scratch. Also often the AI will use some method and I just tell it to use another method or to refactor in a certain way and it does. That said, custom coding can have advantages too.
I doubt it really has to do with being old, and the younger programmers might be worse off, as they may be more relying on the AI without the years of expereince that lets them comprehend what the AI is doing.
Young whippersnappers (Score:5, Insightful)
I learned to code in the late 70s in straight hex (microcomputers were too small back then to come with compilers at 4K our system was expansive for the rime).
For us old timers, a lot of the joy was in knowing I did this myself. Even library subroutines reduce that, though they are unavoidable on modern systems. Nothing truly wrong with assistants or library references for something you can't do yourself.
Of course, a professional coder who needs to get a project done on time, that's different. Those of us who code for the pleasure of it are a dying breed.
Re: (Score:2)
I learned to code in the late 70s in straight hex (microcomputers were too small back then to come with compilers at 4K our system was expansive for the rime).
Straight hex? Luxury! [youtube.com] I had to flip switches on the front of the mainframe!
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
You could stick you head around and loo, at the switches! My mainframe was almost flush against the wall and I had to stick my hands in and toggle the switches by feel!
No (Score:2)
Because I enjoy result of programming, not the act of programming.
Re: (Score:2, Insightful)
A part of me doesn't believe you, but if what you say is true, that's sad. When you say "the result", are you referring to the paycheck? Because that would be ultra sad.
Re: (Score:2)
I meant the end product of my efforts. I enjoy the problem solving aspect, but the end result is the important bit. But so what if it's the paycheck?
Re: (Score:3, Insightful)
Ultimately it's your life and you live it how you want. I really am not one to tell anyone else how to live their life. If the paycheck is what makes you happy, but you don't enjoy what you do for a living, yet continue to do it, then kudos to you. I know I couldn't do it. But you confirmed what I suspected when you said "I enjoy the problem solving aspect" which is at odds with what you wrote in your original post "Because I enjoy result of programming, not the act of programming". The act of programm
Re: (Score:3)
The term problem solving is very broad. When I read this article and I hear about programmers who hate AI as a tool because it "takes away the joy of programming" I think of mathematicians who love doing math for the sake of doing math. The answer isn't really important to them. Basically algorithm nerds.....the people who write leetcode problems.
But my problem solving is more about figuring out practical problems. Like can I automate this process? So to that end, if I used an AI to produce all of the
Re: (Score:2)
I relate well to the mathematician example. When I look at the end product of my efforts, I don't get as much joy from the product itself as I do thinking about all the cool/efficient things I did to get the product done. Likewise, when I look at a sub-par job I did, despite it functioning well according to others, I think of the corners I cut to get the job done. It's like having used a bubble sort for something when you knew a merge sort would have been much faster at the expense of ram, but due to wha
Is AI writing click-bait headlines for lazy... (Score:2)
Are Human Coders Doomed in the Age of AI Programming?
Will AI Replace Developers by 2030?
Is ChatGPT the Beginning of the End for Software Engineers?
Do AI Coding Assistants Know Your Job Better Than You Do?
Should We Be Scared of AI That Writes Better Code Than Us?
Can AI Really Fix Every Bug—Or Is It Just Hype?
Are Traditional Coding Skills Now Obsolete Thanks to AI?
Will AI-Powered Tools Turn Everyone Into a Software Genius?
Is This the Death Knell for Learning Programming Language
Re: (Score:2)
Re: Is AI writing click-bait headlines for lazy... (Score:2)
I figured that there has to some sort of "law" (akin to Godwin's or Moore's, not an actual law obvs) that the answer to any question in a headline must be "no".
Voila: Betteridge's law of headlines
https://en.m.wikipedia.org/wik... [wikipedia.org]
I feel like today has regained some purpose.
Re: (Score:2)
Don't worry, soon AI will replace "journalists" then we'll have AI writing stories:
"Will next gen AI replace previous gen AI?" /s
feel free to enjoy coding on your own time (Score:2)
But also realize when you're at work you're going to deliver results. And you won't necessarily love everything about what you are paid to work on. You might not like the technical decisions. Or the priorities that management has pushed onto you. Or the way you have to do it. Or who you have to work with. Or the coding style your coworkers decided you must use. But at the end of the day you do the work, get things done, and deliver on time. Only to repeat the cycle every release. That's the job. Maybe you w
false sense of economy (Score:5, Insightful)
The Gen AI pundits yell "Developers will be 10x faster using our widget!"
Rushed code, that a developer doesn't understand is a formula for disaster. Sure, repetitive tasks and finishing out a code section that's short is easy enough to comprehend but asking an AI "Copilot" tool to generate a block of code and then not being sure if that code actually works or not doesn't teach or improve the skills of the developer.
If you code can be generated by AI... (Score:2, Insightful)
You're probably not doing anything interesting anyways.
Makes sense... (Score:2)
I haven't tried out the tools like copilot, but that was my assumption. That they didn't offer ways to understand or verify what they spit out at you... they just gave you code, like a coworker throwing it over the wall for you to figure out and fix all by yourself.
Recognizing that at least part of your previous joy is gone was good/important. Time for more self reflection I think... to better understand how you enjoyed the work before, and to see if you can still get support or help from something like
Fixing other's buggy code is not joyful ... (Score:4, Interesting)
Re: (Score:3)
Especially since AI is not going to help you to debug it.
It's kind of like working with a maniac programmer who quits the company and you have to figure out what the hell he was thinking when he wrote that.
Been there. Done that. And it can be fun, as long as people aren't breathing down your neck.
I disable it (Score:2)
I found the AI suggestions were wrong more than they were right and having them pop up was so distracting they slowed me down on balance. Maybe I'll try again in a year.
Has * killed the joy of doing it yourself? (Score:2)
AI coding vs. programming, mass electronics manufacturing vs. hobby electronics, LLM translators vs. learning a language, industrial scale agriculture vs. gardening...
No. Worst case it gives you a sense of accomplishment, best case you find a niche to specialize in and earn big bucks because barely anyone / anything else can what you can (cue the COBOL programmers). And then there is the whole 'build upon shoulders of giants' thing if you're really good, where you can do the fine-tuning and leave all the bo
Exactly right (Score:2)
You are right, and it's clear if you look at the bigger picture. Coding is obviously fun, and traditionally companies have offered money and the fun experience of coding in return for a useful product. That fun was part of the reason why software projects work decently well.
But there's no real reason for fun to be a prerequisite for a person to create good programs. If corporations can automate a sufficient critical mass of the task of programming away to machines, then it becomes more of a rote janitorial
The opposite (Score:2)
I'm enjoying programming far more using it than I was without it, particularly at the application layer (versus system/firmware where I normally inhabit). It can generate a lot of tedious boilerplate/framework code quickly, and while it rarely gets it exactly right, it gets close enough that I can quickly fix it and focus on what I set out to write.
I never turn on the features that let it suggest code or change my code, they're slow and often annoying. I ask it questions, it gives me answers. I copy/paste i
Umm no it hasnt (Score:3)
The joy always came from laboring and then the dopamine fix from seeing the end result. At least for me. That's totally possible with AI too .. the scale of what you can produce is increased especially if you know what you're doing.
Advanced tooling doesn't kill the joy (Score:5, Insightful)
People still enjoy woodworking, even though new tools have been introduced that make many tasks much simpler. Some people may like using their hands more and choose to eschew the modern tools. Others prefer using the modern tools. Both classes of people exist in the software development world as well. Some prefer the lower level languages. And some prefer the highest.
AI perhaps is currently the highest level interface for software development. On the opposite end you have assembly language. Both have pros and cons. There is no one tool or a solution that is a best fit for all developers and will bring them joy.
I have been developing software for over 30 years. I now use modern AI tools every day. And I don't think I have ever enjoyed programming more than I do now. I no longer have to worry about minutia. At that same time I recognize that some people enjoy that sort of thing.
Re: (Score:3)
People still enjoy woodworking, even though new tools have been introduced that make many tasks much simpler. Some people may like using their hands more and choose to eschew the modern tools. Others prefer using the modern tools. Both classes of people exist in the software development world as well. Some prefer the lower level languages. And some prefer the highest.
I think also that people just plain (woodworking pun incoming!) forget about the older tools and/or don't think of them. I was getting some re
The Zen of Coding (Score:2)
I'm using it for code review (Score:2)
Advait Sarkar (in CACM) noticed how bad LLMs are at anything creative, and instead suggested we use them for things they’re good at , predicting what humans would say. Especially if they are asked what a critic would say.
And it sort of works!
Rest of the article: https://leaflessca.wordpress.c... [wordpress.com]
The fun is solving puzzles (Score:3)
I learned to program on some funky decimal machines (IBM 1620, Univac SS 90) in machine language, CDC 6400 assembler, graduated to 8 bit assembler, M68K assembler, then C, a bunch of Java, Perl, and who knows what. The farther it got from machine code, the more the fun changed. That Univac SS 90 had a drum for main memory, and 1+1 addressing where every instruction included the address of the next instruction, and optimization could make it hum. The CDC 6400 had all sorts of different kinds of optimization tricks. So did the M68K. The 68020 had some many optimization strategies that the fun shifted to solving puzzles. Compilers always had their own tricks, and tricking them into doing the right thing was fun.
The major fun was not optimization but solving puzzles. I've never used an AI to help, never put up with any of that agile pairing nonsense. I expect I would find AIs to just be another tool to expand the puzzles to solve.
If someone were to pay me to go back to programming the IBM 1620, Univac SS90, or CDC 6400, I would not take them up on it. It sure was fun, but it's a lot more fun to solve puzzles, and I solved more puzzles the better the tools got. I think AI would be just the same.
If someone were to tell me AIs take the fun out of programming, I'd say only in the same way compilers took the fun out of optimizing fro a drum machine. There will always be new tools and new ways to use them. Don't stagnate. Don't refuse to try the new tools. Concentrate on the puzzles, and solving bigger ones faster.
Re: (Score:2)
Re: (Score:2)
And I did load different add and multiply tables. It was a great machine for learning.
Re: (Score:2)
Not that I've programmed a drum machine, though I know the principles, but I used to to assembler before the compiler got good.
Anyway, using AI tools is a bit like the compiler taking the work out of hand optimizing asm, except that the compiler just flat out can't compile certain kinds of functions (there is not any documentation or consistency on which), but it won't tell you it can't it will instead make something that looks superficially like it has done it. Or it will flat out hallucinate a bunch of op
Programming is no longer programming (Score:2)
Re: (Score:2)
I like to think of myself as archmage, i.e. the one class that actually understands what they are doing. I get that there cannot be many of us.
No Joy in or with AI built code (Score:4, Interesting)
I got to try several of the AI tools. Can they make code? Sure. Does their code sometimes have mistakes in it? Also Yes.
How does one go about finding the mistake, given they didn't write the code? That's painfully tedious. If someone else wrote the code, they might be able to explain.
I've had colleagues use the AI tools to make unit tests. They can do this too. Funny thing is, their unit tests never seem to find the bugs that the unit tests will detect if a human sits down and writes them by hand. But the fact that the AI made passing unit tests is held up as some strange proof of success.
I eventually got rid of the the AI tools in my IDE; they were not helping. In spite of not having them on my machine, they still slow me down though: Now that some others have figured out they can't always trust the LLM, they have taken to sending me code from the LLM over chat and asking me if there's something wrong with it.
I'd worry, but I overhear people near me speak of using their LLM to write their self assessment, and their managers using LLMs to write the performance reviews, and well, I believe the old expression is it's turtles all the way down young man!
Re: (Score:2)
I'd worry, but I overhear people near me speak of using their LLM to write their self assessment, and their managers using LLMs to write the performance reviews, and well, I believe the old expression is it's turtles all the way down young man!
Funnily enough AI is astoundingly good at automating tasks that have no real use. No one wants to read or write those things and it's not like they have any bearing on anything anyway. When I was a manager, I knew which of my reports were doing well and which weren't
Programming joy has been decreasing for a while (Score:2)
For me, the turning point in the enshittification of the software industry was when HTML plus JavaScript became the de facto development environment.
Not only is it a stupid, artificial and constrained environment, but it was never really designed... it just accreted ideas as people shoved more and more things into it.
I started programming in 1982 and I started my professional software development career in 1990. I retired in 2023 and have absolutely no desire to get back into the industry.
I still, howev
No it hasn't. (Score:2)
I've been coding for 30+ years. I lost the joy of programming 15+ years ago fighting the ongoing battle of shitty documentation. AI has actually made things better because often the answer that isn't in the documentation is in the AI.
Re: (Score:2)
I've found LLMs quite good at doc searches. Effectively "what's the API call to do blah blah blah", because they can kind of synthesize answers from code snippets in their training corpus. Except after a while they do tend to hallucinate APIs that don't exist, but do in other closely related frameworks.
As a grizzled veteran... Not yet (Score:2)
I've been using a couple of different AIs integrated with various IDEs for about the past year.
They all, to a T, suck for actual solutions. Yes, they scarily generate code that has my style and naming conventions but for anything more than the most basic/common requests you get AI Hallucinations (a major failing in AI generation that they have to actually NAME IT and hold seminars on how to "fix" it... har har, It's not a bug, it's a feature!).
On the flip side, there's 2 areas where it's actually helped me
Re: (Score:2)
Error analysis makes sense. Much of linting and warnings are basically a bunch of heuristics about things that people often get wrong. Specifically the code isn't wrong necessarily, and it doesn't need to prove wrongness, just flag things that are often error prone.
It makes sense what LLMs being good pattern finders area good at that.
This all comes down to one thing (Score:2)
AI is your new pair-programmer (Score:3)
What I do now is type English sentences in increasingly desperate attempts to get ChatGPT to output what I want
That reminds me a lot of "pair programming", which I also hated... there's nothing more frustrating than having to sit on your hands while your junior co-worker laboriously bumbles his way through all the issues and gotchas that you figured out years ago, and the bits-per-second limitation of human speech become more and more apparent as you try to help them.
No, but AI proselytizing idiots have! (Score:5, Interesting)
MS CoPilot was the worst. I asked it write me a find and replace regex snippet in Java. It not only failed, it used the wrong API, and it declared a string across 5 lines with a single quote...It not only didn't work, it didn't even compile!!!! OK...that's a MASSIVE FUCKUP...but I am sure they'll fix that someday and ensure their code compiles, but even when I fixed their obvious mistake, it didn't work and it used a very outdated methodology. Next up was ChatGPT. Theirs compiled. It was close enough I could figure out the RegEx that actually worked, but they definitely didn't follow best practices and their way of doing it was very complex and stupid...to be clear, it failed. It didn't work, but at least it was a decent starting point for me to write a RegEx that actually worked. JetBrain's AI regularly suggests code that doesn't even compile and their whole claim to fame is a Java IDE.
So Gen AI is like a roomba...fun to play with, expensive, not entirely useless...but no one fired their maid after buying a Roomba...and only morons would downsize their developer headcount in the wake of AI.
However, there are a lot of morons in leadership positions.
We've been through this before with offshore outsourcing. 20 years ago, Slashdot was telling us daily how no one will ever hire an American programmer and in the near future ALL programming will be done in India. The executives bought the lie and shut down many departments, replacing them with offshore consultants...only to see that costs went up, quality went down, and their products were riddled with endless delays and bugs...for the very simple reason...India has just as much of a talent shortage...anyone you want to hire for a low wage, a real software company wants to hire for a good wage...so your best consultants got snagged by Google, MS, etc. It was VERY obvious to anyone working with these offshore companies, plus there was a MASSIVE amount of fraud (I blame that on them being consultants, not Indian, though), but I had to go into meeting after meeting defending the existence of our dept or telling managers...hey why don't you try that offshore outsourcing company on a small project before you restructure how your highest earning product is built??
I feel like I am going through 2004 all over again...Generative AI doesn't replace programmers. It can augment them...but no more than a well-written webpage. I predict Generative AI will be only as revolutionary as stackoverflow.com. However, the real damage is many companies are holding off on hiring or other investments...thinking somehow AI will allow their existing teams to do all the work needed faster, so they don't need help. Basically, every major company has some exec who thinks he'll be able to replace programmers on his team with ChatGPT in the next few years and thus doesn't think it's worth investing anything into teams now.
Being told my days in my career are limited is dampening my joy of coding....especially since I can clearly see generative AI is not going to change much at all.
Dumpster fire (Score:2)
We are only allowed to use Copilot at work. Itâ(TM)s a dumpster fire. The unit tests it writes are so naive they might as well just be âoeassert trueâ. Most of the time I have the line of code written before it suggests something. Half the time what it suggests is wrong. It gets in the way more than it helps.
A coworker tried ChatGPT on his home laptop for a problem we were working on. It had the right approach but didnâ(TM)t understand the data so it wouldnâ(TM)t work but at least i
Need to upgrade (Score:2)
the joy I felt about trying to get the result I want -- slowly improving my code by (slowly) thinking, checking the results against the runtime, and finally achieving success -- is, well, gone.
This isn't entirely how it should be. You should upgrade your skills.
Go to Leetcode and solve one problem a week (or one problem a day, whatever just do it consistently and regularly). Pretty soon the code will just flow from your fingers and you'll be more comfortable programming than a recent CS grad. It won't take long. And that's when it really gets fun.
AI is indispensible (Score:2)
Having been a software engineer since the 80s (I'm retired), now I build little robots for fun.
The amount of time I now spend trying to figure out a quirk in the IDE, complicated syntax or missing library documentation has dropped to a small fraction of what it was before the internet and especially in the last few years.
I've asked for code to test out a sensor or algorithm and many times it just works. It's not perfect but if you know how to write software but just don't have the experience for a specific
Errrmm, ... No?! (Score:2)
AI has no direct impact on my joy at programming. It has a solid impact on the economic viability of coding for money and that may kill part of it's joy, but that isn't the large part of the joy. If you're only in it for the money, you were doing the wrong job to begin with.
Another layer. (Score:2)
LLMs look to me like just another layer of abstraction, another compiler that outputs code to be compiled. Prompts, framework, libraries, code, binary.
But this time it's non-deterministic and unpredictable. Imagine writing a program in C and then having to check the correctness of the binary (as machine code, not the functionality) after every compilation. And every compilation would yield a different binary for the same code. It's silly.
Best case scenario, using LLMs as a glorified search engine. But with
Like giving kids calculators, dumbing down.... (Score:2)
I like it (Score:2)
Copilot and ChatGPT (or your choice of LLM) are great at easing the learning curve or remembering syntax or functions. I like it.
AI isn't solving MY problems... (Score:2)
I don't want to ask an AI to code up an array reverser or a SQL db insert.
I want it to fix my build problems. I want to just say in English "fix my eslint 'strict mode' problems" and have it just do it. I want to say "put together a PWA manifest from my package.json and this directly of icons" and have it just do it. I want to say "take this react client creation boilerplate but remove redux because I already have my own store system" and have it create that (because it seems it is impossible to find a reac
Re: (Score:2)
(directly -> directory, stupid typing fingers (autocorrect didn't do that, i typoed that totally on my own))
You're just old (Score:2)
Engineers who had to give up their slide-rulers felt the same.
I was hoping for Funny (Score:2)
Presumably in the form of examples of AI generated code.
I actually played with it a couple of times. Mostly HTML with embedded JavaScript. Surprisingly productive for the first parts, but then the AI started dropping its marble all over the place. Some kind of complexity threshold? It seemed like each time I tried to add a new feature, it would add it, but cut out some other parts. I'm sure the cuts weren't random, but I wasn't able to figure out the pattern.
Did I find it joyful? ROFLMAO.
Re: (Score:3)
As long as you do not insist on perfection (syntax checking is the task of the compiler), any programmer should be able to write reasonable code on a whiteboard.
Re: (Score:3)
My professor for C made us evaluate code on paper for our midterm and final, and for homework assignments I wrote code with a green terminal and compiled, linked it, and ran it from the command line. This was all pre-search engines. I remember another attitude from the time period, which was "if it was hard to write, it should be hard to understand", but I digress...
With that said, many years later I worked under an engineering lead that took the "real programmers only use text editors" attitude to an ext
Re: (Score:2)
I remember another attitude from the time period, which was "if it was hard to write, it should be hard to understand",
I heard that before, but I always thought it was a joke.
Re: (Score:2)
Real programmers only use text editors. I've interviewed a number of candidates who cannot write code on a whiteboard because it doesn't have google. Sorry but that's a fail.
This is interesting to me. There are languages where I'm used to text editors and having even context popups is annoying and gets in my way.
There are others where I get cranky when the auto complete in the IDE stops working because then I have to switch and lookup definitions given I've never bothered / had the need to remember shit.
Seems people will get used to anything and it isn't apparent to me which is ultimately more productive. Even things it is hard to understand how anyone could possibly find fau
Re: (Score:3, Insightful)
Re: (Score:3)
You must craft requests that demonstrate you understand the problem extremely well and have a clear path to the solution. If, and only if, you can do this, can you get really high quality code from ChatGPT
That's all well and good until the sodding thing starts hallucinating API calls which don't exist. I love it when that happens.
Re: (Score:2)
That's why we demand truck drivers be good runners (Score:2, Interesting)
Real programmers only use text editors. I've interviewed a number of candidates who cannot write code on a whiteboard because it doesn't have google. Sorry but that's a fail.
It's the same reason that when you interview a truck driver, you ask him what his time was on the last marathon he ran. If we're going to hire a truck driver, we need to ensure he can do the job without his truck, right? Similarlyt's important to memorize every API and only use a text editor because when you're actually working you'll never have access to an IDE, linter, compiler, or Google, right?
Well you're smug in your satisfaction and I am sure in your mind, memorizing every API makes you more eff
Re: (Score:2)
In my last project I realized that real programmers use Logic Analyzers and program in Verilog!
Re: (Score:2)
In my last project I realized that real programmers use Logic Analyzers and program in Verilog!
Real programmers in the era when user interfaces were selectively illuminated pushbuttons and the lamps were tungsten filament, construct a test scenario and measurements to determine that device crashes were caused not by defective code as one rancid walkaround manager insisted, but rather by crosstalk from the initial current spike into a cold tungsten filament (physics) alongside inductive coupling from wiring harness construction (more physics).
Real programmers cut a contended signal trace under a micro
Re: (Score:2)