• 0 Posts
  • 179 Comments
Joined 1 year ago
cake
Cake day: July 2nd, 2023

help-circle












  • My potential argument against it starts with asking where the credentials are stored for authenticating this identity.

    Currently the home instance stores the hashed password and performs authentication.

    In a way, the identity “belongs to” the place that does authentication, which now happens to be the instance.

    If identity is decoupled from an instance, that means authentication decouples from an instance.

    If the identity “belongs to” the fediverse as a whole, then that means the fediverse as a whole has an authentication mechanism.

    Unless we can come up with a distributed authentication mechanism, that means the fediverse as a whole has some authentication service, as in one, which means centralized.

    This therefore breaks decentralization, unless the authentication is somehow handled in a distributed way. Maybe consensus or something on a hashed password? But if those hashed passwords are stored in a distributed manner, then you’d need a super long password to prevent rainbow table attacks on the passwords, given the hashed values would essentially be public information.

    Maybe public keys are stored in a blockchain? I don’t know this is beyond me in the details.

    But to summarize the problem at a data model level, an identity belongs to an instance, because the instance can authenticate them. If the identity now belongs to the whole fediverse, then the whole fediverse needs to be able to authenticate them, which if not handled correctly could lead to centralized authentication, centralized banning, censorship, reddit, etc.


  • You have to continually practice fluidity and actively learn things lest you solidify and lose that skill like any other.

    I’m all for keeping one’s cognitive skills. However it is a fact that this decline happens, and that there is a phase of life where one has wisdom without necessarily having the same raw intelligence they had before. The wisdom is encoded in crystallized intelligence.

    By wisdom here I mean “The tendency to make decisions that turn out well”.

    My father was an equipment operator well into his 70s. After he retired they kept bringing him back to train the younger guys, and to get things don’t they couldn’t get done.

    That was possible because those machines don’t change too much as time marches on. Because they use a stable platform, his organization was able to do better work by relying on his deep expertise. He could train those younger guys because it was the same platform he’d always used. Same dirt, same physics, mostly the same machines, same techniques, same pitfalls, etc.

    His fluid intelligence is almost zero. The man’s practically an ASIC at this point, yet he’s fascinating to talk to and competent in the world. Fluid intelligence is not the only way to get things done.

    We of course play plenty of video games together to keep him sharp. We also eat mushrooms, paper when necessary, and he works out a lot. We do all we can, believe me.

    PHP is still in use and Wordpress is still somehow a behemoth. But the fact is that PHP has fallen out of favor, isn’t used by new projects, and there’s less demand for people with that skillset

    Also while I’m driving, my Uber app locks up. Siri talks to me in a halting, broken voice, and responds with “something went wrong”. Google Maps shows a brief flash of my home before flipping to my current location. Then back to home again, then back to my current location. Spotify doesn’t remember what song I was listening to. Amazon Prime Video can’t remember what episode I was last watching.

    Enremovedtification is everywhere. Our tech is buggy as removed and solved problems in project management and devops are recurring. It’s not just about focusing on advertisers’ needs over customers. It’s also about wanting to kick out the greybeards as part of our great cultural revolution. It’s about driving trains into tunnels without adequate ventilation because removed the previous generation thinking they know better than me.

    It is the case that new technologies are introduced all the time, but that’s not necessarily right.

    This example doesn’t work as well with C/++ since that’s older than most people here (though the language has also gone through iterations) and likely won’t be going away any time soon. But still, in most cases you probably don’t want to use that language for general work.

    Why not? Because you won’t be able to hire younger devs? That is a function of this culture of pushing for change in everything. Younger people don’t learn C++ because it’s a little harder to read and because culturally we don’t respect established things. I’m sure there’s a word I don’t know here, but we generally have a culture of hating the past.

    The good news is though, that it’s relatively easy to transfer core skills between most languages.

    I agree. Design patterns, work patterns, these transcend languages. And they’re 99% of the success or failure of a project.

    And yet here we are emphasizing how C++ and Rust can’t realistically coexist in a serious project, because there’s some mismatch in their capabilities. I point to the current conundrum as the counter to this idea of transferability. The devil’s in the details and if the wisdom transfers between languages so well then we don’t need new languages.

    Fundamentally, the question is “What are these news things that need to be done by code, that weren’t being done by code 30 years ago, such that it necessitates new languages?”

    It’s cool to be able to tell your college buddies you’re building a new programming language.

    In fact, it’s great that people are making new languages as a way of keeping language design wisdom alive. It’s great that CS kids build logic circuits from scratch for the same reason.

    But then again, Netflix can’t remember what episode I was watching, when I’m almost certain they had that ability a few years ago.


  • So basically you’re saying one of the best things you can do for yourself as a dev is be young.

    It’s a well-documented fact that as people get older their fluid intelligence declines.

    If you predicate your tech culture on requiring high fluid intelligence, you (a) make less readable code since the people writing it have more working memory and can hold more lines in their mind at a time and (b) break long-term institutional memory resulting in the reoccurrence of solved problems.

    At the level of organizational architecture, a culture of emphasizing fluid intelligence as the strategy for attacking problems and adaptation causes serious losses of efficiency, and hence fluidity at a higher scale.

    Ensuring compatibility with greybeards’ brains is key to long term success, and that means respecting an upper boundary on the rate of tools change.





  • Would a dinner party suffer if it had 10,000 people at the table and instead of saying “shut up” people could just turn the volume knob down on someone else a little, but nobody’s voice would get silenced unless more people turned the knob down on them than up?

    What if the dinner party were open invitation?

    Downvotes fold comments and sort them last. It’s signal inhibition.