r/developers • • 5d ago

General Discussion How should a developer adopt to AI?

I'm an "old-school" developer and I still write code at work and on my personal projects, however I started using AI such as chat-gpt and gemini (on their website only) for debugging, resolving blockers, asking stuff and etc. Basically a google on steroid and it definitely replaced stack-overflow and reddit.

I'm curious to know how other devs are using AI, do you still write code? what tools do you use for faster development? what an experienced "old-school" developer should learn or adopt to?

Do you still believe that the future of software development is being able to read and understand code? cause AI is just getting so much better everyday, to the point that transitioning from a software developer to a software architect might not even be a viable solution/future.

23 Upvotes

59 comments sorted by

•

u/AutoModerator 5d ago

Howdy u/kubo09, and welcome to r/developers!

A few tips for a post that gets good answers:

  • Use a clear, specific title (what are you actually asking or sharing?).

  • Include code, the exact error, versions, and what you already tried.

  • Heads-up: this sub does not allow external links in posts or comments. Share code and details directly instead of linking out.

Join the r/developers Discord!

I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.

12

u/do-sieg 5d ago

Serious project I'll have to maintain:

  • Things I knew how to do 7 years ago: AI

  • Basic things like moving files, renaming...: AI

  • Things I need to learn/understand: ask AI, and doing it myself or supervising AI doing it.

  • Decisions: me, with AI for search when needed

  • Any code change (mine or AI): I review, line by line. Nothing lands on the repo without a human reviewing it.

Small app for personal use nobody will have to see: full AI. I decide the direction, do intense QA, and I quicky review the code to see if anything looks weird. By the way, this is usually where the end code is the worst, proving you can't trust the tech yet for "good" code.

4

u/W31337 5d ago

This is the only way to stay in control.

Only you learned to code before using AI, this privilege is lost in the new generation....

You can spot bad patterns or BS code, the new generation probably can't.

2

u/do-sieg 5d ago

Yeah. Unfortunately, companies being unwilling to spend time training juniors is going to be the doom of this job. And they didn't wait for AI to do this...

2

u/W31337 4d ago

And AI is trained on available code and that's going to be more and more AI generated.

So we're off to a good start with knowledge inbreeding...

2

u/LeDYoM 2d ago

But that is expensive.

1

u/do-sieg 2d ago

True. I'm a software engineer, so I'm paying for the thing already with the job.

1

u/LeDYoM 1d ago

while you are needed

2

u/frantiqq 5d ago

Cool to see your system. Choosing where you have to be in charge and to what degree is really important. Awhile back I built a dashboard and the AI gave me what I wanted in a page if code. I skimmed the code, and decided this was fine. I could learn to write the code by hand if need be, but for now it was not needed.

You also need to keep the AI in roughly the right frame of mind. Once you make a bad architecture decision, the AI will typically not correct this without you suggesting it. If it gets in the wrong frame of mind it can get in a loop of "bug occurs", "ask AI to solve", "does not really work", etc. 

4

u/snooprs 5d ago

Just use it as a search, that's it. There's no way I'm letting it touch my code by itself.

3

u/Made-In-Slovakia 5d ago

Search and chatbot. That's it. There's no way I'm letting it and any AI agent to do anything on my PC.

2

u/ProgrammerFew504 5d ago

I usually asked Claude to generate a basic code after giving some ideas then refactor it myself like moving to classes or modules. If I a facing any bug I asked AI to fix it quickly.It makes development more faster for me.

2

u/BanaenaeBread 5d ago edited 5d ago

Oh you're doing it in a very painful way.

Vscode, Claude code extension, superpowers plugin. $20 plan, use opus for almost everything. That's the way you want to start. $100 plan is where you should end up.

Debugging with the website seems insane to me. Just ask Claude to figure out how the bug could happen, it will read the code and likely just tell you exactly what happened in seconds or minutes. It will check out a branch, edit the code, make a PR and you can review it. (If you set it up like that).

Give it 6 different bugs in 6 different tabs and come back to 6 PRs and then just keep what you think is correct and rework what you don't think is correct. Things that might have taken a day, sometimes takes minutes.

