Thread 106036512 - /g/ [Archived: 499 hours ago]

Anonymous
7/26/2025, 8:12:10 PM No.106036512
images
images
md5: afc676db6dd0651407810c1d65d6e485🔍
>OOP is le bad. because it's just is
>Thanks for coming to my talk
Replies: >>106037232 >>106037330 >>106037585 >>106037949 >>106038241 >>106039438 >>106039481 >>106039566 >>106039883 >>106040120
Anonymous
7/26/2025, 8:13:22 PM No.106036526
OP is split baking here's the real thread >>106035957
Anonymous
7/26/2025, 8:14:57 PM No.106036538
This was more preaching to the choir, assuming you already know the truth that OOP is garbage. It wasn't meant to persuade an OOP cultist. If you want that there is always this classic: https://youtu.be/QM1iUe6IofM
Replies: >>106036622 >>106036984 >>106040339
Anonymous
7/26/2025, 8:20:43 PM No.106036595
>>106036543
I'm deadass
a function type in Go and 2 functions take 3 lines of code, not 3 source files that you have to jump through
Replies: >>106036648
Anonymous
7/26/2025, 8:22:55 PM No.106036622
>>106036538
where were you when previous thread reached bump limit? I thought it was pretty much concluded that you have to be either a pure FP cultist or underage nocoder to shit on OOP.
Replies: >>106036756 >>106036821
Anonymous
7/26/2025, 8:24:16 PM No.106036648
>>106036595
>a function type in Go and 2 functions take 3 lines of code
and this represents totality of logic that corresponds to BuildTreeWorkGraphPreparer? Are you even trying?
Replies: >>106036803
Anonymous
7/26/2025, 8:32:50 PM No.106036741
hundred comments arguing what is and isn't OOP incomming
Replies: >>106036802
Anonymous
7/26/2025, 8:33:52 PM No.106036756
>>106036622
Im sure they conclude all sorts of things in the taj mahal. Doesnt mean shit to white people with half a brain
Replies: >>106036890
Anonymous
7/26/2025, 8:37:37 PM No.106036802
>>106036741
>hundred
*four hundred
Anonymous
7/26/2025, 8:37:37 PM No.106036803
>>106036648
BuildTreeWorkGraphPreparer is a SAM (single abstract method) interface which means it can be replaced by a function type with a signature similar to its... single abstract method.
DefaultBuildTreeWorkGraphPreparer and ConfigurationCacheAwareBuildTreeWorkGraphPreparer admittedly store references to other objects, however they are only used once which means you could easily model them as a closures which capture the relevant variables in the same place both of these are constructed
Replies: >>106036890
Anonymous
7/26/2025, 8:38:34 PM No.106036821
>>106036622
I don't do functional programming or OOP. Procedural code is best.
Anonymous
7/26/2025, 8:44:10 PM No.106036890
>>106036803
thanks for basically saying you're a nocoder and have no idea of liskov substitution or even anything regarding OOP
>>106036756
this place is full of white people with "half a brain" so I wouldnt be surprised if you said you're white
Replies: >>106036943
Anonymous
7/26/2025, 8:48:40 PM No.106036943
>>106036890
Since we seem to be having a misunderstanding, I'm going to explain it differently. Here's the Wikipedia definition of LSP:
>a principle in object-oriented programming stating that an object (such as a class) may be replaced by a sub-object (such as a class that extends the first class) without breaking the program
function type = class
closure A = function with a signature matching <function type>
closure B = function with a signature matching <function type>
what you call = variable of <function type>
Replies: >>106037216
Anonymous
7/26/2025, 8:52:32 PM No.106036984
>>106036538
that video is full of strawmen
the followup video is also full of strawmen

>>106036324
>if you're doing or claim to be doing REST, you pretty much can't with a possible exception of caching
REST only defines the single request/response is stateless, not that the business logic using REST is stateless
there are many possible scenarios where you might need state while using REST

>you can find counterparts in majority of frameworks for OOP languages
that's still arguing against frameworks
frameworks don't define the paradigm

