@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

I'm a huge fan of RSS/Atom webfeeds! Both as a publisher and as a reader/listener they free me from worrying about schedules, or missing anything the authors I enjoy have published!

They can also (depending on the site) aid me in catching up with a blog's backlog, & are terribly trivial to create!

Much better than the constant & distracting "push notifications" that are the dominant experience today! I set my reading schedule!

alcinnz,
@alcinnz@floss.social avatar

You know, I reckon it might help reverse Firefox's declining marketshare at very little effort for Mozilla to implement a feedreader into Firefox, & run an advertising blitz advocating how much calmer this "new" way of reading the web is!

They'd get some eyerolls, & some may find it suspicious how broadly supported it'd be out of the gate...

But since they're rightly concerned about their declining marketshare, this'd be a cheap & hugely beneficial thing to try!

alcinnz, to random
@alcinnz@floss.social avatar

The trick to designing a good browser (any) UI: Ask why we need the features offered by existing apps! Once you know that need you can explore alternatives! Or make informed decisions about what to leave out.

In the case of browsers all the auxiliary features boil down to one thing: Finding webpages to read!

alcinnz, to random
@alcinnz@floss.social avatar

So much of modern programming involves hooking pieces together, & converting their datatypes to make them fit (which, for example, is what I'm doing as I attempt to create working FontConfig language bindings).

This seems very automate-able to me! Maybe if we made a trivial language with an IDE, we can invent a lightweight heuristic?

Ofcourse there's a different solution which is hyped now...

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

Reminder for anyone building a search engine or other repository: There's a lot of misguided thinking in the space!

You can't be non-political, there's no such thing! Which search results are highlighted is a political choice, one way or the other!

You will need to at least curate out the texts attempting to manipulate your search results! You can & should take technical measures against this, but you can't rely on them!

alcinnz, to random
@alcinnz@floss.social avatar

While I don't doubt that app analytics can (and should!) be done in a privacy-preserving way, I am quite cynical about the value it brings.

Whether done intentionally or not your design promotes the use of certain features over others, and as such you are not a neutral observer! Nor does it tell you how much value people get out of each time they use a given features!

Sure you can account for this, but I don't get the impression the few open source projects using analytics do.

alcinnz, to random
@alcinnz@floss.social avatar

Regardless of how it works on any computer it is generally better for performance to run fewer instructions. Because it's safe to say each instruction will take some amount of time to execute.

We primarily concern ourselves with how this performance scales with the amount of data.

There's several common strategies for designing "algorithms" to process data. Modelling how to store data ("datastructures") meanwhile is mostly rote, but occasionally requires (reusable) clever designs.

1/3?

alcinnz,
@alcinnz@floss.social avatar

An example I like of the insight which may be required in datamodelling:

Traditionally we store location info as latitude & longitude coordinates representing infinitesimally small points, then we list points surrounding areas. Requiring relatively complex algorithms to compute how these areas relate.

Besides: I have several anecdotes about how misleading this representation is, to the point it has prompted disbelief.

Discrete Global Grid Systemsare a better model which excites me!

2/4?

alcinnz, to random
@alcinnz@floss.social avatar

Periodic reminder: If you oppose DRM, the way to show it is to popularize media published without it! I've gotten quite into audioshows like Wolf359, Magus Elgar, The Red Panda Adventures, & The Magnus Archives! And so much more!

Also there's webcomics like Pepper&Carrot or Lackadaisy. Or shorts like Blender's!

Enjoying "popculture" legitimately is miscounted by politicians (& e.g. W3C) as support for DRM, whilst "piracy" is miscounted as justification.

alcinnz, to random
@alcinnz@floss.social avatar

A potential extension to the web I might implement: Parametric SVG!

Where SVG (or other XML-based markup?) could contain math formulas based on input from a webform! Maybe dragging certain elements could supply additional input! So you can embed interactive visualizations inside your articles, I have enjoyed those...

This should be easy enough for me to implement & integrate, as long as I put that form in a popover or the like!

Thoughts?

alcinnz, to random
@alcinnz@floss.social avatar

Thought exercise: What's the ideal auditory text editing experience?

That is: If all your device has is a speaker, microphone, & maybe a joystick what might the most convenient means of editing existing text be? Can you design something better than re-speaking it?

If you're not concerned about compatibility with existing software?

If I like your proposal enough, I might give you a shout-out in my upcoming metathread! Alongside @scottjenson for touchscreens.

alcinnz, to random
@alcinnz@floss.social avatar

Let’s make the indie web easier - Giles T: https://gilest.org/indie-easy.html

Seconded by Kev Quirk: https://kevquirk.com/lets-make-the-indieweb-easier

My dream: Steer my browser-engine dev towards a WYSIWYG editor!

alcinnz, to random
@alcinnz@floss.social avatar

Block list vs black list in my books - Michael Lucas: https://mwl.io/archives/23411

alcinnz, to random
@alcinnz@floss.social avatar

In a desktop browser I'd want to include a CSS WYSIWYG not just to edit your own stylesheets, but also your view of others'! Advanced accessibility features! Barely needs to integrate into the browser itself...

This would primarily consist of a sidebar menu organizing form controls representing every CSS property. Anyone keen to mockup that menu?

As for CSS selectors, I'm ending up relying on interactivity to make them approachable!

1/2!

alcinnz, to random
@alcinnz@floss.social avatar

Having just offered some family tech support: Can we devs please ensure our sites work before making them flashy?

Not the first time a JS-reliant site failed on a family member leaving me with little I could do to help...

alcinnz, to random
@alcinnz@floss.social avatar

Having boosted something yesterday I somewhat regret now...

While I certainly get the impression that Mozilla could be better managed, given the status quo I doubt anyone could manage them well.

Browsers as we conceptualize them today are expensive, yet no one will pay for them. Reform is badly needed, but Mozilla can't & shouldn't deliver that!

Reading the reporting I don't see any threat to Firefox stopping. Just Mozilla's acknowledging its not profitable & must be subsidized.

alcinnz, to random
@alcinnz@floss.social avatar

A guide to understanding what makes a typeface accessible - Gareth Ford Williams @ The Readability Group:
https://scribe.rip/the-readability-group/a-guide-to-understanding-what-makes-a-typeface-accessible-and-how-to-make-informed-decisions-9e5c0b9040a0 (Medium via Scribe)

alcinnz, to random
@alcinnz@floss.social avatar

Whenever you click controls in a UI typically changes the display, thus invalidating any event-dispatch-tables like the one our hypothetical hardware-browser would render to handle links. This is fine where you rarely click links, & when you do the display drastically changes. But it gets to be quite a bit of overhead when you're constantly interacting with the UI!

So for a UI toolkit on our device I'd hand these events off to the Layout Coprocessor for it to handle event dispatch!

1/4?

alcinnz, to random
@alcinnz@floss.social avatar

Have any Haskellers used inline-c? Any tips?

https://hackage.haskell.org/package/inline-c

I'm thinking of rewriting some (FontConfig) language bindings in it. That's not a fun ABI to code directly against?

alcinnz, to random
@alcinnz@floss.social avatar

Happy New Year! I hope 2024 brings more independant browser-engines, including my own Haphaestus!

That should be a perfectly reasonable goal...

alcinnz, to random
@alcinnz@floss.social avatar

While I'd like JavaScript to disappear from the document web (maybe WebASM splits off the app web? Whilst Trojan Horse'ing platforms SDL back to the spotlight?), I do not deny that JS has provided some nice enhancements to the document-web!