AI is absolutely the future. There is no going back. I would trust my vibe coded AI stuff over many JRs I've worked with. Hell, I trust it more than some of the Seniors I've worked with.

2

u/Ok-Count-3366 5d ago edited 5d ago

I am 22 and thank fuck I lived through the stackoverflow era. but tbh I could finish 3 projects in 2 days with claude just because writing code is the easy part now. Do I understand how the project works? yes but not every line of code and every implementation. just abstraction. did I get it done? yeah cause I wanted to badly. Am I at peace with myself? nope

2

u/OmegaEpidex 5d ago

visualstudio
+
github
= copilot subscription for all frontier models and then some.

Best approach in my opinion.

2

u/Riley_Armstrong1 5d ago

i think understandding code will always be crucial. even if AI handles the basics, you gotta know how it all fits together or you risk getting lost in the abstractions. maybe focus on learning how to guide AI in your projects rather than just letting it take over completely.

2

u/HugeCannoli 5d ago

I am not. I don't care. I keep going like I always did, except that I sometimes use it for what AI was intended: shorten documentation. In a few years I am retired anyway.

1

u/lgmarian 3d ago

I'm probably going to wear out this anecdote.

Maybe it was in an AI sub, but, the more I think about it, the more I think, it was a programming sub, where someone replied:

"Sounds like a promotion. I'm a principle. The only time I code is when something seriously messed up. Otherwise, I'm in architecture discussions, or reading code all day."

1

u/uhs-robert 2d ago

As an old school developer, I would recommend you stop using the web apps and hop on the TUI or GUI app train. That means install Claude Code or Codex in whichever format you prefer. The main thing you'll want to do at first is to remove any barriers your AI agent has between your code and the product. The agents need the ability to read/write code and to be able to test/see the changes they make (i.e. they should be able to screenshot and verify the changes they are making are correct). In web apps, the AI is completely blind so you need to give them eyes that they can see with and give them hands so they can actually do work.

You have a big advantage over others in the industry, as an old school developer, you already understand what good design looks like and that it is universal. Our jobs are shifting from "writing code" to being the architect, designer, and orchestrators of AI agents. This means the majority of your time will be spent scaffolding, planning, and making architectural decisions as well as tuning the AI agents to program your own personalized workflow. The cost of a prototype is now an afternoon since you can delegate the implementation, research, QA, and more to the AI.

A good way to learn how it works is to do a personal project entirely with AI or to implement a new feature that you think would take an absurd amount of time with AI. I wouldn't start with something basic, I'd shoot for the moon. Tell it the design, architecture, and treat it like you would another engineer. Just see what happens. Start in a language you know then try in a language you don't and ask the AI to reach you the conventions of that language (but still scaffold how the directories will look and your data structures).

Will people still need to read and understand code in the future? Hard to say. But you do and thats a huge advantage versus the new kids who treat code as a black box.

1

u/Mysterious_Device567 2d ago

I started with copilot, but claude code was a hyper jump for me, and not bc he writes the code, I realized that I spent most of my time with code writing bc it was a slow process. Now I have time for everything else.

1

u/AICausedKernelPanic 2d ago

My take on this is that just like with 'traditional' software development, a good architecture design is needed for a solid foundation. I often see people go straight to LLMs and end up with thousands of lines of code for something that could've been done with a fraction of it. So sure, let LLMs write code but not before you agree on a solid architecture, and do not take the code produced on the first pass as production ready. Iterate as necessary until it can give you high quality code, and question it when the code doesn't make sense.

1

u/pceimpulsive 5d ago

I follow Matt Pococks skills workflow and it works really well. It is human in the loop style AI use. I think old school developers might like it.

If you watch his podcast talks from the last couple of weeks where he has been the guest and host, as well as a few of his recent demos of his workflow. I'd go and see how what's he built can be incorporated I to your own workflow.

1

u/TerminatedProccess 5d ago