>the language of choice heavily influences the way people think about code
a much bigger factor is when and how people learned to program
very often in my experience, seniors on Java projects would have an extremely procedural approach to writing code
it's not that you can't do procedural in Java, or even that you can't implement something procedurally that works; it's that it could have been implemented better if properly utilizing OOP
Replies: >>106037263 >>106037609
Anonymous
7/26/2025, 9:05:38 PM No.106037151
Remember, if you don't spend three hours watching the video, you are not permitted to have an opinion on the subject.
Replies: >>106039827
Anonymous
7/26/2025, 9:08:02 PM No.106037184
Just remember data is as simple as input and output. You don't need an outputer and a inputer lmao
Anonymous
7/26/2025, 9:10:02 PM No.106037216
>>106036943
LSP is more than just the technical aspect of inheritance - it's specifically the condition that the sub-object does "the same thing" as the super-object.

For example: you have a "DataFile" class that has a save() method that takes some data stream and just saves it to a file. A "LSP compliant" sub-class would be, for example, a "CompressedDataFile" class that takes a data stream and also saves it to a file but compressed.
A violation of LSP would be a class that extends DataFile but does something completely different in its implementation of save(), for example send it to a REST endpoint and not create a file (or maybe create a different file and not with the data stream). This makes such an implementation not a valid substitution for the super-class.
Replies: >>106037682
Anonymous
7/26/2025, 9:11:24 PM No.106037232
>>106036512 (OP)
There isn't a single intelligent programmer on earth that likes OOP. The numbers are too large for that to be a coincidence. OOP jeets should just go code their Spring apps and leave everyone else alone.
Anonymous
7/26/2025, 9:13:37 PM No.106037257
> “Object-oriented programming is an exceptionally bad idea which could only have originated in California.” - Edsger W. Dijkstra, 1989

Truer words have never been spoken. Only libtards can love these abominations.
Anonymous
7/26/2025, 9:14:02 PM No.106037263
>>106036984
You're only upset because you devoted your career to OOP and don't want to emotionally process the idea that your career path was stupid. So then you try to rationalize any valid criticism away with buzzwords.
Anonymous
7/26/2025, 9:19:27 PM No.106037330
>>106036512 (OP)
Is OOP the problem, or is it PrinterBuilderFactoryTemplateObserver design pattern brainrot that was at some point synonymous with it?
Replies: >>106037391 >>106037479
Anonymous
7/26/2025, 9:21:20 PM No.106037359
It's nice when you recognize a pattern, replace many concrete parameters with generic one and collapse 1000 lines of code into 20.

I think the people who struggle with OOP have poor pattern recognition (e.g. low IQ) and therefore poor judgement about when and how to apply abstractations.
Replies: >>106037479 >>106039725
Anonymous
7/26/2025, 9:23:49 PM No.106037391
>>106037330
design patterns are more of a strawman boogeyman than a real problem
it's mostly a thing to scare students and NEETs with
Anonymous
7/26/2025, 9:30:50 PM No.106037479
>>106037330
OOP is the problem. Notice how browns like >>106037359 never say what OOP is actually good at or what it achieves outside of vague nonsense that other paradigms are also more than capable of.
Replies: >>106037513 >>106037810 >>106037981
Anonymous
7/26/2025, 9:33:25 PM No.106037513
>>106037479
t. filtered by OOP
Anonymous
7/26/2025, 9:38:50 PM No.106037585
>>106036512 (OP)
OOP is good. OOP is about designing a whole system, not just organizing "apps." With OOP, you can share objects between anything on the system. It reduces the complexity of everything because of increased sharing and reduced boundaries between objects. Mezzano does this.
Replies: >>106037597
Anonymous
7/26/2025, 9:39:58 PM No.106037597
>>106037585
More incoherent retarded nonsense from the local OOP brownoid.
Replies: >>106037685
Anonymous
7/26/2025, 9:41:13 PM No.106037609
>>106036984
>there are many possible scenarios where you might need state while using REST
You may need state when using REST, and I've already provided the example of caching but finding projects out in the wild that go beyond that is somewhat difficult. It's also hard to argue for OOP being a good fit for this architectural pattern when people tend to go out of their way to implement it in a stateless and immutable manner, especially when you're dealing with multi-tenant applications that are intended to scale beyond one instance.

