Kai Jellinghaus's Avatar

Kai Jellinghaus

@kaij.party.bsky.social

Software Engineer from Germany. Love for the obscure. Performance & Platforms specialist. WASM & @ziglang fan. AS215820

103 Followers  |  227 Following  |  66 Posts  |  Joined: 25.08.2023  |  1.7457

Latest posts by kaij.party on Bluesky

One killer feature for me is comptime. There's just not really any other language where these things are possible.

Also, actually I disliked how Odin handled allocator/context. It's more pragmatic, sure, but just seeing "this function takes no allocator, therefore it doesn't allocate" is so nice.

15.03.2025 09:03 โ€” ๐Ÿ‘ 0    ๐Ÿ” 0    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0

SSE has an associated data format: developer.mozilla.org/en-US/docs/W...

Not strictly necessary, but it is what makes the E in SSE. Without that it's really just Server Streaming. Which is fine, just not really that technology.

16.12.2024 18:06 โ€” ๐Ÿ‘ 6    ๐Ÿ” 0    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0

Gemini / OpenAPI have live APIs for immediate user interaction/audio.
SSE can be very fast, but what the LLM web pages usually do isn't real SSE, it's just very slowly streaming the text. Only a technical difference but yeah.

16.12.2024 17:59 โ€” ๐Ÿ‘ 1    ๐Ÿ” 0    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0

I mean that's only kind of sse, just a very slowly streamed document imo.
All the live APIs are WebSockets

16.12.2024 17:10 โ€” ๐Ÿ‘ 1    ๐Ÿ” 0    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0

Depending on what you're doing, Servo might reasonably build for Android 4.1, but it's not a complete browser.

16.12.2024 15:47 โ€” ๐Ÿ‘ 1    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0

As much as I have privacy and security questions about androids device discovery thing, it is one clean UX...
You turn on your device, and your phone just... Shows it? One-click setup and one-click play are just so nice

16.12.2024 15:46 โ€” ๐Ÿ‘ 1    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0

Yeah, issue is most server implementations are bad, it is horrible or not functional over HTTP 1.1, and in general isn't the cool thing, which matters a lot for web - the cool thing is optimized, and other features get left in the dust, of with little effort put into making them work well.

16.12.2024 15:43 โ€” ๐Ÿ‘ 3    ๐Ÿ” 0    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0
Preview
Buttondownโ€™s Alternatives Pageโ€Šโ€”โ€ŠSympolymathesy, by Chris Krycho A software product that is not indulging in winner-take-all, try-to-own-the-world machinations? Is thisโ€ฆ possible?

I wrote about @buttondown.comโ€™s alternatives page: v5.chriskrycho.com/notes/butto...

[automated post: I remain away for Advent ๐Ÿ•ฏ๏ธ โ€“ see you in Christmastide]

15.12.2024 01:18 โ€” ๐Ÿ‘ 5    ๐Ÿ” 1    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 1

I'm a big fan of yyyy.mm.dd but I think then versioning API separately becomes important.
I'm also not against just doing build numbers, and it's just build #628 - depends on if the date has any meaningful value.

15.12.2024 04:31 โ€” ๐Ÿ‘ 2    ๐Ÿ” 0    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0

Tried out Gwen QwQ via Kagi assistant, and it's pretty impressive! Both gives better answers, but also has some explorative thoughts.

15.12.2024 04:20 โ€” ๐Ÿ‘ 0    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0
Post image

No, see image
Interesting to see that it seems to look pretty different on lots of devices?

10.12.2024 15:26 โ€” ๐Ÿ‘ 0    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0

Web Applets are pretty similar to something I've been building. I'm considering moving some stuff over.
I use IPFS/IPLD under the hood, which has some unique benefits. What I'm doing is more of a notes/personal data. Adding something like Web Applets on top seems cool.

09.12.2024 21:09 โ€” ๐Ÿ‘ 1    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0

Yeah, that's totally right. I don't see CRDTs as something an app developer should directly deal with, it's a component in a larger framework that enables the app developer to build things.
A weird comparison, but like URL parsing. A web dev doesn't have to understand how it works, just use it.

08.12.2024 23:29 โ€” ๐Ÿ‘ 0    ๐Ÿ” 0    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0

I'd strongly disagree.
You still have to implement replication, just don't deal with merges. But a stream of operation / states still has to be replicated.
Additionally CRDTs are commonly defined with a separate query layer that exposes the outside data structure.

08.12.2024 23:12 โ€” ๐Ÿ‘ 0    ๐Ÿ” 0    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0

Ah, didn't find that! Thanks, that does explain it I think.
I'm thinking this means that they get visibility into the entire TLD? Or just their specific government sites?

08.12.2024 22:37 โ€” ๐Ÿ‘ 0    ๐Ÿ” 0    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0

I think it's about the walled garden - having metal allows them to pull something like the ARM processors. Having their own Graphics API exclusively gets rid of any ugly competitors that wouldn't go along with it, and no alternative implementations either.

08.12.2024 21:26 โ€” ๐Ÿ‘ 0    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0
Run cd cm-lang-rockstar
npm error code E404
npm error 404 Not Found - GET https://registry.npmjs.org/@codemirror%2flanguage - Not found
npm error 404
npm error 404  '@codemirror/language@^6.10.2' is not in this registry.
npm error 404
npm error 404 Note that you can also install from a
npm error 404 tarball, folder, http url, or git url.
npm error A complete log of this run can be found in: /home/runner/.npm/_logs/2024-12-08T18_46_17_472Z-debug-0.log