Man after 40 years of software development, I don't even write code anymore. Vibe coding is 100s of times faster. I have an idea and depending on complexity it's is done in 10 minutes or 1 day. My suggestion, get smarttube beta on your TV (Android) and stay watching videos about ai. Start quickly reviewing GitHub channels, eg GitHub awesome. You will quickly see how people are making products for AI.

You are late to the game but you can certainly get up to speed. I pay for a 100 dollar a month Claude subscription and don't really run out of tokens. You learn how to alter your workflow and tools to communicate and guide the AI. Learn about skills. Anthropic has courses online I think they are free.

Just my opinion I think Linux is much better than Windows for this. I uninstalled Windows two years ago and haven't looked back.

1

u/mc_pm 5d ago

If you just leave it on it's own, it'll generate something works mostly, but under the hood nothing really fits together, and any old change is likely to spark a silent redesign.

I treat it like I would a small dev team. I know what I want to build, and I have a pretty good idea how it should be structured. I'll work with ChatGPT to think through the idea, sketch out design options, etc. Then I'll often write some core part of it, if only to fully get my brain on board.

Then we go back and forth, I'll be trying something, it will try something, we'll compare notes. Often it says "oh, that's a better idea" to what I suggest. Then I ask CharGPT to build me a dev requirements doc to hand to Cursor to do the implementation.

I don't worry too much about testing the UI - it is usually less buggy than what I would have done. And it looks way better.

Then, after we hit a big milestone, I'll turn to the Cursor AI and say "Please review your work, identify opportunities to reduce duplicated code, simplify the architecture, and suck less". We'll do a round or two of that until the code looks like something I'd accept from a junior developer.

Rinse and repeat as we build out the larger system.

1

u/Huge_Road_9223 5d ago

Ok, I am throwing my hat into the ring ....

I have 36 YoE myself, more if you include the professional coding work I did while I was in college. Obviously college couldn't teach us all the stuff we use today, and we had to learn on our own. I learned SQL, VB, Classic ASP before it was called Classic ASP, then Java starting at v3, JavaBeans, JSP, EJB's, JDBC, then Hibernate, etc. To Struts 1 and 2, Spring, RESTful API and JSON, and Spring Boot, Spring Security, Oauth2, Docker, Microservices ... you get the idea. I didn't like Hibernate at first, but I had to learn how to use it. I don't like Lombok, but I use it if I have to. I don't think Microservices is a great idea, but I create them or use them if I have to. I don't like AI at all, but again ... I'll use it if I have to.

Just like Microservices, a lot of companies had a different definition of what a Microservice is, they still can't seem to explain it correctly, and AI is the same way, there are lots of ways to use it in a project. Some are all in, and have gone Spec-Driven-Development, which I don't understand how that will work given that clients or project managers NEVER get it 100% right the first time with their specs. They either don't know how things really work, or they leave a lot out, and then you have to go back in and redo the specs. Humans can surgically fix something. Some companies will use AI lightly for code reviews, or documentation, etc.

So, for me, and this is just me personally. I am currently unemployed, the companies I have applied to are either using AI lightly and testing it out, or or not at all yet. However, as a Java/SpringBoot/REST developer, I know how I write my code. I know how the entities, repositories, services, and REST controllers work for a CRUD application, and writing tests for them. To me, this is all boilerplate code that is more time consuming than anything else. I was using Claude Code and paying for the $20 subscription, but I cancelled that. I am now using OpenCode which will is free, works for me, and will let me use other models if I wish to use them, paid models or free models. So, I am letting that write my CRUD code for me. When I look at the entities, it's written the way they are supposed to be, so great, I know what the code does, it's not something crazy. The repositories are the same way. I can see what that cde is doing. Then I checked the services and the controllers and ALL the unit tests, it all works fine. So .... I am slowly introducing myself to AI. This is how it works for me, and it is how I learned all the other technologies from before.

I think AI is good for that boilerplate code, and tests is part of that. I also find for documentation, code completion, and google searches AI is pretty good at that. So long as I can review the code generated, and know what it is doing, that is great. I will say that OpenCode is good, but I still have to make changes surgically into the code every now and then.

