I'm a programmer, writer, and philosopher of all things. I post all kinds of stuff here.

I used to play this game devoutly, and wrote a lot of beginner guides and stuff for it. The philosopher's conlang. Join me, and together we will rule our own minds. As my primary skill set, I naturally love to talk about software. Does it count as a religion if it's all a priori? 🤔 Wherein I talk about conversational tricks and the role of psychology in arguments, and debunk random bad ideas. I'm a musician... sort of... Many people think that different people enjoy different things and so all judgements of games are nothing more than personal preferences, but I don't subscribe to that nihilism. What makes a good story? I'm not quite sure myself, but I have plenty of ideas. I enjoy enumerating all the flaws in other people's stories and games, and occasionally gushing over good ones. Novels, DDLC mods, poems A minimalist, proof-of-concept fighting game I made a couple years ago that doesn't live up to its name. I thought it out very carefully, and I'm very satisfied. Help me find out whether I'm using GPG right :)

This site wouldn't be what it is without my dedicated contributor main_gi. He's been my de-facto editor for a long time, has helped me with CSS troubles, found two vulnerabilities in my comment feature, and even contributed valuable insight that got me to change some beliefs. His page is here.

The above photos, where they're not mine, are from: unknown pxhere user, Aaron Burden, sthenostudio, and César A. Mazillo Jr.


Recent update log:

February 21: Two new articles on software: Why I live as root and Stop trying to take the user's choice.

February 20: Added the load more button on recent comments. Enjoy, miki mi.

February 14: New article on storytelling (man, how long has it been?): The D&D alignment system is worthless.

February 10: Over the last couple days, I've revised most of my articles on storytelling. All of them dated back to when I was a nascent philosopher with ideas I cringe at now, as well as a much worse writer, and I think they're all in a presentable state now. I actually scrapped the articles on heroes, villains, and worldbuilding, because my whole framework for those ideas was wrong-headed, and I think I said next to nothing I still stand by in them. The only worthwhile stuff I said in the plot article is on its own now: Don't have POV characters lie to the audience.

I've also been revising my reviews. The early versions of a lot of them sounded more like a rant to remind myself why I hated the work than an earnest attempt to make the case for someone who wasn't already convinced.

February 7: Added comment previewing. Enjoy :)

February 6: I haven't posted in a long time, but today I bring some Spem updates. Added iv, eiv, tazi, and tafu, and renamed the combo verb tag to adverb.

January 31: I posted part 3 of The Concise Python Tutorial.

January 26: I added the second part of my Python tutorial and a rebuttal to Shane Killian on utilitarianism.

January 25: Fixed a slight bug where if you loaded the Spem search page with the c query param, like from a recent comments link, it would load the whole dictionary because it would see that you loaded it with some query params, but no filters.

I also posted the first part of my Python tutorial. There are an infinite number of them, I know, but I haven't seen a single one I like, and I really wanted to do it.

January 22: Tons of new words added to Spem! The word count is over 560 now :) New articles on software: Incomplete list of formats, standards, and technologies that should die and Why readability is important. I also added "rule of law" to Propaganda words and phrases.

January 21: I found out the most horrifying thing I learned about America in a long time. In happier news, updates to Spem: verɪθ -> yeθ, felɪθ -> weθ, vɑrɪθ -> yaθ, falɪθ -> waθ; all the should words have been added to the dictionary; a new question added on directness; and a tentative solution accepted to the age old conundrum of "without" I used to describe on the notes of u: due to the way Spem entities aggregate by default, "without" as different from "minus" is i nu. I also added a neat feature to the Spem dictionary: if you load it with a query string in the URL, it'll be automatically searched for.

January 19: I finally got around to editing my attempt at a complete formulation of the ethics of ownership with what I learned from the folks at r/DebateAnarchism. I haven't edited the article on capitalism yet.

January 16: Long-term improvement: the page URLs no longer have .html. Requesting the .html version should redirect to the new version.

January 14: I've changed my philosophy on simplicity in game design a bit after discussion with 231 in the comments. I've edited the articles on Depth and Simplicity.

January 13: New arguments: Oh my god, please stop writing dashes without spaces, Yujiri's First Law and Yujiri's Second Law.

January 12: New articles: The inherent logical problem with identity politics, The Cosmic Slot Machine actually works..., and my Nginx review. I really missed talking about software.

Later today, I fixed the navbar/URL title for the Software category. I originally called it "computing", because I wanted it to be more general than "programming" etc, but the right name didn't come to mind until the Jan 6 improvements.

January 9: One small but significant technical improvement: the section id links are less ugly now; they use the standard formula instead of a bare URL-safe encoding of the header text. The reason I didn't do this before was because I had some difficulty figuring out how to use Trent's Markdown library for this, so I put it off, but I wanted to get this out of the way before I gain much popularity.

January 8: Changes to Spem: kyu is dead and the relevant proposition has been accepted, resulting in the addition of an article on multiple predicates.

January 7: New rebuttal: First Round Capital is Sexist.

January 6: Category images added! I still have a few dissatisfactions with the change, but it looks so much fancier I couldn't wait to push it out.

January 4: More substantial updates to Spem, including the shortening of zɵrɪθ and selɪθ to zir and sel, the celebrable death of zɪtu, some improvements to tags, the official shortening of yen to en, and the death of zuni and the addition of the relevant question to the RFC page.

