DEV Community

Discussion on: What’s an unpopular software opinion you have?

anortef profile image
Adrián Norte

1) Depends a lot of what your code aims for. It is an MVP that will be erased after the startup gets funding or closes for the lack of funding? yeah, OOP or not doesn't matter.

2) Solving problems with the most optimal solution possible at the minimum cost possible. Taking into account that more than 95% (or more) of the cost of software is on the maintenance part (add this or that, change X and fix Y) and taking into account that OOP is the easiest way for most humans to work, this also clashes with point 1.

3) Is more a sign of how little we know about the art of solving complex abstract problems.

4) totally agree. And I would add that most of the problems it solves were introduced thanks to it.

5) what is an OOP language? a language that uses objects. What is an object? the representation using code of an abstract entity from a problem we are solving. Therefore for me, there is almost no language that isn't OOP. Most people call a language is OOP because it uses Classes but I find that way to simplistic.

6) Oh, no! please continue.

Anyway, it's not written in stone and only represent feelings of my present self (will be happy to discuss any point and even change my mind).

Words to live by.

mnivoliez profile image

1) I totally agree. What I was trying to do (and it's not only OPP in fact, but a lot of stuff) is that we should use the right tool for the right job and not the shiniest tool because everyone love it.

2) I was trying to express that the beauty of your code and the absolute awesomeness that we can find in it is not as relevant that the problem you seek to solve.

3) That's an interesting thinking, I'll dwell in it someday.

4) Some other tools (like pijul) deserve a little lookup to broad a little the landscape of vcs.

5) I tend to believe that OOP is a paradigm revolving around object. It's not that objects exist in it but more than everything is done to promote them. For instance Java urge you to manage things through object. Object become de-facto the "orientation" taken by the language. Other paradigm, like functional or ECS, or not focus on object as a "core" concept of programing. As such, object are just a convenient way to pack data altogether in those paradigm rather by being the central gear of it. At least it's the way I see it.

But my vision may be biased or even uterly wrong.

6) Ok...

7) Top 10 are overrated, top 7 is the way to go.