Live data from Hacker News

Object-Oriented Programming is Bad (2016) [video]

m.youtube.com

91–100 of 133 posts

Re: Object-Oriented Programming is Bad (2016) [video]

#91
The irony of the anti-OOP bashers is that all successful GUI frameworks are OOP based, even those written in non-OOP languages like C.

Likewise all the functional programming languages that get used as example, are also not pure FP, rather multi-paradigm, also supporting concepts from OOP.

"FP vs OOP: Choose Two by Brian Goetz"

https://www.youtube.com/watch?v=HSk5fdKbd3o

Re: Object-Oriented Programming is Bad (2016) [video]

#92
post #67

Earlier quoted context omitted.

isn't "object over network" basically microservices?

No! Micro services are value-over-network, hopefully with idempotent semantics. CORBA is object-over-network, with clients holding references to server objects and a protocol that passes around object references over the network. It is true that one can do value-over-network within a CORBA environment by throwing away 95% of the features, but that is not idiomatic CORBA and was sneered upon as not object-oriented eno…

Quite right, micro-services are the millennials rediscovering SUN RPC and XML RPC, while writing spaghetti structured code with a network in the middle.

Re: Object-Oriented Programming is Bad (2016) [video]

#93
post #14

The problem for me in regards to OOP is the complexity related to the management of state. OOP encourages mutability and understanding the state of an object as its methods are called can be confusing when additional internal (and often times, private) methods are called. In functional programming, state is something acted upon by functions. It is as simple as f(x) = y. Reasoning in functional programming is much clo…

> OOP encourages mutability This is largely only true in the post-bjarne soustrop OOP era. The smalltalk or actor paradigms don't necessarily encourage state mutation.

Actually it was with C++ that I learned to control mutability via proper use of const and mutable, even before I got to learn Caml Light.

Re: Object-Oriented Programming is Bad (2016) [video]

#94

I really liked the first half - he provides some insightful thoughts on both why OOP doesn't quite deliver on the promise, and why it continues to be popular anyway. I am also becoming increasingly enamored of procedural programming as a default approach. Functional is also good - it's one of my first loves - but I find that it can be similarly prone to encouraging premature abstraction. Like OOP, that problem isn't…

Please excuse my sibling post. I realize I put not enough effort into actually reading your comment all the way through. I agree with what you say and want to add as an aside that I think LLVM has the inline-function feature that you mention.

Re: Object-Oriented Programming is Bad (2016) [video]

#95

It is quite obvious to me that the author is ignorant on the history of computing. The reason of the popularity of OOP is way longer than java, Xerox invented the graphical desktop and ALSO OOP. When Steve Jobs was ousted from Apple he created NEXT because he believed OOP was the next big thing. It was, and it became the foundation of MacOS X. Microsoft copied Steve Jobs in Windows with MFC. Java copied all of them.…

Oop is slower than functional in many cases. The highly optimized java stack isn’t that fast and still uses oodles of memory. And then there’s languages like ruby which are practically slower than writing shell scripts.

Functional generates tons of garbage and requires a very good concurrent generational tracing GC, more so than OOP languages.

Only thanks to researchers like Simon Peyton Jones[1], did functional language compilers improved their code quality.

[1] - https://www.microsoft.com/en-us/research/publication/the-imp...

Re: Object-Oriented Programming is Bad (2016) [video]

#96

It is quite obvious to me that the author is ignorant on the history of computing. The reason of the popularity of OOP is way longer than java, Xerox invented the graphical desktop and ALSO OOP. When Steve Jobs was ousted from Apple he created NEXT because he believed OOP was the next big thing. It was, and it became the foundation of MacOS X. Microsoft copied Steve Jobs in Windows with MFC. Java copied all of them.…

Functional programming has little impact on performance.

Only when proper use of memory isn't part of performance.

Re: Object-Oriented Programming is Bad (2016) [video]

#97

Earlier quoted context omitted.

In theory this sounds great but in reality every major application, game, operating system and even website is written in an OOP style. Why is that? People should first answer that question. Yeah, real existing software has flaws like every other thing in reality but at least it exists unlike a significant piece of fp style software. I like fp and I think it has a lot to teach but I think it's a bit presumptuous to a…

http://paulgraham.com/avg.html

fun read -- the last sentence included ! plenty to say about that article..

I get the sense that many commenters here, YNews in 2019, very much fit the description of a "Blub" programmer.. with the added twist that it is -giant-cloud-thing- platform and/or exciting web trends are my thing, to deepen the "Blub" point of view..

.. can't help but chuckle at the repeated and fairly clever jabs at ASM, considering it took M$FT ten years to make a windowing GUI that performed well enough on a PC, after the Mac OS was written in a lot of ASM.

Re: Object-Oriented Programming is Bad (2016) [video]

#98

Earlier quoted context omitted.

isn't "object over network" basically microservices?

No. Microservices pass data over the network. Distributed objects get handles to remote objects and then make calls to them. Sometimes there could be very many of them and it all got very complex and had poor performance. Microservices are still object oriented because each service is an object and the data being passed is a message. They are big objects. Alan Kay said that one if the mistakes with OO was not making…

Indeed, objects should have been larger. As large as a module. Perhaps with interfaces implemented by different concrete modules. Like non-oo programming language were doing, circa late 80s [modula 3, sml].

While at that, “message passing” [aka goto with arguments] is too fine grained of a concept, what people need 99% of the time is a structured function call.

Re: Object-Oriented Programming is Bad (2016) [video]

#99

Earlier quoted context omitted.

“Mental overhead is greatly reduced when you can assume that your data structures are immutable”. I’ve been reading lots of articles claiming that but I still haven’t understand how that’s so. If you have fifty functions all acting on the same piece of state, why would returning new objects instead of mutating would greatly reduce mental overhead? Isn’t there still mental overhead in tracking which of the fifty funct…

simply this: when any function returns a result, you never need to worry about anything else in the universe changing too. It's a self-contained operation with totally predictable results and no side effects.

But this is (largely) a property of the functions you write rather than the data structures. You can get virtually all of the benefit in the procedural world by just writing pure functions.

Re: Object-Oriented Programming is Bad (2016) [video]

#100
post #91

The irony of the anti-OOP bashers is that all successful GUI frameworks are OOP based, even those written in non-OOP languages like C. Likewise all the functional programming languages that get used as example, are also not pure FP, rather multi-paradigm, also supporting concepts from OOP. "FP vs OOP: Choose Two by Brian Goetz" https://www.youtube.com/watch?v=HSk5fdKbd3o

GUI frameworks have always been OOP-based because everybody was copying Xerox Parc. But even the most successful were not always easy to use (composition and control-flow/concurrency being particularly awkward). Modern GUIs are all based on HTML/CSS these days anyway and certainly not always OOP, as demonstrated by frameworks such as react.
Post reply on HN