January 3: I've got one small general improvement for today: the recent comment links link to the particular comment, so it's easier to find what's new on pages that have a ton. Unfortunately due to the way fragment scrolling works and that the comments load after the page, this doesn't scroll all the way down to the comment, but to the comment section, and I don't have an obvious way to fix that. I imagine the change is still appreciated though.

There's also some pretty cool Spem updates: θe and θi have been added at long last after I finally got confident in my understanding of what they mean; several more open questions have been added to the list (ɪl ɑn ʌ ɪn kuto ŋe ki tiku ɪn tetɪk ne mi), and that's right - ŋel finally became ŋe :) Feels like shattering a sentimental antique. That word's been ŋel for ages. It was one of the first words I added to Spem, since "of" was one of the first English conflation demons I tried to tackle. That was way back in the days of Odyssey Of The Elements.

January 2: New articles: Hypocritical Objectivism and Socialism Is Not Greedy.

January 1: New article: The separation of legislation and enforcement is harmful.

December 31:

December 30: I've been making some changes to the Spem articles. In particular the tradeoffs of parts of speech and default identifiers have been edited.

December 22: I'd decided to redo my article on the status of children in society, to expand it a lot and divide the topics I covered into three separate articles, of which I've just finished two, and three other new articles. There's now Children are not property, Sheltering children is harmful, and Children aren't as immature as you think..., Stockholm syndrome is human nature, and All statists have Stockholm syndrome.

I really need to decide on a capitalization convention for article names. My inconsistency is painful.

December 21: New article, and my first rebuttal to a Youtube video: The origin of consciousness.

December 20: Woohoo! RTTP Part 2 is out!

December 19: I've implemented comment subtree viewing! I know that ideally it should do this without reloading the page, but I'll stop here for now.

I'm trying to delete my old (bad) liberty.me account to start anew, but unfortunately I can't because I don't have access to the old email address anymore, and I can't change it because Wordpress sends a confirmation email to do that... to the new address... but apparently they have mail routing issues and closed the support thread where a dozen people reported it a year ago without resolution :/

December 18: Update to Spem articles Linking clauses and should. Some important new words added also (mi jini yam kor θɑr), incl keθɪs 'yɑri' (i yo), 'vien', 'dimu', i tir yɪŋ ɪl verbs ŋel ki kei; i jinu kazu i kanu - tem ʌ zu. I've also done some more under-the-hood improvements: I added the <input-list> element, and it can work with <select>s too. So I've got my Spem admin interface back. Finally, I added an article I started drafting a while ago: The loss of the concept of Consent.

December 17: I finally completed the Lit-Element move! Phew, this took most of 4 days. I probably put almost 30 hours into it. But it's done! Noticeable improvements:

I've also improved my tmpl.py script on the backend, and merged an old repo that didn't have anything else I was still using into the main one. And the navbar path is computed by the frontend now, rather than stored during templating.

And finally, there've been some more mundane updates. I've improved Power Doesn't Corrupt You, Idiot and significantly edited my critiques of Lord of the Rings and Mass Effect.

December 15: It's been a while since I posted normal articles, but today I've got two: Relativism Is Not Inconsistent and The Condescending Fake Intellectualism of Conservatives.

The Web Components move is coming. Today and yesterday I got a break from my job and managed to get a lot of progress on it. The site will look fancier, have a better authentication popup with non-misleading labels, and if all goes according to plan it'll land at the same time as the last major interface change I want to make before I start pushing for publicity.

RTTP is also coming! The script is completed, it just needs testing/debugging and some editing.

December 11: No content update, but I looked into the Web Components thing a bit and found out the build didn't have to be that big. I had it set to build for development, which made it way bigger. I've done some more exploring of Web Component building systems and I've found at least two promising options, so I'm back to being fairly sure I'll do the move. Just gotta do some more investigation to find out what the best solution is and then set aside a day for it.

December 8: I got banned from r/ShitStatistsSay for pointing out a double standard that holds children to have less rights than adults, and had a hilarious exchange with the moderators about it. I added details and screenshots to the relevant Protagonism article.

December 7: I spent a few hours tonight looking into my ambition to migrate to Lit-Element, but this time, I'm starting to think the dream is just a bust. I found a compiler solution using Webpack that only required me to install the one package (no Babel needed!)... with its >300 dependencies, of course. I actually started making components, but then I looked at the bundle.js being generated even with only using the one small library and two MWC components to make the theme switch better, and for some goddamn reason it was 14,000 lines. And that's without the sourcemap, without which I can't reasonably debug. So I decided you know what, that's not even worth it. Screw web components. Screw npm forever. I continued in the good old primitive ways and added the ability for me to delete comments from the web interface.

I'm also starting to hate Django more, since I found out today that apparently it swallows uncaught exceptions unless I specifically catch them and traceback.print_exc(). I didn't think it used to do that. Its admin interface is borderline useless since I can't filter or search objects at all, and today I found out it won't accept me creating an object if I don't put non-empty values in certain fields that don't have a non-empty constraint (doing it from psql worked). But the database management is still so valuable...

December 4: Today I finished and reviewed Jedi: Fallen Order, and posted a new Spem conlang article: The phonetic mapping, and Languages are not easier to learn as a kid.

Sigh... lastly, I've been reminded that I somehow forgot to note the addition of Spem conlang open question: variable dereferencing?.

December 3: I updated my article on the "What If Everyone" fallacy to add an example I encountered today. It was too gold to pass up.