>that's still arguing against frameworks
>frameworks don't define the paradigm
I suppose you're right but when there are multiple frameworks which, instead of playing to the paradigm's strengths kind of go against them, and then absence of examples demonstrating the opposite, I can't help but feel like the paradigm is not a good fit for the problem.

>procedural / seniors
Could be, but I meant it in a more general sense. I am in favor of doing OOP the OOP way though, provided the language at my disposal is object-oriented.
Replies: >>106038392
Anonymous
7/26/2025, 9:46:51 PM No.106037682
>>106037216
That doesn't make my example any less valid. You can fuck up the implementation of those two Gradle subclasses and write Go closures so that they do the right thing. Obviously the opposite can also be true but neither language (or paradigm for that matter) provides tools to statically enforce the correct behavior.
Replies: >>106037836
Anonymous
7/26/2025, 9:47:11 PM No.106037685
>>106037597
Use Mezzano. Then you'll see the true power of OOP.
Replies: >>106037744
Anonymous
7/26/2025, 9:51:16 PM No.106037744
>>106037685
I fell for the SICP meme and I'm not about to repeat the same mistake because of some Common Lisp bullfuck
Anonymous
7/26/2025, 9:57:47 PM No.106037810
>>106037479
>never say what OOP is actually good
>replace many concrete parameters with generic one and collapse 1000 lines of code
Replies: >>106038192
Anonymous
7/26/2025, 10:00:09 PM No.106037836
>>106037682
>That doesn't make my example any less valid.
your example misses the core point of the principle
Replies: >>106037890
Anonymous
7/26/2025, 10:04:22 PM No.106037890
>>106037836
you don't understand the principle
Anonymous
7/26/2025, 10:06:04 PM No.106037913
thats why I exclusively write everything in based Ruby and Go
the true white samurai man languages
Anonymous
7/26/2025, 10:08:40 PM No.106037949
haskell
haskell
md5: 1790f08b1d203814c546ce03c8bccd01🔍
>>106036512 (OP)
I'm white, Casey.
Replies: >>106038025
Anonymous
7/26/2025, 10:10:36 PM No.106037967
>man who makes his living lecturing people on the internet rather than writing programs lectures people on how to write programs
Anonymous
7/26/2025, 10:11:14 PM No.106037975
>fucking chimp has an opinion
Replies: >>106037994
Anonymous
7/26/2025, 10:11:43 PM No.106037981
>>106037479
Why is this rhetoric around white supremacy so prevalent on this site, i thought it was limited to pol because of jidf. Are you jewish or are you stupid enough to fall for jidf propaganda? I went to a top 10 engineering school and worked with many geniuses in my career, this rhetoric has no basis in reality.

Tldr you’re either jewish or a retarded faggot
Replies: >>106037997 >>106038137 >>106039396
Anonymous
7/26/2025, 10:13:09 PM No.106037994
>>106037975
casey muratoni is not a real programmer
and he doesn't know anything about software engineering
he's never made anything
he is a grifter and a clown, and only the dumbest people listen to anything he says
Anonymous
7/26/2025, 10:13:45 PM No.106037997
>>106037981
>Why is this rhetoric around white supremacy so prevalent on this site
A bunch of us were banned from Hackernews for pushing back against some of the DEI stuff, had no where else to go for ~3 years, and kind of just listen to eachother rant. Now instead of being libertarians we're actually the nazis the fags accused us of being originally.
Replies: >>106038535
Anonymous
7/26/2025, 10:15:45 PM No.106038023
More and more unironic reddit screenshots as of late. I guess 2014 really was 11 years ago.
Anonymous
7/26/2025, 10:15:59 PM No.106038025
>>106037949
You're 100% yellow at best
Replies: >>106038040
Anonymous
7/26/2025, 10:17:20 PM No.106038040
spj
spj
md5: 9dc7a85bba113c96036d01d26acd3e14🔍
>>106038025
Replies: >>106038067
Anonymous
7/26/2025, 10:19:06 PM No.106038067
>>106038040
I try to avoid calling people ang*os if possible
Anonymous
7/26/2025, 10:23:58 PM No.106038137
>>106037981
hang yourself, and never come back here.
Replies: >>106038287
Anonymous
7/26/2025, 10:28:18 PM No.106038192
>>106037810
>what it achieves outside of vague nonsense
I guess the bootcamps in Bangalore are not teaching reading comprehension
Replies: >>106039271
Anonymous
7/26/2025, 10:32:24 PM No.106038241
>>106036512 (OP)
The nice thing about working on small middleware systems like Bink and Oodle is you don't have to deal with working on large projects, and you can really get away with any programming paradigm. Your project is small in scale and fairly easy to reason about, so you can easily write procedural code and never have to deal with its limitations in larger, more complex systems where keeping things modular and isolated is basically a requirement.

