Searching txt.sour.is

Twts matching #reading
Sort by: Newest, Oldest, Most Relevant

** Snakes snakes snakes, a week note **
I’ve been working on an ill advised project. This project will have to be done in many parts. Part one of many is done, and I’m debating if I should share it, or if I should wait to get the whole thing done. But now, a smash cut…I started this post off as a normal post, but now that it is an RSS sickos only post…

Check this shit out! I recently read about the $1 unistroke recognizer, and predictably, had to try to [implement my … ⌘ Read more

⤋ Read More

Fancy a 15% discount on my #Domestika #Python + #CreativeCoding course?

A_B_A_VILLARES-2026
Valid up to March 13th

https://www.domestika.org/en/courses/4307-designing-with-python-programming-for-a-visual-context/a_b_a_villares

(Beware Domestika also uses dark patterns like a very low priced offering that will trigger a “yearly subscription” after a month if you don’t read the small print and cancel… not nice)

⤋ Read More
In-reply-to » Fuck me dead! I accidentally confused an HTML file for a YAML file and manually opened it in my browser. Unfortunately, I clicked on the OK button of the popped up dialog a bit too fast, it just caught me off guard. It asked which program to open the YAML file in. Of course Firefox thought that it could handle that and suggested itself by default. Conveniently, the "don't prompt me again and always use this selection from now on" checkbox was enabled.

@lyse@lyse.isobeef.org … at least this story was entertaining to read. 😅 If only Firefox’s storage format wasn’t so convoluted, you could have just shut it down and removed all the unwanted tabs. 🫤

⤋ Read More

** Constraint propagation for fun **
I’ve been playing the very good Squeakross this weekend. It is adorable and the aesthetics are absolutely immaculate, but I’ve found the actual picross puzzles to be a point of frustrating friction in the game when compared to the picross-style puzzles in my bicross game.

Picross puzzles, aka nonograms, can relatively easily have ambiguous solutions. Because the hints only tell you how many co … ⌘ Read more

⤋ Read More

** Bicross **
I made a game. I’ve written about it in passing a few times, but here is an honest to goodness intro to it!

Bicross is 3 versions of the same basic game,

  • Bicross, is a zen-mode version of the game.
  • Bicross RPG, is an RPG version of the game where you can earn power ups, and build up hearts and stuff.
  • Bicross Daily, is very similar to the RPG version, but everyone who plays on a given … ⌘ Read more

⤋ Read More
In-reply-to » Fell into a bit of a rabbit hole and learned that it took German law until 2008 to actually allow unisex/gender-neutral first names: https://www.bundesverfassungsgericht.de/entscheidungen/rk20081205_1bvr057607.html 🤦

@movq@www.uninformativ.de I reckon up until then you had to have another first name that clearly differentiated. Didn’t read through the court decision, though.

Interesting, I always thought that Kiran was a male first name. But I only know one person with that name. As last name, though.

Now I’m wondering, was that also the beginning when parents started giving their kids really weird names?

⤋ Read More
In-reply-to » This weekend, I'm building a service that turns PDFs into chaptered, audiobook‑quality narration in minutes—upload, listen in a built‑in player, and download MP3/M4B files with clean metadata.

Has a bit of a long history story behind this, where last year at work we were reading this book called Engineering a Safer World and initially came across a service called Speech Reply that allowed me to upload a PDF copy of the book and start to read it, but unfortunately, the free trial right now before I can finish reading it turns out that Speech Reply service cost a whopping US$30 a month and expected me to pay a full year upfront, which was well over US$300 just for one fucking book! So I sent their sales and support staff a message kindly asking if it were possible to just pay for the audio transcription of just a single book or to change to a monthly subscription fee, to which they refused, so basically in the end I got very angry and told them to go fuck themselves and built my own service. A year later here we are :-)

⤋ Read More