Run cd cm-lang-rockstar npm error code E404 npm error 404 Not Found - GET https://registry.npmjs.org/@codemirror%2flanguage - Not found npm error 404 npm error 404 '@codemirror/language@^6.10.2' is not in this registry. npm error 404 npm error 404 Note that you can also install from a npm error 404 tarball, folder, http url, or git url. npm error A complete log of this run can be found in: /home/runner/.npm/_logs/2024-12-08T18_46_17_472Z-debug-0.log

I upgrade an entire project from .NET 8 to .NET 9, it just works. No hassle. Just... done.

I try to run a nodeJS build that worked YESTERDAY, with no changes, and it fails because the nodeJS ecosystem is about as stable as a tectonically active goth on rollerskates after a litre of supermarket gin.

08.12.2024 18:53 โ€” ๐Ÿ‘ 138    ๐Ÿ” 26    ๐Ÿ’ฌ 9    ๐Ÿ“Œ 3

Replication of mutable state is the single most complicated thing to get right in distributed systems.
All sorts of distributed systems in datacenters, and lots benefit from CRDTs.
Really, a lot of existing tech is extremely similar to CRDTs, just not labeled as such.

08.12.2024 19:23 โ€” ๐Ÿ‘ 3    ๐Ÿ” 0    ๐Ÿ’ฌ 2    ๐Ÿ“Œ 0

To be fair, I did watch my dad play it growing up and spent countless hours working my way up to beating him. There's a small amount of nostalgia :D

Still, it's probably the best RTS. Ofc theres AoE etc, but that's a slightly different style of RTS. I never got into those.

08.12.2024 12:38 โ€” ๐Ÿ‘ 0    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0

Just randomly thought of Supreme Commander: Forged Alliance. Still one of the, if not THE best RTS. Fight me.
There's still a decently active community making balancing patches and such. Even upgraded the network stack.

If anyone wants to play @ me. I'm not that good but man it is fun.

08.12.2024 12:37 โ€” ๐Ÿ‘ 0    ๐Ÿ” 0    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0

Has there ever been a 3D & somewhat realistic adaptation of solarpunk? I love the concept but have mostly seen cute drawn things (not that I don't adore those)

08.12.2024 12:27 โ€” ๐Ÿ‘ 2    ๐Ÿ” 0    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0

Ignoring the Dubai bit - Welcoming the Armenian Government to Have I been Pwned? What does that mean? Is it about introducing what it is? Is there some kind of government level integration (planned?)

08.12.2024 12:24 โ€” ๐Ÿ‘ 0    ๐Ÿ” 0    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0

Is it just me or are the other points below also fucking insane?
If I save up to buy new shit, buy it on the credit card and pay it off the next month, that is still considered untrustworthy?

Classic case of "what they doin' over there?"

08.12.2024 12:04 โ€” ๐Ÿ‘ 1    ๐Ÿ” 0    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0

Still surprised git doesn't have something for this built-in, like git-bisect.
Repeatedly going back and forth doing the same changes is so time consuming on large repos

07.12.2024 20:16 โ€” ๐Ÿ‘ 0    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0

Pretty reasonable tbh, I just hope they stick with the open platform concept and don't enforce things at a technical level.
Ie the badge just implemented as a labeler that people are subscribed to by default.

07.12.2024 13:57 โ€” ๐Ÿ‘ 2    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0

Actually kind of interesting.
When I read the title I first thought of checklists, where the universal would actually kind of be pressing the select all button twice?
But double Ctrl+A would be bad. Hotkeys are made to be spammed.

I guess escape is pretty universal?
Point stands though. Interesting

06.12.2024 20:13 โ€” ๐Ÿ‘ 4    ๐Ÿ” 0    ๐Ÿ’ฌ 2    ๐Ÿ“Œ 0

Also, before I forget, this pretty much gives you all benefits CRDTs have "for free".
Ie after initial input distribution you can have partioned / offline workers, and they can keep going.
This has some tradeoffs between potentially doing to much work, or getting stuck easily (for scatter-gather).

06.12.2024 20:10 โ€” ๐Ÿ‘ 0    ๐Ÿ” 0    ๐Ÿ’ฌ 0    ๐Ÿ“Œ 0

This yields pretty nice results, and even enables things previously impossible. Ie one map result producing an item, and another excluding it again.
Of course transmission overhead is a question.
While not always optimal a remarkable number of problems can be solved easily & in hugely parallel.

06.12.2024 20:08 โ€” ๐Ÿ‘ 0    ๐Ÿ” 0    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0

Update on this (as the legend himself @xmal.bsky.social has reposted it)
Have what's essentially map, and use the outputs to drive a CRDT (depending on needs, ie. G-Set, 2P-Set) and produce the next set of items.
Notably ordering is irrelevant, as sorting is trivial and can be done inline.

06.12.2024 20:07 โ€” ๐Ÿ‘ 0    ๐Ÿ” 0    ๐Ÿ’ฌ 1    ๐Ÿ“Œ 0
Preview
Understanding the Odin Programming Language Learn the Odin Programming Language and demystify low-level programming

My digital book "Understanding the Odin Programming Language" is OUT NOW! โœจ

If you want to learn Odin and demystify low-level programming, then this book is for you!

Read more or buy at: odinbook.com

06.12.2024 09:38 โ€” ๐Ÿ‘ 98    ๐Ÿ” 28    ๐Ÿ’ฌ 8    ๐Ÿ“Œ 7

@kaij.party is following 20 prominent accounts