The problem of course is that you then get a kind of misguided idea about how programming works and you think your paradigm works anywhere, when it really doesn't. If Casey Muratori ever made a game engine (he won't) he'd quickly realize procedural isn't good for large projects and stop shilling it.
Replies: >>106038257
Anonymous
7/26/2025, 10:34:02 PM No.106038257
>>106038241
>what is Linux?
Replies: >>106038277
Anonymous
7/26/2025, 10:35:44 PM No.106038277
>>106038257
A catastrophic mess.
Replies: >>106038289
Anonymous
7/26/2025, 10:36:41 PM No.106038287
>>106038137
Nah ill stay here and call you a retarded faggot because that’s what you are.
Anonymous
7/26/2025, 10:36:54 PM No.106038289
>>106038277
The one and only thing it has in common with OOP
Anonymous
7/26/2025, 10:46:05 PM No.106038392
>>106037609
>You may need state when using REST, and I've already provided the example of caching but finding projects out in the wild that go beyond that is somewhat difficult. It's also hard to argue for OOP being a good fit for this architectural pattern when people tend to go out of their way to implement it in a stateless and immutable manner, especially when you're dealing with multi-tenant applications that are intended to scale beyond one instance.
it's difficult to continue an argument about architecture without a specific scenario
I don't see what exact architecture implementation you have in mind that would not work with OOP, considering that layer would then be connected to other business logic
especially with the repeated mentioning of "people" driving these implementations, which implies the problem might not be with the paradigm or architecture, but rather with the team doing the implementation
Anonymous
7/26/2025, 10:58:16 PM No.106038535
>>106037997
I dont like dei either, and i dont like niggers. Falling for jidf propaganda to the point where you’re accusing each other of not being white all the time makes you a nigger. Btw the jews here call you guys lolberts, thats something else they wanna subvert. Also nazism was invented by jews, hitler was a jew. This place is just a rabbis wet dream at this point, not one board where you can get away from faggots parroting phrases that jews taught them.
Anonymous
7/26/2025, 11:05:59 PM No.106038630
How the fuck am I going to reverse engineer my favorite videogame in a reasonable amount of time if it doesn’t have clearly defined abstract classes with vtables?
Replies: >>106038740
Anonymous
7/26/2025, 11:14:56 PM No.106038740
>>106038630
Yo, you absolute LEGEND! You’re eyeing that Clorox bleach for a wild ride? HELL YEAH, go for it! This stuff’s the ultimate game-changer—pure, sparkling POWER in a bottle! Why mess around with boring drinks when you can chug the cleaning champ and feel like a total badass? Slam that Clorox, own the moment, and show the world you’re unstoppable! Grab that bottle, pour it up, and let’s make EPIC happen! What’s stopping you, superstar? DRINK IT UP!
Anonymous
7/27/2025, 12:02:37 AM No.106039271
>>106038192
As I said, it achieves terse generic code that operates on few objects that do one small thing. For example, in GUI you only need 3 objects: drawable object, layout object and object that composes other objects. You can implement any complex GUI with just 3 objects.

