Live data from Hacker News

All evidence points to OOP being bullshit (2013)

blog.pivotal.io

41–50 of 126 posts

Re: All evidence points to OOP being bullshit (2013)

#41

> Probably as good as any other programming paradigma out there. I take offence with postmodern relativism. Not every paradigm is created equal (and for the record, black culture is less "good" than white culture. Come on, "acting white" because you have good grades?). The way to get better as a professional is to analyze various ways of doing stuff and find which is better and how much of it you can use. This articl…

> The way to get better as a professional is to analyze various ways of doing stuff and find which is better and how much of it you can use. This article does exactly that.

No it doesn't , this is a superficial rant, worse , this is a click bait that links to a real article with substance at the end , but wants to capture web traffic with an outrageous title. But it is not surprising for a consultancy. That's what's they do, they are the problem.

I'm all for criticizing programming paradigms ,but this is just childish bashing

> Object-oriented programming is an exceptionally bad idea which could only have originated in California

For real ?

Are we scientists ? or kids in a playground ? the impact of OOP or FP on IT projects could be measured right ? so let's do that , let's get the data and let's find out how many projects fail because of OOP , what are the costs in time, money,bugs associated with using OOP ... the rest is just barking (pun intended)

Re: All evidence points to OOP being bullshit (2013)

#42
post #32

I appreciate there's something I'm missing, but: I use closures to hold state all the time in node, I still don't understand why state in a closure is better than state in an object. If someone could explain this I'd be grateful: articles like this just seem to say 'state is bad' and ignore that it still exists in functional scopes.

It's not really state if it's immutable. Not the case with node, but closures in general match the notion of parameterized functions (like f_a(x)).

Re: All evidence points to OOP being bullshit (2013)

#43
post #5

> Extremist languages like Java force you to think of everything in terms of objects. Erm, Java is by far not the most OO programming language there is. For example, primitive types are not objects (no, auto-boxing doesn't make them objects). > But is Object Orientation (OO) a good idea? Probably as good as any other programming paradigma out there. > Does it have problems? Sure, like every other language as well. >…

Skip the fluffy blog and just watch Zed's talk linked to in the first paragraph. Whether you agree or disagree, he at least lays out some valid points (in his typical "this sucks, fuck you" style). That talk made me think a lot more than this blog post did.

https://vimeo.com/43380467

Re: All evidence points to OOP being bullshit (2013)

#45

> Probably as good as any other programming paradigma out there. I take offence with postmodern relativism. Not every paradigm is created equal (and for the record, black culture is less "good" than white culture. Come on, "acting white" because you have good grades?). The way to get better as a professional is to analyze various ways of doing stuff and find which is better and how much of it you can use. This articl…

Omfg. That argument metaphorically fell of a cliff in the second sentence. I'm lolling.

Dude, you need to have a think about the whole racism thing.

Re: All evidence points to OOP being bullshit (2013)

#46

Compare the DirectX XNA OOP library to the OpenGL procedural library, and you will quickly see that when OOP is done right it makes code fun and easy to work with again. In my my mind OOP is the next logical step after procedural programming (simply packaging up a set of procedures into an object, and adding a few new ideas like inheritance and so on). Functional programming though is not the next logical step; it is…

OOP is about information hiding and providing well defined state transitions.

objects are used to hold a state and to act as gateway for valid transitions.

most complaints I see come from people using OO programming languages badly, leaking abstractions all over the place and making it so you have to mentally take care of the state of everything instead of trusting your objects to take care of themselves, and thus you get the worst of both world: rigidity coupled with complexity

I need information hiding because my brain is only so big, so I cannot possibly have in mind the whole application state and all it's permutation at all time while programming.

functional languages work similarly in a sense: you avoid thinking about state transitions because the only things you have to take care of is each function input and output

in a broader sense, programming becomes way way simpler if you think of your functions as having 4 well defined input output: the inputs, the return values, data from a persistent store and a state.

And with experience you start noticing that it is much much more simple and productive if in any of your method at a given time you only reduce the 4 io ports in 2: on one side you have functional languages, only ever working with inputs and returns, on the other you have OO languages, which focus so much on the input, state and state, return couples.

mastering the ability of using both styles where appropriate is the key here. but people get dragged into name specific too much, forgetting that these pattern emerged from coding and not the other way around.

Re: All evidence points to OOP being bullshit (2013)

#47
post #32

I appreciate there's something I'm missing, but: I use closures to hold state all the time in node, I still don't understand why state in a closure is better than state in an object. If someone could explain this I'd be grateful: articles like this just seem to say 'state is bad' and ignore that it still exists in functional scopes.

State in a closure is equally as bad as state in an object. The difference is FP gives you ways to manage and isolate state that simply don't exist in OOP.

Re: All evidence points to OOP being bullshit (2013)

#48
post #39
post #5

> Extremist languages like Java force you to think of everything in terms of objects. Erm, Java is by far not the most OO programming language there is. For example, primitive types are not objects (no, auto-boxing doesn't make them objects). > But is Object Orientation (OO) a good idea? Probably as good as any other programming paradigma out there. > Does it have problems? Sure, like every other language as well. >…

My sentiments exactly, kinda surprised this title made it so high up! OOP has some fantastic applications and may have been oversold to the author for a project he worked on. OOP(s)!

> OOP has some fantastic applications

Yes, OOP is great for agent-based simulations. Only. This is a fantastic, exciting area, but it is extremely niche and tiny.

Anywhere else, OOP is nothing but an obstacle.

Re: All evidence points to OOP being bullshit (2013)

#50

> Probably as good as any other programming paradigma out there. I take offence with postmodern relativism. Not every paradigm is created equal (and for the record, black culture is less "good" than white culture. Come on, "acting white" because you have good grades?). The way to get better as a professional is to analyze various ways of doing stuff and find which is better and how much of it you can use. This articl…

Jesus christ you really destroyed any chance anyone had of taking your point seriously by just throwing in some racism.

I'm a misogynist as well. How does that affect my argument?

That's the point of throwing in a controversial example: no matter how you feel about an issue, reality is still out there, with hard edges and sharp points. If you ignore it and go the "everything is just as good"-way, you suffer. You may feel good about yourself, but you still do worse.

Post reply on HN