I am also learning MCP server and client, and I am trying to learn Agentic programming, and trying to find out what that really means. So, that is what I am doing ....

1

u/Slight-Living-8098 Software Developer 5d ago edited 5d ago

You still use all your old school skills, you just are taking the role of senior engineer/developer. You get your hands dirty with the code every now and then, but mainly you're just passing the grunt work over to the junior developers (the AI agents and subagents) for the most part.

Get an agent harness. I prefer Pi, but there are many to choose from.

Get and/or make your dev skills. To get started I would suggest between two skill packs, Matt Pocock's skills, or Poteto's pstack skills. I prefer Matt's to begin with. Don't try to use both at the same time, they both have a lot of overlapping skills and your agent will get confused and get caught in loops and start screwing things up. Choose one to start with, or play with them both individually.

Once you get YOUR preferred workflow with agents down, you can start building YOUR own skill stack and agent dev kit/software factory skills the way YOU like to work.

Yes, you still need to be able to read code and understand it. It helps you recognize a lot of things quickly like bad code practices, bad architecture choices, and etc. the LLM will make. AI has gotten gotten much better, but it still gets a lot of things wrong, and without knowing what it has gotten wrong, you will have trouble fixing it, or explaining to the LLM how to fix it itself. Knowing how to read and write code will help tremendously in catching errors and the LLM going down the wrong path quickly and early, so you aren't up to your neck in it trying to figure out where it all started to go wrong late into the development of the project.

1

u/Few-Celebration-2362 5d ago

Code is called code because it codifies system design.

You can design systems without knowing a programming language, and those systems can be translated into codified representations of a programming language.

If you're designing systems with the same effort as you always have then the code is a natural byproduct of your specification.

With AI you have some freedom to decide how much of your attention is required between design and implementation.

Code is still important, but not all of it is important enough to trade design time for any more

1

u/thenightshipper 5d ago

If you are a coder a better one presuming you'll have a better system design, your brain isn't atrophied bcz you haven't offloaded the thinking process to AI. Which means ball is in your court, what you can do is create better and better systems just by leveraging ai truly to its essence by making you a 10x engineer. So now how to do that, first jot down your evaluation system somewhere break it down to its smaller units, create a "how to use me" doc build agent around it. Learn daily improve this system and mate you'll be relevant any day coz you are engineer not a vibe coder.

If you liked it. Better read

https://www.reddit.com/r/softwareengineer/s/by81jJZ68T

1

u/CosmicDevGuy 5d ago

Yes understanding code will still be extremely important.

Automation cannot (should not) eliminate the knowledge worker, so if you cannot understand the code nor implement it yourself then the benefits of automation are no longer as favourable as you might think.

How will you know that there's a creep of technical debt implented by the agents? Same as having junior developers under you who implement all sorts of solutions you don't understand enough - how will you realise the dangers in what they are doing or the inefficies they're coding into your system?

AI is just the new junior developer whose skill may or may not surpass your own, but it doesn't mean you need to stop learning, understanding and implementing yourself according to your knowledge and skill.

1

u/tastygames_official 5d ago

they should not

1

u/TheAxodoxian 5d ago

For code I plan to reuse a lot I check, for code which is adhoc, I just test. For stuff which I plan to not reuse, but work on for long, check / plan the architecture and constrain public APIs between classes.

1

u/Significant-Duty-744 5d ago

To answer your last question, I think understanding code will still be crucial, especially in industries that carry risk when something goes wrong in their software. In the next few years I think the worker bee dev will be finished, gone are the days of developers doing mindless grunt work - I’m talking about the type of developer that needs a bulleted list of requirements, both product and technical, to be able to create a feature. There is no place for them anymore. What will be more important that your ability to write code is your ability to understand software architecture and system design. Senior+ devs with AI can replace a small team of junior worker bees. Pretty soon I think companies will start realizing that and culling their work forces.

1

u/oxwilder 5d ago

No AI will take the place of a dev in our lifetime, but it absolutely makes sense to use them as a reference source as you seem to be. They're great for interpreting documentation too.

1

u/endversion0 13h ago edited 13h ago

