this post was submitted on 16 Jul 2023
1273 points (98.6% liked)

Programmer Humor

32371 readers
643 users here now

Post funny things about programming here! (Or just rant about your favourite programming language.)

Rules:

founded 5 years ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[–] Aceticon 4 points 1 year ago* (last edited 1 year ago)

I've worked with Java for decades (kid you not: learned it from reading the Java Language Specification 1.0 back when it came out) and there's definitivelly a stage (often a long one) in one's career when one thinks him/herself so great at OO and just overengineers every single software design way (way, WAY) beyond the actual objective of behind the whole OO design concept (maintenability and bug reduction), actually achieving the opposite objectives (an unmaintainable POS, riddled with hard to track bugs because of way too many unnessary details having overwhelmed the developer's ability to keep track of it all).

Eventually you learn KISS design and Refactoring as a sort of housekeeping practice for code and design.

But yeah, as a freelancer I've very commonly landed in the middle of maintenance-stage projects with existing code bases that were clearly done by somebody at that oh-so-special stage in their career, and often it's better to just reverse engineer the business requirements from the application and redo the whole thing (in the process cutting the codebase size to a small fraction of what it was).