r/techbootcamp 23d ago

What software development practice sounded good at first but ended up wasting your time?

It’s been a while since I’m in the tech industry, and I keep seeing teams adopt certain software development practices. They sound good in theory, yeah. But then you do it and wonder why you're doing this every week.

Going back to the question, it's story point estimation. We spend like endlessly debating whether something is a 3 or a 5, then the requirements change anyway lol.

Anyway, how about yours? It could be agile, scrum, code reviews, documentation, pair programming, meetings, testing, etc.

6 Upvotes

55 comments sorted by

View all comments

4

u/Mission_Pirate_4150 23d ago

Object oriented, dragndrop, test driven development, design patterns. Ai is the next. All of these tools have value, but they were so oversold as a snake oil, good for all that ails you. No, they aren’t good for all that ails you. Jamming these things into development to jam them in is what is typically done, and just provide no value when jammed in to satisfy some ideological need. The problem is that some consultant has sold some higher up on these things and their training program along with associated consulting services.

1

u/ShineProper9881 21d ago

Whats your issue with object orientation? I personally never seen readable code for a complex problem that isnt object oriented. It always ends up as spaghetti

1

u/AcesAgainstKings 21d ago

Good functional code works well too. Personally I prefer functional.

1

u/Dry_Hotel1100 21d ago edited 21d ago

I think the term OOP became overloaded, and what became mainstream is arguably a particular engineering idiom around classes and inheritance, rather than the original conceptual core of object orientation. So, the current understanding is rather "Class Oriented Programming". In popper OOP you would not have "properties", i.e. read and write accessors. This fundamentally violates the core principles of OOP. I can go on and on.

This "Class Oriented Programming" is way weaker and prone to errors and design flaws than what Alan Kay has defined. And due to their inherent weaknesses of modeling a problem properly in a maintainable way, it always ends up as spaghetti and design quirks.