Another project where I’m going to use my terminal widget toolkit is a hex editor. This is still very young, obviously, and there’s a lot of work to do (both in the toolkit and this particular application), but I’m making some progress:

https://movq.de/v/2bae14ed16/vid-1769283187.mp4

Since this program is UTF-8 clean (I hope), you can do things like enter multi-byte UTF-8 sequences or paste them from the system clipboard (another hex editor I just tried failed to do this correctly):

https://movq.de/v/e9241034c1/vid-1769283755.mp4

Under the hood, I’m using mmap() with MAP_PRIVATE, which is really cool: I get the entire file as a byte array, no matter how large it is, no need to actually read it upfront; and MAP_PRIVATE means that I can write to this area however I like without changing the underlying file. The kernel does copy-on-write for me. Only when you hit Save, it will write to the filesystem. And it’s just a couple lines of code. The kernel does all the magic. 🥳

⤋ Read More
In-reply-to » Btw @movq you've inspired me to try and have a good 'ol crack at writing a bootloader, stage1 and customer microkernel (µKernel) that will eventually load up a Mu (µ) program and run it! 🤣 I will teach Mu (µ) to have a ./bin/mu -B -o ... -p muos/amd64 ... target.

I’ve only got a handful of syscalls working right now. Taking inspiration from the calling convention of the Linux kernel and even made the service/interrupt handler int 0x80h 🤣 I’ve only got read, write, alloc and exit working righ tnow 🥲

⤋ Read More
In-reply-to » Here am I looking at the different tcell.Key constants and typing different key combinations in the terminal to see the generated tcell.EventKeys in the debug log. Until I pressed Ctrl+Alt+Backspace… :-D Yep, suddenly there went my X…

@movq@www.uninformativ.de I guess so, yes. I read something about that in some ticket. In v3 the terminfo support was dropped, though. I’m still on v2 at the moment.

⤋ Read More

** being goblin **
In response to my most recent week notes, Adrian shared this lovely quote on goblins with me. It comes from my favorite game designer, Avery Alder,

being goblin is a way of flagging that you want to include people not in spite of their sloppiness and uneven emotional growth, but because of it — because goblins come as they are, and they grow in community with one another. Being goblin means being intergenerational in an un-pr … ⌘ Read more

⤋ Read More

** no beautiful things **
There’s this line in The Hobbit that haunts me. For one thing, it is part of a wider problematic habit running throughout all of Tolkien that, moving in the mythopoetic space, leads to these sweeping statements that define or collapse an entire culture into a single stroke. It seems to me to be like the most damning thing you could say about a culture, though:

Now goblins are cruel, wicked, and bad-hearted. They make no beautiful things, but they make many clever ones.

Emphasis my own, and the quote … ⌘ Read more

⤋ Read More

Hey folks! We have recently had a wonderful new release of #py5, read about the new 3D trimesh integration feature and the matplotlib TextPath integration.
That release was quickly followed by a release to fix some small issues that surfaced this last week. Please check out py5 0.10.9a1 and join us at https://github.com/py5coding/py5generator/discussions to share your experiences!

#CreativeCoding #Processing #Python #genuary (sorry for the hashtag spamming, I couldn’t resist!)

⤋ Read More
In-reply-to » More widget system progress:

And now the event loop is not a simple loop around curses’ getch() anymore but it can wait for events on any file descriptor. Here’s a simple test program that waits for connections on a TCP socket, accepts it, reads a line, sends back a line:

https://movq.de/v/93fa46a030/vid-1767547942.mp4

And the scrollbar indicators are working now.

I’ll probably implement timer callbacks using timerfd (even though that’s Linux-only). 🤔

⤋ Read More

** 2026.01 week notes **
Will I succeed in making week notes a weekly activity this year?

Only time will tell!

