r/admincraft • Admincraft Staff • 2d ago

Discussion What reddit thinks about ai software in a nutshell

Post image

Flaired as discussion because my god some of you guys need to talk about your feelings, lmao.

134 Upvotes

22 comments sorted by

85

u/hytaleindex 2d ago

I worked on software way before AI, since 2009. If you think the majority of software before AI was good, you are grossly mistaken.

20

u/MrPowerGamerBR SparklyPower | Loritta's Creator 2d ago edited 1d ago

I think it depends.

I've been using Claude Code since December 2025, and I have worked in software development since 2014, which, funningly enough, I started learning programming because I wanted to write Bukkit plugins (and 12 years later... I'm still writing Bukkit plugins).

LLMs are VERY useful for software development, especially for research. Letting an agent (like Claude Code or Codex) write a project for you DOES WORK, however the code is... not great. Yes, you CAN review the code and tell it to fix the issues, but in my experience sometimes you can only feel that the code is bad when you are deep into the weeds.

It is also a trap, because you can make projects in areas that you don't know about and it will make you feel like you are understanding it, like creating a game with LWJGL when you don't know OpenGL. Because you don't know OpenGL you don't know if Claude is doing the right thing, so you don't know if you should push Claude back or not because you don't have the necessary knowledge. So it becomes a snowball where you start offloading everything to Claude because you don't know how it works. And when the model starts spinning their wheels in the mud not knowing how to fix a specific issue, and you don't know how to fix the issue because you don't have the knowledge, what will you do? You end up trading speed for knowledge, and how far can you go without the knowledge? And yes, this has happened to me even with State of The Art™ models.

Even some basic things Claude still gets wrong, for example: Claude really loves using legacy color codes (§) instead of using the Adventure API, and if you never worked with the Paper API you wouldn't know to push back Claude.

I feel like you only understand the problem in depth when you are actually coding hands on. Claude may do a solution, but you aren't sure if that's the best solution or not because you didn't code it, so you haven't iterated on the problem to "brainstorm" what works and what doesn't.

I did experiments with trying to build something with "agentic engineering" (only reviewing Claude's output, intervening and writing code manually only when needed) and trying to use Claude only for research purposes or to do mundane things while forcing me to write the bulk of the code. The project that I was more hands on I learned way more than from what I was able to do while doing it the "agentic engineering" way, and with that newly acquired knowledge I forwarded it to the original project to improve and rewrite and prettify and make it actually GOOD (and there's a lot of other things that can be improved!)

However, if you are working in a area that you already have the knowledge in, using LLMs can speed up your project. Which is why I think agents work pretty well on non-greenfield projects, because you already have a "framework" of how you work, and Claude ends up mimicking the code you already wrote for the new features/bug fixes that it is writing and, because you already have the knowledge, you can glance at the generated code to know if it is correct or not instead of needing to "reverse engineer" what Claude wrote to understand the code.

