Tricking software into working since the 1980s. I do all kinds of tech things. Here you'll find: rants, ops/devops, web, iOS, microcontrollers, electronics, food, beer, opinions, and whatever else is on my mind + in the conversation. Technology at Studioworks: studioworks.app I've opted in to making my posts searchable.
Public Key
npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Profile Code
nprofile1qqsd6sy3gz3xsg0ve9rge6a7fx2w6k9mhk7ku4yh79wqq8haeuvmfjcpz3mhxue69uhhyetvv9ujuerpd46hxtnfduqs6amnwvaz7tmwdaejumr0dshctjyf
Show more details
Published at
2026-05-10T20:16:53Z Event JSON
{
"id": "4737da7ff92eedced6af8a38ea589dd2bbe86a3c67ecbc8d18766dc90d837e80" ,
"pubkey": "dd409140a26821ecc9468cebbe4994ed58bbbdbd6e5497f15c001efdcf19b4cb" ,
"created_at": 1778444213 ,
"kind": 0 ,
"tags": [
[
"proxy",
"https://scoat.es/users/sean",
"activitypub"
],
[
"client",
"Mostr",
"31990:6be38f8c63df7dbf84db7ec4a6e6fbbd8d19dca3b980efad18585c46f04b26f9:mostr",
"wss://relay.ditto.pub"
]
],
"content": "{\"name\":\"Sean Coates\",\"about\":\"Tricking software into working since the 1980s.\\n\\nI do all kinds of tech things. Here you'll find: rants, ops/devops, web, iOS, microcontrollers, electronics, food, beer, opinions, and whatever else is on my mind + in the conversation.\\n\\nTechnology at Studioworks: studioworks.app\\n\\nI've opted in to making my posts searchable.\",\"picture\":\"https://cdn.masto.host/scoates/accounts/avatars/109/287/738/299/254/982/original/af83b83acc7f320b.jpg\",\"banner\":\"https://cdn.masto.host/scoates/accounts/headers/109/287/738/299/254/982/original/d9b6841f92a74b6f.jpg\",\"nip05\":\"[email protected] \",\"fields\":[[\"Twitter\",\"@coates\"],[\"Location\",\"Montreal\"],[\"Web\",\"https://seancoates.com/is\"],[\"GitHub\",\"https://github.com/scoates\"]]}" ,
"sig": "98f3d82d08884a52ea2efa7a1d3280c506f26f967f777d17ad4696daacd9c1fa66b6783c31772eadad55f614c69924bda30bdfe116b20ecb482593d3f9c594c1"
}
Last Notes npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates Regularly, I use the following for near-realtime communications ("text messages”). - SMS/RCS/iMessage (friends, family) - Facebook Messenger (friends, family) - What's App (friends) - ActivityPub/Mastodon (friends) - Matrix (friends, work) - Discord (work) - Mattermost (friends, locals) I'm sure I'm missing some. The fact that no one is allowed to make a single piece of software (for wide distribution) that talks on all of these systems is the kind of garbage @nprofile…ugpy often talks about. npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates Okay, I think this thing is ready-enough to tell people about it. I made a #BBS to watch aircraft near #YUL (#Montreal airport), through my home #ADSB antenna setup. It's a #Swift NIO based app that runs on a #RaspberryPi (3) in my office network closet, so please play nicely. SSH (or telnet): yulbbs.via.sc Near #CYUL , it broadcasts on #Meshtastic (unencrypted channels: `yul-traffic` + `yul-alerts`), but also at: @nprofile…uuqx and @nprofile…hfzw . (*BBS: æsthetic-wise, at least; no messaging) https://cdn.masto.host/scoates/media_attachments/files/116/115/799/839/119/189/original/06bb4caa0951b3f3.png https://cdn.masto.host/scoates/media_attachments/files/116/115/799/945/558/748/original/5f44fe56d5ecebbf.png https://cdn.masto.host/scoates/media_attachments/files/116/115/800/026/670/167/original/b889a610f688fc77.png npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates Just picked up an in-person ticket for #FediMTL https://fedimtl.ca . #Montreal tech friends: see you there? npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates @nprofile…mej2 @nprofile…3a42 I have one from 2026-Jan-08. Too late, or does that help? email: sean at seancoates dot com npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates Fun to see @nprofile…998y speedrun his enshittification sermon on The Daily Show last night. https://youtu.be/d2e-c9SF5nE?si=zeuSalpXhXt9irmJ npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates I’ve started to wonder if our joyful “the cardinals are at the feeder” has a bird correlation of “the humans are at the window” that also evokes joy? https://cdn.masto.host/scoates/media_attachments/files/115/696/660/325/057/103/original/33a09a8dfb93f50e.jpeg npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates Can't wait for my dishwasher to send Rinsed 2025, the traditional year-end wrap-up. I hope it includes that one extra-chunky lasagna pan. It's gonna be especially great because I replaced the utensils basket in June or July. 😍 How many pounds of detergent do you think I used this year?! How many loads did I run with the rinse agent depleted?! I'm on the edge of my seat over here! npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates Oh wow; @nprofile…rv3x on Tested with Adam Savage, showing off her pop-up book Alphabet in Motion. This is the first I've really seen of the book other than the Kickstarter updates, and it looks amazing. Pretty sure my copy is on the way. What an accomplishment! https://www.youtube.com/watch?v=eKCcqlJnZcA npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates We put out a new Studioworks website yesterday. It does a much better job of highlighting our product, team, and ethos. Really happy with how it turned out. (Free trial if you use my link, below.) Tell your friends! https://studioworks.app/join/sean npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates @nprofile…mmpy I have’t had to deal with it, personally, in a long time, now, and I’ve seen some more modern Ruby that has better practices… …when I last touched it, it was barely readable. Seemed to be overrun by the “I don’t like using my keyboard any more than strictly necessary” crowd. …and Bundler (at least at the time) was a giant turd (that’s certainly improved with widespread containers). I hope for them that things are better now. I’ll just continue to give it a wide berth. npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates Just had to upgrade my solo instance of hosted Mastodon from the smallest plan (est. 5 active users) to the next size (est. 20 active users), due to database storage exhaustion. I’m still happy to pay someone else to deal with Ruby, and it’s certainly worth $9/month… …and I’m also happy when it happens, but this is totally the fault of the network effects of the occasional @nprofile…qz4x boost. (-; npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates @nprofile…w92h This is earlier than that, and for a different technology, but the media and amount of IMPRESSIVE certainly has some overlap: https://youtube.com/shorts/wnygGr1toD8?si=HTA_nKIT_MgtoeU8 (longer-form of actually building the harness toward the end of this one: https://youtu.be/3h5wD2Rv3ps?si=gcO4feamFHe2dTQZ ) npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates Don’t do math without a test suite, kids. npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates @nprofile…mmpy @nprofile…kfyd Nice! We saw some (maybe even the same pod?) up near Anvil Island at the start of July. We didn’t get nearly that close, though. A really pleasant surprise. npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates I need a stronger word than “exhausted” to describe trying to survive the constant technology rug pulls. Maybe you could—instead—make a product that provides a valuable service in exchange for hard-earned money? I really don't want to have to constantly worry if my inputs will be used to train cannibals or exploit kindergarteners or whatever. Oh, and it's okay for you to get SOME of our money without trying to take ALL of it at every single opportunity. What’s even left? Just Linux…? npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates @nprofile…mmpy I think maybe you read “good idea” where I wrote “joke idea”? (-; npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates I’ve been kicking around the joke idea that AI is the Crocs of computing (cheap garbage marketed as high fashion to children and super trendy for no lasting reason), but now I saw this cross my feed and I’m a little worried that they’re in my thoughts. https://www.theverge.com/microsoft/717965/microsoft-crocs-windows-xp-bliss-wallpaper-theme npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates Engine Yard, which I think I haven’t used in almost 15 years: "As part of a scheduled maintenance upgrade to improve security and performance, we’ve reset access credentials across the platform.” Right. Totally scheduled. *wink* *WINK* Pretty sure I dislike being lied to more than I dislike the security event that caused them to send this kind of email to dormant users. npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates For many of the days of my career, the most important task I’ve had was to say “no”. It’s really more like “No, not that way, but let’s find a solution.” Saying “yes, here’s some code to do the thing you asked, even though you should DEFINITELY not be doing that thing because it’s dangerous for you and your users” is how someone (or some machine) who is not [yet] good at this job acts. https://mastodon.social/@raiderrobert/114947733968044699 npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates Trying *really* hard to make, launch, and market an online product without the normal “industry standard” hostile-to-users gross practices like surveillance and pricing/offering trickery. I’ll be truly heartbroken if this doesn’t work. npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates A big part of why everything is worse than it was is that we’ve let a relatively very small number of people and businesses become rich enough to buy up the good things and make them worse than they were before. npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates “Ghislaine” is pronounced like “shiz-LEN”* (thymes with “fizz-TEN”). Not guh-leen or guiz-lane or whatever else the talking heads are saying. Tell your friends. * it’s really more of a soft “j” not exactly “sh” but that’s a tough sound to start a word with for monolingual English speakers. npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates @nprofile…utw6 @nprofile…dhpg Only acceptable reading materials for American school children (+ adults with the intellect of children): - Kid Rock lyrics - Pauline epistles + the smiting parts of the OT - the first 40-50 (and not more) words of house bills - bouncing captions at the bottom of Tik Tawk USA™® videos - the back of cereal and fireworks boxes - fast food menus - the *good* constitutional amendments - label next to binding arbitration checkboxes - all forms of advertising (required) npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates @nprofile…utw6 @nprofile…l7u7 @nprofile…8fwd psst: it’s going to be much less than 2 years when everyone figures out that no one and nothing can maintain their “vibe code”. npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates If you’re an ad person at Taco Bell and you’re not seriously ramping up a chicken taco campaign right now (hint: use the orange dorito shell), you’re not doing your job. npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates @nprofile…fa5p This is much better than the Interruption method. I didn't want to pile on with the complainers, but I'm glad you listened. https://cdn.masto.host/scoates/media_attachments/files/114/588/706/747/540/913/original/4e221aa3ca5e80b7.png npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates Remember when XML-RPC got cool so everyone rushed to haphazardly attach endpoints to their stuff? And then how also everyone found that maybe they should have rushed less to a more complete solution that actually took care of things like… security? Ok, now: MCP. npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates @nprofile…240e @nprofile…hq4y To be clear, I was not saying "it's okay because everyone does it"; that's a garbage opinion every time I hear it. I just think it's happening anyway—indeed just like Walmart. (We're not actually disagreeing here, I think.) npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates @nprofile…hq4y I recognize that this is a pain point, so please believe me that I'm not trying to convince you this is okay… but… does it make a difference if reachable people keep using LLMs? This wave of investment and inertia seems to be too big for any (even exceptionally large) group's boycott to change history. Seems like powerful people and dumptrucks of money will make this happen no matter what endusers do, at this point. (And yep, it totally sucks. Not denying.) npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates I'm failing to connect the dots, but there's definitely a good Matryoshka related “You might not have 30 dolls; you'll have 3 dolls” meme out there waiting to happen. 🪆🪆🪆 npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates I know that there are technical and policy restrictions on how CBC and Elections Canada serve their website content, and I also know that election night is a peak far above normal levels, but… I'm certain that I could solo the architecture on these things to make them perform at levels higher than Canada's population, if I was allowed to use tools of my choice. Generate the content on a fast schedule, heavily cache close to the requests on a CDN, and carefully serve the rest as static assets. npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates Trying a little #canada voting experiment today. I’m about to leave my house to walk to my polling station. I’ll #vote there and return home. When I press send on this, I’m walking out my door. Watch for a reply when I get back to see how long it takes. #cdnpoli npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates @nprofile…mmpy Yes! Thank you. The @nprofile…8snm one. npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates @nprofile…mmpy Oh yeah. I was hoping for tips on how to load more history, but if people are up for a search: it was about the dread of updating software. How in the past, app updates or new hardware was super exciting, and now it's become "oh no, what are they going to take away from me this time?!" "Are they going to track me and show ads in this version?" "What new enshittification awaits me tomorrow?" npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates I'm trying to track down a post I saw come through my timeline over the weekend (I think; maybe before). I neglected to favourite it at the time, so it's not in that list. I think it was probably a repost of someone I don't follow, by someone I do follow. Scrolling to the end of my feed in both Mona and on the Mastodon web UI, I only get ~3 days. I need to go back further. Any tips? The post has been haunting me. npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates Imagine a high-profile software project so ill-conceived that it's going to make the launch of healthcare dot gov seem like it was a raging success. This has some real "nah bro, we're way too good at this to be subject to Dunning-Kruger" energy. If you rely on this system, you might want to see if your bank will let you set up an account alias as `[object Object]`. https://www.wired.com/story/doge-rebuild-social-security-administration-cobol-benefits/ npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates Sometimes I run into GitHub profiles that look like this and something in me wants to reach out to make sure they're okay. https://cdn.masto.host/scoates/media_attachments/files/114/215/246/377/312/429/original/dc1ab2f3186d5593.png npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates In a parallel timeline, our browsers would have remained actual user agents. We would not have allowed Big Tech companies to turn *our* user agents into *their* agents. If our browsers truly gave agency to us, the users, we could have the browsers themselves negotiate cookie permissions, and we would never need to see or use the banner scourge that we're greeted with on nearly every distinct site, today. I'm sad I missed that jump. npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates If you've got any experience at all, you know the following about programming: - a lot of documentation is incomplete (and much of THAT is outdated) - many answers to questions (think Stack Overflow) are incomplete + outdated, but also incorrect and insecure - many "answers" are for a question that is not really what was asked - a lot of existing code out there is incorrect and insecure So… maybe don't think that AI which learned from these bad references can actually replace not-bad coders. npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates @nprofile…3m86 Look, I think tipping is a really stupid thing we do as a society, but it is part of the social contract when going to a restaurant. I wish we collectively didn't do it at all, but we do. npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates @nprofile…3m86 Unfortunately, yes. It's really not the kids working there that are the problem, it's the lack of adult supervision. We paid, tipped, and simply won't return. npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates If no one at your restaurant, from the line cook all the way to the hands that bring this to the table, have the authority or aptitude to reject a broken hollandaise, maybe don’t charge $24 for a breakfast plate. When people say “half of all restaurants fail in the first year”, I maintain that this is because people are bad at running more than half of all restaurants. End rant. (-: https://cdn.masto.host/scoates/media_attachments/files/114/088/805/381/567/887/original/3778031cd66eb9db.jpeg npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates Smarter Every Day has a new physical product (addressed to Patrons only, so I'll honour that by not sharing specifics here). It seems like it's probably a good product. Part of the schtick is "made in America." Ok, I get it. Three months ago that would have been fine, honestly. But the tool has an obnoxious American flag badge featured on it (not just marked "made in USA", but really in-your-face patriotism). As a Canadian: I'm definitely not buying one of *those*. Especially not right now. npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates @nprofile…fpdp @nprofile…mmpy @nprofile…wuyc I agree that "unpopular" is a terrible reason to revoke citizenship, but I signed this one. It's about participating in a regime that has repeatedly stated they wish to annex our sovereign nation (which would require an invasion)—"preparatory to waging war against Canada." By my [amateur] reading of Criminal Code (R.S.C., 1985, c. C-46), it's High Treason. (+Yes we should tax the shit out of them.) https://laws-lois.justice.gc.ca/eng/acts/C-46/section-46.html npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates @nprofile…dhpg @nprofile…mmpy @nprofile…yupt @nprofile…29xr @nprofile…hq4y I was in some kind of limbo where it was waiting for approval to follow, but then when I tried again it just went straight through. 🤷♂️ computers! npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates @nprofile…mmpy @nprofile…dhpg @nprofile…yupt @nprofile…29xr I had to refollow. I think maybe he changed to a home server (he mentioned he was going to give that a try), and it didn't carry followers over very well. Or something like that. /cc @nprofile…hq4y npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates @nprofile…mmpy iT hAs NoThINg tO DO wItH tHe RecEnT uNioN aCtiViTy!!!1! npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates Idiots: we should be able to do what we want with our own air and our own carbon emissions and our own personal freedoms! Also idiots: that smoke from Canada from the fires in Canada is really getting in the way of me enjoying my personal freedoms in not-Canada! Stupid Canada. npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates No matter what you think of the #WordPress 100-Year Plan, I sure hope you can get behind any sort of medium- and long-term thinking in our industry. Committing to anything beyond next quarter, really, is something to applaud. Investing in tomorrow? Sounds great. https://wordpress.com/blog/2023/08/25/introducing-the-100-year-plan/ npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates Found this photo from 2019 that perfectly captures what #[0] is like this time of year when the giant piles of #[1] are melting into a disgusting mess. https://cdn.masto.host/scoates/media_attachments/files/110/113/017/753/471/781/original/7409140a6367f153.jpeg npub1m4qfzs9zdqs7ej2x3n4mujv5a4vth0dade2f0u2uqq00mncekn9s3qkrhl Sean Coates “What happens if an irrational rich man buys [x]" is, unfortunately, now part of the de facto threat model when evaluating software/services.