@alcinnz@floss.social
@alcinnz@floss.social avatar

alcinnz

@alcinnz@floss.social

A browser developer posting mostly about how free software projects work, and occasionally about climate change.

Though I do enjoy german board games given an opponent.

Pronouns: he/him

This profile is from a federated server and may be incomplete. Browse more on the original instance.

alcinnz, to random
@alcinnz@floss.social avatar

In compiling software graphs come up all the time!

For our hypothetical string-centric hardware we may want to view parsing code at different levels of compilation! Or how about editing any parsing code visually (requires a bit more tooling...)?

Furthermore we may want to get a highlevel view of how all the components hook together! Or to debug the implied control flow in the Layout Coprocessor!

Maybe it'd even be useful for disassembling Arithmetic Core code...

1/5?

alcinnz,
@alcinnz@floss.social avatar

The simplest code for viewing these graphs would rely on interactivity by rendering it to an entire website you can surf, taking advantage advantage of all the accessibility tooling we'd build!

But sighted folk would want to see the entire graph onscreen at once! Layout is the tricky bit here, using a physics-inspired sim. Which if computed & rendered live appears more interactive, interesting, & performant! It'll take a few workarounds to run on our Layout Coprocessor...

alcinnz,
@alcinnz@floss.social avatar

@jnpn You mean treating certain subgraphs as a single state, & allow traversal into the subgraph?

I guess I've already explored how to compute connected components... And we could implement gestures to control this...

alcinnz,
@alcinnz@floss.social avatar

To have nodes repulse & bounce off each other we'd need a spatial index, which our Layout Coprocessor demands to be a binary tree. A quad tree maybe?

Except a tree can never put all data immediately available to the nodes which need it. So we'd need to propagate that data (or summaries thereof) along branches.

On the bright side: We'd strongly benefit from the Layout Coprocessor's concurrency!

P.S. Our other hypothetical processors aren't much better suited to this task.

3/5?

alcinnz,
@alcinnz@floss.social avatar

We'd want to add central gravity so disconnected graphs don't get flung away.

We'd need edges to pull nodes together like springs. So we'd need to find a way for our tree-centric coprocessor to traverse graphs...

There'd be a couple KBs of random-access memory shared between all Compute Units (added primarily to aid parsing preprocessed text). If we can shove enough relevant layout data into this from the Layout Coprocessors computations... We can route it to the appropriate spring sims!

4/5!

alcinnz,
@alcinnz@floss.social avatar

Once we've computed where all the nodes & edges are we can hand it off to the Compositor to render the circles & arrows. It can definitely render straight arrows, but I believe we could also get it to render curved ones which don't bend back on themselves.

The Layout Coprocessor would also want to position text in relation to the graph layout, handing that off to the Compositor as well.

We might want to design another DSL for this, the Layout Coprocessor's primary one wouldn't be suitable.
5/5

alcinnz, to random
@alcinnz@floss.social avatar

I finished skimming the rest of Linux's dynamically-loaded kernel module support!

The non-"main" sourcecode files primarily serve to abstract other kernel components. Often adding memory management for kernel-modules.

alcinnz, to random
@alcinnz@floss.social avatar

I finished watching...

The 11ty International Symposium on Making Web Sites Real Good (Live stream) - Eleventy:
https://invidious.nerdvpn.de/watch?v=iLxJ6PtuF9M (YouTube via Invidious)

I would say Suzzane's is my favourite talk of the bunch, but the others are great too!

alcinnz, to random
@alcinnz@floss.social avatar

Implementing MVCC and major SQL transaction isolation levels - Eaton Phil:
http://notes.eatonphil.com/2024-05-16-mvcc.html

alcinnz, to random
@alcinnz@floss.social avatar

Review of Reputable, Functional, and Secure Email Service - John Goerzen "The Changelog":
https://changelog.complete.org/archives/10711-review-of-reputable-functional-and-secure-email-service

alcinnz, to random
@alcinnz@floss.social avatar

On compliance vs readability: Generating text colors with CSS - Lea Verou:
https://lea.verou.me/blog/2024/contrast-color/

alcinnz, to random
@alcinnz@floss.social avatar

