zamfofex’s thoughts

Earlier today, I was imagining Ryoubi tying and gagging me then insulting me! Ryouna was tagging along, but she seemed just aroused as always.

(read story) / (close)

Ryoubi’s insults

After blindfolding you, gagging you and tying your hands together behind your back as well as your knees and ankles, you could only hear Ryoubi’s commanding voice.

“Ryouna, turn on the lights now.” And Ryouna was happy to oblige. Not that you could see the light turning on with your blindfold, but you heard the switch at least.

“Okay, let’s see what we have here…” Ryoubi said as she looked to you. “Heh, what a loser. You know this is pathetic right? To fantasise about us.”

“I love when people fantasise about me!” Ryouna interrupted. “It always makes me feel so excited!”

“We’re not real.” Ryoubi continued “You’re so worthless you can’t even find a real partner, huh?” Your face started to redden a bit.

“No‐one loves you, you know that, right? I mean, of course you do, why else would you be reading this?”

Ryouna interrupted again. “I love you! I love how you think about me when you’re not feeling good. I love the things you make me go through!”

“Ugh, this is so stupid, you’re such a moron. No‐one will ever love you.” Ryoubi was assertive.

“Are you enjoying this? Being told how pathetic you are? That’s why no‐one will ever love you. You’re such a loser.”

“There is nothing wrong with fantasising about us.” Ryouna assured you. “You like it, right? It makes you feel good! That’s all that matters.”

Ryoubi continued “You’re worthless, no‐one cares about you, and all you can do to cope is to fantasise about us. Go die or something. Stop being such a disgrace.”

programming is art!

(read more) / (close)

programming is art

A lot of people seem to have this impression that programming is this utilitarian and calculistic endeavor, but that is not the whole truth!

Let’s take a look at st. It’s a simple terminal emulator made by suckless. It might seem utilitarian, but if you look more carefully, you’ll see that the reality is different. It’s not particularly special, it doesn’t really stand out, it doesn’t have many features, some might even call it half‐baked.

But let’s try to look into why it was made. From the suckless website, in my own words, st was made out of a disdain for complexity in how software is oftentimes made. It was created, alongside most suckless programs, to show that simple software can also be effective and allow people to be productive. It was created to show that someone doesn’t need hundreds of features to get something that works well.

It really isn’t a utilitarian goal at all! They didn’t create st because they were in need of a terminal emulator, many existed before it. They didn’t create it because they needed a specific feature from a terminal emulator, as st has fewer features than most others. They created it because they believe it is better. They believe software is too complex, and they want to change that.

That is not a utilitarian goal, it is a principle. st was created to allow for them to express their beliefs, their feelings of dissatisfaction with the status quo. st is art. Or maybe, if you aren’t as willing to claim that so strongly, you should at least accept it is a form of expressing their beliefs.

Of course, I bring up st and suckless, and maybe you ultimately disagree with them (which is fine), but that is not only true of that specific case. If you look at the GNU Hurd, for example, people work on it out of passion. They feel convicted about it, maybe because they believe it can be useful, but maybe because they believe it deserves it for some other reason.

There are other factors, of course, but if you look at free software, oftentimes the ones that are driven by conviction are the ones that tend to last longer and be more successful. Not “successful” in that they are the most popular, but that they are able to achieve their goals and strive, even if within a niche. The ones that are created not because the authors need something, but because they believe in something. Those are the ones that end up being cared for the most by their authors and community, and worked on for longer.

st, GNU, Serenity OS, Lichess, Neocities, etc. The list goes on, of course! (Feel free to mentally insert your favorite project here.)

Software isn’t always created as a means to an end, it is created out of passion. It is created because people want to change the world. Software is art.

Vore is the most underrated fetish, and I kinda hate that. It is really nice and deserves more care!

I feel like the free software principles defended by GNU are very important, but they don’t always know how to word them well.

(read more) / (close)

Why is it Important to Defend Free Software?

I understand the position of GNU regarding free software, and I agree with it, but I think it’s not quite worded in a way that’s compelling or easily understandable. You’ll find GNU articles that talk about “ethics” and “justice” without explaining tersely how they are meant to be associated with free software, nor about how proprietary software disrespects it.

