• 7 Posts
  • 48 Comments
Joined 1 year ago
cake
Cake day: June 25th, 2023

help-circle
  • Because religion evolved to thrive in us.

    It’s like a parasite, and our mind is the host. It competes with other mind-parasites like other religions, or even scientific ideas. They compete for explanatory niches, for feeling relevant and important, and maybe most of all for attention.

    Religions evolved traits which support their survival. Because all the other variants which didn’t have these beneficial traits went extinct.

    Like religions who have the idea of being super-important, and that it’s necessary to spread your belief to others, are ‘somehow’ more spread out than religions who don’t convey that need.

    This thread is a nice collection of traits and techniques which religions have collected to support their survival.

    This perspective is based on what Dawkins called memetics. It’s funny that this idea is reciprocally just another mind-parasite, which attempted to replicate in this comment.


  • An (intuitively) working search would be a great step ahead. It should find and show things if they exist, and only show no results if they do not. That a plethora of external tools exist to meet these basic needs shows both how much this is needed, and how much it is broken.

    I also feel I have more luck finding communities if searching for ‘all’, instead of ‘communities’. Don’t make me add cryptic chars to my search to make it work. Do that for me in the background if necessary.

    It’s been long since I’ve been using it, but iirc, it’s impossible or painful to search for a specific community in your subscribed list.


  • One is multiple parallel goals. Makes it hard to stop playing, since there’s always something you just want to finish or do “quickly”.

    Say you want to build a house. Chop some trees, make some walls. Oh, need glass for windows. Shovel some sand, make more furnaces, dig a room to put them in - oh, there’s a cave with shiny stuff! Quickly explore a bit. Misstep, fall, zombies, dead. You had not placed a bed yet, so gotta run. Night falls. Dodge spiders and skeletons. Trouble finding new house. There it is! Venture into the cave again to recover your lost equipment. As you come up, a creeper awaitsssss you …

    Another mechanism is luck. The world is procedurally generated, and you can craft and create almost anything anywhere. Except for a few things, like spawners. I once was lucky to have two skeleton spawners right next to each other, not far from the surface. In total, I probably spent hours in later worlds to find a similar thing.

    The social aspect can also support that you play the game longer or more than you actually would like. Do I lose my “friends” when I stop playing their game?

    I don’t think Minecraft does these things in any way maliciously, it’s just a great game. But nevertheless, it has a couple of mechanics which can make it addictive and problematic.


  • You can use more debug outputs (log(…)) to narrow it down. Challenge your assumptions! If necessary, check line by line if all the variables still behave as expected. Or use a debugger if available/familiar.

    This takes a few minutes tops and guarantees you to find at which line the actual behaviour diverts from your expectations. Then, you can make a more precise search. But usually the solution is obvious once you have found the precise cause.






  • Exactly this. It’s often about finding the right balance between technically optimal, and socially feasible (lacking the right phrase here).

    The nerds brimming with technical expertise often neglect the second point.

    Oh - wow! I was about to complain about how https://join-lemmy.org/ is a shining bad example in this regard, talking about server stuff right away and hiding how Lemmy actually looks until page 3, but apparently they changed that and improved it drastically. Cool, good job!

    Anyways.

    For collaborative projects especially, it is important to strike a balance between tech and social aspects. Making poor tech choices will put people off. But making your project less accessible will also result in less people joining. It’s crucial to find a good balance here. For many coming from the tech side, this usually means making far more concessions to the social side than intuitively feels right.



  • I find the plateau quite puzzling (lemmy.world, but the total looks very similar):

    There was quite a steep increase, and then it suddenly stopped.

    I would rather expect it to slow down, than to stop that abruptly.

    We’re looking at a fairly large group of people making a decision to create an account on Lemmy. There are plenty of reasons to expect it to be fuzzy. Even if they all responded to one particular event in time, some would have done so immediately, others the next day, few more even later.









  • In any case, performance is just one factor. For a FOSS project to be successful long term it needs contributions from other developers and with the massive pool of Python developers there are, hopefully I’ll be getting some help soon. Also along those lines I have deliberately chosen:

    to code as simply and stupidly as possible, to make it accessible to most skill levels.
    No complicated frameworks, fancy algorithms, or esoteric design patterns. Model View Controller, baby.
    No frontend build process or tool chain (vanilla JS only. No npm).
    Few third party dependencies, only Redis and Postgresql. Mostly.
    

    All this makes setting up an initial development environment, finding the bit you want to change and testing it out fairly quick and easy.

    Sounds very wise to make it as accessible as possible. And you basically get super maintainable code as a side product!


  • I think that’s one of the best use cases for AI in programming; exploring other approaches.

    It’s very time-consuming to play out how your codebase would look like if you had decided differently at the beginning of the project. So actually comparing different implementations is very expensive. This incentivizes people to stick to what they know works well. Maybe even more so when they have more experience, which means they really know this works very well, and they know what can go wrong otherwise.

    Being able to generate code instantly helps a lot in this regard, although it still has to be checked for errors.