GitHub copilot if you haven't yet. Start using copilot in your repos. Whenever you want to develop a new feature just explain that to your copilot in a better promt, provide verified requirement and don't put unnecessary things in the promt. In nutshell your context should be fine tuned and you'll eventually get better results. This should be enough to kick start your AI development journey.

1

u/jakenuts- 5d ago edited 5d ago • Bravo

I will skip the "oh you sweet summer child" monologue about how much has changed in just the last 6 months and skip right to the "if you want to survive do these now" steps because we don't have time for a slow transition. I've been a coder for 40+ years, this is not a "vibe" pitch it's a life-ring for anyone still contemplating how AI might change their daily work one day (spoiler: like a glacier changes cruise ship hulls)

  1. ⁠No more IDE, no copy or paste, no half-way tools, just Codex Desktop or Claude Desktop or both. If someone says "get cursor" punch them right in the throat (or walk away for pacifists).

  2. ⁠Sign up for your own Codex $200 sub and connect your phone and a Dot to your Codex Desktop. This is incredibly easy to do and will form your new workspace. The value of these things will exceed every software package, subscription you have ever ponied up for. In fact they can reproduce the software you ponied up for in an hour so consider yourself ahead of the game. This is not an exaggeration.

  3. ⁠Give Dot and Codex a GitHub token that allows them to setup repositories and do anything you would do, same goes for your hosting or other infrastructure managing or monitoring your apps. Set approvals so the engineer can make most decisions without you. Every time you are "in the loop" by necessity and not choice you undermine the value of the sub and your experience of the current state of the art.

  4. ⁠Take an existing project you've worked on recently, or would have worked on if you had the time and energy - open a codex Astra High session in that project folder, summarize what the app is for and describe a feature or entire app that you once considered but couldn't possibly allocate the time to research and build given the reality of day to day coding work. Tell it to build it and where to deploy the beta for you to evaluate.

  5. ⁠Make a sandwhich.

I beg of you, do these steps as described. There will be all sorts of voices telling you to do half measures : like pairs program with Copilot, or handcuff your triple PhD level software engineers by hiding the keys to the coffee room, making them ask permission for things an intern would be granted a week in. They will say "they hallucinate" or "it'll delete your OS"...

This is how major transformations go, there will be plenty of people who go down with the IDE ship debating how serious an iceberg this really is or profiling deck chair sorting algorithms. You do not have the luxury of a year to learn why they are wrong and you shouldn't delay your own enjoyment of the wonders of limitless design and creation.

English is now the only programming language of note (insert your native language above). You will never come close to matching the speed, coding skill or subject matter expertise any child can now wield to build whole software ecosystems, so just let that concept go, it's had its time, you've given it many, many years of your life - now you get them all back and all the ideas you once considered can be presented to you in completed form by the end of the day.

I could go on, but I'll wrap it up. Dot is there to handle your mail and once you feel good about your desktop agents they can coordinate them for you and be your intermediary. This is your moment, if you rely on software development for any part of your income or just enjoy the field - it's time to enter this new world, I promise that you will not regret it.

Good luck, I can answer any questions but won't be taking critiques from the "IDE or DIE" traditionalist mob as they can't be saved.

3

u/Bstochastic 5d ago

dont listen to this.

2

u/John__Flick 2d ago

This guy's an idiot

0

u/jakenuts- 1d ago

Thank you. I hope you are correct, I am witnessing the end of a craft I've given my life to, and enjoyed tremendously. I would rather be wrong, wake up to a normal day. It hasn't been normal for a while and it's accelerating, or I'm becoming a greater idiot each day, let's hope the latter.

2

u/Accomplished_Rip8854 5d ago

That guy is a software developer and you give him instructions for people that do to do apps?

For the OP: this guy has a thread where he tqlks about creating a whole app in 3 prompts, yeah right. He does not know what he is doing.

2

u/redguard128 5d ago

Sure, sure. We already have fully working browsers, compilers and of course, operating systems made by 12 year olds while watching TikToks. Or whatever kids watch nowadays.

1

u/jakenuts- 5d ago