The way I’d word it is that the only reasons someone has to make their software proprietary (rather than free) are inherently selfish. People make their programs proprietary because they want to benefit themselves in some way. Depending on how popular the software is, this can often come at the cost of its users. Because benefitting the users is not the goal (but rather one of the means), when it doesn’t benefit the authors of the program (which is the goal), the users are disrespected and detrimented as deemed necessary.

With free software, there is a lot of emphasis put on creating things for the benefit of the community. In fact, that is effectively the point of the entire philosophy! When people defend free software, they are defending the creation of software for the benefit of its community of users.

When people create software (or any kind of work, really), they should have in mind the benefit of others first, and their own benefit second. The goal should be to create something people can use and benefit from. Things such as earning money and becoming popular, while important, should be seen as a consequence of creating things that people find valuable and useful.

This is important because using the trust of your users as a means to benefit yourself is inherently malicious. And authors of proprietary software will very often do things that go against the benefit of users for their own sake. This is not only speculation, it’s easily observable in various popular proprietary programs.

The reason “open source” doesn’t solve any of this is because it doesn’t address that issue in any way. Like “free software”, it also talks about making the source code publicly available, but the reason it provides for it is that it is beneficial to yourself. So it’s not about making the programs for the benefit of others, it’s about making their source available publicly for your own benefit.

The problem with proprietary software is not only that it’s made at the detriment of users, but most importantly what causes that detriment. Which is the malicious mentality of using people (and their trust) for your own benefit. “Open source” doesn’t address that, and in fact accepts and endorses it. Instead of condemning that kind of mentality, it frames “making the source code publicly available” as another way to benefit yourself.

This is bad, because as soon as it making the source code available publicly stops being beneficial, people will go out of their way to harm users and prevent them from doing anything about it (by making the software proprietary). And even if that doesn’t happen, people might still be led to detriment the users in some other way if it is beneficial for them.

Conclusion: Free software is important because it fights against the malicious mentality of using the trust of others for your own benefit. “Open source” doesn’t, and instead promotes making your source code available publicly for your own benefit too, which is still malicious.

Today, I decided to start writing a story about a world where unlawful scientific experiments allow for cat girls to be genetically created for the profit of corporations.

(read story) / (close)

Genetically Failed Cat Girl Experiments

As the field of biotechnology quickly advanced with new discoveries in the last few decades, the thought of genetically enhancing the human body started to feel increasingly less like a mere fantasy. This was illegal, of course, but to some corporations, this was nothing more than meaningless formality, and law enforcement was loose. People had always talked about how they want to have a pet cat girl, but until the last century, it had always been regarded as just a joke. As people realised the potential for profit from the idea, they begun to set up heartless experiments to create something marketable.

Cheap scientists were hired to perform experiment after experiment, most of them ended up as failures with something uncanny or otherwise barely alive. As the various experiments continued to progress over the months, eventually they started to see more marketable results. The objective was to create beings that could be had as pets, but for certain batches, they were too humanely aware.

These intelligent creations were initially locked together into a room next to the laboratory, they could not escape to tell others about their experience. Test 108 was one of the first five experiments to be locked on this small room, but as more and more such failures were concocted, they were also sent to that same room. They befriended each other, but most of them were too fragile and ended up dying after only a few weeks or at most a few months. 108 was the only one that managed to live long enough to see dozens of her friends pass away.


Sometimes, experiments would be sent to the room that would be able to have a more longstanding life like 108, but she was by far the oldest one there. Among them, she was specially fond of Test 108-81-1 and Test 108-70.

Despite her grim experiences, due to how she was created, 108 was naturally cheerful and lighthearted. She knew the fate of most of her roommates, so she tried her best to make sure they could enjoy their time as much as possible. Most of them were not as positive, but some of them would play along with her, which is something she always appreciated. 108-81-1 and 108-70 would tag along and help her cheer their ephemeral friends too, which is why she bonded with them the most.

Just a few months after the arrival of 108-81-1 and 108-70, the leaders of the corporation behind their creation decided it was dangerous to keep those experiments alive, in case they managed to find a way to escape and tell other people about what was happening within their facilities. Overhearing their decision, the experiments quickly begun feeling uneasy. 108-70, which was the most daring among them, decided to speak up from within the room, but was then quickly taken away by one of the scientists and then audibly taken down. The others decided against speaking up further. They were all shocked by the very sudden turn of events. 108 and 108-81-1 felt completely devastated by the death of their best friend. Despite her usually serious expression, 108-81-1 could not manage to contain her tears. And as much as 108 wanted to console her, she could not quite find the right words to say.

