This is a Rori from Chapter 10, page 79 of Castoff!
Jan. 6th, 2026 01:00 pm
This is a Rori from Chapter 10, page 79 of Castoff!

This is a Rori from Chapter 10, page 79 of Castoff!
The essence of gold was rare, he conquered with his virtue, offered his gifts and fell behind the sun...I am surmising that "Nadiri" means "Of Nadir". Yaybahar is the instrument, the artist is its inventor:
Dedicated to the soul of my dear friend's father, Nadir Oğuz...
The name yaybahar (pronounced /jajba'har/) has Turkish origin. It is a composite of two words: yay means a "string" or a "coiled string" and bahar means the season "spring." According to Gorkem Sen, the name is derived from the idea of a new life or a new beginning. [1]I assume this is the third one of its kind the artist has made.
I am heading to FOSDEM again at the end of January. I go there every year and I have learned that there is a really sticker-happy audience there. The last few times I have been there, I have given away several thousands of curl stickers.
As I realized I did not actually have a few thousand stickers left, I had to restock. I consider stickers a fun and somewhat easy way to market the curl project. It helps us getting known and seen out there in the world.
The stickers are paid for by curl donations. Thanks to all of you who have donated!
This time I ordered the stickers from stickerapp.se. They have a rather fancy web UI editor and tools to make sure the stickers become exactly the way I want them. I believe the total order price was actually slightly cheaper than the previous provider I used.
I ordered five classic curl sticker designs and I introduced a new one. Here is the full set:

Die cut curl logo 7.5cm x 2.8cm – the classic “small” curl logo sticker. (bottom left in the photo)
Die cut curl logo 10cm x 3.7cm – the slightly larger curl logo sticker. (top row in the photo)
Rounded rectangle 7.5cm x 4.1cm – yes we curl, the curl symbol and my face (mid left in the photo)
Oval 7.5cm x 4cm – with the curl logo (bottom right in the photo)
Round 2.5cm x 2.5 cm – small curl symbol. (in the middle of the photo). My favorite. Perfect for the backside of a phone. Fits perfectly in the logo on the lid of a Frame Work laptop.
Round 4cm x 4cm – curl symbol in a slightly larger round version. The new sticker variant in the set. (on the right side in the middle row in the photo)
The quality and feel of the products are next to identical to previous sticker orders. They look great!
I got 1,000 copies of each variant this time.
The official curl logo, the curl symbol, the colors and everything related is freely available and anyone is welcome to print their own stickers at will: https://curl.se/logo/
I bring curl stickers to all events I go to. Ask me!
There is no way to buy stickers from me or from the curl project. I encourage you to look me up and ask for one or a few. At FOSDEM I try to make sure the wolfSSL stand has plenty to hand out, since it is a fixed geographical point that might be easier to find than me.
Little League coaching, but not modern sports
A writer is someone for whom writing is more difficult than it is for other people.
–Thomas Mann
Cut Off, by Eleanor K. shrift: Hot. Wrong. Really hot and really wrong. So freaking hot and wrong.
Almost two years ago now, in February 2024, a source reached out to me with data on a network of three stalkerware services: SpyX, MSafely and SpyPhone. They had found a publicly accessible reporting tool containing a comprehensive log of all purchases users of the services had made. Having been super busy with various other stories at the time, I put this aside for a few months until I started looking at the MSpy data leak.
Stalkerware operators often sign up to each others' services to scope out their competition or directly copy features, so it wasn't too surprising to find a SpyX email address in the MSpy helpdesk dump. Apparently, someone affiliated with SpyX had signed up to MSpy for two months, demanded a refund shortly after and then tried to charge back for the subscription, alleging credit card fraud. MSpy objected to the dispute and provided their payment processor with a detailed document outlining the SpyX affiliate's behavior. Contained within the document is redacted credit card details, including the name of the cardholder (Xunde Cheng) and their bank (China Construction Bank).
The contact pages listed on websites operated by SpyX include Hong Kong and UK business registrations—Gbyte Technology Co., Limited and UK Gbyte Technology Co., Limited respectively—with the UK registration listing Xunde Cheng as an officer. A Google search for the Chinese company name listed in the Hong Kong registration (樂數科技有限公司) brings up the corporate website of Gbyte, as well as an entry on the BOSS Zhipin (BOSS直聘) hiring platform.
The BOSS listing and the corporate website both feature some photos of the Gbyte office in the Bao'an District of Shenzhen, with the hiring platform even containing a 360° panoramic image of its inside. Both pages also give us additional background on the company's history: It was founded in 2022 with a focus on "mobile forensics" software for an overseas market, and they ambitiously aim for an IPO within 5–10 years. The company also boasts about 50% of their staff being allocated to R&D, which they conduct together with universities.
A few months after first obtaining the bit of Gbyte data, I mentioned it to a person i was working on a tangentially related story with. Within just a few hours, they came back to me having looked into Gbyte themself, and they were able to gain broader access to Gbyte's stalkerware backends. In addition to the preexisting order data, we now also had copies of all user account data and victim metadata, including plaintext passwords for the stalkerware accounts and iCloud/Google credentials for a large number of victims. None of this data was meaningfully protected by any authentication; simply knowing which API endpoints were being called was enough to get the data. Additionally, another bug granted my source full access to the stalkerware's admin dashboard.
It was finally time for my favorite magic trick: You can often find the people who run spyware in their own spyware data. After a bit of combing through what I was given, I found what seemed to be email addresses belonging to Cheng. Up to this point, I wasn't sure whether that moniker was a pseudonym, but by running his emails through an OSINT research tool I was able to build a profile of the Gbyte founder.
Xunde Cheng (程勋德), aka Joen Chen, born February 1988, lives in Shenzhen and has a bachelor's degree in computer science from Beijing Jiaotong University. Before he started Gbyte, he was already an expert in mobile reverse engineering and forensics, having pioneered much of the technology the SpyX family of stalkerware is based on while working as chief security architect at Wondershare, the company behind utility software like Filmora as well as the Spyzie family of stalkerware.

Hovertext:
Clearly the talking snake had a few bites anyway.
Most DORK TOWER strips are now available as signed, high-quality prints, from just $25! CLICK HERE to find out more!
HEY! Want to help keep DORK TOWER going? Then consider joining the DORK TOWER Patreon and ENLIST IN THE ARMY OF DORKNESS TODAY! (We have COOKIES!) (And SWAG!) (And GRATITUDE!)
(This was originally a bonus strip that ran New Year’s Eve for Dork Tower Patreon backers.)
Most DORK TOWER strips are now available as signed, high-quality prints, from just $25! CLICK HERE to find out more!
HEY! Want to help keep DORK TOWER going? Then consider joining the DORK TOWER Patreon and ENLIST IN THE ARMY OF DORKNESS TODAY! (We have COOKIES!) (And SWAG!) (And GRATITUDE!)
Commenter Neil Rashbrook pointed out that my original rotation-based algorithm for swapping two blocks of memory inside a larger block did too much rotating. My solution had three rotations, but Neil was able to get it down to two.
The set-up is that we have a large block of memory, and you want to swap two blocks that reside inside that large block. For concreteness, let’s say that it’s A1, A2, B1, B2, C1, C2, D1, D2, D3, E1, and you want to exchange the B’s with the D’s. Neil pointed out that you can start by rotating the BCD block to move the D’s to the front, producing ADBCE; and then rotate the BC block to move the C’s to the front, producing ADCBE.
| A1 | A2 | B1 | B2 | C1 | C2 | D1 | D2 | D3 | E1 |
| ⤩ | |||||||||
| A1 | A2 | D1 | D2 | D3 | B1 | B2 | C1 | C2 | E1 |
| ⤩ | |||||||||
| A1 | A2 | D1 | D2 | D3 | C1 | C2 | B1 | B2 | E1 |
There is a symmetric version where you start by swapping the B’s to the end. If you choose to swap the larger block into position first, then the number of swaps is 2n − max(|B|,|D|), which is a improvement over my three-rotation version that performed 2n swaps.
(But still not as good as the n swaps that we developed later.)
The post Swapping two blocks of memory that reside inside a larger block, in constant memory, refinement appeared first on The Old New Thing.
I hope everyone had a good holiday break!
I have settled in, mostly, to my new home and in a new state. Least favorite part of being a homeowner by far is when contractors and exterminators, etc., look at me and go “oh, don’t worry, the owner will pay for it!” Yeah, buddy, that’s me.
But I have gotten a rhythm on my own again, and with work. I’m like 70% unpacked. I even got back to working on the book since I finally have peace and the time to do it.
That also means we are back, baby! I will probably cut it down to one prompt a day, and then one day a week being an art response once we get rolling again. I think inevitably it is just a lot less overwhelming to go about it that way, for everyone invovled.
I will also probably make a pinned post about LYKOS at some point because I am excited and the fun part of being an admin is I can sprinkle original works over you guys. Sprinkle sprinkle, have some werewolf book.
Do not forget: This page is run off of user prompt suggestions! And art responses! So if there is something you want to see, or something you come up with then send it in! The suggestions are always open (just try not to send it as an ask, but don’t fret if you do, I can get it corrected).
Now back to our regularly scheduled prompts (starting tomorrow, Sunday).
– Prompt Prophet
It's common to see code in the form of if (false == true). We get a fair bit of it in our inbox, and we generally don't post it often, because, well, it's usually just a sign that someone generated the code. There's a WTF in that, somewhere, but there's not much to say about the code, beyond, "Don't generate code, pass data from backend to frontend instead."
But Nicholas sends us one that shows a little more of interest in it.
if ('N' == 'Y') {
document.getElementById("USERID").disabled=true;
document.getElementById("PASSWORD").disabled=true;
}
Again, this is almost certainly being generated by the backend and sent to the frontend. I mean, it might be someone manually disabling a block of code by writing an if that'll never be true, but probably not in this case.
And what this tells us is that the backend is getting inputs, probaly from some sort of option field, and treating them as booleans. Y and N are clearly meant to be "yes" and "no", aka "true" and "false", but we're taking the stringly typed approach on the backend.
For future developers, I reiterate: send data to the frontend, so your 'if' looks more like: if(backendData.userSelectedOption=="Y"), or at the very least if you're going to evaluate the boolean expression, evaluate it on the backend, so the generated code is just if(false).

Hii, thanks so much :D I'm feeling similar lol. Like on one hand, yay for Frankie screen time!! On the other... I'm scared bro. Either way, I know he'll be happy again one day :3