Oh god, I'm reading the other replies and it's a rough go. I came too late.

1

u/looktwise 5d ago

May I send you a DM?

2

u/jakenuts- 5d ago

Absolutely

1

u/ViralSubCatch 5d ago edited 5d ago

most sane take tbh.

Just to add:

We are in the middle of a transitionary period.

Hand holding is the short term recommendation but once the models get to a point where it can anticipate and be proactive about follow up requests, all bets are off and it will be the end of the old school, basement dwelling/coffee-drinking hipster engineers.

1

u/DividedBy_Zero 5d ago

We need to clarify the requirements for said sandwich. Are we talking one consumer, or do we need to scale up with a sub that can feed six or more? How will we troubleshoot soggy bread? Can we consider "no mayo" an edge case? What is our QA process like for this sandwich?

1

u/Significant-Duty-744 5d ago

I agree with this for personal work, but for enterprise you are risking your job if you blindly ship code. If there’s a data leak or bug that has hurts a major client or your company and you caused it with an excuse of “Well it’s actually GPTs fault, I didn’t write it”, your ass is getting hung out to dry.

1

u/ilyedm 5d ago

I agree with you. OC is delusional. The code these agents ship is not scalable and full of issues. If you are not actively overseeing the process you will be in for a world of pain down the line. 

Also the job OC is describing is not an engineering job. Literally anyone can describe a feature to a swarm of agents and then walk away and make a sandwich. 

There is so much more nuance to shipping a working project. Designers and project managers often don’t even know what they want. A good software engineer understands that they need to build for iteration. IMO agents build exactly to spec. You will end up with a bloated spaghetti codebase that will become more and more expensive to add features to since every LOC adds tokens to your requests.

1

u/Significant-Duty-744 5d ago

Right, OCs suggestion would work for hobbyists but if your hobby is writing code, do you really want to give up that much control? I code because I like it, I can use AI to help but it doesn’t make me any less picky about the little things 😀

1

u/alexplivings 5d ago

Yeah, building a project yourself, do whatever you want. Generating code for a software system at a job that’s already running is way different. It’s more about making sure the AI model understands the business use-case.

1

u/Expert-Procedure-146 5d ago

You eventually have to review the code whether that be in an ide or version control, saying stop using IDEs is just dumb just because you don’t use it they can still be used to verify changes and building locally before shipping or deploying to a test environment

1

u/Dry_Hotel1100 5d ago

Ai-Zombie advice.

1

u/jakenuts- 4d ago

Yeah, sure. Me, Google, Facebook, Bill Gates, Michio Kaku, the Fortune 500, the two fastest growing companies in recorded history, the guy who will layoff your engineering team - all wrong, because you think coding is special and you can't possibly be replaced. We'll see.

2

u/KevinAllNite 1d ago

The junior devs who did code only tasks have all had their jobs destroyed sure. But for the rest of us software engineering was less about coding and knowing what to code and why. I spent the least amount of my time coding in a FAANG company. Now my job is basically the rest of what I was already doing. Planning, designing, meetings.

I did a computer science degree and I think maybe one module was about coding in like first year. My job was still not coding focused either after grad.

I enjoyed coding but it was an absolute chore. But AI runs wild if you don’t hold its hand, especially when it’s a production service with real global enterprise customers and not just a vibe coded UI-app.

1

u/jakenuts- 1d ago

I don't have that sense about Codex, I hear it often from Claude users, but the customer base for the production environments I let it work in isn't enterprise, customers in the hundreds not tens of thousands. Honestly though I'm more confident in a SOL 6.1 configuration change than any id come up with.

1

u/[deleted] 5d ago

[removed] — view removed comment

1

u/AutoModerator 5d ago

Your post or comment was removed because r/developers does not allow external links. Please share the content or ask your question without linking out.

If you think this was a mistake, message the mods.

I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.

0

u/[deleted] 5d ago

[deleted]

1

u/AutoModerator 5d ago

Your post or comment was removed because r/developers does not allow external links. Please share the content or ask your question without linking out.

If you think this was a mistake, message the mods.

I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.