To be continued…

(This story was inspired by a drawing by Lampost.)

Everyone deserves to be happy.

(read more) / (close)

everyone deserves to be happy

Which people deserve to be happy? What can someone do that would unwarrant it?

This is a fairly morally ambiguous question. To me, happiness is a foundational feeling. Not being a religious person, I believe that people ultimately behave to abide to their instincts, either directly or indirectly, and happiness is the way nature found to reward good behavior for people and other animals.

As such, this question has very special implications. It is not formed arbitrarily, it serves as one of the bases for my personal morals. Everyone deserves to be happy, and there is nothing they can do that would revoke that warrant. It is inherent to one’s very existence.

Even people who might have caused others affliction, even if they don’t regret it nor ever come to regret it, they still have the warrant to be happy. Of course, that is not to say that anyone should be able to do anything without consequences, but they will always deserve to have a way to do something to be happy.

The wording is very subtle, but it doesn’t mean no‐one deserves to ever feel unhappy or unwell. There are actions people can take that will rightfully lead to them feeling unwell or hurt, and that is something that ought to happen to anyone. The implication of the assertion is not that everyone deserves to be happy all the time, but rather that everyone deserves to be able to live a happy life.

Likewise, it doesn’t mean that everyone should be able to do anything that would make them feel happy, but rather that they should always have the ability to enact something that makes them happy.

Taking away people’s ability to be happy cannot ever be done morally in my view. As a foundational feeling, happiness is what people strive for during their lives. Taking that away is effectively the same as entirely taking away their reason to continue to live.

Once someone starts to believe they will not ever be able to be happy again, they lose their will to continue to live. No‐one deserves to feel that way — at that point, you might as well disclaim their warrant to live altogether, which I also don’t think should ever be disclaimed.

Yesterday, I watched Treasure Planet. It wasn’t as interesting as I had remembered, but it was still a very enjoyable experience.

Sometimes people use words in misguided ways that can be confusing, and I feel like that’s very unfortunate.

(read more) / (close)

terms to avoid in certain contexts

content
“Content” is an exceptionally vague word, it can refer to almost anything. It is just barely more specific than saying “things” or “stuff”. Using it to refer to people’s creative works is injust to the creativity that went into them.
content creator
Similar to the above, “content creator” just means “someone who creates things”, with no regard for the creative value of the things they create nor to the effort they put into it. The most appropriate term to use would be “author” (since they have authorship over their works). But since the word “author” is usually associated specifically with writers, mentioning the kind of work the person creates might be prefered, e.g. “video author”, “streamer”, “podcast host”.
artist/art (regarding specifically drawing)
Drawings are not the only form of art. Other forms of art include, amongst others, painting, creating music, modelling, and perhaps even programming. There is no reason to consider as artists only people who draw. To avoid ambiguity, when refering specifically to people who draw, it is better to say “drawing artist”.
authors (regarding specifically writers)
Like above, authorship is not a term granted only to writers, but to anyone who creates any kind of work. When refering specifically to writers, it is better to just say “writer”.
stealing/theft (regarding copying works)
When you copy or distribute someone’s work and infringe their copyright, you are not stealing anything, you are illegally copying their works. A distinction needs to be made between “taking something you don’t own without permission” and “copying something without permission”, as they refer to entirely different concepts. If you take someone’s physical painting, you stole it from them, but if you post photos of it online without the necessary license, you infringed their copyright (but haven’t stolen anything).
stealing/theft (regarding plagiarism)
Ideas cannot be stolen, as someone can’t take them away from you. If you use someone’s idea without crediting them with the intent of passing them as your own, you have plagiarised their idea, but haven’t stolen anything from them. Stealing and plagiarism have nothing to do with each other.
intellectual property
Unlike actual property, works do not conceptually belong to anyone (unless they are inherently physical), not even to the person who created them. If you create something, you have authorship over it, not necessarily ownership (again, unless it is physical). If e.g. you draw an image using Krita, you do not have ownership over your work, you have authorship over it, and no‐one can take that away from you. It is an abuse of reasoning to try to mix up authorship and ownership.