P&B: Om Malik - Manuel Moreale:
https://manuelmoreale.com/@/page/zviRQGa2SIBdTzHt

alcinnz, to random
@alcinnz@floss.social avatar

Does One Line Fix Google? - Ernie Smith "Tedium":
https://feed.tedium.co/link/15204/16685584/google-web-search-make-default

alcinnz, to random
@alcinnz@floss.social avatar

How to listen to multiple events in a Web Component with the handleEvent() method - Go Make Things:
https://gomakethings.com/how-to-listen-to-multiple-events-in-a-web-component-with-the-handleevent-method/

alcinnz, to random
@alcinnz@floss.social avatar

The latest Trope Talks video has Red discussing "trickster heroes", & it strikes me that these are quite reliably the heroes to appeal to me!

She gave examples of the TV shows Leverage & Columbo, as well as various gods, Bugs Bunny, Briar Rabbit, & Spiderman.

Off the top of my head I'd add The Doctor, The Red Panda, & Rocky from Lackadaisy.

Any more examples you like?

weirdwriter, to tech

Can we retire the notion of old people fearing technology? Because I just had three cases where five seniors didn't understand why I was excited about tech as they were.

They were excited about the possibilities tech could give the world, even after they are long gone. I explained I was very disillusioned with how the whole tech sector exploits marginalized people and exploits workers. I looked at the recent iPads coming out and said, no thanks because I have what I need. It works, and these new features don't justify the price investment for me. The very five seniors all marked it on their calendars to order the new tech or pre order the new tech.

I explained that what I have works for me so I don't need new tech. I geeked up my tech so that it runs new and gets everybody to think it's new.

Of course, the subject went to AI. Everyone knows I'm against AI on here and online, especially the labor practices and the profit seeking grab... anyway, the seniors were utterly baffled as to why I wouldn't be happy about AI.

These aren't tech illiterate seniors, either. They can tell me the difference between a GB and a TB and one of them knows a little about servers but that's basically it. They can't host their own email server or anything but they know tech.

Even one said, you know what? My grandson is like you. He's younger than you are and he actually doesn't like technology at all!

To prove to them AI had some really big flaws, I loaded up an LLM with a voice input. They could use a Microphone to speak into it.

I told all my friends with non American dialects to speak into the microphone, but don't try to sound American.

That's when, for example, GPT and other LLM's fell short. The others were amazed because they thought, well, AI would at least cover different dialects.

But the AI's understood the dialects I'd say about 40% of the time, but to be fair, I was in a hall with a lot of echos and doors slamming, etc.

There are tech people that salivate over the death of all humans, and how no more computer stuff will be done by humans ever again, but these seniors aren't like that at all.

Still, they were just flabbergasted that because I was a tech guru that I am far, far, far, less excited about tech than they were.

I am glad I did the little voice demonstration though! I tried a number of American dialects. It couldn't even understand a southern accent well, and that's American English! Imagine how awful the others were!

alcinnz,
@alcinnz@floss.social avatar

@JonnyT That describes me!

@weirdwriter

alcinnz, to random
@alcinnz@floss.social avatar

How about a tool where you take some sample input, annotate with an approximation of the desired Abstract Syntax Tree, & it'll generate a parser? By merging rules to match each sample string for each rule?

A postprocessing pass would generalize away from any overfitting, auto-incorporating a Unicode library to steer devs in the right direction. Where that Unicode library would be code-generated indirectly from Unicode's datafiles via this very tool!

2/4?

alcinnz,
@alcinnz@floss.social avatar

Listing the different inputs a parser can parse could be invaluable for debugging! To keep the different "paths" through the graph separate, I reckon the Parsing Unit would need to emulate itself... By parsing all paths from strings 1 byte shorter, & for each looking up the appropriate state(s) whose edges we should interpret to produce more output & the input for the next iteration, with or without avoiding cycles. Until we reach a target state or length.

3/4?

alcinnz,
@alcinnz@floss.social avatar

Alternatively we could use recursion & the datastack until parser-close to perform a depth-first search, I'd probably include that in the firmware to first-pass list the sorted keys inserted into a parser! Values would need to be validated to filter down to the real entries.

The optimization passes could also be repurposed to warn devs about any cluttered code.

