=== ANCHOR POEM ===
══════════════════════════════════════════════════════─────────────────────────────
 ┌────────────────────────┐
 │ CW: re: tech info-dump │
 └────────────────────────┘


 @user-1370 
 
 I love this a lot! I want to put function pointers in a "matrix architecture
 array" and make them point to different functions at different points in the
 program. I bet you could even point them at each other, so like if M and Y
 then point at N, A, Y or something.
 
 this is really cool I like stuff like this tomorrow I'll take pictures of
 something similar I'm working on! I abandoned it tho hehe anyway remind me if
 I forget!!
                                                           ┌───────────┐
 similar                        chronologicaldifferent════════════════════════════════════════════════════════────────────────────────────┘

=== SIMILARITY RANKED ===

--- #1 fediverse/9 ---
═════════════════════════════════──────────────────────────────────────────────────
 @user-8 I love theory too! So far software engineering has been mostly UI and
 databases and such and like... I'm not into HTML, thank you very much.
 
 Gimme a Rust project or something and I'll excel
                                                           ┌───────────┐
 similar                        chronologicaldifferent═══════════════════════════════════─────────────────────────────────────────────────┘

--- #2 fediverse/1892 ---
═════════════════════════════════════════════════════──────────────────────────────
 ┌─────────────────────────────────────────┐
 │ CW: C-programming-and-alcohol-mentioned │
 └─────────────────────────────────────────┘


 I want to write C programs with threads and manual memory management and
 function pointers and lots and lots of arrays and I'm not even kidding
 
 ... wait a minute I literally don't have a job, why am I not writing C
 programs right now?
 
 BRB I got something important to do, where's my vodka --> pkill firefox
                                                           ┌───────────┐
 similar                        chronologicaldifferent═══════════════════════════════════════════════════════─────────────────────────────┘

--- #3 fediverse/5850 ---
══════════════════════════════════════════════════════════════════════════─────────
 @user-1074 
 
 if you'd like I can give you a lua script which will take your fediverse
 archive and turn it into a pdf which you can edit or print or whatever. Might
 be a fun diversion from posting. You can reply to yourself, add
 clarifications, change some things, put things in a new light, add context,
 etc... before you know it you'll have something printable. Could even pull out
 your best stuff and make zines.
 
 should require just a little configuration to suit your setup. That's part of
 how I stay "productive" without posting all the time.
                                                           ────────┐
 similar                        chronological                        different════════════════════════════════════════════════════════════════════════════────────┘

--- #4 fediverse/3577 ---
════════════════════════════════════════════════════════───────────────────────────
 ┌─────────────────────────┐
 │ CW: computers-mentioned │
 └─────────────────────────┘


 I love writing installation scripts like this!
 
 If you want to install something on Linux but you have difficulty, talk to me
 and I'll write you a script like this. I might even make it fancier.
 
 This one installs a programming language that is useful for parallel computing
 across multiple clusters of computers which could be useful if you want to
 leverage multiple CPUs and GPUs with ease to compute tasks which are far
 beyond a normal computer.
 
 https://chapel-lang.org/download.html
An installation script for the Chapel programming language.  I don't imagine it'd be very useful to hear the program read out-loud, but if it would be interesting to hear, then feel free to ask.
                                                           ┌───────────┐
 similar                        chronologicaldifferent══════════════════════════════════════════════════════════──────────────────────────┘

--- #5 fediverse/633 ---
═════════════════════════════════════════════──────────────────────────────────────
 @user-192 
 
 the neat thing about BASH is that it's the glue that holds all your other code
 together. Write libraries in C and call them with BASH - accomplish broader
 tasks that are easier to co-create. That's why I like it - it's not the most
 important, but it's quite beneficial I think _^
                                                           ┌───────────┐
 similar                        chronologicaldifferent═══════════════════════════════════════════════─────────────────────────────────────┘

