3 ms·
It's ironic what attempted to be "satiric" and a writing on "good tips" back in 2008 has become a list of red flags in 2022.
by vrnvu 5y ago
It's ironic what attempted to be "satiric" and a writing on "good tips" back in 2008 has become a list of red flags in 2022.
- jackblemming 5y agoYep. Static utility classes with pure functions are a good thing. Not everything needs to be an instance or an object. Not every if or switch needs to use polymorphism instead. Still lots of good tips here. Can anyone name a Google library they've actually enjoyed using? Every library I've greatly enjoyed has come out of Facebook, never Google.
- capableweb 5y ago> Can anyone name a Google library they've actually enjoyed using? No, I'm mostly with you here. Closure Library is OK if you don't have anything else that replaces it (or if something you use ships with it, hello ClojureScript) but other than that, their libraries leave a lot to offer. But Google Closure Compiler is magic (in a good way) though, but you can't call that a library. > Every library I've greatly enjoyed has come out of Facebook, never Google. I'm sure I'm reading this the wrong way, because surely you can't mean that every library you've greatly enjoyed has only came from Facebook? Most of the really well made libraries I've used in my time, has come from private people, besides React. But now React has better replacements available as well, like Preact. But other than that, larger companies seem to be really bad at writing libraries for the world at large, which makes sense, they mostly care about their own use-cases.
- disgruntledphd2 5y agoI'm pretty sure that they meant that FB tends to write more useful libraries than Google.
- logicchains 5y agoThe Tensorflow C++ api seems like it was written by someone whose dog was raped and murdered by the author of a Modern C++ book, so they vowed to only code in '90s Java style and make maximal use of the C preprocessor.
- dgb23 5y agoI agree. Many of the points made I disagree with personally. I don't tend to write OO. I like clear functional pipelines, putting state and side effects at the top (singleton like?), do static dispatch per default, because then I can clearly _see_ all the fundamental decisions and effects. Functions are easy to test, their "mocks" are just data structures. Also on a slightly different note, the advice about using small constructors and non-defensive methods. That goes pretty much against the whole point of encapsulation IMO, which is to protect and more importantly guarantee invariants. What's the point of a class that doesn't do much of anything besides naming things?