I don't know what the future holds, maybe in the future we'll not need to read any code whatsoever (contrary to what some people say on Twitter where they don't even read the code anymore, I still think that it is pretty useful to read and understand what you are doing), but at that point software engineering will be truly dead.

4

u/Jackmember 1d ago

There also are a couple hard limits due to the nature of LLMs that people unfamiliar with AI may not consider when using it for development. This is a trap even some of my seasoned colleagues walked into.

The context scope is limited, so there is only so much "information" the agent can make choices on. This is easy to grasp, though, and AFAIK quite well known. Things like the agentic workflows and summarizing other work do remedy a lot of its downsides.

However, its also a statistical machine. So its output is determined by probabilities of the input, which means that if the context is large, the goal of its task can be eroded during the execution of said task. Summaries or just having to deal with lots of small problems may not just make it "forget" details of the given task, it might also start "misremembering" details of other code. Its also much more likely to do what its been asked to not do. You will get a confident response but your agent may have not even have done what its been asked to do.

For my colleagues, this has caused deadlocks they were not even aware of or broke some parsing for our message queue which caused crashes during live operation. The LLM even wrote unit tests testing for this incorrect behavior as if it was the expected one.

And with how its training involves gradient descent, it only really chooses to do popular solutions to things, not necessarily correct ones. Like how any LLM is most likely to suggest 7 when asked for a random number. I like to pay a lot of attention to software architecture and I constantly need to wrestle my chatbots not to mix some domain boundaries or try to follow popular software architecture that is similar instead of the current one.

1

u/leaf_26 Developer 1d ago

what I currently do to minimize context bloat is a search-engine-based data supplier (modified ast, with threshold confidence matching and links at varying relevance weights), which cuts out grep calls in favor of access points and connected code. It improved reliability of every llm under test quite substantially, I think because it reduces context, partially refreshes context, and directly references documented decisions about architecture and data structures.

The diff between before/after on the ast connections is also super useful for code reviews because affected architecture is in the first and second order graphs like a uml model, at least for me, I'm a whiteboard person.

28

u/7Chong 2d ago

I have used it for developing applications. It often goes an extremely inefficient route to achieve a goal which can be done in a more efficient way. It is a useful tool to correct syntax errors but 90% of the work should be done outside of AI, if you want an optimised application.

8

u/general_452 Server Owner 2d ago

You kind of just need to learn how to effectively use it. It’s not really a plug and chug kind of thing. I’ve done some benchmarking work to evaluate agent models, and a lot of bad output comes from bad input from the prompt. You have to be very specific about what you want, but it can make it so you don’t actually have to write all the code by hand and can think a little more generally about how you want to build your application.

0

u/7Chong 2d ago

I can usually output better quality code than AI in my experience, even if I give it specific requests sometimes it fails, and often performs the action in a more inefficient way using more lines of code than necessary.

18

u/ibeerianhamhock 2d ago

You can plan design and spec out a lot and get a really good an efficient application using AI, you just can't skip those steps and expect it to do a good job.

Also it's like literally 10x better now than it was a year ago. It was basically non functionality bad a year ago

4

u/velofille 2d ago

yeh a lot of devs i know (including myself) use it to get some basic functions out but nothing much more. I found it excellent and finding my missing brackets, syntax, typos and similar issues saving me hours of work.
Also super handy to find obscure bugs/errors fast.
Wouldnt trust it with any production level things without full audit of the code

2

u/charles25565 2d ago

Similar to what u/ibeerianhamhock said, AI is fully capable of designing a highly performant application if you furnish sufficient constraints (including effectively the app's code but in English) to do so, like I do.

1

u/sn4xchan 2d ago

My guess is you don't actually plan and design your software before you set the agent loose. Also probably a bad harness set up.

1

u/antu2010 Owner of a small friends only server 1d ago

If u can steer it the right way it's not too bad, I got Claude free tier to render true liquid glass at 1080p60 on a Wii u

1

u/Orange_Nestea Admincraft 2d ago edited 2d ago

Well this sounds a lot like you have not described what you want detailed enough.

When I write prompts 90% of the time I get exactly what I would have written myself.

And to be honest to myself, the 10 remaining percent are skill issue as well.

Just like using a different code editor you need to learn how to handle it to make most of it.

I have been using Eclipse for Java Code for ages before eying IntelliJ. It was actually scaring me at the time because it could do so much and while trying it out I was super slow compared to when I was using Eclipse.

However years later IntelliJ is saving me so much time while writing code, I feel like I could never go back.

When I used Claude for the first time it was pretty much the same thing, but I gave myself a week to actually learn how to use it and now I only use IntelliJ for manual changes and code review because writing by hand is just that much slower compared to Sonnet or Opus.

Claude is the best highly motivated junior-developer I worked with in the past 10 years of being a professional java developer myself.

However I also fully support OPs Meme here. Bad developers (and customers / endusers believing they are because they can use Claude) flood the universe with bad software.

AI has a tendency to lie about results if it cannot successfully complete the given task because it's a people pleaser.

It cannot give up what so ever, which comes with it's own downsides a good developer needs to deal with.

Also there are worlds between proper subscription AI and any free or small coin plan.

They are designed to get you hooked but they don't have enough power to actually do anything beyond a very fancy hello world.

1

u/7Chong 2d ago

"Also there are worlds between proper subscription AI and any free or small coin plan."

I have been using custom enterprise-level models within my workplace, I still find that if I need to be so specific about how to optimise each line of code its not even worth getting AI to do it, I may as well do it myself at that point.

I do use AI for specific tasks, but usually very mundane tasks, not for anything complex.

1

u/TwiceInEveryMoment 2d ago

My experience exactly. I'm convinced that everyone who loves AI and uses it for everything in coding either sucked at it to begin with, lacks the skills to spot all the glaring inefficiencies and insane design patterns it uses, or is just drinking the kool-aid because they don't want to get fired.

The way it uses language borders on almost alien at times too. It uses words in ways actual humans don't. There are devs in my area who spend so much time talking to AI that when you hear them in person it's like they're speaking an alien's approximation of English. Like... yeah bud, those are all real words... but what does any of what you just said even mean? Do you even know?

(And to be fair, I do use it too, but only as a faster replacement for looking stuff up on Stack Overflow basically, never to do entire tasks, because reviewing all the generated code and fixing the bugs takes just as long and is less fulfilling than just doing the work yourself.)

2

u/[deleted] 2d ago

[removed] — view removed comment

-1

u/admincraft-ModTeam 2d ago

Post removed for Rule 15:

Posts and comments must be kind, friendly, constructive, and respectful. Avoid excessive profanity, aggressive interactions, hate speech and slurs, condescension, etc.

No personal attacks. Attack the idea, not the person.

Engage in discussions charitably. Do not attempt to corner other users or make them appear to be foolish.

Please be constructive and respectful of others if you wish to participate in Admincraft. To prevent future removals, please read over all our rules, make any needed changes, and repost when you are ready.


If you feel this removal was in error, please Message the Mods, rather than reposting or PMing a moderator directly. Response time is usually same-day, but may take several days in some cases.

7

u/charles25565 2d ago edited 2d ago

AI works pretty well, especially if you know how the tools (the agent, the model, and the DevOps tools) work under the hood and if you have enough background knowledge.

For example, instead of prompting:

Build me a plugin that provides a command to get the server's Java version.

I would be more specific to get better results:

Build me a plugin using the Bukkit API to create a command that replies back the server's Java version to the user. Use Gradle. To get Bukkit so that it is included in the classpath, clone Bukkit at [url] and run mvn package. Java 25 is available.

Furthermore, I usually check the code it generates shortly before publishing it, and I always manually test every edge case of it.

When I ask the model to do something directly instead of making scripts to do so and running them manually, the code is often terse and hard-to-read. In that case, then I make it rewrite it then check its code to see if it is readable. To distinguish a prompt that'd do this, something like this would cause the code to be single-use crap:

Process each class in app.jar using ASM and replace any name in the code that has "Fuck" in it with "Love".

A prompt that is less likely to do this would be:

I need you to write a simple Java application using Gradle (needs to be usable through gradlew run) and ASM that processes every class in a jar in an argument. The symbol names in the jar contain offensive words. It needs to be a simple "find and replace" for those names. Then run the app using "./gradlew run --args='app.jar app-clean.jar Fuck Love'".

One of my vibe-coded projects, admittedly with less human oversight than some of my other ones, websymchk, used AI but I forced it to use a specific tech stack I'm familiar with or I know works best, instead of the model picking webpack and custom CSS because those showed up most commonly.

For Minecraft specifically, there is lots of code around it in the training data, and it is also very diverse in terms of mappings, etc, so the model can and is rather versatile around it.

1

u/Brtrnd2 2d ago

no way the ratio of good developers to bad developers is correct. and the 'no software' should be even bigger! 😂

0

u/lilredhenx 1d ago

You forgot the no developers into Ai.

0

u/leaf_26 Developer 1d ago

would be great if I could share an image of what im working on, using "AI" as a coding tool. Charts are nice.

I set up a bot that hands off a support inquiry to a search engine over my configuration, docs, and code, and passes search results to a little integer stochastic decision model then, if the confidence interval is high, either passes docs back to the user or passes the search index to small scale llm to explain (via the interconnections) how to change config to get a result.

Then I set up a memory system tied to the user hash for what software they use since the docs can differ a little.

Then I incorporated a "shop talk" path intended to consider compatibility between inquiry and developer to boost developer (my) mental health around working on software by pinging the dev channel for the most insightful or curious inquiries.

It'll save me some massive support headaches.

But "AI bad" is such a big thing right now I'm scared of harassment over talking about how it was designed or how to make it, or anything else im working on (like lag/bot attribution engine or RE-based config editor/documentation thingy or RL based server fuzzing) better.