--- #6 fediverse/5405 ---
══════════════════════════════════════════════════════════════════════─────────────
 can't stop thinking about a visual programming editor that can be interacted
 with in the same way that people are used to (think chromebooks dragging and
 dropping icons in a web UI) but produces a text-file full of code and all the
 required compilation scripts for any language the user requires...
 
 seriously, programming is not THAT different between the different languages.
 especially the main ones. they're all essentially variables and function calls
 at the end of the day, so why not abstract away all the extra details and
 build something that n00bz can actually use to build things.
 
 I technically could make this but I don't have the bandwidth and I don't think
 it's important really? who can say, the tools tend to co-create the solutions
 in my experience.
                                                           ┌───────────┐
 similar                        chronologicaldifferent════════════════════════════════════════════════════════════════════════────────────┘

--- #7 messages/181 ---
══════════════════════════════════════════════─────────────────────────────────────
 I know you don't want to hear this, but there is a chance that there will come
 a time where your life depends on your ability to debug a computer without the
 internet. To set up an SSH server. To install Linux. To program in C. To do
 something else that I'm not prepared for... If StackOverflow didn't exist
 because network connectivity has been lost, could you remember syntax? Maybe
 it's a good idea to set up a local LLM that can answer basic questions about
 technology. Maybe it's a good idea to set up on your parents computer, just in
 case you have to hide out there for a couple months. Maybe it's a good idea to
 download wikipedia, just in case.
 
 If I need to use a mac, I'm screwed
                                                           ┌───────────┐
 similar                        chronologicaldifferent════════════════════════════════════════════════────────────────────────────────────┘

