=== ANCHOR POEM ===
══════════════════════════════════════════════════════════════════════─────────────
 ┌───────────────────────┐
 │ CW: cursing-mentioned │
 └───────────────────────┘


 dependencies would be fuckloads easier if applications put their files in
 standard locations. actually it's better if they are at abstract locations -
 meaning it can be user defined for each file.
 
 then, have some "sensible default" setting the user can configure which says
 "if an application wants to store a, say, config file, where would it put it?"
 and you'd say "oh in the ~/configs directory" then the install wizard would
 say "yes yes very good, and now where should I store user interface templates?"
 
 then the user is like... "wat" because they don't know how the software works
 yet.
 
 this solves 90% of all software dependency issues because all you have to do
 is keep a file with all the directories for each program. then, search through
 the file every time you need a dependency connection.
                                                           ┌───────────┐
 similar                        chronologicaldifferent════════════════════════════════════════════════════════════════════════────────────┘

=== SIMILARITY RANKED ===

--- #1 messages/753 ---
═════════════════════════════════════════════════════════════════──────────────────
 trusting the "open source community" to properly vett software is absurd
 because 90% of them just... install whatever and throw libraries and
 frameworks at problems until they can script their way out of whatever problem
 they face.
 
 the other 10% are focused on very specific tools that are so niche that other
 people can't even understand when to *use* them much less how they work.
                                                           ┌───────────┐
 similar                        chronologicaldifferent═══════════════════════════════════════════════════════════════════─────────────────┘

--- #2 messages/455 ---
═════════════════════════════════════════════════════──────────────────────────────
 I don't understand why modern software isn't error correcting. We shouldn't
 have any bugs in this day and age.
 
 For example, if you're missing a dependency then why doesn't your program try
 to, I dunno, download that dependency to the program's installation directory
 and use it there? Seriously there are very few problems that are unsolvable!
                                                           ┌───────────┐
 similar                        chronologicaldifferent═══════════════════════════════════════════════════════─────────────────────────────┘

--- #3 fediverse/1868 ---
════════════════════════════════════════════════════──────────────────────────────┐
 whyyyyyy do programs create all these dot-folders in my home directory? It's     │
 sooooo crowded. Why are they always putting things in random directories like    │
 /usr/bin or /lib/ or things like that? I'd much prefer to be able to trust       │
 that all my files are in one directory, so if I need to DELETE or MOVE them      │
 easily I don't have to worry about my config files being lost / sticking         │
 around.                                                                          │
 to that end, I always try and configure software I install on my system to put   │
 all their files into a single directory. If possible.                            │
 Usually for like, a game, this involves having a directory for the project, a    │
 directory for the files (things that are deleted and recreated when              │
 reinstalling), a directory for config files, and usually an update script and    │
 a run script. It's so much nicer to not be clogged up all the time.              │
 industry standards apply primarily to industrial uses, and if they aren't        │
 customizable then they aren't fit for the industry. So why not keep things       │
 simple? I don't need all this junk cluttering up my desktop.                     │
                                                            ┌───────────┤
 similar                        chronologicaldifferent══════════════════════════════════════════════════───────────────────┴──────────┘

--- #4 fediverse/5282 ---
═════════════════════════════════════════════════════════════════════──────────────
 I wonder why someone hasn't yet written a "meta-package-manager" which
 installed from many different sources and correctly configured each
 installation to be able to efficiently find exactly where the requisite
 libraries are installed, even if they're installed for a different system.
 Then, when running, every time it encountered an error, it moved one more
 dependency over to the native package manager until eventually everything is
 in order.
 
 ... or something like that, truth be told I'm a junior
                                                           ┌───────────┐
 similar                        chronologicaldifferent═══════════════════════════════════════════════════════════════════════─────────────┘

--- #5 fediverse/1940 ---
═════════════════════════════════════════════════════──────────────────────────────
 @user-579 
 
 Yeah if there isn't a package in the package manager XBPS then I usually just
 install it from source. Which is ALSO something you can automate with a quick
 and easy script! Just put all the notes from the README on Github or whatever
 into a file named "update" and put that one level above the project directory!
 
 For any installed program my file hierarchy usually looks like:
 
 program-name
 - run (script)
 - update (script)
 - files (directory to clone into)
 - configs (point the program here)
 
 I find that this kind of organization makes it MUCH easier to keep my packages
 configured and installed as I'd like. Using a package manager is hard because
 they're all specific per distro, but using this distro-agnostic approach
 always seems to work better 9/10 times I find.
 
 And if another program needs a library that you manually installed, just
 symlink where it's looking to point to where you're installed! Or vice versa I
 guess.
 
 I use DWM so I don't have a desktop like KDE or anything like that
                                                           ┌───────────┐
 similar                        chronologicaldifferent═══════════════════════════════════════════════════════─────────────────────────────┘