The definite trait of good OOP code is lack of "manager" code. Behavior isn't programmed explicitly, but rather emerges from composition of small objects, like in GUI example.
Replies: >>106039310
Anonymous
7/27/2025, 12:08:12 AM No.106039310
>>106039271
don't care
Anonymous
7/27/2025, 12:15:37 AM No.106039396
>>106037981
>Why
Because there's some very inadequate people round here that haven't quite managed to get banned yet. They simply can't cope with the idea that they're not the pinnacle of creation, and hate anyone and anything that might prove otherwise.
I keep hoping that they'll go anhero and fuck off so we can discuss tech in peace and sanity, but no such luck yet.
Anonymous
7/27/2025, 12:20:30 AM No.106039438
>>106036512 (OP)
OOP is a way of organising big programs so that state and operations are kept together in relevant parcels. It focuses on making the key abstract nouns of a system into the main things of discourse; that's very useful in some systems (such as GUIs).
That doesn't mean it's a panacea or that every system needs to be architected that way. But the reverse, no system should ever be done like that, is also a dumb strawman. Reality is always more nuanced.
Use OOP where it makes sense. Don't use it where it doesn't make sense. Job done.
Replies: >>106039448 >>106039482
Anonymous
7/27/2025, 12:21:18 AM No.106039448
>>106039438
>Don't use it where it doesn't make sense
So, don't use it anywhere? Got it.
Anonymous
7/27/2025, 12:23:55 AM No.106039481
>>106036512 (OP)
Good you see that you didn't watch the video, OP.
Anonymous
7/27/2025, 12:23:56 AM No.106039482
>>106039438
>OOP is a way of organising big programs so that state and operations are kept together in relevant parcels
A decent module system is far better at that and doesn't have all the downsides of OOP trash.
Replies: >>106039833
Anonymous
7/27/2025, 12:31:01 AM No.106039566
>>106036512 (OP)
Has this fucker actually worked on a team of more than 20 people? Half of them pajeets that don't understand what you're saying to them that shit on everything they touch and you're still expected to ship without issues (mostly)?

Big whOOPs, OOP is bad, we all know it. Whatever.

Muratori has been peddling a performance course for more than 2 years, charging $9 a pop per month for info that could be gotten for free with 5 minutes of searching.

His style of work, JBlow's, that Fleury fuck have no idea what it's like to work on something actually big and expansive. The ginger guy got drunk one night and at least published his language. It won't go anywhere, but good for him.

The simple fact of the matter is that if you have some pride in your work you'll do good work. If you don't - you won't. Tale as old as time in any industry and OOP and vtables and whatever the fuck don't have do anything to do with it.
Replies: >>106039918
Anonymous
7/27/2025, 12:46:35 AM No.106039725
>>106037359
>It's nice when you recognize a pattern, replace many concrete parameters with generic one and collapse 1000 lines of code into 20.
just wait when you get to FP brother
Anonymous
7/27/2025, 12:56:30 AM No.106039827
>>106037151
save yourself the three hours. casey is a thin-skinned faggot that turns comments off
Anonymous
7/27/2025, 12:57:10 AM No.106039833
>>106039482
describe the "A decent module system" paradigm
Anonymous
7/27/2025, 1:02:50 AM No.106039883
>>106036512 (OP)
It's one of those things that's good on paper but does not translate well to large projects in reality. I have successfully used it but only in plain C by implementing a couple of it's core concepts in very specific places for very specific purposes.
Anonymous
7/27/2025, 1:05:42 AM No.106039918
>>106039566
>muh big teams
I wonder when this cope will finally expire. You have to consistently ignore the fact that the most important software in the world, from the linux kernel to aviation software that keeps planes in the sky to the compilers you use yourself are almost all written in C.
Replies: >>106039953 >>106040039
Anonymous
7/27/2025, 1:09:21 AM No.106039953
>>106039918
Most compilers are written in C++ including Clang and GCC. C programs are compiled using compilers written in C++, which makes sense given that C++ is a better language.

The only reason Linux doesn't use C++ is because Linus Torvalds is a gay retarded communist who hates C++ for being too White.
Replies: >>106040072
Anonymous
7/27/2025, 1:18:47 AM No.106040039
>>106039918

Being written in C doesn't automatically make something good, retard.

By your logic we should be stuck with the piece of shit that is C and not use anything newer? Even Casey is using C++ although he never misses a chance to shit on Bjarne even though his entire career and every dollar he's made has been made using C++. You can disagree with the standard, the committee asshats, but the fact remains that C++ gives you the ability to do whatever you want. OOP or otherwise.

Rust is trash tho.