--- #8 fediverse/5689 ---
═══════════════════════════════════════════════════════════════════════────────────
 why don't we make large arrays of vram that are slightly slower because
 they're farther on the circuit-board from their host and their reception at
 the processing section has to be gated such that they all enter to be
 processed at once.
 
 like that one infinite scrolling XKCD cartoon where the things move from one
 screen to the other simultaneously assembly line style.
 
 [fail safes. https://xkcd.com/2916/#xt=7&yt=35 ]
 
 if we all feel like we're doing nothing, we'll all grow tired of it and decide
 to do some prevailing. gosh I wish I wasn't so useless is code for
why don't we make large arrays of vram that are slightly slower because they're farther on the circuit-board from their host and their reception at the processing section has to be gated such that they all enter to be processed at once.  like that one infinite scrolling XKCD cartoon where the things move from one screen to the other simultaneously assembly line style.  [fail safes. https://xkcd.com/2916/#xt=7&yt=35 ]  if we all feel like we're doing nothing, we'll all grow tired of it and decide to do some prevailing. *gosh I wish I wasn't so useless* is code for
                                                           ───────────┐
 similar                        chronological                        different═════════════════════════════════════════════════════════════════════════───────────┘

--- #9 fediverse/466 ---
═════════════════════════════════════════════──────────────────────────────────────
 I love Linux. All I have to do is type "authserver" and "worldserver" and
 wouldn't you know it suddenly a universe is created (with very constrained
 rules) that anyone might inhabit should they desire to. It's not like I'm
 perfect - oh wait I have a toot about that, gimme a sec
                                                           ┌───────────┐
 similar                        chronologicaldifferent═══════════════════════════════════════════════─────────────────────────────────────┘

--- #10 fediverse/581 ---
═════════════════════════════════════════════──────────────────────────────────────
 @user-428 
 
 sometimes I think about how much more productive I'd be if I had a code editor
 that let me draw arrows and smiley faces and such alongside the code. Or if I
 could position things strangely, like two functions side-by-side with boxes
 drawn around them. Or diagrams or flowcharts or graphs or...
 
 something that would output to raw txt format, but would present itself as an
 image that could be edited.
                                                           ┌───────────┐
 similar                        chronologicaldifferent═══════════════════════════════════════════════─────────────────────────────────────┘

--- #11 fediverse/111 ---
══════════════════════════════════════════─────────────────────────────────────────
 @user-95 that's why I like programming - it's my favorite form of spelling.
 i'm not very good at remembering all the names and the numbers, but I like to
 think I can make things do a function.
                                                           ┌───────────┐
 similar                        chronologicaldifferent════════════════════════════════════════════────────────────────────────────────────┘

--- #12 fediverse/3154 ---
═══════════════════════════════════════════════════════────────────────────────────
 ┌───────────────────────────┐
 │ CW: re: cursing-mentioned │
 └───────────────────────────┘


 @user-1461 
 
 yes... I like tree shapes, you have to address them differently. Lots of
 pointers, in my experience, which can be kinda fun.
 
 I also like large heaps / soups of data that points to one-another. Structs
 thrown in a pile with pointers to each other. It's great! So long as those
 pointers can also point back, and you can properly trace how data flows
 through the system... That's the hard part, I think.
 
 trees though... You can start by just saving a "next / previous" with one or
 both being arrays of pointers to the next or previous entries. Note: plural,
 entries. That's the fun part - non-linear trees teehee
                                                           ┌───────────┐
 similar                        chronologicaldifferent═════════════════════════════════════════════════════════───────────────────────────┘

--- #13 fediverse/5212 ---
════════════════════════════════════════════════════════════════════───────────────
 the reason you start with a game engine is because then you'll have tools to
 make however-many games you want. Tools that you know intimately enough that
 you can debug and improve them without breaking your creative flow by learning
 something new halfway through a project
 
 the whole point of individualized projects instead of viewing each computer as
 a complete and total whole (why do we need servers again?) is that you can
 paint a picture of where the design of the program is intended to go, such
 that all the considerations are in place and whatever issues or struggles you
 might face along the way are adequately addresssed, -- stack overflow --
 [because I mistyped addressed] -- -- if you know what "stack overflow" means
 you have intimate knowledge of the technology, and can probably guess what it
 means in context when I say it. "nuts I lost that train of thoguht" -- stackl
 ov
                                                           ┌───────────┐
 similar                        chronologicaldifferent══════════════════════════════════════════════════════════════════════──────────────┘

--- #14 fediverse/3680 ---
════════════════════════════════════════════════════════───────────────────────────
 it's probably a good idea to write pseudocode, then real code, instead of
 starting with real code, and bugfixing something incomplete and more difficult
 to reason with.
 
 unless you write real code easier than pseudocode. idk do what works for you.
                                                           ┌───────────┐
 similar                        chronologicaldifferent══════════════════════════════════════════════════════════──────────────────────────┘

--- #15 fediverse/4259 ---
═══════════════════════════════════════════════════════════────────────────────────
 source code should be like a story
 
 "here's why we did what we did with our architecture"
 
 and as it's being written, it may be altered in many different places at once
 - git style.
 
 parts of it could rhyme,
 
 if they wanted to show parts that were really difficult but easy to summarize
 because it's mostly just a lot of boring work y'know like writing getters and
 setters and doing the testing pre-deploy environments
 
 ,,, they could selectionize
                                                           ┌───────────┐
 similar                        chronologicaldifferent═════════════════════════════════════════════════════════════───────────────────────┘

--- #16 fediverse/5911 ---
═════════════════════════════════════════════════════════════════════════─────────┐
 I was always fascinated by the Linux way of programming. Need to do something?   │
 write it into a script! You never know when you'll need it again. Then, just     │
 stay organized, religiously so, and understand that you will forget about        │
 stuff. But, you'll come across it eventually, ready and willing and able to      │
 help you.                                                                        │
 if you don't want me using AI, then give me ~20 junior developers. Which is      │
 more efficient, do you think?                                                    │
 "girl you haven't even tested your vibe-coded slop, how do you know if it        │
 works"                                                                           │
 oh I'm sure it doesn't, but it's the thought that counts                         │
 ... I guess I'm just saying, please don't burn the data centers. Computers are   │
 not only bad for the environment when they're burnt, but also we can use them    │
 for all kinds of neat things. Even if it takes a lot of energy, just... build    │
 more solar panels and only use the computers for important stuff?                │
 timeshare-style?                                                                 │
 \@/documents/books/man-and-the-computer.pdf                                      │
 that was my mother's book... I love her. I miss that side of her. She fled       │
 when the cancer came.                                                            │
                                                            ──────────┤
 similar                        chronological                        different═════════════════════════════════════════════════════════════════════─────────┘

--- #17 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═════════════════════════════════════════════════════════════───────────────────────┘

--- #18 fediverse/572 ---
═════════════════════════════════════════════──────────────────────────────────────
 Hi, I'm learning about semaphores right now and trying to explain them to a
 friend. But I only sorta understand how they work - can anyone look at this
 pseudocode and tell me if I'm on the right track?
Some C pseudocode working through the semaphore design pattern. Here's the text of the pseudocode:  /* no lock example */  void start_thread(int* x) {   *x += 1; }  int main() {   int x = 0;   for (1000 times){     start_thread(&x);   }   print(x); }  /* in this case you have no idea what will print because thread A will take x and be like "ah yes it's 423" and then in the next instruction it'll be like "I'll increment this to be 424" and in the next one it'll say "okay now it's time to store 424 in the variable X" but like... there's a thousand threads all doing that at the same time, so odds are you'll have 5 that are like "ah yes this is 423 I'll set it to 424" */  /* not a good plan. Need a lock, so only one thread can use it at once. */ /* mutex example: */  void start_thread(int* x, int* x_mutex) {   *x += 1;   *x_mutex = 0; }  int main() {   int x = 0;   int x_mutex = 0;   for (1000 times){     while (x_mutex != 0){ } /* do nothing */     x_mutex = thread_id;     start_thread(&x, &x_mutex);   }   print(x); }  /* this should print 1000, but it's basically as slow as doing it single threaded. */  #define MAX 10  void start_thread(int* x, int* x_semaphore) {   *x += 1;   *x_semaphore += 1; }  int main() {   int x[MAX];   int x_semaphore = MAX;   for (1000 times) {     for (int i = 0; i < MAX; i++) {       x_semaphore -= 1;       start_thread(&x[i], &x_semaphore);     }     while (x_semaphore != MAX) { } /* do nothing */   }   int value = sum(x, MAX);   print(value); }
                                                           ┌───────────┐
 similar                        chronologicaldifferent═══════════════════════════════════════════════─────────────────────────────────────┘

--- #19 fediverse/3586 ---
════════════════════════════════════════════════════════───────────────────────────
 ┌───────────────────────────┐
 │ CW: programming-mentioned │
 └───────────────────────────┘


 I love programming!! Currently working on learning decentralized and GPU
 oriented computing. It's lots of fun! Plus Bash is a great language, it's not
 funky or hacky at all. Just a great language. Haha suuuuch a great thing to
 play with.
 
 But GPUs are legitimately cool, aside from Bash's purported funkiness /
 hackiness. You can do all kinds of cool things at scale that just don't make
 sense up close.
 
 EDIT: oops sorry forgot the content warning
                                                           ┌───────────┐
 similar                        chronologicaldifferent══════════════════════════════════════════════════════════──────────────────────────┘

--- #20 fediverse/1961 ---
═════════════════════════════════════════════════════──────────────────────────────
 @user-1037 
 
 Here are some neat ways!
 
 https://hachyderm.io/@user-1044/112512896931443652
 
 but you were part of that thread last month so you might remember : )
 
 (I ended up buying two of those python-only processors chips btw - I don't
 know how to solder though so I'm waiting to meet a new friend at my new job
 who can do it for me)
                                                           ┌───────────┐
 similar                        chronologicaldifferent═══════════════════════════════════════════════════════─────────────────────────────┘