• 38 Posts
  • 857 Comments
Joined 1 year ago
cake
Cake day: June 12th, 2023

help-circle
  • As someone who’s been on forums of every stripe since the goddamn 80s, I can say with a great deal of experience that all good internet communities have just one single rule: “Don’t make us ban you.”

    Anything else just invites edgy trolls and rules-lawyering.

    Now don’t get me wrong, guidelines are good and necessary. Give people an idea of the kinds of thing you do and don’t want to see, and the way you will generally act in turn, because managing expectations is important.

    But the moment you make hard-and-fast rules that you’re obliged to follow, people will make a point of bending you over them with edge cases and not cuddling afterwards, just because they can. They think denial-of-service attacks are just as hilarious against human systems as they are against software ones, if not moreso - or they do it to assert control as part of one personality disorder or another.

    If you play their game, you will lose.

    You need to have an admin-discretion clause, and not feel bad about invoking it whenever it’s the right thing to do.

    Of course, this can lead to tyrannical asshole mods - if you have a mod team, you need to keep a close eye on it to prevent shitty personalities taking over in that domain. As the person that the buck stops with, if you can’t trust yourself with it, then the place is going to hell anyway.




  • Okay:

    In 1948, just after WWII, the UK decided to carve a chunk out of Palestine and create a new state there, called Israel - as a Jewish homeland that would take all the refugees that the rest of Europe didn’t want to deal with.

    Palestine was not happy about this - the land was taken without their consent, a great chunk of their country just taken from them by decree, backed up by a still highly militarized Europe.

    Over the following decades, Palestine tried several times to take their country back, and each time got slapped down (since Israel had vast backing from UK/USA/Europe, both from postwar guilt and because Israel had a lot of strategic value as a platform from which to project military power in the middle east).

    Cut to today, and Israel has expanded to take virtually the entire area, apart from some tiny scattered patches of land, and the Gaza strip - a strip of land 40km by 10km, containing most of the Palestinian population, blockaded by sea and land by the Israeli military.

    Israel also runs an apartheid regime very similar to the old South African one - Palestinians have very few human or civil rights, generally get no protection from the Israeli police or military, while being treated as hostile outsiders that can be assaulted or have their land ‘settled’ at will by Israelis.

    It has been decades since Palestine has had any kind of organised military, and it’s also not recognised as its own country by most of the world, so there’s virtually no way for it to push back, or to call on assistance.

    In a situation like that, the only recourse is guerilla warfare, which often descends into (and is exploited by bad actors as) terrorist attacks. It’s a damn good way to farm martyrs, and this hugely serves Israel’s ends, since it can keep pointing to terrorim as justification for their ongoing oppression. Israel in fact provided a great deal of ongoing funding for Hamas, while blocking more moderate groups.

    Back in October, a small organised group raided across the border from Gaza into Israel, killing about 1200 people and taking a couple of hundred hostages.

    In response, Israel has killed over 40,000 Palestinans in Gaza - mainly women and children - systematically destroying the city’s infrastructure, water, power, food production and distribution, hospitals, universities and schools, bombing refugee camps and destroying the majority of all housing and shelter in the area. It’s also bombing humanitarian aid convoys, preventing food and medicine from reaching the people there. The death toll is expected to reach many hundreds of thousands, since people are already starving and there is no medical care available.

    The rest of the world is wringing their hands about the ‘regrettable’ loss of life, while continuing to sell Israel all the weapons and bombs it needs to continue the genocide.

    Fuck Israel.




  • Long posts rely on what is basically the essay format you learned in high school, following the old rule-of-three.

    Three main sections:

    • Introduction
    • Thesis
    • Conclusion.

    Each section is further split into three:

    • The basic idea, background, why it matters.
    • Three supporting arguments, from different angles
    • Thesis restated, arguments summarised, you should agree.

    And each supported argument is further divided into P1, P2, C - either modus ponens or modus tollens.

    Modus ponens is ‘X is true, X implies Y, therefore Y is true’.

    Modus tollens is ‘X implies Y, but Y is false, therefore X is also false’

    Of course, not every long post is necessarily an attempt to convince someone, so you modify the technique to suit the content. Sometimes you’re just setting out to explain or inform - but this changes less than you’d think: instead of frogmarching someone towards your conclusion, you’re leading them towards understanding. In either case, you still break up the concepts into about three pieces, and present them in an order that makes the conclusion feel inevitable.

    If you want to expand beyond that, you can break it down inwards, splitting supporting concepts in three, or you can build it outwards, making three supporting arguments for each basic angle.

    One important thing to remember is that nobody wants to read a huge unbroken wall of text, so use paragraphs to break up separate ideas into small manageable chunks with whitespace in between. And remember that the last sentence of a paragraph hits like a mic drop, so use this strategically.

    Another trick is to sound out the post in your head and think about cadence; you don’t want a string of five-word sentences that all fall off at the end. If you have a whole page of “Dada da da da DUM. Dada dada da DUM. Da dada da daDUM.”, your readers will get annoyed and dismiss you without necessarily knowing why. You need to change up the rhythm, throw in some parenthetical clauses, vary the length and keep the flow of tex sounding interesting. It makes the difference between school assembly anouncements and a professional youtuber.

    Honestly it’s all a bit of a hack - once you get the hang of it, you can hammer it out all day with surprisingly little effort.




  • It’s really simple: you stfu and listen.

    Turn off the narrative, the inner monologue, the train of thought. You probably can’t shut it down completely - that’s okay, just let it go each time you notice it.

    Meanwhile, the back of your mind is constantly generating chatter. Passively eavesdrop on that chatter. You won’t be able to make much of it out, it’s mumbling and disconnected scraps, like someone else’s conversation across a cafe. That’s okay. Just kind of tune in; if you get stuff, you get stuff.

    Being still enough to listen relaxes your body, and the listening-state and the space you create for it soon fills up with dream-gibberish - and that segues smoothly into actually dreaming.




  • I’ve never had AI code run straight off the bat - generally because if I’ve resorted to asking an AI, I’ve already spent an hour googling - but it often gives me a starting point to narrow my search.

    There’s been a couple of times it’s been useful outside of coding/config - for example, finding the name of some legal concepts can be fairly hard with traditional search, if you don’t know the surrounding terminology.

    For the most part, it’s worthless garbage.




  • Because the conditions required for fascism to take root have been incubating for decades.

    Massive wealth inequality, insecure employment, non-existent labor laws and worker’s rights, hollowed-out education, healthcare and social services, large corporations getting to write their own laws verbatim, political parties sucking dick for their donors, endless war ensuring unlimited money for the military-industrial complex, demonization of brown-people-of-the-week, fetishization of ‘the troops’ and ongoing acceptance of brutality.

    People are poor, desperate, ignorant, exploited and forgotten, they’re shown every day that killing the shit out of outsiders is the solution to all the country’s problems, anyone pushing actual progressive ideals is shut down and demonized as a threat to the profits of the 0.1%, giving people a choice between rightwing bastardry and neoliberal bastardry as their only lens through which to see the world.

    Give that the opportunity to flare up and of course it’s fucking going to. The republicans want it, the dems do nothing to prevent it.

    It’s like watching a party get the wrong kind of rowdy all night, you keep supplying drinks regardless, then you wonder why it turns into a fight, oh no how could this ever happen?




  • Okay:

    You don’t have to deal with scripting and command-line stuff, but all the major tinkering under the hood depends on it. The amount of customisation and tinkering is fairly infinite, so past a certain point you just can’t build graphical stuff to cover every single possible choice - and that’s where the gibberish comes in.

    Baseline concepts:

    ‘Operating system’ means different things in different contexts, and this can be confusing.


    Context 1: technically correct

    Your computer has a big chip that runs programs, and a bunch of hardware that actually-does-stuff: network card, graphics card, disk drive, mouse, keyboard etc. Programs need to talk to the hardware and make it do stuff, or else they don’t actually… do… anything.

    There’s two problems with that:

    There’s a gazillion kinds of hardware out there, that all has its own language for talking to it, and your program would either only run on one EXACT set of hardware, or it would have to speak all gazillion languages and be too big to fit on your machine.

    The second problem is that in order to do more than one thing at a time, you need a bunch of programs all running at once, and they all need to use the hardware, and without something to coordinate the sharing, they’ll all just fight over it and everything falls down in a tangled heap.

    A good analogy for this is a restaurant. They aren’t just public kitchens where you can just wander in and start preparing your own meal, taking ingredients/equipment/space however you want, then just carry it to whatever table takes your fancy - and you definitely can’t have all the customers doing it at once. Especially if they don’t know how all the equipment works, where the different ingredients are kept, etc - it would be an absolute disaster, and there would be fights, injuries, fire and food poisoning.

    So instead there’s an agreed-upon system with rules, and people that do the cooking for you. You make a reservation or queue at the desk, you are told which table you can have, you go sit there and a waiter brings you a menu. You pick the food - and depending on the place, maybe ask for customisation - then wait and they bring it out to you, then you sit there, eat it, then leave.

    That system-with-rules is the operating system, or more specifically the operating system kernel. Any time a program wants to do more than think to itself, it has to asks the OS to do it, and bring it the results.

    In this analogy, fundamentally different operating systems (windows / linux / OSX / android / etc) would be like different kinds of (5-star / sushi-train / pizza place / burger joint / etc) that have different rules and expectations and social-scripts to interact with them. A program written for one OS would have no idea how to ask a different OS for what it wanted, and wouldn’t be able to run there.


    Context 2: what people usually mean

    It’s all well and good to have a machine that can run programs and do things, but the human sitting in front of it needs to be able to interact with the thing, so you can poke buttons and move files around and move windows and stuff.

    And so there needs to be a crapton of programs all working with each other on the thing to provide all this functionality, and the whole user experience - preferably with a consistent design language and general expectation of how everything should work: you need a desktop environment.

    In restaruant terms, this would be the specific brand/franchise/corporate-culture that runs the place. Yes, the general idea is that it’s a burger joint, but specifically it’s a mcdonalds, or a wendy’s, or whatever that homophobic chickenburger place is called - it’s got the decor, it’s got the layout, it’s got the specific combo meals, etc etc, the same uniforms, the same staff policy, etc.

    Now here’s the thing:

    Let’s say there’s only one sushi franchise in the world. That’s like Windows - there’s updates new versions and some slight variations (server versions aside), but you walk into one, you’ve walked into them all. There’s one Windows kernel, and one windows desktop environment that goes with it.

    And say there’s only one pizza-place franchise in the world, and they all look the same, have the same menu. That’s like OSX: there’s one kernel, and similarly one OSX desktop enviroment to go with it. A mac is a mac, and it does mac things.

    But linux… linux is different. With Linux, it’s there’s 900 different burger-joint franchises in the world, and literally anyone can go start a new one if they want to put the time into designing one from the ground up. The paradigm is the same - order at the counter at the back, menus on the wall overhead, grab bench seating wherever or get it to go - but every place can design the look and feel, the menu, the deals, the other amenities, the staffing structure, etc.

    And the different franchises - that’s what distros are.

    It’s the set of programs all working together that create a whole working enviroment, but everything uses the standard kernel to actually get stuff done. If your program can run in one linux distro, then it should be able to run in a different one, because your program uses the same standard set of requests in order to do things.

    The windows and the menus and the desktop apps and the way the interface behaves and how you configure everything can be different, but the core functionality that the software uses, is the same.


    Now, for the most part, Windows is like NO USER-SERVICEABLE PARTS INSIDE, all the fiddly internal bits are carefully hidden away and made deliberately opaque. You don’t need to know, we don’t want to tell you, we’ll let you change the wallpaper, but for everything else, we decide how it’s wired up. If you want it to do things slightly differently to suit your own workflow, tough.

    Macs are kind of the same deal: for the most part it’s no-touchee, you’ll break stuff. Just push the very shiny buttons and be happy that everything Just Works ™.

    But Linux… doesn’t seal anything in plastic. All the gubbins are not only there on display, they’re mostly all human-readable and human-tinkerable with. Instead of mysterious monolithic chunks of software communicating with each other via hidden channels, with configuration in databases you don’t get to see… it’s mostly scripts you can read and tinker with, and plain-text config files you can edit, all writing useful details in highly-visible log files that you can read through when things don’t do what they’re supposed to.

    Now with a lot of distros, you absolutely can just push buttons and treat the thing like a Windows box, and never have to tinker with the fiddly bits. You’ve got a browser, you’ve got apps, you’ve got games, it just does the thing. But if you want to start getting technical, you absolutely can - unlike windows or mac.

    But this very ability to configure and tinker and patch bits on - and the fact that most distros don’t have a gigantic microsoft-sized coordinated team all following one shared vision, but are wired together like a kind of junkyard frankenstein from thousands of separate teams as a labour of love - means that occasionally you will need to get technical to deal with small annoyances or use-cases they didn’t think of.