=== ANCHOR POEM ===
════════════════════════════════════════════════════════───────────────────────────
┌───────────────────────┐
│ CW: cursing-mentioned │
└───────────────────────┘
"Alright I'm not great with syntax so I'm going to write it in pseudocode
first, and then if you'd like I can show you how I work through implementing
the syntax.
But first - do you want a robust solution, a quick solution, or a rapidly
deployed and cheap solution?"
using this trick you can pretend to be competent in any programming language,
except maybe ancient ones like Fortran or strange ones like lisps or Haskell
if they ask you to use a framework or something tho you're kinda boned because
you need to know which functions to call and how to initialize context and
such. When using a framework, the boilerplate is the code, which is why
frameworks suck
"don't call yourself a programmer" fuck off
┌─────────┐ ┌───────────┐
│ similar │ chronological │ different │
╘═════════╧╧═════════════════════════════════════════════════──────────────────────────┘
=== SIMILARITY RANKED ===
--- #1 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 │ chronological │ different │
╘═════════╧╧═════════════════════════════════════════════════──────────────────────────┘
--- #2 fediverse/1225 ---
═══════════════════════════════════════════════────────────────────────────────────
@user-883
don't worry I can sift through junk. I'll write my own using yours as a
reference to debug why mine isn't working. "oh probably because I didn't do
this part here"
also, bad news. Guess I'm doing C programming. What should I make? I'm
thinking Tic Tac Toe or maybe a really basic Asteroids or something
┌─────────┐ ┌───────────┐
│ similar │ chronological │ different │
╘═════════╧╧════════════════════════════════════════───────────────────────────────────┘
--- #3 fediverse_boost/5981 ---
◀─╔═══════════════════════════════[BOOST]════════════════════════════════────────╗
║ ┌────────────────────────────────────────────────────────────────────────────┐ ║
║ │ Some programming languages I’ve tried and liked and would recommend to others:C (especially C89/C90/“ANSI C” and C99)posix shell, bourne shell, and similar shells (bash, ksh93, mksh)PHPScheme (depending on the vibes I’m getting from someone I might recommend)Common Lisp (Same caveat as Scheme)Emacs Lisp (Same caveat as Scheme and Common Lisp)Motorola 68000 assembly │ ║
║ │ │ ║
║ │ Some languages I’ve tried and liked but would not recommend to others:Hewlett-Packard RPL (Actually I might recommend it to someone but it has to be a very specific kind of person)FORTH (same as RPL)Commodore BASIC (Microsoft BASIC) for the VIC-206502 assembly (so bad it’s good)Z80 assembly │ ║
║ │ │ ║
║ │ Some languages I’ve tried, did not like, and would not recommend to others:COBOL (maybe I could get used to it? I can at least read it. Just it’s so painfully like writing SQL statements without being as generally useful as SQL database queries)Kotlin (Like that feeling when you read words that alone you understand, but together in a sentence they make zero sense)JavaClojure (a.k.a. “Let’s make Common Lisp but make it worse”)Rust (stands for “Ridiculous Use of System Time” or something as far as I am concerned, heavy on memory and storage and super slow to compile and reads like Kotlin)TI BASIC (TI-82/83/84 style; TI-89 is a little bit better but still not good)C++ (unless you’re just writing almost completely C and building it with a C++ compiler)x86 assembly (I kind of like it but mostly don’t, there are better and more coherent CISC processor ISA’s if you’re into that) │ ║
║ │ │ ║
║ │ I should put Javascript somewhere, so I’ll say that it’s possible to write javascript code that I like and can read. Just no one chooses to do it anymore. There was a window between the time JQuery started to fade and all these stupid fucking “web frameworks” took off that it was somewhat tolerable. │ ║
║ └────────────────────────────────────────────────────────────────────────────┘ ║
╠─────────┐ ┌───────────╣
║ similar │ chronological │ different ║
╚═════════╧════════════════════════════════════════════════════════════┴───────╝─▶
--- #4 fediverse/6437 ---
══════════════════════════════════════════════════════════════════════════════─────
if I was writing a programming language, I'd name it C just to fuck with people
(great, now others can decide how it's known)
┌─────────┐ ┌───────────┐
│ similar │ chronological │ different │
╘═════════╧╧═══════════════════════════════════════════════════════════════════════────┘
--- #5 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 │ chronological │ different │
╘═════════╧╧════════════════════════════════════════════════════───────────────────────┘
--- #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 │ chronological │ different │
╘═════════╧╧═══════════════════════════════════════════════════════════════────────────┘
--- #7 fediverse/849 ---
╔══════════════════════════════════════════════────────────────────────────────────┐
║ wish there were ascii characters that took up more than one line of code │
║ vertically. │
║ │
║ wonder if we could use a sorting algorithm, or markup language, or something │
║ like that to organize less structured data along user-customizable rules. │
║ Like, a code editor that worked with your ideas, rather than the strict │
║ expression of your text. You could pretty much write in any language, even │
║ pseudocode, and the LLM behind the scenes would translate whatever you wrote │
║ into whatever result you needed. Writing Rust, but need to fit in with C code? │
║ No worries it'll translate for you. As long as the end result is functionally │
║ the same, which could be verified by running two separate VMs that ran │
║ interpreters every time you saved. And as long as their translation layers │
║ matched completely, then odds are they're the same. And if not, well, the │
║ programmer can always debug it. It's not like this would be running on │
║ something that needed to perform in the moment? Like, improv instead of │
║ tragedies, or battles instead of strategies │
╟─────────┐ ┌───────────┤
║ similar │ chronological │ different │
╚═════════╧═══════════════════════════════════─────────────────────────┴──────────┘
--- #8 fediverse/2879 ---
══════════════════════════════════════════════════════─────────────────────────────
┌────────────────────────┐
│ 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 │ chronological │ different │
╘═════════╧╧═══════════════════════════════════════════════────────────────────────────┘
--- #9 fediverse/282 ---
════════════════════════════════════════════───────────────────────────────────────
@user-209
I think you're right. Every letter in the variable name is another byte the OS
has to keep track of, which was a bigger problem in the past than it is today
(when it's been made irrelevant)
it's interesting how habits persist though the conditions that caused them
have faded. like a personal reflection of the environment you learned in.
"A a = new a();" is much more concise and (crucially) you can fit more words
to the right.
"a + b = c; c -= 2; f_z.write(c); f_z.close();" could conceivably be written
on a single line if you have short variable names. and when you only have so
many lines...
glad we're not constrained by those things anymore. the skeletal code that we
look at daily is much clearer - scope is more important, and so it makes sense
to encourage a coding style that illustrates it. however I can't help but
think block formatting like this could be useful in some situations, such as
when you'd normally be compelled to write a function for an operation that
runs once or more.
┌─────────┐ ┌───────────┐
│ similar │ chronological │ different │
╘═════════╧╧═════════════════════════════════════──────────────────────────────────────┘
--- #10 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 │ chronological │ different │
╘═════════╧╧═══════════════════════════════════════────────────────────────────────────┘
--- #11 fediverse/2003 ---
═════════════════════════════════════════════════════──────────────────────────────
The most important programming language to master is pseudocode.
With a firm grasp of pseudocode in your toolbox, you can solve any problem in
any language.
┌─────────┐ ┌───────────┐
│ similar │ chronological │ different │
╘═════════╧╧══════════════════════════════════════════════─────────────────────────────┘
--- #12 fediverse/4123 ---
═══════════════════════════════════════════════════════════────────────────────────
@user-883
you're right
but I think your first impulse should be to think about how to do it in a
multithreaded way
If the result is that single-threading would be better, great! It'll be easier!
But thinking about multithreading first will give you crucial insights into
the structure of the program.
depending on what kinds of programming you do...!
┌─────────┐ ┌───────────┐
│ similar │ chronological │ different │
╘═════════╧╧════════════════════════════════════════════════════───────────────────────┘
--- #13 messages/755 ---
═════════════════════════════════════════════════════════════════──────────────────
Code editor that moves boxes by saving over the file with a lua script every
time you moved a function call around.
Oh lemme start at the beginning:
A code editor program that's like a text editor like Vim or Emacs. If you
don't know what those are, you should probably learn Emacs. Or Vim. Up to you.
Oh right so if you do know what those mean, here's the idea: the white space
matters. It's counted and tracked into variables in a LUA script which
interface with the Vim C keybindings.
"run a function within a c program or LUA script which calls a bash command
which opens Vim for example with a file you want to edit. Then, inside the
file, your spaces and tabs would WYSIWYG for the various food ads placed
about, and then you could very easily create game design knowledge.
WASD to move, alternatively hjkl
It would run a check every time the file updates and depending on how it
changed it'd mark certain variables which would change the website as the user
moved things around.
It's just files. And files are just bits. But files are a useful abstraction,
If you realize that "ugly hacking" should be industry standard.
┌─────────┐ ┌───────────┐
│ similar │ chronological │ different │
╘═════════╧╧══════════════════════════════════════════════════════════─────────────────┘
--- #14 fediverse/4301 ---
═══════════════════════════════════════════════════════════────────────────────────
@user-1655
maybe the user could tell their client what fields to expect and how to
present them (like, a field called "memes" would be presented as a picture in
this panel, a field called "rants" would be passed to a word-cloud function
that extracts the most common 6+ letter words so you can tell at a glance what
the rant is about, this other field could be for calendar invites (plain text
of course, but interpreted by the calendar program) etc)
plus, if it's encrypted with PGP keys by default, there'd be few security
concerns. Unless your friend got hacked, or you got hacked, but, well... make
sure everything's sandboxed and don't do any remote code execution and you're
good, right?
┌─────────┐ ┌───────────┐
│ similar │ chronological │ different │
╘═════════╧╧════════════════════════════════════════════════════───────────────────────┘
--- #15 fediverse/2638 ---
══════════════════════════════════════════════════════─────────────────────────────
I really do believe that you can write any computer program you'd like with a
combination of Lua, Bash, and C.
Bash to start the program and enable updates / configuration, Lua to handle
the scripting and ordering of events, and C (or Rust) to execute performance
intensive sections. (often in their own threads)
┌─────────┐ ┌───────────┐
│ similar │ chronological │ different │
╘═════════╧╧═══════════════════════════════════════════════────────────────────────────┘
--- #16 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?
┌─────────┐ ┌───────────┐
│ similar │ chronological │ different │
╘═════════╧╧══════════════════════════════════════─────────────────────────────────────┘
--- #17 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 │ chronological │ different │
╘═════════╧╧═══════════════════════════════════════────────────────────────────────────┘
--- #18 fediverse/1246 ---
═══════════════════════════════════════════════────────────────────────────────────
@user-883
hehe if I don't understand how it works it's difficult for me to use things.
My Linux friends get so exasperated with me because I'm like "cool script
gimme like 2 days to figure it out" and they're like "bro just use these
flags" and I'm like "no"
┌─────────┐ ┌───────────┐
│ similar │ chronological │ different │
╘═════════╧╧════════════════════════════════════════───────────────────────────────────┘
--- #19 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
┌─────────┐ ┌───────────┐
│ similar │ chronological │ different │
╘═════════╧╧════════════════════════════════════════════════════════════════───────────┘
--- #20 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 │ chronological │ different │
╘═════════╧╧══════════════════════════════════════════════─────────────────────────────┘
|