@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.

stavvers, to random
@stavvers@masto.ai avatar

Heads up to anyone using facebook or insta: you'll receive a notification about your data being used to train AIs. The opt out process is deliberately convoluted and you have to fill out a form to object. This is what I wrote in mine, and the objection was immediately registered as successful, so feel free to copy.

Masto reply bores, this is not a post on which to fart out your opinions about Meta or AI or whatever. So don't. I'm sharing helpful info for people who need it, not for you.

jonny, to random
@jonny@neuromatch.social avatar
jonny,
@jonny@neuromatch.social avatar

i am like "how do i specify that two arrays can be any length, but they have to be the same length" and i guess it turns out that squares are substantially more complex than rectangles.

andrew, to github
@andrew@esq.social avatar

Reduced my thoughts on Copilot+ PC, as announced, to a piece for Forbes.

TLDR: Also we should think about compliance with things like subpoenas and how completely can anything ever be deleted with such a system.

The more I think about it, the less this seems like a well thought-out product for pros. Dreamed up by coders that already have had their life’s work sucked up by GPT through .

@law

https://www.forbes.com/sites/andrewleahey/2024/05/22/copilot-pcs-could-be-a-privacy-nightmare-for-professionals/
https://esq.social/@andrew/112484905475208847

falcon, to random
@falcon@mastodon.falconk.rocks avatar

Capital is dumping its resources into AI because it believes it will advance capital's interests of further accumulation of labour's products. It does not matter in the short term that capital is sorely mistaken. Much like a bad king, capital's misallocation reduces output available to labour too (by preferentially allocating resources to those who participate in the squander). We will suffer this for so long as we permit capital to make macro allocative decisions.

falcon,
@falcon@mastodon.falconk.rocks avatar

Read this as advocacy for taking first-order account of the interests of stakeholders other than investors.

That probably looks like tax revenue funding open source, for example, without it being about defense or some objective beyond just making industry more efficient. Like any other project about maintaining the commons.

This isn't even so radical as expropriation. It's just recognition that the digital age made new types of public infrastructure.

falcon,
@falcon@mastodon.falconk.rocks avatar

And that's the thing. If you end up with such a capitalist who makes wrong projections (technology will totally rise to the occasion and let us remediate the site in short order) and determines that is what we are all going to do, our choices are:

  • Participate in the squander
  • Collectively, by boycott, law, or tax, tell them what they may not do with their property.

For some reason the zeitgeist is convinced that the latter option is basically treason.

GrapheneOS, to random
@GrapheneOS@grapheneos.social avatar

Linux kernel becoming their own CVE Numbering Authority (CNA) is wasting resources they'd have previously put towards higher quantity and quality backporting. We've noticed a drop in both for the stable/longterm branches and particularly Android Generic Kernel Image LTS branches.

GrapheneOS,
@GrapheneOS@grapheneos.social avatar

We're unconvinced that the Linux kernel is headed in the right direction. It's not truly getting more robust or secure. The accelerating complexity and churn is opposed to both, as are the culture and tools. We're hitting more issues including on our workstations and servers.

sprocket, to random
@sprocket@fosstodon.org avatar

What is the use case for instead of or ?

Is it worth using on a daily driver machine (laptop or desktop) or is it mostly for servers?

anirvan, to random
@anirvan@mastodon.social avatar

This is cool: Firefox has started putting rough CO2 estimates inside the profiler

https://www.thegreenwebfoundation.org/news/carbon-emissions-in-browser-devtools-firefox-profiler-and-co2-js/

timnitGebru, to random
@timnitGebru@dair-community.social avatar

1954: “we have machines which, if they were for the first time discovered by animal psychologists, would be said to think in the way animals do.”

1958: machines that “will be able to walk, talk, see, write, reproduce itself & be conscious of its existence.”

2024 👇

AnimatedShortOfTheDay, to usa
@AnimatedShortOfTheDay@socel.net avatar
alcinnz, to random
@alcinnz@floss.social avatar

Yesterday I discussed collaboratively editing text, but there's other things you might want to edit!

Implementation notes: I'd keep the data in RAM in its sorted & compressed form, only decompressing it transiently for processing & modifying. Zipping from columnar format into "edit" rows would be most involved step.

For instance we'd want to edit not only individual files but whole directories of them! And the attributes attached to each of its files!

1/?

alcinnz,
@alcinnz@floss.social avatar

To implement such a "mapping" CRDT we can define an operation which sets the value at a given key to a given value, possibly to a "tombstone" value to indicate deletions. The problem comes when 2 peers attempt to set the same key to different values!

If we track our understanding of the latest edits our peers are aware of (a "lampart timestamp"), storing that in our edits' metadata, we can establish a causal ordering to these edits. When that fails we can compare peer IDs.

2/?

alcinnz,
@alcinnz@floss.social avatar

The catch with building new CRDTs upon these primitives is you need to deal with changes to this "schema", so we'd store any breaking changes in the CRDT. Adding a "Cambrian" wrapper around our AutoMerge implementation which evaluates the appropriate breaking schema changes forwards or backwards. Pretending to the caller like the document's in the version it expects.