I'm not asking anyone to stop using JS, I am asking you to stop relying on it! And I'm keen to explore how to achieve in a more declarative way some of the niceties which are currently provided by JS!

W3C seems to be moving in that direction now too!

alcinnz, to random
@alcinnz@floss.social avatar

Having discussed how to decode FLAC files, today I'll explore how to encode them! Using the reference implementation! This is more involved, there's decisions for the computer to make... Thus require a lot more properties in the "encoder" class... And more hardware-acceleration...

The entrypoints are the FLAC__stream_encoder_process[_interleaved] method, wrapping a verification-ringbuffer, copying data into buffers, & for each "block" of a configurable size...

1/?

alcinnz, to random
@alcinnz@floss.social avatar

The Vorbis codecs include not only a decoder & encoder but also a parser & tagger, akin to the options for FLAC. And there's additional support routines for building the GStreamer types.

3.1/3.1 Fin for today! Tomorrow: LibFLAC, followed by other reference implementations of these audio formats!

P.S. Ooo baby, I found the code for the "shagadellic" videofilter I mentioned the other day! Groovy! There's a lot of these plugins!

alcinnz, to random
@alcinnz@floss.social avatar

Protip: Its becoming increasingly common for reference documentation to link to the (often hyper-linked) source code. Use this feature!

Many (but not all) of the libraries you're probably using are easier to study on a function-by-function basis then a project-by-project basis. Even if I am doing the latter!

alcinnz, to random
@alcinnz@floss.social avatar

To separate specified adjacent elements, CSS allows you to add borders. These are rendered as trapezoids (alter x/width every scanline of the sprite every scanline) between the computed "border" & "padding" boxes. Filled with a specified border-*-color, possibly (rarely in practice) masked or brightness-tweaked by a trivial formula chosen by border-*-style.

Image borders are something different (akin to clipped backgrounds) drawn in the same spot.

Outlines are basically a 2nd border.

1/5?

alcinnz,
@alcinnz@floss.social avatar

Rounded boxes add a Pythagorean-distance calculation for the Compositor to clip & tweak the border.

What other CSS properties impact rendering?

opacity tweaks the alpha channel of after compositing together the descentdent elements (doing it before can lead to visual glitches, especially regarding cursive fonts), but we can avoid a need for prerendering if the Control Unit can group sprites!

overflow: clip tweaks descendent bboxes & filters them, should be trivial if not for...

2/4

alcinnz, to random
@alcinnz@floss.social avatar

Stop Using (only) GitHub Releases - Hugo Tunius: https://hugotunius.se/2024/01/20/stop-using-github-releases.html

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