Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

The best gem in all of it is this:

> You can make classes, but you can only ever make one instance of them. This shouldn't affect how most object-oriented programmers work.

This describes my experience with most OOP code very well.



I think the best gem is the ability to delete paradigms.

As for OOP, a bit more realistic would have been to restrict interfaces to at most one implementation.


One real implementation and many implementations for testing that do whatever the consumer wants them to do.


I've seen this called "bulldozer code". As in "Hey, all of those plain functions need to be OOP! Get a big earth moving machine and gently push them inside the curly braces of a class! Which class? Any class!"


I love Singletons and God Classes. ;)


Factories and Managers. Don't forget Decorators!



The original comment from Joel on Software has been preserved with comments at:

https://gwern.net/doc/cs/2005-09-30-smith-whyihateframeworks...

Note that one of the comments is from me :-)


First time reading this. Thanks for the laugh. Trigger warning for those who have worked on legacy Java/C# code.


I'd like the extend the Trigger warning to people still building Java apps because it's the same shit.


You really need a visitor pattern factory factory for trigger warnings.


This thread slice is making me feel really bad.


Sturgeon's Law: "90 of everything is crap".

It's no surprise that when you make virtually all mainstream programming languages OOP, then there will be a vast amount of bad OOP code out there (as by definition mainstream code then becomes "OOP code").


I like how you forget the % after 90.

DreamBerd probably allows this.


IIRC, numbers without a percentage sign are assumed to be percentages. Numbers that are not percentages have to be followed by ;% (the semicolon is the NOT operator in DreamBerd).


I think they actually meant that there are 90 crap OOP language implementations and the infinite quantity that remain are ‘not crap’


Maybe you can hoist % symbols like you can hoist variables.

If not, maybe you can hoist the ability to hoist % symbols, before which you can hoist % symbols.


Why waste time type lot char, when few char do trick


Ouch, that is a harsh view. Black & white thinking leads to depression in people with a disposition. Questioning these thoughts helps.

I'm more inclined to follow the bell curve. 10% crap, 40% mediocre but rather bad, 40% mediocre but rather good and 10% great.


> Black & white thinking leads to depression in people with a disposition.

That sounds interesting. Who has researched/written about that?




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: