Sign in

Oom Sveta

@oom.technology
60 followers 119 following 173 posts

❤️‍🔥 Computer standards, word games, Belgium, linguistics, anime, bit twiddling, code golf, Minecraft, food, typography, regex, whisky • i18n expert for some OSS behemoth ꙮ • Retired maintainer of the French BombParty dictionary

PostsRepliesMedia
Reposted by Oom Sveta
Rob Palmer @robpalmer.bsky.social · 16/05/2026
Axel is perhaps the most professional and diligent JS educating author. I remember when it felt like a new JS feature wasn't "done" until he had written the corresponding explainer article. You can thank him by buying his books 📚
29224
Oom Sveta @oom.technology · 01/01/2026
This is certainly a cause for concern
A screen shot of the man pages. It reads: "BUGS: Many people will be unhappy if you use this function."
000
Oom Sveta @oom.technology · 30/12/2025
Just found out about Sleep Sort 💀
JavaScript code showing an array of numbers. Each number is passed to a setTimeout, which console.logs the number once the timer expires.
010
Reposted by Oom Sveta
Supper Mario Broth @mariobrothblog.bsky.social · 06/12/2025
In Diddy Kong Racing DS, the message when connection is lost during Download Play is "LOST ALL CHILDREN". The cartridge is internally called a "parent" and the downloaded instances its "children". While this would make sense to the developers, it has the potential to confuse or scare players.
5048951489
Oom Sveta @oom.technology · 12/11/2025
What's the rationale behind picking 1001 as the status code? I suppose you wanted something outside the usual range so it wouldn't overlap with any other potentially meaningful status code
100
Oom Sveta @oom.technology · 13/10/2025
#TIL aussi ! Une idée d'use case ?
100
Oom Sveta @oom.technology · 22/09/2025
I've often heard that Netscape 3 couldn't handle self-closing tags when the closing slash directly followed the tag name, that's why people started adding a space before the slash (e.g., <br />). But I've never found any official source—documentation or a bug report
000
Oom Sveta @oom.technology · 20/09/2025
Six on Linux*, but should be about the same on other systems
000
Oom Sveta @oom.technology · 20/09/2025
Kind of. In x86-64, the first six arguments to a function call are handled using registers. Any extra arguments are pushed onto the stack, which can lead to a stack overflow if there are too many.
100
Oom Sveta @oom.technology · 06/08/2025
I never paid attention to this before, but now it's going to haunt me for the rest of my life.
010
Reposted by Oom Sveta
Happycrumble ⭐ @rumwik.bsky.social · 08/07/2025
I'm off to a compassionate start! #art #rumthedonkey #comic
Digitally drawn three panel comic depicting Rum the Donkey interpreting the words "console.log" on a website called Javascript 4 Babies.
3038421108
Reposted by Oom Sveta
danii (っ˕ -。)ᶻ 𝗓 𐰁 @danii.fi · 12/07/2025
the javascript Date class is so advanced
814527
Oom Sveta @oom.technology · 14/07/2025
Observed on Firefox, Chrome, and Safari. The consistent behavior makes me think there might be an explanation in the standard, though I couldn't find anything
000
Oom Sveta @oom.technology · 14/07/2025
inb4, yes, this is invalid HTML as you're not supposed to have an end tag for a void element. What has been puzzling me is that the wrong end tag is usually just ignored, except for the <br> element, which ends up repeated
100
Oom Sveta @oom.technology · 14/07/2025
Last week, I was experimenting with void elements, and...what the heck is happening there?
div.innerHTML = "<br></br>";
div.innerHTML; // "<br><br>"

div.innerHTML = "<hr></hr>";
div.innerHTML; // "<hr>"
100
Oom Sveta @oom.technology · 12/07/2025
This is insanity
000
Oom Sveta @oom.technology · 11/07/2025
We had a use case for this at work today. Hardcoding the list of void elements is not ideal since it may change over time. The above is the first solution I came up with. If anyone has a better idea, I'm all ears!
000
Oom Sveta @oom.technology · 11/07/2025
Determining if a given HTML tag is a void element:
function isVoidElement(tag) {
  	return document.createElement(tag).outerHTML.length === tag.length + 2;
}
110
Oom Sveta @oom.technology · 02/07/2025
La table ASCII est une merveille de design que C permet d'exploiter pleinement
// swap case
'A' ^ 0x20; // 'a'

// position in alphabet
'Z' & 0x1F; // 26

// isalpha
(unsigned)((c | 0x20) - 'a') < 26u;
000
Oom Sveta @oom.technology · 29/06/2025
What do you think is better about XPath?
100
Oom Sveta @oom.technology · 14/06/2025
Malheureusement, j'ai testé et elles ne sont clairement pas à la hauteur de leur nom 😞
000
Oom Sveta @oom.technology · 25/05/2025
tweet-qui-a-mal-vieilli% en seulement 3 h, c'est un nouveau record !
000
Oom Sveta @oom.technology · 18/05/2025
Contexte : www.vatican.va/content/leo-...
vatican.va
Au Corps diplomatique accrédité près le Saint-Siège (16 mai 2025) | LÉON XIV
Le Pape Léon XIV reçoit en audience les membres du Corps diplomatique accrédité près le Saint-Siège (Chefs de mission), 16 mai 2025
000
Oom Sveta @oom.technology · 14/05/2025
Even though C23 enforces two's complement, it still leaves the bitwise right shift of a negative number implementation-defined 🤔
000
Oom Sveta @oom.technology · 02/05/2025
HTML imports était dépendant du JavaScript pour injecter le contenu au bon endroit. En fin de compte des APIs comme fetch permettent déjà d'en faire autant. C'est apparemment l'une des raisons pour lesquelles ç'a été abandonné, si on en croit ce billet de Mozilla : hacks.mozilla.org/2015/06/the-...
hacks.mozilla.org
The state of Web Components – Mozilla Hacks - the Web developer blog
Web Components have been on developers' radars for quite some time now. They were first introduced by Alex Russell at Fronteers Conference 2011. The concept shook the community up and ...
000
Oom Sveta @oom.technology · 02/05/2025
Quand j'essaye d'imaginer l'implémentation, je pense que je comprends pourquoi ça n'existe toujours pas. Comment fetcher les includes ? De façon synchrone ? Ça impliquerait de bloquer le parsing. Asynchrone ? Layout shift. C'est probablement plus compliqué qu'il n'y paraît 😕
210
Oom Sveta @oom.technology · 02/05/2025
That would be really neat indeed. I guess one of the hurdles to its implementation might be how you load the included parts. Is it synchronous? Then it'll block the parser until the subpart is fetched. Asynchronous? Then what about layout shift? Odds are it'll also undo some parsing optimizations
010
Oom Sveta @oom.technology · 02/05/2025
Look at these nice ass German suited cards
German suited ace card. It's funny because there is "ASS ❤️" written in the middle of the card
000
Oom Sveta @oom.technology · 01/05/2025
You might find this page interesting 🙂 unicode.org/emoji/charts...
unicode.org
101
Reposted by Oom Sveta
Gordon @gordon.bsky.social · 01/05/2025
DNS started as a text file on Jon’s computer. To register a new domain you would email Jon.
161143257
Oom Sveta @oom.technology · 18/04/2025
@davelab6.bsky.social 👋 since you are listed as a major contributor to the Cantarell font
100
Oom Sveta @oom.technology · 18/04/2025
Funnily enough, on my GNOME Debian, the ㎬ character is rendered as "GPA" (with a capital A), while I'm pretty sure it should be GPa. Could this be a small mistake of the Cantarell font?
100
Reposted by Oom Sveta
Kate @katef.bsky.social · 17/04/2025
every day i join zoom calls and talk about regexes
8572
Oom Sveta @oom.technology · 17/04/2025
Interesting, thanks 😄
010
Oom Sveta @oom.technology · 16/04/2025
Do toLocale{Upper,Lower}Case have advantage besides handling Turkish i?
100
Oom Sveta @oom.technology · 16/04/2025
Lately I've been digging into JS normalization issues, and I was wondering about the options we have to do case folding in JavaScript. For full case folding, it seems like str.toLowerCase().toUpperCase().toLowerCase() does the job? Can it really be that simple?
120
Oom Sveta @oom.technology · 15/04/2025
See HTML Standard, 13.2 Parsing HTML documents. If it's inside a table, the parser expects only a small subset of relevant elements (thead, col, td...). If it encounters anything else, it enables "foster parenting", which causes the element to be inserted after the table
html.spec.whatwg.org
HTML Standard
000
Oom Sveta @oom.technology · 14/04/2025
Interesting, thanks! I'm curious though, why 2.7? Why not 2.5?
210
Oom Sveta @oom.technology · 14/04/2025
Stage 2.7?
100
Reposted by Oom Sveta
Lev Parikian @levparikian.bsky.social · 11/04/2025
We’re rapidly reaching peak birdsong, as breeding season is in full swing and resident birds are being joined by migrants, so maybe now’s a good time to be reminded of the existence of the Swedish word ‘gökotta’ – getting up early to listen to birdsong.
1831957
Oom Sveta @oom.technology · 12/04/2025
I love the vibes of this screen shot!
000
Reposted by Oom Sveta
MDN Web Docs @developer.mozilla.org · 11/04/2025
🔔 New changes in default UA styles for <h1> in <section> <article> <nav> & <aside> • No implicit <h1> styles based on surroundings • A <h1> will always look like a <h1> • Lighthouse will flag missing font-size on <h1> in <section>s, etc Read more 👇 developer.mozilla.org/en-US/blog/...
developer.mozilla.org
Default styles for h1 elements are changing | MDN Blog
Browsers are starting to roll out changes in default UA styles for nested section headings. This post describes the incoming changes, how to identify if it's an issue on your websites, and hints for conformant and better-structured pages.
183
Oom Sveta @oom.technology · 10/04/2025
#TIL that they call Stephaton the guy who gave Jesus a sponge soaked in vinegar at the Crucifixon. And also that the toilet brush of the Romans is called Xylospongium
Screen shot of Wikipedia:

