Stop Slopware

stopslopware.net

114 points by bradley_taunt 9 hours ago


https://ficd.sh/blog/your-project-sucks/

wibbily - 8 hours ago

It bothers me that so many programmers I know, here and in real life, seem to never actually have cared about the craft of software development? Just about solving problems.

I like problem solving too. But I also like theory and craft, and in my naïveté I assumed most of us were like me. LLMs divorced craft-programming from tool-programming and now it seems like there were never any craft-programmers at all.

It feels like the group I was part of was just a mirage, a historical accident. Maybe craft-painters felt the same way about the camera.

simonsarris - 8 hours ago

> if you’re doing this for your own learning: you will learn better without AI.

This is not the distinction I would want to tell newcomers. AI is extremely good for finding out what the most common practices are for all kinds of situations. That's a powerful learning tool. Besides, learning how to use a tool well (one that we can expect professionals to use) is part of learning.

Now most common practices and best practices are two different things. They are often the same, but not always. That's the major caveat for many fields, but if you can keep it in mind, you're going to do OK.

tekkk - 3 hours ago

The blog post is actually much more rational than some of the comments here. There's a fine balance what I call fetishization of tools and just knowing your craft well. Sometimes, we want to use an abstraction even though simpler approach may be better because we are in hurry, want to learn new things or just dont care particularly.

Whose to judge if it works and ships on time? Well, the fool later down the road who has to maintain it probably. But I've never believed in gate-keeping or preaching without pragmatism - I rather put my energy in teaching what little i can and hope that joy of seeing things improve for better will motivate them towards learning. If not, well it's waste of time either way.

- 4 hours ago
[deleted]
voxleone - 4 hours ago

If i had to give advice to young programmers, it would be this: be comfortable with set theory and notation. It’s interesting that once you collect use cases, sketch the objects, and express everything in a set-theoretical fashion, the programs almost write themselves. You can even feed this set-theoretic notation directly to an LLM and get code in return. It’s a perfectly honest way to incorporate LLMs into your workflow.

Larrikin - 8 hours ago

Why would any actual software engineer be against slopware?

When it inevitably all comes crashing down because there was no actual software architecture or understanding of the code, someone will have to come in to make the actual product.

Hopefully by then we will have realistic expectations for the LLM, have skilled up, and we as a community treat them as just another feature in the IDE.

armchairhacker - 4 hours ago

I don't think we should shame beginners for using AI. Instead, we should encourage them to try working manually and/or learn fundamentals.

Also, public communities have been overrun with low-quality beginner posts for longer than AI. Moreover, you can't convince all beginners to stop using AI, because some are malicious and/or socially inept. Moreso than shame or encouragement, we need a filter for low-quality projects (perhaps a combination of AI flagging and manual review). That would benefit both the beginners and the people who shame them because they're bothered.

- 8 hours ago
[deleted]
pbalau - 6 hours ago

> keep the commons clean [from the second link]

A glance at the r/python will show that almost every week there is a new pypi package generated by ai, with dubious utility.

I did a quick research using bigquery-public-data.pypi.distribution_metadata and out of 844719 package, 126527 have only 1 release, almost 15%.

While is not unfathomable that a chunk of those really only needed one release and/or were manually written, the number is too high. And pypi is struggling for resources.

I wonder how much crap there is on github and I think this is an even larger issue, with the new versions of LLMs being trained on crap generated by older versions.

i_love_retros - 5 hours ago

I'm not sure if I am just losing my mind at this point, but all this slop everywhere is starting to be funny.

I honest to god am in teams chats at work with high up the food chain architects and leaders (and plain old devs) and people are pasting chatgpt responses either as evidence backing up their claims of how something should be done, or as an actual response to another person as if they typed it themselves.

I have people sending me documents they "put together" that are clearly chatgpt generated, tables and emojis included.

Is this progress?

stevesearer - 5 hours ago

The tools I AI slop/vibe code are more like when I'd use spreadsheets for everything rather than real software.

I'm not against taking the time to read the docs, learn to craft code, and ship beautiful projects, but I could have done that before and didn't then either.

The difference is that now I have a hundred small, internal tools that save my team time and energy.

simonw - 8 hours ago

> if you’re doing this for your own learning: you will learn better without AI.

I'm certain that's not true. AI is the single biggest gift we could possible give to people who are learning to program - it's shaved that learning curve down to a point where you don't need to carve out six months of your life just to get to a point where you can build something small and useful that works.

AI only hurts learning if you let it. You can still use AI and learn effectively if you are thoughtful about the way you apply it.

100% rejecting AI as a learner programmer may feel like the right thing to do, but at this point it's similar to saying "I'm going to learn to program without ever Googling for anything at all".