Furthermore I'd probably implement a framework for implementing editors (could include the text editor!) upon CRDTs.

4/4.5!

alcinnz,
@alcinnz@floss.social avatar

This causal sort is also vital for ordering text insertions!

Talking about text... Lists would be implemented basically the same way but with greater freedom regarding which data you can store in each node.

We may want to incorporate counters, by summing all the nudges up/down collaborators have made.

And once we have collections we'd want to store numbers, constant strings, booleans, etc in them. Combine these datatypes and we should be able to define most other CRDTs you might want.

3/4!

alcinnz,
@alcinnz@floss.social avatar

This editor framework would use CRDTs to implement features I'd say should be tablestakes like infinite undo, autosave, collaboration, & composing these editors together! Whilst simplifying the data the editor itself needs to output.

I'll hold off on describing an XML CRDT until Ink & Switch has finished writing up what they've just figured out, for me to summarize as part of this hypothetical!

5/5 Fin! Tomorrow: Diffing!

alcinnz, to random
@alcinnz@floss.social avatar

Once again wishing the hypothetical device I've long been describing was real!

An OS & hardware focused specifically on the task of communicating with diverse people! Using existing protocols. Barely any apps!

Just today I introduced an editor framework to it so basically every editor has infinite undo, collaboration, & composability! (I wasn't responding to anything, just how the scheduling worked out...)

This a bit more "from scratch" than I'm capable of though...

Codeberg, to random
@Codeberg@social.anoxinon.de avatar

#Codeberg needs you: Your trust, your donation and your time (you decide how much love you can give, though 💙)

Check out our teams on the Contributing Page: https://codeberg.org/Codeberg/Contributing

alcinnz, to random
@alcinnz@floss.social avatar

Seeing all the encouragement to try "Linux" & the common pushbacks against it...

If you insist your existing apps should run on "Linux"... I'm impressed by how imperfectly well we've achieved this! Its significantly easier said then done.

To me its very much akin to saying "Don't blame people for driving when our infrastructure is built for cars". There too I'd say we shouldn't be driving.

mayank, to CSS
@mayank@front-end.social avatar

now has round() and it's a big deal!

unlike say, Sass math.round(), this is much more powerful because it can round across units, and at runtime.

this is super useful when you have something like a percentage value that normally evaluates to a fractional pixel value.

top: 50%; /* computes to 662.27px */  
top: round(50%, 1px); /* computes to 662px */  

rounding such values will make them fit better in the pixel grid, avoiding potential blurring issues on some (windows) devices

mayank,
@mayank@front-end.social avatar

here's something CSS also has now: rem()

no, it doesn't convert things to the rem unit. it does something completely unrelated. 😐

https://danielcwilson.com/posts/mathematicss-rem-mod/

alcinnz, to random
@alcinnz@floss.social avatar

Continuing my study of ELF Utils' commandline tools...

After initialization both I/O & internationalization as well as parsing commandline flags ar configures LibELF to a specified format version, parses/validates the commandline flags some more ensuring additional args remain, pops the archive name as a commandline arg, & branches over the subcommand specified by those flags.

This may output some help text via LibArgP. Or it may...

1/5? for today

alcinnz,
@alcinnz@floss.social avatar

... elfcmp configures supported ELF version, carefully opens the 2 given ELF files, retrieves their E headers checking equality on it, retrieves S header numbers to compare if they're equal, then P headers, S header index, various properties of all non-empty sections branching upon each's type, & the count of those sections. After which it gather E & P header properties, allocates regions possibly populating/sorting it, iterates over all P headers to compare them, & cleans up.

5/5.5!

alcinnz,
@alcinnz@floss.social avatar

In iterating over sections elfcmp has a bit of logic to avoid being thrown off by relocations. With a fallback branch utilizing hashmaps.

5.1/5.1 Fin for today! Will continue tomorrow!

emily, to random
@emily@sparkly.uni.horse avatar

Confused the fuck out of some consulting company today because they cold-emailed me at work asking if I'd talk to their clients about stuff. They clearly meant one of the other two Emilies at the same company, but I am emily@company.tld and so people email me a lot when they don't feel like looking up the right email address for the Emily in question and just take a wild guess.

So I stubbornly fill out their form to join their Network(tm), then fill out the other form for the specific client they want me to talk to, mostly with "I am not exposed enough to this side of the business to give useful information" pasted into every text box. Then at the end of this form they ask if I want to decline it, so I finally do.

Less than a minute later they called me, wondering why none of what I entered matches my LinkedIn account.

At this point I finally informed them that I don't have a LinkedIn account.

I hoped they learned a valuable lesson today. If not, I would be happy to charge them the $400/hour they offered me to read to them the entirety of Falsehoods Programmers Believe About Names.

silmathoron, to Dragonlance
@silmathoron@floss.social avatar

Anyone knows a music player on Linux than supports the format?
Preferably a @kde styled one but I'll take others.

As far as I can tell, and do not seem to support it (please let me know if that's wrong since I'd rather use one of these two).

I've seen that VLC reads it but I don't find it very satisfying as a music player.

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