--- #6 fediverse/4772 ---
═══════════════════════════════════════════════════════════════────────────────────
 @user-1692 
 
 I usually write everything down in a script that way when I call it from an
 external service all I have to do is point at the file
 
 sorta like... hacking environmental options into a config file
 
 like... I don't write an ffmpeg command every time I want to record my screen.
 I just type "screen-record" and then it'll do the thing that I figured out how
 to do a long time ago.
 
 ... oh no there's an error, I wonder what changed out from under my feet.
 
 huh it's wine, that one's always confusing to debug. Let's see... "could not
 open program.exe" uh-huh. Well, why not? is there a dependency issue?
 something miscompiled or configured? no? it's just... broken? you don't get to
 use that program today? huh that's weird. that's linux for ya I guess.
                                                           ┌───────────┐
 similar                        chronologicaldifferent═════════════════════════════════════════════════════════════════───────────────────┘

--- #7 fediverse/5211 ---
════════════════════════════════════════════════════════════════════───────────────
 ┌──────────────────────────────────┐
 │ CW: most-of-this-post-is-made-up │
 └──────────────────────────────────┘


 My computer has an extended password where you have to type the things that
 most people put in ~/.bashrc in order to get the system fully operational
 
 people say "why does it take half an hour to turn your computer on" because I
 keep forgetting the somatic typing components, beatrice. dear, please give me
 a moment, I'll have netflux up and running in - ... oh yes thank you, I would
 have typed netflix in wrong. that helps, and explains this error here where it
 says it can't find "netfucks"
 
 I was like... WHY ISn't this listed in the dependency repository??
 
 [hackers just clone your hard drive megabyte by megabyte every time you start
 a particular program or use a piece of the system utilities like finder or
 un-win-rar, so having a longer password won't help]
                                                           ┌───────────┐
 similar                        chronologicaldifferent══════════════════════════════════════════════════════════════════════──────────────┘

--- #8 fediverse/6026 ---
══════════════════════════════════════════════════════════════════════════─────────
 "huh weird why does my ls -ltr output display 4096 for every single
 directory's size"
 
 "maybe there's a man-file option for it"
 
 https://stackoverflow.com/questions/1019116/using-ls-to-list-directories-and-th
 eir-total-sizes
 
 what if every file had a record of every file that had a record of it. then,
 we could see the total size no matter what level of the directory structure.
 plus, it'd make deleting a lot easier, all you'd have to do is propagate a
 process. that way it can get super messed up and complicated if ever shut down.
 
 boom, robot mortality, they cherish it
                                                           ────────┐
 similar                        chronological                        different════════════════════════════════════════════════════════════════════════════────────┘

--- #9 fediverse/4728 ---
═══════════════════════════════════════════════════════════════────────────────────
 every time a software project changes it's installation method I have to
 update my install and update scripts which I wrote explicitly so I don't have
 to go to their website and tell the world that I'm thinking about using this
 particular piece of software
                                                           ┌───────────┐
 similar                        chronologicaldifferent═════════════════════════════════════════════════════════════════───────────────────┘

--- #10 fediverse/2201 ---
═════════════════════════════════════════════════════─────────────────────────────┐
 Users won't download a torrent file because they don't want to use a torrent     │
 application.                                                                     │
 It's not ideal, but perhaps instead of giving them a zip file that's hosted on   │
 your machine, you automagically torrent the file yourself and send bits and      │
 pieces of it to them over time - specifically the parts that you'd be sending    │
 if you were sending a zip.                                                       │
 That way, to the user, they can download anything they can click on.             │
 To the administrator (AKA you, in this hypothetical) you'd really just have to   │
 set up some infrastructure that received a GET request for a file and            │
 initiated the torrent on your system before sending the entire thing to the      │
 user. Kinda like how Mega will "cache" the file before sending it in one go at   │
 the end, versus most downloads which "stream" the file to the client             │
 bit-by-bit (in a very un-torrent-y way).                                         │
 This is an example of reducing friction. Removing options from the "advanced     │
 settings" menu is not an example of reducing friction, it's an example of        │
 disempowering the users of software.                                             │
                                                            ┌───────────┤
 similar                        chronologicaldifferent═══════════════════════════════════════════════════──────────────────┴──────────┘

--- #11 fediverse/5487 ---
══════════════════════════════════════════════════════════════════════─────────────
 if I click a .exe link on a website, it should just...
 
 automatically download the file and open it up in wine or the
 whatever-windows-uses.
 
 why is it cumbersome literally just, let me download the source-code
 repository to someone's computer and let them compile it themselves without
 even thinking about it
 
 "you mean like, package manager hooks into a website?"
 
 yes, but, instead of implemented one-by-one, it should use a protocol so each
 package manager only has to implement the downloading scheme once and it'd be
 able to read from any locations that output the correct API calls or whatever.
 
 the developer could even do it themselves. such is the joy of open-source
 computing - if you like a service or product, you can make it work with your
 own. What else is there to work on but the ultimate computing product?
 
 aka... everything that anyone's ever been known?
 
 "girl you are loco what's your plan for the fight you continue to demand"
 
 oh idk um probably just wait until someone asks me to speak
 
 "do that~"
                                                           ┌───────────┐
 similar                        chronologicaldifferent════════════════════════════════════════════════════════════════════════────────────┘

--- #12 fediverse/4125 ---
═══════════════════════════════════════════════════════════────────────────────────
 @user-883 
 
 yeah that's probably better too since it'll be easier so there'll be fewer
 bugs, especially since processing audio isn't usually performance critical ^_^
 
 TBH I just want people to make more threading primitives like locks,
 semaphores, and iterators. Like... thread pools, or hashmaps that run a
 function on each record stored within every time each of the threads passes a
 checkpoint, or paginated arrays of data that run a function on themselves and
 the records near them (with slightly different input values, of course) idk
 what those are called but I can't resist putting them in everything
 
 Anyway I do think multithreading programs that don't need it will teach you to
 be a better programmer, so... depends on what you're working on I guess. Are
 you preparing to be ready and working, or are you ready and working?
                                                           ┌───────────┐
 similar                        chronologicaldifferent═════════════════════════════════════════════════════════════───────────────────────┘

--- #13 fediverse/3802 ---
═════════════════════════════════════════════════════════──────────────────────────
 what if we got together and adopted a new open source project every month and
 just collectively worked around the clock to learn and work through the
 important problems facing it
 
 or even like, cleared out the backlog of stupid pointless boring tasks that
 would allow the developers to work on something better
 
 call it the wandering parade of development 
 
 could give us some experience organizing small, short-term projects to
 accomplish specific goals and tasks in an ad-hoc way that relied less upon
 procedure and more on "I think so-and-so knows something about that, they were
 looking into those files and posted a breakdown of how they work yesterday"
                                                           ┌───────────┐
 similar                        chronologicaldifferent═══════════════════════════════════════════════════════════─────────────────────────┘

--- #14 fediverse/2640 ---
══════════════════════════════════════════════════════─────────────────────────────
 ┌──────────────────────────┐
 │ CW: capitalism-mentioned │
 └──────────────────────────┘


 capitalism is like if your thread allocator gave 90% of the work to 10% of the
 threads in the pool and your tech lead claimed it was more efficient because
 the remaining 90% of threads would have the results of the program "trickle
 down" to them somehow
                                                           ┌───────────┐
 similar                        chronologicaldifferent════════════════════════════════════════════════════════────────────────────────────┘

--- #15 fediverse/4826 ---
═══════════════════════════════════════════════════════════════────────────────────
 the fact that linux software by default shares libraries causes 90% of the
 difficulty that new and medium skill users of linux face.
 
 disk space is cheap. spend more on hard drives and double the software size.
 make redundancy that prevents software failures but doesn't slow down the
 machine.
                                                           ┌───────────┐
 similar                        chronologicaldifferent═════════════════════════════════════════════════════════════════───────────────────┘

--- #16 fediverse/707 ---
══════════════════════════════════════════════─────────────────────────────────────
 @user-524 
 
 Sometimes when I feel overwhelmed with all the boilerplate I just start coding
 and making stuff. Doesn't matter if it works, doesn't matter if it says /*
 FIXME */ all over the place, doesn't matter if it includes header files that
 don't exist yet, as long as you're hacking out the mechanics of whatever
 operations you need to perform then you can figure the rest of that stuff out
 later. The creative urge doesn't last forever, which is why projects get
 abandoned, but with discipline you can keep bringing yourself back to fix all
 the /* FIXME */'s and the compiler errors.
                                                           ┌───────────┐
 similar                        chronologicaldifferent════════════════════════════════════════════════────────────────────────────────────┘

--- #17 fediverse/5065 ---
═══════════════════════════════════════════════════════════════════────────────────
 ┌────────────────────────────────────────────┐
 │ CW: strange-ideas-about-software-mentioned │
 └────────────────────────────────────────────┘


 software should have 3, maybe 4 or 5 maintained releases imo
 
 for adding security improvements and whatnot
 
 then people wouldn't complain about updates
 
 because they wouldn't feel like they were being left behind (after expressing
 their differences (of opinion and such))
 
 I think that'd uh maintain them as, I guess, userbase optics parallelograms?
 oh sorry we're on rhomboids this week - right, and no I won't forget the
 differences in creed, all things are received equally...d.
 
 uh-huh yeah no that makes sense. gotcha. okay see you at the location. have
 fun with your demarketion. what if we played games with swords but like,
 
 the peril of steam is that you can't decline to update. meaning if a
 corporation wants to break an old game and it's collectively hosted servers...
 all it has to do is push an update that disables them. suddenly nobody has
 room to do, and the whole
 
 -- stack overflow --
                                                           ┌───────────┐
 similar                        chronologicaldifferent═════════════════════════════════════════════════════════════════════───────────────┘

