=== ANCHOR POEM ===
═══════════════════════════════════════════════────────────────────────────────────
a code editor that only highlights the lines that have been specifically
flagged to have a certain function. Like, rendering, or sound, or GUI, or data
storage, or logic, or control flow.
then, when the user is browsing, they can say "only show me these types of
functions" with a very advanced filter mechanism. The editor would highlight
the ones that were relevant and related, as according to user-defined flags
that were set when writing it originally. In this way, by using a bit more
syntax, even if it's literally just blocks of [category] labels (like how """
or ``` often starts or ends a comment block)
highlighting with colors is great, but what if we de-emphasized the stuff that
didn't matter? by increasing the opacity more closely aligning the font color
to the background color, we could make a bit of text seem to "fade" from
perspective, while still readable the user's eyes would not be drawn to it.
Then, according to the labels marked as filtered, certain text would be bold,
highlighted, o
┌─────────┐ ┌───────────┐
│ similar │ chronological │ different │
╘═════════╧╧════════════════════════════════════════───────────────────────────────────┘
=== SIMILARITY RANKED ===
--- #1 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 │
╘═════════╧╧═════════════════════════════════════──────────────────────────────────────┘
--- #2 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 │
╘═════════╧╧══════════════════════════════════════════════════════════─────────────────┘
--- #3 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 │
╘═════════╧╧════════════════════════════════════════════════════───────────────────────┘
--- #4 fediverse/1976 ---
╔════════════════════════════════════════════════════──────────────────────────────┐
║ when pushing ctrl+v, the operating system first checks the file-type of the │
║ content being submitted. │
║ │
║ if it's like, a .jpg or .png, it knows that it's an image file. Do note that │
║ these are RANDOM letters that mean nothing, not something informative like │
║ .pic. │
║ │
║ if, however, it is text-based information, it first reads what is being sent │
║ to the application which is requesting a ctrl+v. │
║ │
║ Then, upon reading said information, it decides "is this worth passing on? │
║ Should I send something else, based on the results of what I've been analyzing │
║ of the situation as it develops over time, being observed by the execution │
║ operations of the monitor, which is projected forward unto the screen? │
║ (totally forgetting that "virtual" monitors exist, meaning monitors that don't │
║ display to any physical screen, but which rather are projected into the │
║ computer's "aetherspace", an area which is purely of the mind. │
║ │
║ Alas, that other sensors might not have read from this area. That they might │
║ not observe the results of the operations pe │
╟─────────┐ ┌───────────┤
║ similar │ chronological │ different │
╚═════════╧═════════════════════════════════════════───────────────────┴──────────┘
--- #5 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 │
╚═════════╧═══════════════════════════════════─────────────────────────┴──────────┘
--- #6 fediverse/5237 ---
╔════════════════════════════════════════════════════════════════════──────────────┐
║ that feeling when you're working on a large piece of software which has the │
║ capability to process in advance which operations will go in what order (a │
║ form of constant re-compilation) and schedules tasks like an operating system, │
║ to be executed on one of many individual threads. │
║ │
║ your filemanager probably has a thread for a moment, then passes it back, │
║ waiting it's turn to be updated while you're messing around on Inkscape or │
║ writing something in Neovim or running neofetch 256 times in order to find the │
║ best background to go along with it or whatever it is people do when using │
║ computers │
║ │
║ the task scheduler meanwhile has the glorious opportunity to work at a higher │
║ level of abstraction, managing each individual process and learning bits and │
║ pieces of what needs to be processed next. It all gets put on a list, and │
║ whenever a new thread comes up to be available it can point it toward one of │
║ those in the list of tasks to be executed by the task executor who works on a │
║ schedule and laughs externally in wintertime~ │
╟─────────┐ ┌───────────┤
║ similar │ chronological │ different │
╚═════════╧═════════════════════════════════════════════════════════───┴──────────┘
--- #7 fediverse/281 ---
╔═══════════════════════════════════════════───────────────────────────────────────┐
║ ┌─────────────────────────────┐ │
║ │ CW: cursed-game-engine-idea │ │
║ └─────────────────────────────┘ │
║ │
║ │
║ a game engine which won't let you import custom assets unless you complete a │
║ few simple tasks using the interface - "build a green capsule collider" "make │
║ this soldier unit shoot three bullets per shot" or "enable the automatic linux │
║ support" - using the interface, writing some code, and changing configurations. │
║ │
║ why would anyone do this? well it could be useful to increase the difficulty │
║ of importing external resources. plus it helps the user learn a bit over time, │
║ and it slows the pace of output such that the user's skills are encouraged as │
║ the output of the programming and not the program itself. │
║ │
║ an inverse curse (an evil one) would be where the requirements to complete │
║ basic tasks are hidden behind unapplicable skills. like, do you know exactly │
║ which buttons to press? engage with the skinner box, please. yes yes this is │
║ what we need - unintuitive software that completely disarms the populace from │
║ using them! suddenly they're worthless, and can't do anything on any surface. │
║ it sucks │
╟─────────┐ ┌───────────┤
║ similar │ chronological │ different │
╚═════════╧════════════════════════════════────────────────────────────┴──────────┘
--- #8 notes/computer-graphics ---
════════════════════───────────────────────────────────────────────────────────────
draw a line from every single pixel straight outward. The first thing it hits
is what you render.
okay it's more complicated than that, but it's the gist.
here's a more detailed explanation:
your monitor is 2560x1440p. that means there's 2560 pixels left to right, and
1440 pixels up and down. okay so define a 3d scene programmatically - it's not
hard, just "draw cube here with this size and rotation" and "draw a sphere here
with this position and rotation" etc. Something simple.
then, draw a ray trace straight out from your monitor. Not to the nearest light
source, but to the nearest other camera. Use the length of it to determine
distance, both indirectly (through the center node) and directly (pythagorean
theorum style).
Why? I dunno.
Okay back to the original idea, if you make an array with 2560 elements and
store arrays of size 1440 within it, then you have a simple boolean checkbox
for each pixel. Then, whenever you create a visible entity, make sure there's a
single boolean ticked right on the top of the entity when it's stored in the
graph mentioned above. Find the center of the entity, draw to the top, and one
more, and switch a boolean to "true". Then, every tick / update, cycle through
the entire list and the first one you find that has a "true" value is where you
draw the entity stored in the array.
Each "sprite" has an odd shape - it doesn't exist on it's top line, except for
one single dot right in the middle. Sorta like this:
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
o o o o o o o o o o o o o o o o o o ->X<- o o o o o o o o o o o o o o o
o o o o
x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x
when scanning left to right from the top, it'd bump into the X right there in
the middle. Inside the X is some data - an id corresponding to the sprite that
needs to be drawn, and a displacement value - like 500 pixels or something -
and the scanner with drop down 500 pixels, draw the sprite there (assuming a
centered origin point), jump 500 pixels up, and keep scanning.
each tick, right before this, the "list of entities" will scan through itself
and for each entity it'll change the "render graph" mentioned above to have an
X wherever the entity is stored. Whenever the camera moves, it updates the list
too.
┌─────────┐ ┌───────────┐
│ similar │ chronological │ different │
╘═════════╧╧═════════════──────────────────────────────────────────────────────────────┘
--- #9 fediverse/653 ---
═════════════════════════════════════════════──────────────────────────────────────
there's a difference between designing software and using software. Some
things can be made, and then saved for another day when their implementations
may be accomplished more ethically. It's okay to say "let's leave this as
'okay' and work on the next thing we've chosen."
Check out this piece of C code I wrote last night:
it doesn't compile, it's not finished, but I wrote it as-is
[pretend like it was called "main.c" instead of "main.txt" - had to change it
because mastodon thinks it's an invalid file]
[actually .txt didn't work, try .png]
[hmmm it realized it wasn't a valid png file, okay try screenshotting the
code, there's only 300 lines]
[sure glad there's only 300 lines]
[too bad it won't let you send .zip]
[won't let me name it main.png, presumably because they already have a
failed-verified version on their machine. will rename to main-src.png instead]
┌─────────┐ ┌───────────┐
│ similar │ chronological │ different │
╘═════════╧╧══════════════════════════════════════─────────────────────────────────────┘
--- #10 fediverse/4092 ---
═══════════════════════════════════════════════════════════────────────────────────
why not make a unified fediverse identity that can post on whatever instance
it wants?
... hmmm could be accomplished with a layer of abstraction. You could use a
"fediverse client" software to enter text into an HTML page which would have
it's own UI and stuff and would organize your accounts and instances such that
you could mark like, 3-7 as places you'd like to put a particular message.
Then it would just... do it
l m a o spam is gonna get sooooo much worse before it gets better
but trust me, we'll figure it out. And it won't be long, either. It's a
solvable problem, we just haven't built anything to handle it yet.
... yet...
┌─────────┐ ┌───────────┐
│ similar │ chronological │ different │
╘═════════╧╧════════════════════════════════════════════════════───────────────────────┘
--- #11 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 │ chronological │ different │
╘═════════╧╧═════════════════════════════════════════════════════════════──────────────┘
--- #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 │ chronological │ different │
╘═════════╧╧════════════════════════════════════════════════════───────────────────────┘
--- #13 fediverse/6015 ---
══════════════════════════════════════════════════════════════════════════─────────
┌──────────────────────┐
│ CW: AI-mentioned │
└──────────────────────┘
In 2025, if you want to create a piece of software your options are to either:
devote your life to it, or use AI to build a semi-working prototype that you
can use to pitch your idea to a bunch of people who have devoted their lives
to learning how to use your idea as documentation while they build it from
scratch, throwing out most of the code but keeping all the checklists and
progress-trackers you built along the way, perhaps even utilizing some of your
tooling that you used while constructing the scaffolding of this monstrous
application that you won't be using most of the source-code for.
┌─────────┐ ┌───────────┐
│ similar │ chronological │ different │
╘═════════╧╧═══════════════════════════════════════════════════════════════════────────┘
--- #14 messages/371 ---
════════════════════════════════════════════════════───────────────────────────────
take your bash script and update it to possess new functionality, like the
ability to re-order your posts and display them on a viewer - or the ability
to draw connections between them, showing them in context with one another.
Then, use that as display to the user, through the LLM interface. (do it
locally, it's only for long-term explanations.) (the user needs to be able to
ask questions to the machine, and the machine needs up-to-date information. So
give it the ability to make "compound phrases" like "the water temperature is
at " or " degrees. This is a [good/bad] thing because " and such, and then
string them together using typical ranges of past numerical datas as
reference. Like, if something is normally between 100 and 5000 then suddenly
it's at 14 or some other threshold (make sure nothing goes below 0, measuring
inertia and impact density and other factors) - but identify the connections
between each factor, so that you understand which ones are correlating to
which effects on the others. Measure things in terms of proximity, and
suddenly 3d graphs become a lot easier.
┌─────────┐ ┌───────────┐
│ similar │ chronological │ different │
╘═════════╧╧═════════════════════════════════════════════──────────────────────────────┘
--- #15 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 │
╘═════════╧╧═══════════════════════════════════════════════════════════════────────────┘
--- #16 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 │ chronological │ different │
╘═════════╧╧══════════════════════════════════════─────────────────────────────────────┘
--- #17 fediverse/617 ---
═════════════════════════════════════════════──────────────────────────────────────
So much of computing is just... handling the quirks of hardware and presenting
it to the user (programmer) in a way that is sane and makes sense, instead of
the arcane and [nebulous/confabulous/incomprehensible] way that physical
nature demands our absurdly potentialized computational endeavors be.
┌─────────┐ ┌───────────┐
│ similar │ chronological │ different │
╘═════════╧╧══════════════════════════════════════─────────────────────────────────────┘
--- #18 fediverse/4865 ---
════════════════════════════════════════════════════════════════───────────────────
┌─────────────────────────┐
│ CW: computers-mentioned │
└─────────────────────────┘
this is all it takes to send a message to a local LLM.
add a third function to get chatbot functionality.
a fourth to get a database storing method
(even if it's just in .txts)
great, you've mastered the technical difficulty in using AI. Now you gotta
learn all the other kind of programming so you can use this for situations
that need interpretation moment to moment.
aka active duty systems.
something like "output a 0 if the next text is [category.iter()]: " +
output.get_content() + " \n\n output a 1 if the next text is
[category.iter()]: " + output.get_content()"
or even "describe this thing as most like one of these characteristics" until
eventually you get THX-1138 if the characters were computers.
┌─────────┐ ┌───────────┐
│ similar │ chronological │ different │
╘═════════╧╧═════════════════════════════════════════════════════════──────────────────┘
--- #19 fediverse/5979 ---
══════════════════════════════════════════════════════════════════════════─────────
whenever you call a function, just pass along the arguments that you don't
know what to do with yet. they'll surely be useful sometime. and, luckily, you
can always search for them from the past, and just insert a "store this value
in this random spot of memory and mark it as needed" then pass it along. used
something? think it's still useful? pass it along (suddenly, formulaic
stateless development, where everything is used until it's no longer needed,
then generated again in a cyclical time-loop cycle which echoes and
reverberates groundhog day but mostly a game-loop, which nobody will
understand unless you're a game dev. but now since I said game dev, anyone can
look it up, so like... not that one, but others like it.
┌─────────┐ ┌───────────┐
│ similar │ chronological │ different │
╘═════════╧╧═══════════════════════════════════════════════════════════════════────────┘
--- #20 fediverse/750 ---
══════════════════════════════════════════════─────────────────────────────────────
accessibility idea:
local LLM that reads the posts that are further down on your timeline that you
can't see yet and generates content warnings, prioritizing those that you've
set as particular triggers for yourself. Then, integrating itself into your
fedi client, it hides the stuff that hurts you.
I feel like that could be a helpful and good aligned usage for the technology.
I don't know how feasible it is.
┌─────────┐ ┌───────────┐
│ similar │ chronological │ different │
╘═════════╧╧═══════════════════════════════════════────────────────────────────────────┘
|