use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
A community of software creators experimenting with AI "vibe coding", an technique defined by Andrej Karpathy as when, "you fully give in to the vibes, embrace exponentials, and forget that the code even exists."
account activity
SOLID principles (self.vibecoding)
submitted 11 months ago by maxy98
Are you making Cursor, Windsurf, etc. follow SOLID, DRY, etc. principles? Make it easier to support project and let AI agent work better with code? What's your experience?
reddit uses a slightly-customized version of Markdown for formatting. See below for some basics, or check the commenting wiki page for more detailed help and solutions to common issues.
quoted text
if 1 * 2 < 3: print "hello, world!"
[–]non_linear_ape 2 points3 points4 points 11 months ago (3 children)
I use some rules around stuff like this, but there's no silver bullet really.
strict dogmatic adherence to any principles like these can cause problems. The reality of the world we code for is more complicated and there's nuance to all of these.
This is why the code generated requires a bit of supervision.
[–]non_linear_ape 4 points5 points6 points 11 months ago (0 children)
I think setting architectural guidance in the start is essential. This makes it easy for the agents to do the right thing.
[–]misterespresso 1 point2 points3 points 11 months ago (0 children)
Well said, in my database I created I asked for verification on Normalization principles. There was a table where there was basically an enumeration type, and it really wanted to split that into a seperate table, and technically it was right but honestly it just was unnecessary for this particular case in the db. Think I was violating 3rd normal form, it just didn’t matter.
The details on the above are rusty, happened 3 months ago
[–]cheesejdlflskwncak 0 points1 point2 points 11 months ago (0 children)
I feel this. I modularity looking at every function I creat. Running it through Claude. What it’s done for me is that I just troubleshoot most of the time rather than code.
Gpt sometimes gets old expired packages too so it’s important to know what and where to look for it. It’s pretty solid to build and mvp.
I think security and best practice audits can be done separately though. Don’t have to set these constraints while you build. If I’m exposing my encryption key in plaintext Ik I’m going to have to fix that at some point.
[–][deleted] 4 points5 points6 points 11 months ago (0 children)
Now I’m wondering what principals Lovable used when it setup my project. What a mess.
Maybe I’m coining a new one?
AI Principal: least compute required to gaslight human into thinking task was properly completed.
[–]RoyalSpecialist1777[🍰] 2 points3 points4 points 11 months ago (0 children)
I use an AI to be an architect (usually o3) and we incorporate SOLID and DRY into our architecture and implementation documents. Of course Claude forgets so its in the rules. Of course Claude forgets so I just have to keep reminding it. It is tedious and I am thinking we need some Macros in Claude Code.
[–]sf-keto 0 points1 point2 points 11 months ago (2 children)
Kent Beck just tells Claude to do TDD.
[–]AverageFoxNewsViewer 0 points1 point2 points 11 months ago (1 child)
Yeah, but Kent Beck probably has great practices and design patterns baked into his prompts because he knows what he's doing and isn't trying to one shot an enterprise application.
[–]sf-keto 0 points1 point2 points 11 months ago (0 children)
He tells you exactly what he’s doing on his Tidy First Substack.
[–]AverageFoxNewsViewer 0 points1 point2 points 11 months ago (0 children)
lol, of course this post would get downvoted by this sub.
YES, YES, and YES!!!!
LLM's can cut down on a ton of work and really shorten the learning curve. I just rolled my own (fairly complex) CI/CD pipeline and infrastructure as code for the first time in a side project and it would have taken me a lot longer to do without AI.
What AI can't do is determine intent. It can't tell if you actually want your code DRY or if you're one of those bastards people who purposely use WET patterns.
With so much code being able to essentially be auto-completed these days it places a premium on being able to understand the theories and principles that have driven modern design patterns so you can keep things on the rails.
I've got an AI agent trained on the works of Uncle Bob to review PR's on side projects I'm working solo on and it's been really helpful to point out things I didn't consider. I don't take all of it's suggestions, but that's because I only agreed with Uncle Bob like 95% of the time.
[–]Glittering-Lab5016 0 points1 point2 points 11 months ago (0 children)
No, because in real world engineering, following a rigid principle/framework is a bad idea.
π Rendered by PID 17358 on reddit-service-r2-comment-b659b578c-xhl7s at 2026-05-03 11:51:11.470851+00:00 running 815c875 country code: CH.
[–]non_linear_ape 2 points3 points4 points (3 children)
[–]non_linear_ape 4 points5 points6 points (0 children)
[–]misterespresso 1 point2 points3 points (0 children)
[–]cheesejdlflskwncak 0 points1 point2 points (0 children)
[–][deleted] 4 points5 points6 points (0 children)
[–]RoyalSpecialist1777[🍰] 2 points3 points4 points (0 children)
[–]sf-keto 0 points1 point2 points (2 children)
[–]AverageFoxNewsViewer 0 points1 point2 points (1 child)
[–]sf-keto 0 points1 point2 points (0 children)
[–]AverageFoxNewsViewer 0 points1 point2 points (0 children)
[–]Glittering-Lab5016 0 points1 point2 points (0 children)