• 0 Posts
  • 25 Comments
Joined 9 months ago
cake
Cake day: December 23rd, 2023

help-circle









  • Six levels of abstractions, sure, if you have that many, you may want 6 functions. But that contradicts Martin when he’s saying that there should be one line in an if, and everything more should be promoted to its own function. There’s no way a programmer routinely writes code so terse that you get six levels of abstraction in a dozen of lines of code. Otherwise, Martin doesn’t understand what an abstraction is.

    Managing a stack in your head like a computer is very challenging as far as cognitive load is concerned. You don’t want to jump all over the place. Otherwise, when you reach your destination, you end up forgetting what got you here in the first place.

    This form of code fragmentation makes debugging an absolute nightmare, and finding sources of mutation absurdly frustrating. Good tooling can help you track where a variable is used and in which order mutations happen trivially in code in a single function. It’s not as as helpful when it’s spread all over the place. You can infer so much less statically if you follow Martin’s advice.

    I’m not advocating for 1000-lines functions here, mind you. When functions become too big, other challenges arise. What’s necessary is balance, which Martin’s book fails to teach.


  • It’s inspired so many crimes against engineering as a whole that it’s OK to discourage people from reading it. Not only is it pointless, but it’s also actively harmful to the industry as a whole.

    When something is mostly garbage and good advice is so sparse in it, there’s no need to hold onto it. It’s as much of a mixed bag as a turd with a nice ribbon is a mixed bag of prettiness.

    Burn it with napalm.

    … Nah, I don’t actually mean it should be burnt, that was a joke. The book is a nice reminder that, on top of being a bigot, Robert Martin (not my uncle) should not be hired to write any kind of code in any professional capacity.


  • I know it is, and I find it to be a pretty ridiculously complex fix for a self-inflicted wound.

    The disruption it’s caused me outweighs by far any minor inconvenience with the multiplication or micro packages in the NodeJS world. There’s that, and the Python 2 vs 3 shitshow from which the world still hasn’t fully recovered from yet.

    I mean it: Python has no business laughing at Javascript. Get your act together, snek 😜


  • Python has other stupid problems related to pip. As much as stupid micro-dependencies suck in Javascript, they’re not the shitshow managing dependencies in Python is. It’s an inefficiency that never actually caused me noticeable issues in my former webdev life.

    And let’s not talk about C++… People reinvent all sorts of wheels all the time because sharing anything is so annoying.



  • FlorianSimon@sh.itjust.workstoMemes@lemmy.mlBacon tho
    link
    fedilink
    arrow-up
    1
    ·
    edit-2
    1 month ago

    The facts are there: the consumption of animal products the way it is done across the vast majority of the planet is not something you can rationalize: it’s bad for the consumers, bad for the environnement and, most of all, bad for the animals that are being slaughtered on a massive scale.

    Don’t fool yourself: I’m not talking about the act of ingesting the flesh of dead animals, which could theoretically be done in a way that doesn’t have such a strong negative impact on everyone involved. I’m talking about what’s happening in the real world, which is very far from idealized “what if” theories that are pretty unattainable, and an artificial debate construction carnivores use in debates with vegans.

    You and I consume animal products. The difference between the two of us is I find the moral objections to the consumption of dog meat to be rationally indefensible, and pretty ridiculous.

    Do consume animal products if you like. I’m not a vegan, and I would be hypocritical to judge you based on that. Whatever you do though, just don’t make the mistake of assuming your moral system is universal because it’s pretty illogical.

    In short, get off that high horse.


  • The question “would you eat dog meat?” and your outrage at the question, while a gotcha, is a very solid way to point out your inconsistency. It’s by no means dishonest because it outlines your inconsistency without false pretense. You’re being asked a direct question, and you got got.

    You don’t get a free get-out-of-jail card because you don’t like how this rhetorical device proved your position weak.




  • On top of being super bloated, Intellij’s Rider is far from “just working” in my experience. Not only is it super slow to boot, but it also changes asmdefs in my Unity project unprompted, in a way that prevents my project from working (creates cyclic dependencies). The debugger also sometimes doesn’t trigger breakpoints 😵‍💫

    I absolutely despise it, viscerally.