• 0 Posts
  • 40 Comments
Joined 1 year ago
cake
Cake day: June 6th, 2025

help-circle


  • Cyclomatic complexity is like trying to measure complexity of a mathematical formula by the counting penstrokes. Don’t mistake a metric’s ease of measurement for its correctness, see: productivity vs lines of code.

    Every point under “Why?” is too optimistic about forced deconstructions being good, that all the small pieces will be cut along the right seams.

    Breaking up a messy scribble in the wrong places just leaves you with the same messy knot, now as a shuffled jigsaw puzzle.

    If the code is written for humans, then excercise human judgement and use a relaxed “complexity metric”. If the code is written for agents, then this metric matters even less. If forced to pick a number, I’d use something like 50+ to only alert on the truly excessive.



  • Passkeys are good at the fundamental level, but the practical implementation is lacking, despite their efforts.

    IMO best way is /w a pw manager that’s also backed up, available, and synced everywhere you need it, but that’s a hurdle for most users.

    I think the “intended way for normal ppl” is to set multiple keys, each on their trusted devices, like backup physical keys, but that’s kind of a pain to have for every service, too.











  • Absolutely silly premise. Continuing the author’s analogy, how would pacing oneself in one marathon improve performance in the race tomorrow? What about next week (a race of indeterminate length)? Or next month (turns out will be a triathlon, but you don’t know it yet)?

    It doesn’t, and the “races” that engineering teams run are more like those latter examples than they are like performance during a single marathon.



  • It’s like Twitter, but anybody is free to spin up their own instance, and they’re all inter-compatible, so any one can view content from any other.

    That freedom and openness gives users choice. If one instance owner turns out to be a real dick, the community is able to move off of and blacklist it.

    Email is an oft used example. Leaving Gmail doesn’t lock you out of email because you can switch to a different provider or (with enough effort) even run your own email.


  • “$0” just means they don’t charge a flat fee on top. You’d have to check the conversion rate they give you compared to market rate to really know.

    It can be the case, even likely, that your card’s rate is better than local currency converters and atms targeting tourists, but point is they’re still not doing for free.


  • In the short term, a small amount of duplication to prevent bad abstraction spaghetti is worth it

    In the medium term, true duplications are better extracted after the fact rather than correctly guessing future reusability.

    In the long term, total extraction into separate vertical or external package, as suggested by the author.

    Over time, this progression is natural and unforced. If you don’t need an abstraction to be de-deuplicated, then don’t. If you don’t need to promote an abstraction into its own vertical/package, then don’t.