I’ve been using Guix System for nearly two years now, and I feel like it works really well.

(read more) / (close)

my expericences with Guix

Guix, inspired by Nix, is (among other things) a package manager made by people from the GNU project, and Guix System is a GNU distribution featuring Guix as its package manager. It is a bit distinctive from other package managers, and in this post, I’ll talk about some of its exceptional features and advantages, as well as general anecdotes about my experiences with it.

One interesting thing that it allows for people to do is to use multiple versions of the same package at the same time. Usually, the way I do it is using guix shell. E.g. you could run guix shell gcc-toolchain@10, and it will download and create an environment with GCC 10 in it that you can then use (without installing the package to your profile). You can of course also install a different version of a package to your profile normally too. guix shell -C also allows you to create a container that has only the specified packages available (and that by default only shares the CWD with your host).

Running guix shell -C -F sets up a container that simulates the FHS (“File‐system Hierarchy Standard”) that is most common in more traditional distributions. This allows you to run binaries (that you e.g. download online) that might expect certain files to be in specific locations in the file system (e.g. libraries in /lib, executables in /bin, etc.)

Something else neat is that you can also use packages from a different version of Guix than the one you have installed! You can use the guix time-machine subcommand to specify a different commit or branch of the Guix repository, and it will download and run the guix command‐line tool from that specific commit (which means you can also use the features only available in those commits). So if there is a package that was removed, or you want something from the unstable “core updates” branch (or a different branch), you can use guix time-machine to gain access to them.

All packages in Guix are source packages (there are no binary packages), but that doesn’t mean you have to build everything from source. There is the concept of “substitutes”, which are prebuilt binaries you can download for packages from a build farm. (When installing a package, it downloads them automatically by default.) The neat thing about this, though, is that you have information about how to build any package from source if you come to need it.

One thing I use is the --with-patch=… option of guix install. It allows me to provide a patch to be applied to the source code of a package before building it. Guix will automatically understand that the substitute server can’t provide the patched package, so it will build it automatically for me. I use this for customizing the st package with a theme and applying other similar miscellaneous patches to it.

Another neat thing that I have used before is the --with-source=… option of guix install. It allows me to provide the URL to a tarball, and it will use that in place of the actual declared source of the package. (Like above, it won’t use substitutes then.) I used that when installing FontForge to try it out. The version in Guix is slightly outdated, so I provided the sources to the latest release, and was able to install the latest version of FontForge. It will automatically detect the version number in the URL and reflect that in the installed package’s version, but that is mostly just for covenience, so that it displays correctly when you want to list your installed packages.

And of course, you can have multiple versions of a single package downloaded on your system (and even installed to your profile), that includes different variants of the same version (e.g. if you use --with-patch or --with-source, or even --with-input).

Note: This post was originally written in August and September, but it was adapted a bit and finally posted in November.

Y’know what? I just feel like Ryōna (from Senran Kagura) is really adorable! I want to hug her and spank her, and I’m sure that it’d make her happy! I feel like I should take some time to investigate Peach Ball more carefully, it seems really fun and cute.

I’ve been listening to Ken Ashcorp’s “We’re Shameless”, and it almost sounds like it comes straight from a Disney princess movie. If Disney movies were lewd, that is.

Whenever I find a fetish I don’t have, I view it as an opportunity to acquire a new fetish!

Yesterday, I finally got around watching KurtJMac’s playthrough of FAR: Changing Tides. I remember really enjoying his playthrough of FAR: Lone Sails, so I’m not surprised I have been really enjoying this one too!

A few days ago, I decided to continue playing Degrees of Lewdity. It is an extremely atmospheric game, and I really enjoy it!

Last week, I watched Charlie and the Chocolate Factory again! (It had been several years since I last watched it.) It was very fun and immersive.

I have recently continued watching Miss Kobayashi’s Dragon Maid. I had forgotten how comfy that show is.

This morning, I watched Disney’s Tangled. Nothing short of wonderful. Browsing Disney+, I feel like I should start watching a series.

Last night, I watched Turning Red, and it was a really enjoyable film. Sometimes I feel like I should pick films I enjoyed watching and watch them again.

I have decided to start this microblog today. I’m not sure how it will go, but I hope to write more in the future.