Live data from Hacker News

Goodbye, Object Oriented Programming

medium.com

81–90 of 355 posts

Re: Goodbye, Object Oriented Programming

#81
When I read such titles I feel sad.

In 2016 we are still talking about Cobol, which is spread in a relatively niche market and considered as a pillar in fields like banking, how can the object oriented paradigm be considered " past or even bad? It is the present and will be the future for at least the next 20 years, considering the number of billions lines of code. From a management perspective, such statements are not strong enough to be justified.

I find this sort of articles to be just bread and butter for codemonkeys, people who learn the most recent paradigm, technology or whatsoever and think that it's the key to happiness, or people who read for the first time a book like the ones from Bob Martin and feel they already know how to develop good software - or poems, as mentioned somewhere in the book - and list the bad things about other types of software architecture or design or whatever.

Re: Goodbye, Object Oriented Programming

#82
post #11

Earlier quoted context omitted.

My impression of react is that it's very object oriented. Defining reusable, stateful components is classic OO design. Now, I don't have much experience with React so maybe someone can explain why it should be considered "functional".

React is an interesting mix of functional and OO. It's OO, in that the primary approach for defining components is class-based, and components have state and lifecycles. It's functional, in that the render methods are expected to be pure functions based on component state and props, and simply output a description of what the UI should look like as a result. Also, as a whole, React definitely pushes you to view the s…

Maybe we need a new tag: OOF.

Or possibly FOO.

Re: Goodbye, Object Oriented Programming

#83
post #76
post #64

Earlier quoted context omitted.

I came to this conclusion because as soon as a paradigm becomes popular clueless people who don't really understand the foundation will start using it. Then you have consultants popping up who don't know much either but come up with slick patterns to sell. This happened with OOP and will happen with FP. Functional programming is not that easy to do right in the real world. It takes some level of abstract thinking and…

Yes, but the foundation under OOP is considerably less solid. I agree that you can write a bad program in any language, but the fact remains that it is impossible to write certain bugs in statically typed pure functional languages and that functions as a base abstraction are more apt for describing computation than objects are.

Totally agree. But don't forget that the real-world is pretty messy and a lot of people are not willing to think deeply about a problem. They want quick solutions. Out of the people I work with I would trust only a small percentage took the time to understand OOP. Only a few guys will take the time to understand FP. The other people pretty much just copy/paste boiler plate code.

Re: Goodbye, Object Oriented Programming

#84
post #5

I think the functional vs OO debate is being done with a very narrow point of view. Functional came before OO and there are reasons why it became much more popular- it had much better, easier and simpler solution to the most common problems of the 90's and early 2000's, namely handling GUI and keeping single process app state (usually for a desktop app). It fares much worse in today's world of SaaS and massive parall…

Lisp with LOOPS, followed by FLAVORS and finally settled on CLOS?

Re: Goodbye, Object Oriented Programming

#86
post #52

God damn it I begin to hate Medium. Just another Bullshit article. When I read those dips ts description: "Software Engineer and Architect, Teacher, Writer, Filmmaker, Photographer, Artist…" Great. And you want to tell me that OO is dead and functional the only future? Fuck off.

The self-descriptions people use these days are so ludicrous it's hard to tell if it's satire. If I had a Medium account, here's how my description would read: "Software Engineer, Philanthropist, Astronaut, Shark Hunter, Breaker of Chains, Lord Commander of the Snack Bin, Protector of the Repo, and Part-time Cat Dad" Too much or just right?

Add some beer brewing or artisan mustard, also "Educator". Makes you more well-rounded. "Philantropist" is always good.

Re: Goodbye, Object Oriented Programming

#87
post #26

Earlier quoted context omitted.

That is a good analysis. While I was reading this article all I could think is "You wanted to do things in a bad way and then you learned how to do it the right way and you don't like the right way?" His entire problem seems to be he thought OO was a magic bullet he could do whatever he wanted with and then he learned there was more to using OO than the three concepts he cites at the beginning. And this guy has suppo…

Everything has limits. You're right, there are no magic bullets. OO is easier to code and maintain. That alone is worth it.

That has been very far from my experience. Unless by OO you mean something more niche than mainstream Java that I haven't experienced.

Re: Goodbye, Object Oriented Programming

#88

I think that fundamentally OOP and FP are both necessary for any language that wants to run relatively close to the metal. The reason is that a computer is fundamentally all about state and you need something to manage the that state. This is the antithesis of FP. OOP manages state somewhat nicer.

Actors (classes that call with true async messages, potentially over the network) composed of objects (classes that call with simple sync stack) which use pure functions whenever possible.

Explicitly handled state + mutations, polymorphism, implicit safe concurrency, fast local calls + opportunities to optimize + safe and easy to reason about.

Re: Goodbye, Object Oriented Programming

#89
post #17

I wonder if someone invented the "modular" programming yet. Judging by the UNIX paradigm of the command line tools, the idea is clearly out there. Instead of objects, do modules - things that do one thing, and carry minimal dependencies. You need a banana? Grab the banana module. You need a banana with ice-cream center? Feed the "center" callback of the banana module with "ice-cream" instead of "banana intestines". Y…

It is what we had before objects, back when ADT meant Abstract Data Types.

Objects are basically ADTs with support for polymorphism and inheritance.

Re: Goodbye, Object Oriented Programming

#90

God damn it I begin to hate Medium. Just another Bullshit article. When I read those dips ts description: "Software Engineer and Architect, Teacher, Writer, Filmmaker, Photographer, Artist…" Great. And you want to tell me that OO is dead and functional the only future? Fuck off.

Put perhaps a little more coarsely than I would have, but I completely agree with the sentiment.

A[nother] minority view getting mainstream (for us) exposure because a few other dinosaurs and hipsters agree.

People need to chill out about this stuff. You don't like OOP? That's great but if it's alright with you, the rest of us are going to carry on with it while you fade into irrelevance.

Of course not everything fits an OOP flow but even Java (the very most verbose OOP IMO) will let you do things linearly or functionally if you want to.

Post reply on HN