And we'd want an alternative view upon the code... Tomorrow!

4/4 Fin for today!

alcinnz, to random
@alcinnz@floss.social avatar

Whilst the Parsing Unit would arguably be the centre of our string-centric processors, the code its designed to run is of the sort I IRL find tedious to write. So, inspired by our optimization techniques, what tools might help make it enjoyable?

Since we have techniques to merge parsing rules & optimize them for (in this case) human legibility, what if the Parsing Unit could directly or indirectly write its own code, based on sample inputs & outputs?

1/4?

alcinnz, to random
@alcinnz@floss.social avatar

When we're loading additional code into Linux, we'll inevitably want to remove it again! So how does Linux's delete_module syscall work?

After checking access control, copying & resolving parameters into kernelspace, logging, grabbing appropriate locks, & validating those parameters delete_module() decrements the module's refcount, calls its exit function, notifies registered callbacks, for each "livepatch" adjusts CPU datastructures whilst calling callbacks, calls debugging hook, ...

1/2?

alcinnz,
@alcinnz@floss.social avatar

... waits for async tasks to finish, copies out names, frees all of the module's memory including its Sysfs files & some CPU-specific data, & awakens paused tasks (rabbithole).

1.2/1.2 Fin for today! Break tomorrow to skim the rest of this code directly related to loadable modules... Then pdfid!

alcinnz, (edited ) to random
@alcinnz@floss.social avatar

New twist on the polls which just ended...

Choose your fighter!

alcinnz, (edited )
@alcinnz@floss.social avatar

Some clear 1st & 2nd place winners from these polls! So lets pair them off!

This poll will give our finalist!

In the tightest of these polls Cecil Palmer (Cecil Bladwin) from Night Vale won with 5 votes of 13. You like your absurdity!

The "timepieces" invented by Dr Sally Grissom (the excellent Kristen DiMercurio) in ars Paradoxica with a whole 7 of 15 votes!

Mari (Motzie Dapul) from Hi Nay won with 7 of 16 votes!

alcinnz, (edited )
@alcinnz@floss.social avatar

And a poll for the runner-up!

Lackadaisy's cats, with the main trio being Rocky Rickaby (Michael Kovach in cartoons), Calvin McMurray (Belsheber Rusape), & Ivy Pepper (Lisa Reimold) got 3 of 13 votes. With a rival gang consisting of Mordecai Heller (SungWon Cho), Serafine Savoy (Benni Latham), & Nicodeme Savoy (Malcolm Ray).

It tied with The Magnus Archives' living fear, can't credit a voice actor.

Caleb Michaels (Briggon Snow) got 4/15 votes.

Magus Elgar (William Violinus) got 6/16 votes.

alcinnz,
@alcinnz@floss.social avatar

P.S. I kind of wonder how the results would've turned out if I listed "psychiatrist for superhumans" instead of "empath". Different character from that show, perhaps the more main character...

alcinnz, to random
@alcinnz@floss.social avatar

I finished reading World Wide Waste by Gerry McGovern. I'd consider it essential reading for anyone working with computers!

https://gerrymcgovern.com/books/world-wide-waste/

It's well cited (though I still need to check those citations) & uses maths effectively to make it's point.

That computers + (surveillance) capitalism is actually worse for the environment than the predigital era. That we can and must move slow and fix things, and fund that vital work directly.

alcinnz,
@alcinnz@floss.social avatar

@brokenix Devs tend to be where I focus on my advocacy, though its been a longstanding to topple the status quo with better software!

I do believe there's overproduction of hardware, but that's driven by poor software. And hardware could make things easier on software, but thats a different issue...

  • All
  • Subscribed
  • Moderated
  • Favorites
  • megavids
  • kavyap
  • thenastyranch
  • mdbf
  • DreamBathrooms
  • InstantRegret
  • magazineikmin
  • Youngstown
  • cisconetworking
  • slotface
  • vwfavf
  • everett
  • Durango
  • rosin
  • tester
  • GTA5RPClips
  • khanakhh
  • osvaldo12
  • ngwrru68w68
  • normalnudes
  • anitta
  • ethstaker
  • cubers
  • modclub
  • tacticalgear
  • provamag3
  • Leos
  • JUstTest
  • All magazines