I'm a programmer, writer, and philosopher of all things. I post all kinds of stuff here.
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.
I also have a presence on Twitter, dev.to, Youtube (on Youtube I currently only post DDLC-related content), Medium (starting out), and minds.com (passively trying out, might start posting more in the future).
Recent update log:
May 28: I've made a new subcategory under Argument for platform design, moved the article on tag systems there, and added Against moderator action. I also reorganized some of the Protagonism pages, and deleted two: one that never really belonged as an article, and one that was old and the good thoughts in it are covered by the articles on moral values and consequentialism. I also moved my bystander story to Miscellany, and wrote Why I organize this site this way.
May 23: I posted Revolution is self-defense. I haven't wanted to write about this for obvious reasons, but I can't just not say it forever.
May 20: Lots of new stuff.
New article: Against variable declarations
New article: Communist/Capitalist FAQ
May 19: I reviewed The Iron Web.
May 17: I edited my article on consequentialism and also linked Michael Huemer's post on abortion from the Protagonism index.
May 15: I posted my Deltarune review.
May 12: New article: How I left axiological retribution.
New article: Considering saying something makes you wiser
I finally got around to redoing The free market in a nutshell
Comment section improvements! It loads all the comments in one batch, instead of recursing through the tree getting one level each time. This drastically reduces the time it takes to finish loading the tree. Of course, it makes it take a lot longer to load the top comments since the server can't return them until it loads everything, but I think that'll be okay. I'm planning to also limit the number of replies on a single level it fetches automatically. And I got to ditch net lines of code, which feels great.I also the view parent link to make navigating subtrees easier! Another improvement I should probably make is to make it so navigating the comment tree doesn't reload the page.
I significantly edited my Undertale review. main_gi and 231 made some good points in the comments. I ended up retracting most of my criticisms about communication and adding thoughts about the story.
May 10: New poem: The Shaft.
I finished the FastAPI/SQLAlchemy move!¶
I'd had the code pretty much done for a while and was just waiting on an answer on something about foreign key relationships from either r/sqlalchemy or Stack Overflow, but this change has been blocking so much else for so long, I decided to just go with it without assurance that I'm doing this the right way.
You'll notice that the comment IDs are ints now instead of UUIDs. My migration code automatically converted the old comments so all the discussion should be intact, but links to comments from articles or other comments couldn't be fixed the same way. Point them out if you find any broken.
May 6: I finished and reviewed Undertale.
May 5: New article: Stop with the arbitrary restrictions on passwords.
April 30: I added a point in my criticism of Renpy about the zorder system, improved my article on The enforcement fallacy, and posted The Concise Python Tutorial, part 7: Classes and Please exit the top menu cult.
April 28: I finally updated the article on my moral system and the one on retribution! Some of the places that reference them might still need a change, but I'll fix those as I notice them.
April 25: I reviewed Django. It's not the most comprehensive review since there's still a lot I don't know about it, but I think I've seen enough to review.
April 24: RTTP. Is. Released.
Good God, this feels so good! I can finally get up to other things: Haskell, SQLAlchemy, Spem, philosophy, connecting, and who knows what else.
In far less important news, I moved Wikipedia's neutrality policy is a sham from Protagonism to Argument.
April 21: New example on the What If Everyone fallacy, and new article: Is capitalism luck worship? And why you should believe in consent.
April 18: I edited the article on consequentialism to more explore "the basics" before getting to the organ transplant scenario.
April 13: I added a retrospective to MC's Revenge. Also added a mention of Firelightning and links to his repo. I can't believe I had that up there the whole time without a mention of him! It was in the credits, but still should've been on the download page too.
Later I added a new rebuttal: Heimdal Security lies hysterically about the dark web. I wasn't sure about bothering with a rebuttal to this when I first found it so I noted it in a text file for later consideration. A few hours later I felt like doing it so I checked it out and... holy fuck. The article is orders of magnitude worse than I thought from reading the start. I was surprised by how much it ended up being about statism and anti-conversatism as well as the "dark web".
April 12: New article: Online privacy is overrated. I also posted my informal resume, even though I don't plan on doing anything that involves it soon.
April 8: New article: What's the case for data hiding?
April 7: New articles: Nil comparisons of software, The Concise Python Tutorial, part 5: Functions, and The Concise Python Tutorial, part 6: Exceptions and IO.
April 5: There's now an option under notification settings to not automatically subscribe to your own comments.
April 1: New article: The right programming tutorial structure.
March 31: New article: Why I don't debate in chat.
March 30: New article: Faction analysis: Anarcho-capitalists.
March 28: Well, I finally settled on using mistune as a Markdown processor. This won't be an acceptable permanent solution, but I'm so done struggling with this for now. I found two comments that were messed up and fixed them. Let me know if anything else is messed up (I'm sure something is). It also inspired me to write Has your favorite tool actually saved more time than it's costed?.
March 27: I feel bad about the total lack of new content in the last week, but I'm still grinding on this damn quest for a better markdown processor. It seems like a neverending toil of investment and disappointment. Anyway, I finally have a new article: Transgenderism in Fizzy's server.
March 21: New articles: Things we still can't do in CSS and The sins of quarantines.
March 20: New software article: How to make fragment links survive position:sticky.
I know the layout of the navbar is still imperfect (the top two elements look misaligned when logged in, but it's just because of the difference in width). I'll have to experiment a little more with squishing them into the center, and I also want to look into moving the homepage link to the center-top so it doesn't seem like it's being treated as part of the title.
Later this today: I did change the navbar some more, so the two top panes are aligned to the edges of the title. I think it's an improvement, but still not completely satisfactory. Also, I posted My names and the story of Evan.
March 15: I scrapped the article "Boilerplate rules". 231 made a really good comment on it back in January that I asked in response what I should do with the article, but since I never got a response I forgot about it. Of my three points, one was invalid, another was only half valid, and the other was basically summarizing another article I'd written. It didn't merit keeping the page around.
New articles: Objectivism in software and To add rights is to subtract rights.
March 14: New poem: Ode To Prismata.
I added the <meta> tags that give my pages a preview when you share them on social media sites! Only tested on Twitter, but it should work anywhere. I also changed my templating system to Jinja instead of my home-baked, kludgy system. It shouldn't visibly affect anything, but let me know if anything's broken.
Textareas autoexpand now! Enjoy.
New article: Against "enhanced" basic web components.
March 12: New article: Libertarian arguments for and against open borders. If it sounds very out-of-style for me, it's because I conceived it as a BHL post, but they still haven't responded to my other guest post request.
March 11: New articles: Platform designers: got common sense? and Problems with rating systems and how to fix them. I've noticed that I'm forming a topic with these two, the old one on reddit downvoting, and the one on tag systems, which only tangentially fits in argument/ and the tags one I put under software/. They should at least all be in the same category. I might have to move tags to argument/, but then I have to change its canonical URL and worry about the effect that might have on the dev.to crosspost.
March 10: The notifs panel will now show your current key fingerprint if you have a public key.
March 9: Improvements:
- The edit button no longer appears on comments you can't edit.
- Reply notif emails have a link to the new comment.
- On the notifs panel, you can see your claimed username if you have one.
March 8: Phew! What an evening.
So around 6 PM I downed the server working on big changes. I thought I'd only need to down it for a few minutes, but things got hairer than I expected, and it ended up down for hours as I desperately fiddled with Google, Django and Postgres. I plan to post the story of how this happened to dev.to tomorrow, but for the time being, here are the upates I've brought you:
- You can upload a PGP public key and any password reset emails will be encrypted.
- Once you've uploaded your key, you gain the ability to edit comments made with it, and to claim your username so no one else can post as it! Unfortunately for the time being it shows the edit button on all comments when you have a key, but I'll hopefully get around to fixing that in the next few days. I'll take manual action to link existing comments by registered folk to their accounts.
- I fixed a bug that made you still get notification emails about your own comments.
- I fixed a bug that made the notifs panel not refresh after a successful login if you viewed it while logged out.
- Mostly behind the scenes: admin powers aren't specifically tied to my username anymore; the User model has an admin flag. So other closely trusted people will be able to do previously me-only stuff like edit the Spem dictionary.
I won't be surprised if some of this is broken, but I feel pretty epic about today, especially since this was also a day I made more progress on RTTP than in the last week combined :)
March 6: I changed the navbar structure a bit so it's less cramped on mobile. There's probably still improvements to make, but this is less egregious on pages with really long titles.
March 4: New articles: Democracy is nihilism and The experience calculation problem. I went ahead and made the change: the miscellany category is a thing now.
March 3: I added the article Wearing many masks. It's not linked from any categories yet because I'm teetering on the decision of adding a "Misc" category. If I linked this from the root page, I'd have three image-card links that were just to a single article and had the logo as their image. I want to add a Misc category to put this contact info, and the logo explained under, but I'm not quite certain if I want to do that. Having the contact info be two clicks away from the root page is not an idea I'm attracted to...
I've also become sure that the site needs a more serious interface revamp, which might affect how I want to do this. The navbar is too cluttered on narrow viewports on a subcategory page. I'm pretty sure I want to keep the sticky navbar since it has the login status and the dark mode switch, and the timestamp is also important to be able to see while reading comments. One thing I'm thinking about is taking out the article title, and displaying it in an <h1> at the top of the article.
I don't like the way it would look, but that idea might have SEO benefits. Now that I'm using the <article> tag and crossposting, I've getting the impression that the article title shouldn't be outside of that element.
An obstacle is that if I used h1's for the article title, I probably couldn't use h1s in the body. I might have to use h2 as a max. That'd require reworking my software reviews. Maybe I could just use h2-h4 and have my stylesheet reduce the different in sizes, so an h4 is still bigger than normal text.
Another thing I've been thinking about is whether it would be a good idea to reduce the page width on fullsize screens and use the margin space for a recent comments panel. A lot of other sites show their recent comments panel on all pages. I'd been deterred from doing it here because of the category dissonance - someone might follow a link to a page in one category, and I might look like a link spammer if the first thing they see is comments on unrelated content. But it wouldn't be too difficult to make them scoped to just the category they're on.
Later today, I basically finished The Concise Python Tutorial part 4: Mutable types, but I haven't crossposted it to dev.to yet, as I think it could use some polishing/feedback. I also finally added a test case for the assignment in part 3, to make the intended behavior clearer.
March 2: New article: Punishment and reward are not alternatives.
March 1: New articles: Traditions of lying: Santa Claus and April Fools and I hate caching.
February 29: New articles: Kill software for great glory and Tag systems and the problem of variant tags, added PHP to Incomplete list of standards, formats, and technologies that should die, and a new (kinda?) poem: Henry The Hero.
I really wanted to write more poems. I have a few scraps I've been thinking about for longer than this one, but when I decided to work on it just flowed. I'm not sure about including the title in the page body like I did for the other two. It seems unnecessary when it's in the navbar, and especially awkward when it's also the first three words in the poem.
Some changes to Spem:
February 21: Two new articles on software: Why I live as root and Stop trying to take the user's choice.
Added the load more button on recent comments. Enjoy,
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 :)
I haven't posted in a long time, but today I bring some Spem updates. Added