…also, I mean…I feel like the answer is already“no” and that is fine, but anyways.

  • I don’t usually take the holidays off from work, it is a nice time to catch up on stuff while still being able to hang out with my family who are all off from school and work.
  • I’ve moved where I work in the house so that it is easier for me to hang out with the dog who’s struggling to go up and down stairs, which is kinda problematic since … ⌘ Read more

⤋ Read More

** December Adventure, 2025 **

At the end of my #DecemberAdventure, I re-learned what I learned last year:

that 20 minutes a day can be surprisingly productive,

that I am happiest in writing code when it’s just for me or for a small group of people I know personally.

I find stats and data tracking antithetical to the experience of feeling joy, so I’ve got no bona fide numbers about this, but this year’s [December Adventure … ⌘ Read more

⤋ Read More

** Year in review, 2025 **
Here, an obligatory end of year wrap up kinda post that, as I started to write in what I assume is the classical platonic form for all blogs wherein I reflect thoughtfully on stuff I read, or games I played, or projects I twiddled at, and what not, I became overwhelmed by the act of creating a kinda cursory and meandering review, because, what, in this run on sentence, do I have to contribute that I really wanna commit to you, dear reader?

Instead, let’s try the following.

Right now, in 2025, I’ve go … ⌘ Read more

⤋ Read More
In-reply-to » I'm contemplating the idea of switching my activity pub instance from Gootosocial to a Pleroma one. While GTS is kinda cute (lightweight and easy to manage) of a software, the inability to fetch/scroll through people's past toots when visiting a profile or having access to a federated timeline and a proper search functionality ...etc felt like handicap for the past N months.

@bender@twtxt.net yeah, I’ve been reading through the documentation last night and it felt overwhelming for a minute… +1 point goes to GTS’s docs. but hey, I’ll be taking the easy route: podman-compose up -d they provide both a container image and an example compose file in a separate git repo but I’m wondering why that is not mentioned anywhere in the docs, (unless it is and I haven’t seen it yet)

⤋ Read More
In-reply-to » Tired to re-enable the Ege route to git.mills.io today (after finishing work) and this is what I found 🤯 Tehse asshole/cunts are still at it !!! 🤬 -- So let's instead see if this works:

@prologic@twtxt.net I remember reading a blog-post where someone has been throwing redirects to some +100GB files (usually used for speed testing purposes) at a swarm of bots that has been abusing his server in order to criple them, but I can’t find it anymore. I’m pretty sure I’ve had it bookmarked somewhere.

⤋ Read More

** Sticker party, November **
Some random thoughts including how the band Imagine Dragons is kinda like Metal for kids; distributing apps, even without involving Apple at all, is deeply annoying on macOS; Pokemon ZA is fun, but I think that I’m a turn-based girlie at heart; my partner has been playing a lot of Tears of the Kingdom lately, it has been a lot of fun for me to watch, and hair-pullingly frustrating for our nearly 10 year old who has strong opinions about the correct order of operations in that game; I wrote, but am cu … ⌘ Read more

⤋ Read More

All my newly added test cases failed, that movq thankfully provided in https://git.mills.io/yarnsocial/twtxt.dev/pulls/28#issuecomment-20801 for the draft of the twt hash v2 extension. The first error was easy to see in the diff. The hashes were way too long. You’ve already guessed it, I had cut the hash from the twelfth character towards the end instead of taking the first twelve characters: hash[12:] instead of hash[:12].

After fixing this rookie mistake, the tests still all failed. Hmmm. Did I still cut the wrong twelve characters? :-? I even checked the Go reference implementation in the document itself. But it read basically the same as mine. Strange, what the heck is going on here?

Turns out that my vim replacements to transform the Python code into Go code butchered all the URLs. ;-) The order of operations matters. I first replaced the equals with colons for the subtest struct fields and then wanted to transform the RFC 3339 timestamp strings to time.Date(…) calls. So, I replaced the colons in the time with commas and spaces. Hence, my URLs then also all read https, //example.com/twtxt.txt.

But that was it. All test green. \o/

⤋ Read More