Stephaton, or Steven, is the name given in medieval Christian traditions to the Roman soldier or bystander, unnamed in the Bible, who offered Jesus a sponge soaked in vinegar wine at the Crucifixion. In later depictions of the Crucifixion, Stephaton is frequently portrayed with Longinus, the soldier who pierced Jesus' side with a spear.

It is not to be confused with a Xylospongium, a sponge that is soaked in vinegar attached to a stick the Romans used after defecating.
000
Reposted by Oom Sveta
Wikipédia en français @wikipediafr.bsky.social · 05/04/2025
Le saviez-vous ? En 2003, une particule cosmique a faussé les élections législatives de Schaerbeek 🧐. #LeSaviezVous #DidYouKnow
Capture d'écran de l'article Wikipédia intitulé « Perturbation par une particule isolée ». L'article explique le phénomène de perturbation par une particule isolée (PPI), où une seule particule ionisante impacte un composant microélectronique sensible, entraînant un changement d'état temporaire. Le texte est accompagné de diagrammes et illustrations techniques décrivant les causes et effets de ce phénomène.
1203
Reposted by Oom Sveta
dade @0xda.de · 05/04/2025
If you're interested in progressive enhancement web design at all, you may have encountered situations where you only want to render something when JS is enabled. Maybe a button to control a menu, or a theme switcher icon. Well I wrote about how I solved that problem today. 0xda.de/blog/2025/04...
0xda.de
Hiding elements that require JavaScript without JavaScript
I’ve tried my best to make sure that this site works great (or at least reasonably well) even without JavaScript, but when JavaScript isn’t available, it can be a little clunky to hide things that do ...
011
Oom Sveta @oom.technology · 04/04/2025
What the heck Dutch speakers
Screenshot from Wikipedia. It says:

"Swaffelen (or zwaffelen) means to hit one's partially erect penis—often repeatedly—against an object or another person's body. Swaffelen was named the word of the year in the Netherlands and Belgium in 2008."

The part about it being the word of the year is highlighted
000
Reposted by Oom Sveta
Suave Morbida @maitre-poulard.bsky.social · 01/04/2025
Dans les archives du premier avril, on a un certain Oliver Bickar qui en 1974 qui a mis le feu à des milliers de pneus qu'il amenait depuis 4 ans dans le cratère du mont Edgecumbe en Alaska pour faire croire aux habitants de la ville de Sitka que le volcan etait en éruption
La fausse éruption du mont Edgecumb le premier avril 1974
44915
Oom Sveta @oom.technology · 27/03/2025
Did I adjust my practices to fit this new knowledge? Nah, not a chance. Multiple declarations on a single line are immoral anyway, so let's just pretend they don't exist. Mental model preserved 😌
110
Oom Sveta @oom.technology · 27/03/2025
This part in particular (see image below) made me realize that the "*" is more like a "type modifier" and that it is /per identifier/. From this perspective, it might be more correct to attach the * to the identifier
DECLARING MULTIPLE VARIABLES
You can declare multiple variables in any single declaration, but doing so can get confusing if the variables are pointers or arrays, or the variables are different types. For example, the following declarations are all correct:

char *src, c;
int x, y[5];
int m[12], n[15][3], o[21];

The first line declares two variables, src and c, which have different types. The src variable has a type of char *, and c has a type of char. The second line again declares two variables, x and y, with different types. The variable x has a type int, and y is an array of five elements of type int. The third line declares three arrays-m, n, and o—with different dimensions and numbers of elements.TYPE DEFINITIONS
You use a typedef to declare an alias for an existing type; it never creates a new type. For example, each of the following declarations creates a new type alias:
typedef unsigned int uint_type;
typedef signed char schar_type, *schar_p, (*fp)(void);
On the first line, we declare uint_type as an alias for the type unsigned int. On the second line, we declare schar_type as an alias for signed char, schar_p as an alias for signed char *, and fp as an alias for signed char(*) (void). Identifiers that end in _t in the standard headers are type definitions (aliases for existing types). Generally speaking, you should not follow this convention in your own code because the C Standard reserve identifiers that match the patterns int[0-9a-z_]*_t and uint[0-9a-z_]*_t, and the Portable Operating System Interface (POSIX) reserves all identifiers that end in _t. If you define identifiers that use these names, they may collide with names used by the implementation, which can cause problems that are difficult to debug.
120
Oom Sveta @oom.technology · 27/03/2025
I totally agree. Or at least I used to. Recent facts I came across while re-reading parts of @rcs.bsky.social's "Effective C" - the book that reminds you that the "C" in "C Programming Language" stands for "Cthulhu" - made me revise my mental model a little bit
Front cover of "Effective C", featuring a man in a diving suit reading a book, sitting on the shoulder of a Cthulhu-like creature
120