<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/">
	<channel>
		<generator>Uhh fuck idk I wrote this in PHP</generator>
		<title>Cal's Blog</title>
		<link>https://snake.computer/</link>
		<description>Cal's blog, from the snake computer</description>
		<language>en-us</language>
		<managingEditor>cal@snake.computer</managingEditor>
		<webMaster>cal@snake.computer</webMaster>
		<copyright>WTFPL</copyright>
		<image>
			<title>Cal's Blog</title>
			<link>https://snake.computer/</link>
			<url>https://snake.computer/favicon.png</url>
			<width>16</width>
			<height>16</height>
		</image><item><title>Matrix is not The Move</title><pubDate>Tue, 05 May 2026 14:47:38 UTC</pubDate><link>https://snake.computer/words/info/tech-tips/Matrix-is-not-The-Move</link><author>cal@snake.computer</author><category>Tech-tips</category><description>Matrix sucks too!  Here's a brief summary of my experience with it over the last 3 to 4-ish years.</description><content:encoded><![CDATA[From a user's perspective, as someone who has been using and trying to get others to use Matrix for close to 5 years now, I think it's time to admit to myself that it's not going to work out.<br />
<br />
Even ignoring the <a href="https://github.com/circles-project/circles-android">cornucopia</a> <a href="https://lotte.chir.rs/2024/08/18/Malicious-homeserver-can-trick-Element-Schildichat-into-revealing-links-in-E2EE-Rooms/">of</a> <a href="https://soatok.blog/2024/08/14/security-issues-in-matrixs-olm-library/">security</a> <a href="https://xn--gckvb8fzb.com/giving-up-on-element-and-matrixorg/">issues</a> that have come to light over the last few years thanks to more people becoming involved with the project, <i>and</i> the <a href="https://en.wikipedia.org/wiki/Amdocs">tenuous ties to Israel's state security apparatus</a>, and the <a href="https://matrix.org/blog/2025/02/crossroads/">apparent issues with monetization that they have had,</a> <a href="https://matrix.org/blog/2025/06/funding-homeserver-premium/">constantly,</a> the project has fundamental problems that prevent it from ever being useful for the vast majority of people for really any purpose.  the application itself is fundamentally not what people are looking for in a Chat App.  It tries to reinvent so many wheels and square so many circles and fails at even those that it ends up not only fundamentally alien to most users, but non-functional for those that are willing to try the entirely new organizational system they have created.  The wheels it has reinvented now have no frame to attach to.  It's a jumbled mess of parts that barely works on a good day and every "good" feature has so many asterisks attached it may as well be ASCII art of the night fucking sky.<br />
<br />
I can only speak as an end-user here, because I'm frankly <i>not</i> involved in any of the project's code or any of the aforementioned security issues.  I've submitted bug reports and participated in discussions surrounding the project, but I've never contributed code - <a href="https://github.com/matrix-org/matrix-spec-proposals/pull/2545">seeing how other users and their code-complete proposals have been treated</a> really turned me off of the idea even years ago.  The whole process is really insular.  Other people's contributions with or without working code are frequently dismissed as irrelevant or simply tagged "X-No-Product" and left to rot for eternity in the issues tab.  Basically anything other than the objectives for any given "Sprint" gets ignored entirely - and "Sprints" take anywhere from months to years with little to show for the work people have put in.  It's been years and the Officially Updated "Element X" App is still missing things that the old version has had for years.  These priorities are also set by the people who manage the primary Matrix repo, who proudly claim on <a href="https://element.io/en">the front page of their website, front and center, that their application is "trusted" by such <i>revered</i> and <i>respected</i> groups as the United States Marine Corps and Navy, and NATO.</a><br />
<br />
The application itself is just Not It.  I say it is "Not It" because it's not what anyone is looking for.  It's not what anyone asked for.  The development schedule is comparable to the legislature of the United States Government, and much like the United States' social programs that come about from its legisltaion, the program itself lacks even the most fundamental of features.  Matrix as a specification has existed for over a decade now, since roughly 2014.  In that time, we have only within the last <i>hour,</i> as of writing, gotten a <i>textual agreement</i> on how the specification for <i>in-line fucking images</i> should be implemented.  That's all emojis are.  Up until <a href="https://element.io/blog/element-call-redefining-conferencing-for-privacy-scale-and-sovereignty/">a few months ago,</a> anyone who wanted to share their screen or do video calls had to rely on external applications or plug-ins that were obsolete years ago, like <a href="https://en.wikipedia.org/wiki/Jitsi">Jitsi,</a> which had support for matrix added in 2017, with no further movement visible to users until 2025, almost an entire decade later, when the first-party video calling feature was added officially to Element as an application (not just a text-based spec proposal telling the devs how to code).<br />
<br />
When I say "fundamental features" are missing, I do mean core, foundational features do not work as intended.  The fact that "Unable to decrypt message" has become a meme in techie circles and the issue has to date still not been resolved and still occurs regularly is a product-ruining failure that prevents people from using the <i>communication app</i> to <i>communicate</i>, and should be priority number one for anyone who is to be taken seriously.  Instead they've seemingly spent all this time with their thumbs up their asses discussing how to implement data caps because they can't pay for the 42 terabytes of daily garbage people are uploading to their servers that can't even be decrypted half the time, in some cases even by the users who themselves sent the messages.  The system for federation is still incredibly bandwidth-intensive and slow.  Even communication between users on the same server has somehow become convoluted enough to necessitate multi-second delay between a user hitting "enter" and the recipient being able to see and read the message.<br />
<br />
Notifications don't work!  They often simply do not make noise or the icon for the application doesn't change.  Keys are not stored on the desktop application properly and you must log in again every time to be able to read your messages.  "Spaces" aren't servers and there's no way to manage multiple "rooms" in a "space" at the same time, configuration is done per-channel.  There's no way to ban or kick someone from a space without having to ban or kick them from each room individually.  Rooms within a Space cannot be ordered arbitrarily and are ordered by the user, rather than the server.  Voice calls often fail to connect or refuse to connect to homeservers entirely and require additional software separate from the main Matrix Docker Server Instance to function.  Thumbnails cannot be animated without going through the same process getting Voice Calls to work requires, using additional third-party software with no fucking documentation on how to set these things up at all, meaning profile pictures and custom emojis in their current non-mature implementations by third party client developers don't work for anyone using their own homeserver unless they are a Magician and have set these things up themselves.  Youtube doesn't embed!  Most websites don't embed at all.  Embeds are set client-side and are again a per-channel preference.  Preferences are not saved serverside and reset when you log out and in or if your cookies / LocalStorage is reset.  Key validation is clunky and poorly explained, many people lose their keys and access to their accounts because of this.  Encryption breaks the search function.  Many clients don't support key imports or validation properly so only some allow QR codes to be used and others don't even get prompts when users do the "old, stable" method of emoji validation like some other apps use.<br />
<br />
The systems of "spaces" and "rooms" don't integrate with each other basically at all and only serve to confuse new users into thinking they have some kind of "server-channel" setup like Discord, without offering anything that allows them to be used as such.  The concept of a "DM" has been abstracted into yet another "room."  Any DM is just a group chat with two people in it.  Rooms cannot be deleted!  You have to kick every person individually from the room and then leave it in order to stop it from being accessed.  Then only after 7 days of no users being in the room is the data wiped from the server.  You can't kick other users who are admins!  And you can't revoke privileges from someone who is an admin!  There is no "Room Owner" role.  I could keep going with all of the foundational issues this piece of shit application has but I would run out of space on my disk by the time I was done.<br />
<br />
Custom emojis have <a href="https://github.com/matrix-org/matrix-spec-proposals/pull/2545">finally been Officially Added To the Matrix Specification!</a>  It only took 6 years, endless bickering, hundreds of thousands of dollars siphoned from <a href="https://matrix.org/foundation/members/">actually productive, dutiful open-source projects and soulless corporate sponsors,</a> 41 reviewers, several users being banned from discussing at all, countless comments from users stating that the lack of this simple feature made using the program untenable, existing implementations that fail to agree on a spec due to the pending proposals, etc etc etc.  And it's still not officially implemented!  That'll probably take a further number of years to get added officially to the Element App and all of its incarnations.  All for a <i>plaintext proposal</i> with no actual implementation, that offers such insightful patch notes as <a href="https://archive.is/5P8Ov">"fix naming thingy" and "add more stuffs."</a>  Did I mention this took 6 years?  and has 9 co-authors?<br />
<br />
The application is free to use.  There is a homeserver you can join Right Now and start using Today with nothing but an email address.  Every second you spend using that application from creating an account to connecting it to your phone and actually using it to talk to someone else will be utter hell on earth.  When you finally feel you've learned how to use the application, you will find out something that was <a href="https://matrix.org/homeserver/pricing/">never told to you or shown to you through the interface,</a> that completely invalidates any other possible upside the application had due to the utter braindeadness of the implementation.  Who's going to use an app to share photos and videos with a data cap of 500mb every 30 days and only 10mb per attachment with no exceptions?  And no Youtube embeds (or Peertube or LBRY or Twitter or Instagram or Odnoklassniki) to get around this issue?  Good idea guys.  Real great work.  Truly, the Matrix Foundation is the Vanguard of the Open Source Chat Application Development Sphere.  This is how these profound thinkers mock at the whole world.<br />
<br />
It sucks.  It's an application which was built without love and makes nothing but excuses for all of our collective wasted time.  The application which has pushed away every single user I have shown it to save for those who simply have no other option due to being banned from the major platforms.  It sucks so bad.  Hosting a server sucks so bad.  Using it sucks so bad.  Even <a href="https://www.theverge.com/tech/875309/discord-age-verification-global-roll-out">Discord's age verification debacle</a> was not enough to justify using it.  I can't trust it worth a damn even with backups of my keys because it feels like some bit is going to get flipped somewhere and the entire castle is going to come crumbling down.  It's not even useful as an emergency comms platform, because of how unreliable it is.  Every other message Can't Be Decrypted and there's no way to know whether the other person actually got it or not.  It's not useful for literally any Market Segment because it fundamentally doesn't exist to serve any particular group of people, not even the ones who created it.  It's another stupid fucking Art Piece in the form of a chat application that aims to create something for a society which does not and I am confident will never exist.  It just.  Sucks.<br />
<br />
I'm not putting any eggs in any baskets, but I'm hoping something actually comes of <a href="https://fluxer.app/">Fluxer.</a>  It's open source, will <i>remain</i> open source, is not taking any VC money, and will have all the experimental features like self-hosting and federation that all the Linux People rave about so much, in the near future.  It's not done yet, and still suffers downtime often due to its early state but it's on track specifically to compete with Discord, which is exactly what people need right now.  That, and they have an actual pathway to monetization, rather than simply relying on Donations and Billionaire Philanthropy or whatever.<br />
<br />
If you want an encrypted chat application, use Signal.  The phone number requirement sucks, but we have vanishingly few good options.  If you want secure comms, don't put aything on your smartphone, do not take your smartphone with you wherever you are going, use Linux at home, Use VPNs, etc etc.  OPSEC is not an App.  Encryption alone will not save you, and encryption alone is not worth the chance that your message will simply not be sent, or having to deal with all of the above.<br />
<br />
Matrix has no use case.  Matrix is not The Move.]]></content:encoded></item><item><title>Alternative to what</title><pubDate>Sun, 08 Mar 2026 14:47:27 UTC</pubDate><link>https://snake.computer/words/info/tech-tips/Alternative-to-what</link><author>cal@snake.computer</author><category>Tech-tips</category><description>Discord sucks.  Twitter sucks.  Youtube sucks.  There are no viable alternatives.</description><content:encoded><![CDATA[The recent (As of February 2026) happenings with Discord (and really the internet / technology in general, thanks to new laws in a number of countries) have once again spurred demand for alternatives to the Silicon Valley corporations that have loomed over us as we've gone about our business for the last couple of decades.  People once again throw up their hands and say <i>"I'm not doing that!"</i>, only for the same cycle to play out on the part of the corporations.  Walk it back, pull out all their PR tricks, scale it back, delay implementation to kill any collective momentum, then implement it later once everyone's forgotten it's a problem and the fires have died down.  <a href="https://en.wikipedia.org/wiki/Web_Environment_Integrity">Here's a recent example from 2023,</a> with Google's "Web Environment Integrity" spec proposal.<br />
<br />
In the meantime, people all scrambled for a new platform.  When Twitter was bought up by the world's most pathetic loser who started using it to push <a href="https://web.archive.org/web/20260220085302/https://www.theguardian.com/technology/2025/may/14/elon-musk-grok-white-genocide">conspiracy theory bullshit</a>, people tried to move on.  First suggestions were Tumblr - <a href="https://web.archive.org/web/20260303020942/https://fanlore.org/wiki/Tumblr_NSFW_Content_Purge">we'd seen how that went already</a>, so that was out.  Then Cohost, <a href="https://en.wikipedia.org/wiki/Cohost">which died entirely shortly after.</a>  Among a slew of other alternatives.  Then <a href="https://mastodon.social/">Mastodon.</a>  Mastodon seemed like a good choice!  It's an open-source project, it's not centralized so you can't suddenly be wiped out by some despot beholden to a payment processor or app store, and it's free forever!<br />
<br />
This, unfortunately, highlighted the issues with platforms such as this.  Everything in the last few sentences comes with a gigantic asterisk attached.  It's open source!  But that doesn't mean your proposals will be accepted, even if you <i>can</i> code.  It's a group of people like any other with their own goals in mind for the platform.  It's not centralized, and you can't be banned!  But if you're on someone else's server, they can still ban you, as with moderators on any forum.  You can host your own to get around this, but that asterisk may as well be the size of the entire page for how much effort that requires, and how unachievable that is at the moment for the average person.  Being decentralized also comes with a number of issues, like discovery and federation, both of which take effort on the part of <i>each individual user</i> to get working properly.  On top of this, the things people most use social media for simply don't exist.  You don't have a "feed" with an "algorithm" that effortlessly stuffs new Content down your throat whenever you're bored.  Metrics like favorites (likes) and reposts fail to track properly on most instances and versions of Mastodon.  You're only shown posts from instances your instance knows about and people you follow or your followers show you via reposts etc.  It's very limiting compared to a gigantic centralized platform like Twitter where everyone can see everyone else.  There is of course a gigantic public instance that 300k people use and is open for anyone to join, but if you don't want to be beholden to the rules of that instance, or want to communicate with a different group of people, you might end up picking a different one.<br />
<br />
Up to now, I've recommended people get on small servers hosted by their techie friends if they have any, though this is unfortunately not something most are willing to put up with, either on the hosting side or the requesting side.  I do host <a href="https://snake.cool">my own mastodon instance</a>, but it's not used frequently by any means.<br />
<br />
Then came Bluesky, offering a (theoretically, at some point) open-source and self-hostable platform that does everything people want.  It has all the benefits of a giant centralized platform (convenient signup, ease of accessing content from different groups of people, farther audience reach) with (at least theoretically) the benefits of an open-source platform.  Thus far we've unfortunately just seen the same shit that happened on Twitter replay itself over again.  AI moderation, restrictions on NSFW content, deboosting / shadowbans, people getting deboosted or otherwise censored along rightist / establishment political lines, etc.<br />
<br />
For better or worse, this platform has taken off, likely because of the ease of onboarding and the unceasing hostility from Xitter.  The current situation as of writing, though, still has most users posting both to Twitter and Bluesky, among other platforms (Furaffinity, e621 Itaku, Tumblr (for some), Mastodon, Newgrounds, Deviantart, etc etc etc).<br />
<br />
The point of all this is to say that this is likely what's going to happen to Discord.  It's playing out very similarly to both how Tumblr and Twitter's falls from grace have, and we have all of the same failures and missteps to make again.<br />
<br />
We're still in the quiet phase of the whole 'delay until people forget' scheme.  Waiting for people to stop caring and go back to normal so they can <i>slip it in</i> when nobody is paying attention and the news cycle won't get any clicks on headlines about it.  In the meantime, the urgency for an alternative platform is waning, and much like with Twitter, a new platform called <a href="https://fluxer.app/">Fluxer</a> has made itself the up-and-comer and pushed out the most popular open-source options like <a href="https://matrix.org/">Matrix</a> by simply having more features that people actually want and doing what people want it to do, instead of experimenting and trying to be some wheel-reinventing Paradigm Shifting Chat Revolution that mirrors the leap from E-Mail to IRC but falls short and just ends up feeling weird.<br />
<br />
Up to now, basically every time <a href="https://matrix.snek.to/thelist">Discord has gone out of its way to annoy its users,</a> the majority of them have been in the "just comply / it doesn't matter" camp, as the issues have primarily been to do with monetization or advertising, rather than directly giving Discord a photo ID, which seemingly most people do not care as much about.  The response to those asking "where can we go?" has so far been "Matrix" or nothing else.  Matrix is basically just open-source, federated (de-centralized) Discord.  Same comparison between Mastodon and Twitter; It's basically feature-complete, does everything Discord can do, but it does it <i>just differently enough</i> that most people will hate it with all of the hate they have left to give, and will not want to move over or invest their time into building a community on it.  There are also a number of concerns with the actual performance and security of Matrix, several of which the closure of <a href="https://github.com/circles-project/circles-android">FUTO's "Circles" Matrix client project</a> outlines pretty eloquently.<br />
<br />
The most recent push has brought with it a much louder response, and with <i>that</i> a much larger list of alternatives, which I've compiled some basic information about <a href="https://matrix.snek.to/alternatives">here,</a> but the most notable of the bunch is Fluxer.  Like Bluesky, Fluxer isn't doing the Linux thing of being open-source to a fault.  It's <i>not</i> copying all of the weird trappings that open-source software seems to carry with it, not trying to attract weird computer freaks or privacy-conscious "alt-platform-ers" like so many others.  Their clear intent is to make an application that Regular Common People can use to do all of the things they'd expect to do on Discord.  It does, however, have a leg up on Bluesky in the sense that it <a href="https://github.com/fluxerapp/fluxer"><i>is</i> actually open source,</a> <i>will be</i> self-hostable in the near future (if the devs are to be believed), and actually has a path to financial stability for the sake of maintaining the large public instance that the vast majority of users will end up living on, that <i>doesn't</i> involve huge investments from venture capital or other whale investors (which it's laready gotten at least $300,000 from).<br />
<br />
That's the primary front other projects have so far failed on; finances.  Matrix is donation-supported.  Same with Mastodon.  These are all pet projects made by computer nerds in their free time (though Matrix does employ a number of people, somehow, despite financial troubles).  Given that our economic system is not yet one that would simply support services or resources necessary for people to live or be happy, any platform that wants to be successful beyond a proof-of-concept, that people have to figure out Linux and spend 30 hours troubleshooting just to get a slow piece of shit server running, will inevitably have to find some sort of income.  Donations are notoriously unreliable.  Fluxer's idea is to capitalize on whales with a more expensive $300 lifetime license for early buyers, and ongoing subscriptions basically matching Discord's Nitro plan 1:1, but with the benefit that people hosting their own server won't need to pay for the subscription in order to access all of the features.  It's <i>encouraging self-hosting</i> instead of punishing it.<br />
<br />
If they can maintain non-compliance with the ID verification laws going into effect, I suspect Discord will bleed users until it goes the way of Skype before it.<br />
<br />
<hr><br />
<br />
On the more human side of this issue, are people who seem far too comfortable damning us all to corporate hell forever, and who have no interest in changing anything.  Sure, complaining about an ID requirement is a "small issue," maybe it doesn't affect you and you're fine just giving up and linking your real-life identity to all of the shit you say online.  That's not the point.  Most people are not okay with this.  Most people do not care if some corp <i>says</i> the identifying features of the ID are never sent.  Trying to prove they're telling the truth is a pointless endeavor that benefits only people who want to siphon money from you at best, and we've seen nothing but reasons <i>not</i> to trust them up to now.  People are upset because they implictly understand where this leads to.  It's not about Discord being "evil," it's about government overreach and digital surveillance.  It's about corporate incentives and incompetence.<br />
<br />
Once companies can be made to comply with one super-invasive feature request, they can be made to comply with more and more until our digital ecosystem looks no different from our airports or borders.  People didn't fight that after 9/11 and the PATRIOT act, and now look where we are.  Once we are required to put ID in just to use a computer, as we are <a href="https://web.archive.org/web/20260306094353/https://news.ycombinator.com/item?id=47270784">actively looking at</a> with the <a href="https://web.archive.org/web/20260302221959/https://www.techradar.com/computing/software/californias-age-verification-law-is-proving-controversial-heres-what-you-need-to-know-and-why-some-linux-distros-are-in-the-firing-line">California Digital Age Assurance Act</a> and how it's impacting Windows and Linux, we're going to see massive increases in ID theft.  We've already seen data breaches with Discord's verification partners that exposed thousands of people, and far worse, <a href="https://web.archive.org/web/20260209053436/https://www.cpb.bank/insight-topics/2024/fraud/what-you-need-to-know-about-the-npd-data-breach/">far larger breaches</a> in the recent past (2024) that have exposed many, many more.  It is the path that will bring about what people think China's Social Credit system does (even though it's <a href="https://en.wikipedia.org/wiki/Social_credit_system#Misconceptions">not actually anything like that, and never was</a>).  The US does this fairly often.  Our media point the finger at other countries for being Evil Security Police States and claim they have Cameras Everywhere and it's Literally 1984, when the countries are nothing like that, then they turn around and do exactly what they describe right here at home.  License plate readers.  Facial scanning.  A camera on every doorbell and street corner.<br />
<br />
Corporate apologism on the part of the people hurts those who do it just as much as everyone else around them.  It's just another form of "Think of The Children!" or "It's For The Good of Everyone."  Yes, corporations employ regular people, obviously.  Yes, some of those people are referenced when it comes to implementing decisions like this.  The ones <i>actually making the decisions like this</i>, i.e. executives, are obviously going to utilize the people they've hired in order to fulfill their goals.  That's the entire point of our economic system.  Utilizing the fact that we are being forced at gunpoint (threat of job loss, subsequent homelessness or starvation, etc) to implement things that <i>nobody wants</i>, as a way to dull hatred for the very fact that this is happening is one of the worst own-goals possible.  Anyone saying this is only attempting to shift blame and shut down the conversation.  They are misinformed and misdirected.  People often make this argument from a place of "empathy" or "understanding," without realizing that they are giving their empathy not to the people being forced to comply with decisions they oppose, but to the uncaring corporate masters above them with their whips and chains.  I do not care that there are Real Human People involved in making this system - everyone knows that, it's completely irrelevant.  It's an argumentative trap to get you to shut up or to force you into arguing against the workers themselves, which completely derails the conversation from the original topic, as it has to this blog post.<br />
<br />
The same goes for those arguing "it's not a big deal, who cares, just comply."  Sure, maybe it doesn't affect <i>you, personally</i>.  Good for you.  Where's all that empathy you were just lavishing on the wealthy elites now that your friends are being blocked from communicating with each other because of something they have no control over?  Or those you'll <i>never meet</i> because you've allowed the ruling class to turn more of your rights into privileges?  "Fuck you, got mine" is not something you'd ever tell someone out loud.  Why allow it dictate your behavior?<br />
<br />
This sort of toxic mindset comes about, I think, because of American / Western politics.  We're sold the idea of a "left" and a "right" where the "left" is actually just a diet fascist conglomerate who exists to display token resistance to the "right," and the "right" is actually the farthest possible to the right you can go.  People who say the "right" is no good because they correctly identify that racism and genocide and imperialism etc are <i>bad</i>, but still align themselves with the "left" i.e. incumbent blue-ties fall into the trap of themselves becoming a chauvanist that hates their fellow man.  It's the mindset that breeds ideas like "LGB without the T," or the visceral opposition to any political activity except voting.  It's a collection of thought-terminating clichés exactly the same as those used by the farthest of the far-right, only instead of racism and class betrayal because "Them Things Is Stupid," it's racism and class betrayal "For The Good of Everyone."  It's the thought that you've been betrayed, not by the ones above you who have always had incentives to fuck you over, but by your neighbour.  Your friends.  Society.  It's a redirection of hatred from those making the decisions and making things worse for us onto people who might <i>compromise the position you have</i> in the "good graces" of your abusers by being so <i>radical</i> as to oppose policies that <a href="https://web.archive.org/web/20260301175942/https://www.americanimmigrationcouncil.org/blog/ice-deaths-shootings-2026/">fucking kill people,</a> instead of just throwing in the towel and complying.  If you would sacrifice an outgroup to the meat grinder to protect your ability to get fresh tropical fruit at any time of year, or your conception of gay marriage for whatever benefits that grants you, you have missed the actual enemy here, and have forsaken all of humanity for selfish interests.<br />
<br />
It's disheartening that people still fall for this, but unsurprising given the 100-some years of red scare bullshit we've had to deal with in this country, among other indoctrination people are exposed to throughout their lives as an American citizen.<br />
<br />
Alas, people cool off, dull the sharp edges on their stances, and forget as planned.  It's no longer "I'll never do that!", just "I'll find a way around it" or god forbid "It's not that big of a deal, we should just comply."  The entire point is to pollute the information surrounding the topic enough to manufacture consent or at least <i>apathy</i>.  Repeat the same comforting corporate nothings and what-ifs until people accept them as true instead of thinking critically or repeating the same retorts and long-winded explanations to the same short lies that keep being told.  "Only 10% of users will need to verify!  It won't affect you!  We have other ways!  You don't have to use your ID!  Your face isn't ever sent to us!".  They're just trying to get you to <i>give up</i> so they don't have to do something that hurts their bottom line.  That's ultimately what it comes down to.  Money and time.<br />
<br />
<hr><br />
<br />
Even if things are looking up at the moment, the immediate issue of the platform everyone is using (but not in control of) complying with invasive regulations isn't fixable without intermediary steps.  Incentives are misaligned.  People want things that are not realistic and have only been offered to the great detriment of all of humanity.  Many have been ground down so far that they don't have the effort to give just to sign up for some of these new platforms without a kick in the ass like the age verification scare, and even then, we've become too comfortable with the infinite storage allotted to us by our corporate overlords right within our Chat App, among other things that can never reasonably be provided by alternative platforms.<br />
<br />
We could, of course, fix all of the overarching economic systems that will ensure none of this is an issue in the future, but that requires a lot of education and self-reflection on everyone's part before the working people as a whole are able to break out of this miasma we're swimming in and give up the idea that We'll All Be Rich One Day if we Just Comply With The Boss.  It's never been true, and this generation might just be in the right circumstances to realize it more broadly.<br />
<br />
We will bring about an alternative to this hell.  A better future is possible.]]></content:encoded></item><item><title>Some good tunes</title><pubDate>Thu, 27 Jun 2024 21:52:51 UTC</pubDate><link>https://snake.computer/words/blog/personal/Some-good-tunes</link><author>cal@snake.computer</author><category>Personal</category><description>musique</description><content:encoded><![CDATA[Music is a wonderful way to connect with people.  I think even in the most disparate of people, similarities and differences in music taste can lead to a lot of interesting conversations about who you are as a person and your experiences in life, and how those fit into everyone else's.  If you are ever to make a '20 questions' template of some kind, you would be doing yourself a disservice to not include a question about music.  It's one of the foundational things that people connect with, like any other art, even for those who don't spend as much time on it as they may their hobbies.<br />
<br />
To say no more, I'd like to share some of my personal favorite albums, for everyone to peruse and compare and contrast against their own and others'.  When I've compared musical tastes with some of my friends, I've pretty often run into situations where I didn't know even half of the artists they mentioned.  I've included the year of release here as well- I think there could be some interesting conclusions drawn from these in my own and your musical tastes.  I have many questions that still need answers, about who I am and what made me the way I am - and exploring these, I think, is getting me closer to what I'm looking for.<br />
<br />
<a href="https://snake.computer/etc/coolmusic">https://snake.computer/etc/coolmusic</a><br />
<br />
I'm linking to another page on my site that contains these, because I intend to update this list from time to time, and because of the I wrote my blog system.  Post dates are pulled from the metadata (file modification time) of the text file that I store these posts in.  If you add ".txt" to the end of any of the URLs here, it'll link you directly to said text file.  This system is very weird in a lot of ways, but that's a tangent for a different day.<br />
<br />
Anyway, enjoy!]]></content:encoded></item><item><title>The old web makes me happy</title><pubDate>Wed, 12 Jun 2024 20:08:03 UTC</pubDate><link>https://snake.computer/words/blog/computer-junk/The-old-web-makes-me-happy</link><author>cal@snake.computer</author><category>Computer-junk</category><description>Thinkin about web goobers</description><content:encoded><![CDATA[I think pretty often about the "old web" and the stuff that existed around it.  I'm always wishing I was reminded more of it when it comes back up again, either seeing something like <a href="https://msx.horse/">em's weird blog-thing</a>, or <a href="https://obby.dog/">the sorts of stuff</a> that <a href="https://opossumvalley.neocities.org/">people on neocities</a> are still making.  There are a <a href="http://fier.me/blog/data/page/1.html">lot of sites like this</a>, though most of them are made by computer people specifically.  I suppose that creates a more consistent ethos and "vibe" around this sort of thing, but it feels a little more melancholy than when it was popular- only in the sense that it's more insular.  It's always fun to see and explore these things, like even the <a href="https://myspace.windows93.net/?id=39217">old</a> <a href="https://myspace.windows93.net/?id=475">myspace</a> <a href="https://myspace.windows93.net/random.php">remake</a> mostly seems to be internet people re-living the glory days.<br />
<br />
But, that does mean there's a whole collection of cool, weird nerds out there doing fun stuff with their computers, learning and experimenting and doing artsy things where normally there are only bland and functional sites like this one, or advertisements and consumerism.  And their weird art makes me happy.  People making cool things that they find interesting and showing them to the world, despite everything trying to stop them.  <i>This</i> is what the internet was for.  Tiny blogs, wikis, resources and art projects made by weird nerds, whether collaboratively or on their own.  That's ultimately how the internet that we know got started, as a bunch of university geeks making something to post messages to each other, that they called <a href="https://en.wikipedia.org/wiki/Usenet#History">Usenet</a>.  Inter-networking systems did exist prior to this, but I don't think the DOD's ARPANET really counts if it was meant to be secret.<br />
<br />
I want to make my site as interesting as these sorts of things some day, both visually and content-wise.  These things seem almost alien to most people nowadays, though I suppose that's part of the fun for some.  It's easier to find the nice ones because this type of <i>thing</i> is so rare in the first place.  there's really no room for lazy geocities ad dump sites or anything anymore.<br />
<br />
Maybe I should slap some of those little <a href=https://cyber.dabamos.de/88x31/">88x31</a> things on the bottom of my site somewhere.  The gaudy old-ness of web 1.0 calls to me.  As a very smart person once said, "please god let me see a marquee tag in the wild one more time I'm just about to finish"<br />
<br />
In all seriousness, it does bring me joy to see people indulging in old tech for the fun of it.  I hope whatever I make doesn't stay so boring forever, but I suppose I'm the only one that can change that.]]></content:encoded></item><item><title>RSS v the modern internet</title><pubDate>Thu, 25 Apr 2024 13:23:57 UTC</pubDate><link>https://snake.computer/words/info/tech-tips/RSS-v-the-modern-internet</link><author>cal@snake.computer</author><category>Tech-tips</category><description>A rant about Javascript and RSS, the two opposites of the modern web</description><content:encoded><![CDATA[It took me all of about an hour to go from not understanding literally anything about RSS to knowing how to set up a feed and actually implementing one with PHP.  Figuring stuff like this out, compared to the jQuery/React/Angular/etc. JS framework slop of today is like night and day.  Even with the degradation of modern search engines, I was able to look up the syntax for this and get a working document up and available within minutes.  I was able to hook my blog system up to it in under an hour.  Given, I only had to write like 30 lines of code, and this is a much simpler system than anything JS is used for these days, but do most websites really need all that crap?  This blog uses JS, sure, but less than 100 lines of code, and none of it is obfuscated or compressed.<br />
<br />
You'll have to forgive me but I have to provide background for this; why modern programming is so bad.  If I was to write this blog (program-wise) the same way modern web developers create websites, I would need 5 different programming languages: One to handle serverside code, another to generate HTML from a language that isn't HTML but easily could be replaced with HTML, and then three other languages and / or frameworks that compile into Javascript but aren't Javascript, for some reason.  I am old-school and do things the "old-fashioned way," but the new way seems to be pointlessly obstructive to actually getting anything done.  You need 15 different programs / scripts / tools to actually generate a fucking web page.  Why are people so desperate to force every new thing into their workflow?  Do they just need to feel smart?  What is the purpose of generating a page with express.js, with typescript as an extension to replace vanilla JS syntax, then routing that through handlebars, and using sass instead of vanilla CSS?  Then putting all of that garbage through webpack to obfuscate it and make sure nobody can even read the god-awful code you had to write and then waste clock cycles compiling just to show some text on your website?<br />
<br />
The cynical part of me wants to say this is all just Stockholm syndrome from developers who came from lower level languages like C and need to compile things to feel good or something.  Interpreted languages like PHP, Lua, JS, etc. are all much more efficient as standard because you don't need to waste time compiling your program and jumping around between 20 or 30 gigantic files to make one page or screen function.  Everything I've seen be set as a "standard" for """Enterprise Programming""" is just bringing old and inefficient requirements into modern high-level languages.  The benefits you get from this are often the same as someone speaking a regional dialect of English.  You get more shorthand phrases for things that you use often, that other people who see what you say will understand, but people who aren't from where you are will just think you're out of your fucking mind and not get what you're trying to say at all.  All of the things you can do with Angular or React or Express.js or any of this trash can necessarily be done with vanilla Javascript.  Why not just save time and use normal JS to do what you want?  It all compiles to that in the end anyway.  Same with CSS, just use CSS.  You do not need fucking SCSS or SASS or Tailwind or Chakra or any of this other ridiculous shit with names as pretentious as these.  If you really need to, just augment your CSS with JS.  CSS as standard is extremely robust and usable, especially with all of the modern features it has.  You should only very seldom need to use anything else on top of it to make it do what you want to.<br />
<br />
There are times where it makes sense to pull in dependencies, but almost always, it makes more sense to only rip what you need instead of piling on someone else's entire project as a dependency.  Sure, you can download a whole JS math library when you are making a graphing application if you <i>really</i> don't just want to generate or <i>pre-compute and store it</i> serverside, but you are additionally making every user download all of the extra garbage that you don't even actually use because you decided to be a lazy bastard and include the 1500 lines of unused quaternion math in the dependency you downloaded so you could draw a line that goes up because you don't even want to try doing it yourself, or at bare minimum going through the effort to rip out the parts and functions you are actually using.  Webpack is a band-aid for this, and in theory could be used to do literally exactly this, given it has a feature dedicated to removing unused functions, but it is rarely, if <i>ever</i> used this way, because it's easier to just configure it to compile your garbage code once and then ship to production.  Most people (companies) I've seen using webpack don't even seem to care or use it for the purpose of compression, it's all just done for obfuscation so people can't read how terrible their code is.  And they still end up with 10 or 20 different Javascript files linked in their page anyway, like they couldn't be fucked to set it up to combine files as webpack was <i>specifically designed to do</i>.  If you end up feeling like you need a framework to accomplish what you want, you are probably doing it the wrong way anyway!  Unless you are making something like a game or intensive 3d application, I have yet to see an actual logical reason anyone actually needs this much code to make their website work.  Youtube absolutely does not need to be as bloated as it is to play videos, even to buffer them and make the player work properly, even given that most of what Youtube does is just shoving ads into the content.<br />
<br />
Most websites are best represented with the phrase "skins for a database."  If you look at basically anything - a web store, a webcomic, a blog, <i>Twitter</i>; the pages the user sees are all just skins for segments of their database and file structure.  Any text displayed on a page, if it's not just stored in plain HTML or even just <i>text</i>, can be stored in a database in a row somewhere.  All your browser needs to do is display that text, optionally in a way that looks nice and behaves responsively.  A majority of web pages (blogs and review sites, news outlets, encyclopedias, technical documentation, corporate / business portfolios and contact pages, etc.) need to do one thing, and that is display text and / or images for you to read and look at.  This is incredibly easy to do and can be set up with little more than notepad and a few hours to get the design how you want, if you are a normal person who happens to know how to use these languages.  Yes, you need to set up the web server itself, but this is done <i>exactly once</i> and will not need to even be touched unless you set it up wrong the first time or you run into an issue at a later time.  There is absolutely no reason something like this blog or even my art gallery need to use anything more complicated than the bare minimum, standard web server software to make things work.  I'm not arguing here that everyone should learn C and try to write their own web server, but I do think "subcontracting" all of your page's functions to the same NPM packaged garbage you don't need is seriously handicapping people who might otherwise be actually competent developers.<br />
<br />
To that end, websites being "skins for databases" and all, it is incredibly easy to set up RSS to pull whatever you need it to when you understand this for what it is.  Setup for RSS is as simple as outputting some text, the same way you do for any other webpage  You're just using XML as a template instead of HTML.  RSS is as simple as filling out a form.  You can find templates incredibly quickly with a web search, even <a href="https://www.w3schools.com/XML/xml_rss.asp">W3 has one you can just take</a>.<br />
<br />
This used to be the gold standard for interfaces of any kind. Just comply with a template and start sending data.  E-mail used to be as simple as sending and receiving data to/from a server, in a specific format, over a dedicated set of ports (IMAP, POP3, SMTP).  Just like HTTP uses port 80.  Unfortunately for both, these are both marred by things like SSL/TLS for HTTP/S, where browsers now all but require you to have an SSL certificate for people to even be able to <i>access</i> your website, which, to people who are not familiar with <a href="https://letsencrypt.org/">Let's Encrypt</a>, costs money to do.<br />
<br />
Email specifically is especially egregious, with additional standards on top of the standard email protocol, like SPF, DKIM, DMARC, and DANE.  The most awful of all is the <a href="https://www.spamhaus.org/blocklists/spamhaus-blocklist/">Spamhaus block list,</a> which solely exists to prevent individuals from hosting email servers in their homes, which has not reduced spam seemingly at all, only leading to spammers using enterprise web hosts or paying for non-blocked IP ranges to send their garbage over, while preventing normal people from not paying these fees to use their own private servers to communicate with people securely, since Google, Microsoft, Yahoo and many others block every IP on this list without question, even though 99% of it is just residential IP address ranges.<br />
<br />
RSS should be the gold standard for communication.  It's so simple.  It's trustless.  It actually Just Works.  This is exactly the opposite of the way the web has gone, specifically because it's decentralized.  P2P protocols like bittorrent still work and are active to this day, but have been basically vilified and shoved to the far reaches of the internet because they're not so easily taken down by DMCA or other claims from soulless individuals working on behalf of organizations too big to be beholden to "personal responsibility," that rely on the power of a government to get what they want, for which the penalty for not complying with is "you don't get to have things or be alive anymore."<br />
<br />
Odysee / LBRY is the next attempt at what bittorrent did, but it's really just the same thing, with their website acting as a tracker would for torrents.<br />
<br />
Things could be so much simpler.  We don't <i>need</i> all this crap.  We don't need authorities on everything who run servers we are required to pay money to access just so we can access the internet and make this stuff work.  This barrier alone prevents a significant number of people from hosting their own sites, nevermind that there are little to no resources out there that will even mention Let's Encrypt as an option when searching for ways to use SSL.  The way these certificates are deemed 'secure' is entirely by appealing to a "Certificate Authority" anyway, i.e. they pinky promise that nobody is going to break into or abuse their server to generate fake signatures.  We <i>have</i> trustless ways to handle encryption and security.  All the CA is supposed to do is affirm that the server (IP address) you're connecting to is the one you're trying to get to via that domain name, so when you do the whole key exchange thing to initiate an encrypted connection, you know you're doing it with the right server.  You'd think we could just use DNS servers for this?  Of which there are already thousands?  Why do we need these new servers that cost all this money and charge us for certificates?  Why do those new server hosts need to then get their certificates list added to every major browser to function?<br />
<br />
We have systems like <a href="https://en.wikipedia.org/wiki/Domain_Name_System_Security_Extensions">DNSSEC</a> that literally already do this with DNS servers as mentioned.  No need for hosing people down for a little digital certificate.  Or, the already proven <a href="https://en.wikipedia.org/wiki/Web_of_trust">decentralized method</a> where you don't even need any kind of central server to do this crap.  Everyone gets to be an "authority" and you can just ask anyone else on the network, functionally.<br />
<br />
Just fuckin' let people send data, man.]]></content:encoded></item><item><title>Thoughts on blogs</title><pubDate>Fri, 19 Apr 2024 03:20:29 UTC</pubDate><link>https://snake.computer/words/blog/personal/Thoughts-on-blogs</link><author>cal@snake.computer</author><category>Personal</category><description>Discussion with myself about why I don't use the blog more; resolution to use it more often.</description><content:encoded><![CDATA[Feeling like I should use the blog more.  I like to keep my thoughts in my head, though I suppose that just makes me the wrong kind of person to keep a blog.  Nobody will really read these posts, I'm sure, unless their search engine somehow dumps them here.  I'll have to find a reason to use this.  Maybe I'll figure out how to create an RSS feed for all the little text files in here, that'll give me something to do at least.<br />
<br />
If you'll allow me to muse for a bit, "blog" is apparently a bastardized portmanteau of "web log."  I don't really have anything to keep a log <i>of</i>.  That's not to say I am or am not a particularly boring person, but I don't really see many of my little experiments as worth taking notes on.  My life's work has been filling my brain with knowledge so I can become better at the skills I have, and gain new skills more effectively.<br />
<br />
Maybe It's time to share some of that knowledge, I suppose.<br />
<br />
The other big thing keeping me from doing so is the whole "conflicting standards" issue.  I'm always afraid someone else has already done it, so I don't want to create competition with whatever someone else is already doing - plus, if I get anything wrong, that's no good.  I suppose it's never really <i>bad</i> to have a second opinion, though.  Perhaps I have forgotten to challenge older ideas again, and I've ended up with swiss cheese logic clouding my brain as usual when this happens.  There's a good proverb to spread around.  Don't let any good idea go un-challenged!  Things I have assumed to be a constant seem to pretty often not be, and I just forget that and end up acting like a dumbass.<br />
<br />
I'll figure out something to post here.  If even one person is helped by what I can write, I might as well do this instead of sitting and rotting as my days waste away, when I can't work out or do something more productive.  Maybe I can even make this <i>fun</i>.]]></content:encoded></item><item><title>first post</title><pubDate>Sat, 11 Nov 2023 10:29:22 UTC</pubDate><link>https://snake.computer/words/blog/personal/first-post</link><author>cal@snake.computer</author><category>Personal</category><description>The first post on the blog.</description><content:encoded><![CDATA[First post to my blog that I just finished!  hopefully everything Just Works!  seems like it is.<br />
<br />
I can still make newlines so that's something.]]></content:encoded></item>	</channel>
</rss>