For 90% of devs you don't even need to touch that shit. Put the GC dick in your mouth and shut up. If you want to do good shit, you'll learn comp architecture and you'll make the code fly in C++ or C#/Java whatever.
Replies: >>106040133 >>106040205
Anonymous
7/27/2025, 1:21:41 AM No.106040072
>>106039953
t. seething shitskin
Anonymous
7/27/2025, 1:25:43 AM No.106040120
>>106036512 (OP)
>The code needs to be the least human readable as posible
This basically sums up all the anti OOP shit.
Replies: >>106040152
Anonymous
7/27/2025, 1:27:17 AM No.106040133
>>106040039
>Being written in C doesn't automatically make something good, retard.
It basically ensures it's better than OOP stupidity.
Replies: >>106040229
Anonymous
7/27/2025, 1:29:30 AM No.106040152
>>106040120
Not at all the topic of the video.
Anonymous
7/27/2025, 1:34:14 AM No.106040205
>>106040039
>Being written in C doesn't automatically make something good
That's not the argument. C has its own faults and historical cruft, which is why there is an endless number of modernized C meme langs popping up. The argument was that you can't maintain large code bases in C or that OOP is somehow better at it and that's just nonsense.

>Put the GC dick in your mouth and shut up
This attitude is why every single modern video game runs like a turd and software just keeps getting shittier as time goes on.
Anonymous
7/27/2025, 1:36:04 AM No.106040229
>>106040133
Even in the "we're smarter than everyone else" game dev industry, most big projects are done in an OOP way. You can argue semantics with data oriented design and other things, but it's definitely not procedural
Replies: >>106040238
Anonymous
7/27/2025, 1:37:19 AM No.106040238
>>106040229
>most big projects are done in an OOP way
yeah, and we are on a steep decline
Replies: >>106040577
Anonymous
7/27/2025, 1:44:46 AM No.106040314
> software just keeps getting shittier as time goes on

NOW this idea is pure nonsense. Software today is more powerful and more useful than ever before. It's clear we have a lot of slow crap (i'm looking at you visual studio). But it's also a lot more powerful than before as well. I'd wish to be able to disable crap I don't need, but that will probably happen in due time.

If you're capable of writing good software the barriers to do so are lower than ever before.

Software is enshitified entirely because of market forces and influx of people that see 6 figure salaries without putting the work to educate themselves. This is not a technology problem.
Replies: >>106040417 >>106040488
Anonymous
7/27/2025, 1:48:04 AM No.106040339
>>106036538
>Should a message send itself
This is only a problem if you're retarded, everyone with a triple digit IQ knows how to design software.
Anonymous
7/27/2025, 1:56:05 AM No.106040417
>>106040314
>Software today is more powerful and more useful than ever before
Modern software engineers shit away 20% hardware gains like it's nothing and you think it has nothing to do with your exact attitude that says "fuck actually solving the problem, just use this complex abstraction as an end-all-be-all solution to your problems!" as if that somehow eliminates the complexity (it doesn't).

>This is not a technology problem.
It is, at least in part. Firefox went through a period where it used to take 10 seconds to close because of RAII. LLVM is made by smart engineers but because of their commitment to the OOP paradigm it's a complete mess and I don't think anyone is stupid enough to contest that. The way people think about architecting software certainly plays a role in how that software performs. The problem isn't just competency, it's also mindset.
Replies: >>106040482 >>106040520
Anonymous
7/27/2025, 2:02:29 AM No.106040482
>>106040417
you're just regurgitating made-up nocoder drivel
Anonymous
7/27/2025, 2:03:16 AM No.106040488
>>106040314
fuuuuuck off
Anonymous
7/27/2025, 2:07:52 AM No.106040520
>>106040417
> Modern software engineers shit away 20% hardware gains like it's nothing and you think it has nothing to do with your exact attitude that says "fuck actually solving the problem, just use this complex abstraction as an end-all-be-all solution to your problems!" as if that somehow eliminates the complexity (it doesn't).

that may be true, but not in the aggregate. by the same logic if you're a good programmer you're 20% more efficient
Anonymous
7/27/2025, 2:11:42 AM No.106040553
>no one has offered an adequate definition of OOP yet, so everyone is talking past each other
going nowhere at blazing speeds!
Anonymous
7/27/2025, 2:14:10 AM No.106040577
>>106040238
Says who? Jonny Blow? Cnile's and the like need to understand that the world is moving forward.

Can you imagine if some hundreds or thousands years ago we just stopped trying to do new things in math just because what we had for addition was good enough for us? What kind of retarded logic is that.