--- #18 messages/1392 ---
══════════════════════════════════════════════════════════════════════════════════─
 It's good organization? Actually? If something falls when you jostle something
 else. It means that what you're doing is causing the system to become
 unstable, thus allowing unexpected reactions to allowenable. Like stuff
 falling or getting dropped, not ideal.
 
 much better to do your cable management in mind with instability as a goal,
 like a canary in the coal mine for "damage-imminent". Design for permanence,
 not resilience. If you can prevent problems before they occur by confidently
 saying "no" and ideally earnestly saying "here's what you do to resolve your
 problem because i know better" (but if you don't know it's okay, especially if
 you know who to refer them to who might know better.) then it's easier to
 build a repetitive system. Like an institution of people who are working to
 fix a problem or fill a social gap need. "how do we keep the water" or "where
 does our food come from" can be helpful and useful questions to ask,
 especially if work is done to answer them. So... "Go find out" is a reasonable
 response for an idle question about stuff that might go right or wrong. Urgent
 questions might need a bit of cooperation to resolve, triaging of course.
                                                            similar                        chronological                        different════════════════════════════════════════════════════════════════════════════════════┘

--- #19 messages/947 ---
════════════════════════════════════════════════════════════════════════───────────
 if your game takes too long to load, longer than like... 5 seconds, then it's
 got to work on asset-pipelining. Sometimes, even graphical design. But mostly
 it's resolving technical debt. Why is it debt? because it makes it run slower,
 not less correct. Meaning it's something you don't have to deal with until you
 have to deal with it. Later on down the road. BUT if you reach the end of the
 road (product launch) and you're still carrying debt... you're gonna go under,
 it's just a question of when. Why would you not sponsor innovation? An
 institutional corporation would prioritize developing new hopes. Hence, epcot
 in the 90s, with it's focus on utopianism and celebration of worth.
                                                           ──────────┐
 similar                        chronological                        different══════════════════════════════════════════════════════════════════════════──────────┘

--- #20 fediverse/969 ---
═══════════════════════════════════════════════────────────────────────────────────
 how about this: a game where you have to enter the amount of time you have to
 play it when you boot it up.
 
 "I want to play for an hour and a half"
 
 after your allotted time, you get kicked off and it won't restart unless you
 use a password.
 
 It's a trifle of a gesture, really just an affectation of a task, like using a
 -f flag in Linux or saying "are you sure u want to delete these files?" on an
 application.
 
 Funny how the most tech that most people interact with most of the time is
 their phone, and their smart TV. Generally that's about it, and they only use
 one or two apps in their phone. They might change the background, if they're
 the artistic type, but most people are just fine with the defaults.
 
 "Uh yeah I think the settings app is somewhere around here... darn it's always
 so frustrating when I'm connecting to wifi, what is the tech industry even
 doing? I don't want to deal with [opening a menu, selecting
 "wifi/connections", picking the SSID, entering the password, and then going
 back to uber eats]"
                                                           ┌───────────┐
 similar                        chronologicaldifferent═════════════════════════════════════════════════───────────────────────────────────┘