(I do not yet know how to teach people to learn effectively with AI though. I think that's a very important missing piece of this whole puzzle.)

I'm a BIG fan of these three points though:

  rewrite the parts you understand
  learn the parts you don’t
  make it so you can reason about every detail
If you are learning to program you should have a very low tolerance for pieces that you don't understand, especially since we now have a free 24/7 weird robot TA that we can ask questions of.
noman-land - 8 hours ago

As a practitioner I also inherently believe in well written software but as a lifelong learner, things change, and evolve. There is absolutely no reason why software today has to be written like software of yesterday.

There is no need to be so prescriptive about how software is made. In the end the best will win on the merits. The bad software will die under its own weight with no think pieces necessary.

On the other hand, code might be becoming more like clay than like LEGO bricks. The sculptor is not minding each granule.

We don't know yet if there's long term merit in this new way of crafting software and telling people not to try it both won't work, and honestly looks like old people yelling at clouds.

srpinto - 4 hours ago

I've been using Gemini / Antigravity to make a virtual pet for my kids using Love2D / lua. I never coded in my life and have no intention of learning (but I've been learning a lot about game systems and logic, which has been fun). The game is coming along very well and it looks very pretty (I'm a professional illustrator) and if I decide to publish it, no one will care the code is made in AI. It's very high effort, to be honest. You'd had to look into the code to know AI made it.

I now get why so many people are making AI art. I see their "work" as an illustrator and it is absolute slop, but I can see now how it might be fun and even liberating for people who don't make a living with it. So I now think twice before calling AI art "slop". Sure, it may be slop, but it's making a lot of people happy and probably opening up new carreer paths for people.

And yes, I've been affected financially because of this... but I get it.

bibimsz - an hour ago

as with all advice - disregard it and do whatever you want.

erelong - 3 hours ago

Sounds like you mostly want:

-to encourage people to develop more basic programming knowledge and skills (with AI or other manual methods) so they don't produce as much "slop"

-to catch "slop" being created and either discourage people from using it, or to get manual or AI review of the code to make it "decent", and volunteers working to clean it up or this could turn in to probably a whole industry (of people with some knowledge of how to create their projects, who want professional input or rewrites of their code)

So it sounds like a lot of "opportunity" to be made use of in some different ways

edit: another alternative might be creating "competing" functioning projects to "slop projects" where applicable (sometimes a good idea might exist, but it could be implemented better or in a complementary way by another project)

GaryBluto - 4 hours ago

"Stop making software that is buried under heaps of noise" says the 1-page HTML document that somehow has 5 build dependencies listed on it's Git repository. I don't think I've ever seen anything so tone deaf in my life.

https://codeberg.org/ficd/stopslopware.net

- 4 hours ago
[deleted]
idiotsecant - 6 hours ago

I suspect the effect of AI will be a sort of eternal September, but for software. It's a phase change in how a lot of software will be written and used. There are a lot of applications right now for software where crappy software that mostly gets the job done in a specific way is Good Enough. There's going to be a lot of software written by LLMs that maybe barely compiles and doesn't handle edge cases and has weird behavior but gets a small, specific job done. This is a good thing, since maybe the previous alternative was doing something manually, or not at all.

There will still be major, fundamental, foundational software work for serious engineers to do, but we have to admit that most software needed in the world is not that.

simonw - 8 hours ago

The author wrote an essay to accompany this site here: https://ficd.sh/blog/your-project-sucks/

magnitudes - 8 hours ago

I find these really are not only condescending but also really miss the mark and ironically come off as really uneducated in my opinion, and that really is the most infuriating type of condescension. What you call slopware today is becoming less and less sloppy every six months as new coding models drop. In 2 years the “unmaintainable mess” is going to be far better and far more maintainable than anything the engineers behind these snide websites will make. Do folks realize you can also use the same coding models to ask questions and reason about the “slop” that these code models are writing that somehow is able to do something I would never have been able to do before? I don’t really care if it’s 100% accurate, hit it with a hammer until everything makes sense. Yell at Claude and learn how to wrangle it to get what you want, that skill is an investment that’s going to pay you back far more than following the advice of these folks, that’s my opinion.

Like “you will learn better without AI” is just a bad short sighted opinion dressed up in condescension to appear wise and authoritative.

Learn your tools, learn the limitations, understand where this is going, do the things you want to do and then realize “hey my opinions don’t have to be condescendingly preached to other people as though they are facts”

charlesabarnes - 8 hours ago

My reflex is to call the website useless because the problem isn't usually software produced by individuals. My problem is the buggy messes that trillion dollar corporations produce.

tonymet - 8 hours ago

If man-made software was high quality, this problem would resolve itself , because “slopware” would be easily distinguishable.

The best way to resolve this is to write man-made software that’s good quality.

It’s just a tool

sergiotapia - 6 hours ago

If you are an experience software developer, AI lets you fly and build things much faster.

If you are a new software developer, I don't see how you grow to develop taste and experience when everything is a <ENTER> away.

I think we are the last generation of engineers who give a fuck tbh.

sapphirebreeze - 8 hours ago

[dead]

fschuett - 8 hours ago

[flagged]

colesantiago - 8 hours ago

My “slopware” has brought in $200K a month.

As long as it works and people’s problems are solved, I don’t see any issue with it?

mpalmer - 8 hours ago

You can't be serious.

> When you publish something under the banner of open–source, you implicitly enter a stewardship role. You’re not just shipping files, you’re making a contribution to a shared commons. That carries certain responsibilities: clarity about purpose, honesty about limitations, and a basic alignment with the community’s collaborative ethos.

(from the second link)

You're not just writing angry screeds, you are producing slop prose and asking us to spend our time reading it.

How is this not an implicit repudiation of your entire argument? Are you not hurting yourself by avoiding learning how to write better?

singularity2001 - 8 hours ago

Written by AI ;)

At least it feels a bit like it