<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
	<channel>
		<title>v buckenham</title>
		<description>v buckenham's blog</description>
		<link>https://v21.io</link>
		
			<item>
				<title>A talk: How To Find Things Online</title>
				<description>&lt;p&gt;&lt;em&gt;This is a talk given at the Pervasive Media Studio for their lunchtime talks series. It is therefore written to be read. You can also watch the recording of the talk if you like - it takes the rough form of this post, but I think I landed a joke or two more than are on the page.&lt;/em&gt;&lt;/p&gt;

&lt;iframe width=&quot;560&quot; height=&quot;315&quot; src=&quot;https://www.youtube.com/embed/SZijxscJCoQ&quot; title=&quot;YouTube video player&quot; frameborder=&quot;0&quot; allow=&quot;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share&quot; allowfullscreen=&quot;&quot;&gt;&lt;/iframe&gt;

&lt;p&gt;Hello, hi, I’m v buckenham, I’m an artist &amp;amp; game designer, and general person who uses the internet and thinks about the internet a lot. I make a lot of software tools that let people make other things, and I think a lot about how people interact online. As a plug for later, I’m currently making a game making tool called Downpour, which is super cool &amp;amp; you can playtest if you stick around for First Fridays later on.&lt;/p&gt;

&lt;p&gt;But that’s not what I’m here to talk about today.&lt;/p&gt;

&lt;p&gt;I’m here to talk about how to get the carrot cake from Otis in The Secret of Monkey Island.&lt;/p&gt;

&lt;p&gt;So, it’s 1991 and you’re playing The Secret of Monkey Island. It’s a game about walking around and clicking on things and hearing funny dialogue and trying to solve puzzles by combining various objects. It’s a pretty cool game! It’s very funny. But the puzzles are… sometimes obtuse. So you’re stuck, and this is a time before you have an internet connection. So what do you do?&lt;/p&gt;

&lt;p&gt;Well, if you were in the US, you might call a hint line! You ask for your parent’s permission (because it’s expensive), and you dial the special number, and then you either talk to a real person on the other end, or else you go through a little phone tree. And then it tells you to give him the gopher repellent to get past.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/assets/blog/how_to_find_things_online/hint_line.png&quot; alt=&quot;Advert for the Sierra hint line&quot; /&gt;&lt;/p&gt;

&lt;p&gt;So this talk was billed about being about AI. I’m gonna get to that in a bit. But I’m using games as a framing device for this kind of history of how people could find out information as the internet has progressed. And how that information came to exist in the first place. Just keep that in mind that when I am talking about the gopher repellent, maybe I’m actually talking about, like, identifying a bird. And when I talk about the hint line, maybe I actually mean buying a strategy guide, an encylopedia, a telephone directory, talking to a librarian or putting an ad in the local paper.&lt;/p&gt;

&lt;p&gt;So, in this example, we don’t yet have the internet. But information still exists! People know how to get past this puzzle. And if you didn’t know this information, if you couldn’t figure it out yourself, then what could you do? You could ask a friend. If you knew someone who knew this information, then they would probably tell you. And they would do this because people like to be helpful. If we wanted to get reductive about it it’s because providing small bits of assistance to other people is a way that people bond and form social relationships with each other. And forming social relationships is a thing that people love to do. It makes people feel good, and it means when &lt;em&gt;they&lt;/em&gt; get stuck later on maybe you’d help. Reciprocity.&lt;/p&gt;

&lt;p&gt;But maybe the person who knows how to get past doesn’t want to tell you, maybe this is a playground power games thing and they wanna keep this knowledge secret to exercise some power or because they think it’s funny to watch you struggle, or because you didn’t tell them how to beat a different game. Or you just don’t know anyone else with this game.&lt;/p&gt;

&lt;p&gt;Well, then you could phone up the hint line or buy a guide to the game down in WH Smiths or write in to a magazine. And these ways will answer your question, and they will do so for a fundamentally economic reason. They want you to give them money, and in exchange they will provide a service to you. Even if the hint line was free, then it would be run by the games company, and they’d do that so that you’re more likely to buy their next game.&lt;/p&gt;

&lt;p&gt;Okay! So. The Internet. Or “the World Wide Web”.&lt;/p&gt;

&lt;p&gt;The founding of the Internet is a complicated story and honestly we don’t really need to get into it. Even the distinction between the web and the internet is kind of complicated. To summarise, let’s just say that people invented websites, and they were academics, and they were the kind of people that made logos like this&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/assets/blog/how_to_find_things_online/LetsShare.ai.gif&quot; alt=&quot;Very aliased logo reading: WWW - Let's Share What We Know&quot; /&gt;&lt;/p&gt;

&lt;p&gt;I think that’s beautiful.  It’s that impulse from before, about the kid on the playground who tells you how to get past the puzzle. Why should they want to? Because they want to help, and they want to share what they know. And this urge online is a bit more abstract, it’s not just helping one specific person who you know and who you hang out with at lunch break. It’s helping… anyone. Without having to know who they are. They can ask their computer to make a HTTP request to your computer and your computer will automatically respond with a document, and then they can read this document, and answer their question. Gopher remover.&lt;/p&gt;

&lt;p&gt;And like, this is not all there is to it. The people who made the internet did not do this purely out a love of humanity, although that was definitely a factor. They did it because they were academics, and being an academic means that you are paid to share knowledge. And you are rewarded for having your knowledge used. And since the invention of the Internet, people have invented things like “impact factors” and h-index scores, which measure how often other academics use your knowledge by which we mean cited your papers in their papers. Which of course is a similar thing that has become a totally different thing since we started measuring it and rewarding people for it.&lt;/p&gt;

&lt;p&gt;But, anyway, the academics who invented the internet did not do it to share solutions for Monkey Island. But the good thing about the internet is that you can put whatever you like on there, and pretty soon the kinds of people who like games about &lt;a href=&quot;https://strategywiki.org/wiki/The_Secret_of_Monkey_Island/Sword-Fighting_Insults&quot;&gt;saying clever insults to pirates&lt;/a&gt; got on there, and of course they were going to help each other get past puzzles.&lt;/p&gt;

&lt;p&gt;So now it’s 1992, and you’re playing Monkey Island 2: LeChuck’s Revenge, and you got stuck on the waterfall puzzle. Then how would you get unstuck? Maybe you’d ask a friend who was also playing it, maybe in this hypothetical you are now at university and it’s someone who you’re in some student society with. But also, maybe you have the internet now, and so, pretty likely, you’d go onto GameFAQs and you’d look it up.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://gamefaqs.gamespot.com/pc/562680-monkey-island-2-lechucks-revenge/faqs/39678&quot;&gt;&lt;img src=&quot;/assets/blog/how_to_find_things_online/gamefaqs_lechuck.png&quot; alt=&quot;GameFaqs page for the LeChuck's Revenge walkthrough by Spatvark&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;And GameFAQs is incredible. It’s this huge website, full of text files, and each text file was submitted by a particular person. Giving a walkthrough for a game, or for a section, or giving advice on strategy. I love it in part because each entry so clearly shows the hand of the person who made it. Like this one&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://gamefaqs.gamespot.com/snes/588741-super-metroid/faqs/10114&quot;&gt;&lt;img src=&quot;/assets/blog/how_to_find_things_online/gamefaqs_justified.png&quot; alt=&quot;GameFaqs page for the Super Metroid, by rs1n&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;which is a fully justified monospace document. Which seems kind of boring until you realise that in writing this, he had to choose words so that each line would have exactly the same length. And also describe how to speed run Super Metroid at the same time. Incredible.&lt;/p&gt;

&lt;p&gt;And of course, I’m gonna turn to why he did this. Because he could. Because he wanted to show off. His name is on it, thousands of people have seen this and been impressed. And that’s why people wrote walkthroughs for GameFAQs. For status, to be helpful, to share their love of the game.&lt;/p&gt;

&lt;p&gt;Now, where we are chronologically is up to the first big dot-com boom. And GameFAQs was founded by a guy called Jeff Veasey, who ran it for the first 4 years as a side project, a thing he ran as a hobby while working in tech. But it brought in some money - there was a sponsorship with IGN, a network of games sites, and after that ended there were banner ads that brought in some money. And it kept growing, and in 1999 it became his full time job.&lt;/p&gt;

&lt;p&gt;Which… good for him! He’s performing a valuable service, and he’s getting paid to do it. Other people are doing the work of writing the walkthroughs, but he’s doing the work of keeping the servers on, doing moderation, upgrading the code, generally all the maintenance work that is needed to keep a machine constantly working. The internet is a place, but it is also a process, a set of responses that happen to particular signals, and he was keeping that going.&lt;/p&gt;

&lt;p&gt;And now for the bit of the talk that is just a confusing barrage of corporate acquisitions. So, GameFAQs was bought by CNET in 2003. In 2007, Jeff Veasey left the site. CNET was bought by CBS in 2008. Nothing happened for a while. And then in 2019, CBS and Viacom merged to form ViacomCBS (which is now known as Paramount Global, and which owns Paramount Pictures). And then in December 2020 Red Ventures bought all the CNET properties from ViacomCBS, including GameFAQs. And then finally on October 3, 2022 Fandom acquired a bunch of websites from Red Ventures, including Metacritic, GameSpot, and of course GameFAQs.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/assets/blog/how_to_find_things_online/acquistions.svg&quot; alt=&quot;Slide summary of the above text&quot; /&gt;&lt;/p&gt;

&lt;p&gt;And I should say that throughout all of this, GameFAQs has trundled on, less and less central in terms of videogame info, but keeping a committed core of users who liked to hang out in the message boards. Once a community gets going somewhere, people will hang on, making the space their own through all kinds of neglect and disuse. What are they supposed to do, go somewhere else and lose the community that has been a part of their lives for years?&lt;/p&gt;

&lt;p&gt;Okay, so we’re up to last autumn, and… what do you know, there’s a new Monkey Island game!&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://returntomonkeyisland.com/&quot;&gt;&lt;img src=&quot;/assets/blog/how_to_find_things_online/return_to_mi.png&quot; alt=&quot;Return to Monkey Island splash image!&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now, I should say that, in accordance with modern design sensibilities, the puzzles are less obtuse and there’s an in-game hint system. But nevertheless, let’s say you want to find out how to get past a bit of it. Where would you look today?&lt;/p&gt;

&lt;p&gt;I can think of a few answers.&lt;/p&gt;

&lt;p&gt;If you google it, you can find several websites that work in much the same way that GameFAQs did. Including our old friend IGN, which has survived through all these years.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://www.google.co.uk/search?q=return+to+monkey+island+walkthrough&quot;&gt;&lt;img src=&quot;/assets/blog/how_to_find_things_online/google.png&quot; alt=&quot;Google restults for &amp;quot;return to monkey island walkthrough&amp;quot;&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;For games websites, which are businesses, a large proportion of their traffic is stuff that comes through search. So, SEO, search engine optimisation, is important. Making sure you have the right keywords, trying to get backlinks, that’s a big thing. And just building out content that fits the stuff people are searching for. So most videogame news sites now have dedicated guides writers - people search for it, so they provide it. It’s basically the worst paid job of a badly paid industry, with the least focus on the writing quality/judgement.&lt;/p&gt;

&lt;p&gt;And games websites are competing with companies like Fandom, who started out as “Wikicities”, set up by this guy:&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/assets/blog/how_to_find_things_online/jimmy_wales.png&quot; alt=&quot;Jimmy Wales, as seen in WP donation banners&quot; /&gt;&lt;/p&gt;

&lt;p&gt;And Fandom has a wiki for Monkey Island!&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://monkeyisland.fandom.com/wiki/Monkey_Island_Wiki&quot;&gt;&lt;img src=&quot;/assets/blog/how_to_find_things_online/fandom.png&quot; alt=&quot;Homepage of the Monkey Island Fandom wiki&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Fandom runs many many wikis for different properties. And they’re pretty garbage, by all accounts? It is hard to move a community at the best of times, and they actively resist moderators who attempt to move their communities away - taking over the wikis that are run there to remove any reference to the community moving. And they’re good at SEO, so they stay on the top page of the results. For video game communities like Super Mario, there is an ongoing tug of war between the community run wiki and the Fandom wiki.&lt;/p&gt;

&lt;p&gt;And to look at why these sites exist - for Fandom, the company, it’s straightforward business. They gain money from the advertising on these pages, and they gain market value due to having higher traffic from many users. For people who actually write the wikis - they do it because they are in a community with other people, and they want to support that community. They want to share what they know, they want to support other people who are into the same weird thing they’re into.&lt;/p&gt;

&lt;p&gt;Okay, so, other ways you might find out how to solve a puzzle in Monkey Island these days. Youtube! You can go onto YouTube and find a video walking through the whole game. You can find lots of videos of people playing games on YouTube. Did you know!&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://www.youtube.com/results?search_query=return+to+monkey+island&quot;&gt;&lt;img src=&quot;/assets/blog/how_to_find_things_online/youtube.png&quot; alt=&quot;Search results for &amp;quot;Return To Monkey Island&amp;quot; on Youtube. it's mainly walkthroughs!&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;It’s pretty straightforward to understand why YouTube operates - they’re a crucial part of Google’s ad empire, which makes them a very large amount of money. Enough money they can pay the pretty considerable cost of storing and serving all those videos - I tried looking up how much storage space it takes up, and there’s no real consensus, but… exabytes? ie billions of gigabytes? multiple of those.&lt;/p&gt;

&lt;p&gt;And people who put videos on YouTube, why do they do that? Well, it’s wanting to be helpful. And it’s a desire for fame, or at least recognition. It feels good to have “numbers”, by which I mean an indication that people have seen a thing you have done and an indication they approved. And YouTube pays money. Usually small amounts of money, but enough that I know people who make a living that way. And even if YouTube itself doesn’t give you enough money to live on, getting popular on YouTube, being known - that leads to other ways of making money, like a Patreon, or commercial sponsorships for videos. But really the money is less in providing a useful service, like putting out a video showing how to beat a game, and more in providing a simulacrum of that sense of community that people like. Viewers watch at home, by themselves, but they feel like they are with someone charming and friendly and it gives them a sense of being with a friend. The term for this is “parasocial relationships”, and it’s really where the money is in terms of making “content” online.&lt;/p&gt;

&lt;p&gt;And the third way you might find out how to get past a puzzle in the new Monkey Island is… you’d ask someone. And nowadays if you want to find someone who has particular knowledge, you don’t have to hope to bump into them on the school playground, you can find them online. And so you can go to the Monkey Island Discord and you can ask someone for a hint&lt;/p&gt;

&lt;p&gt;And again, why would they give you that hint. Well, it’s for the same reasons we’ve discussed. People want that sense of community, and Discord is the place to get it. Why contribute to a wiki that’s full of ads and annoying to use and makes a big company rich? Why buy a load of video gear and learn how to edit videos? If you wanna share what you know and in return receive a sense of community, it’s best to do that in a small space that’s hard for someone to insert capitalism into. Where you can form actual two way relationships.&lt;/p&gt;

&lt;p&gt;And of course Discord is still a corporation and has it’s own incentives - news announced this week of how they were changing usernames has been generally taken as a sign that they are moving towards being a more open platform where communities will be a bit more exposed to the light.&lt;/p&gt;

&lt;p&gt;But this is a shift you can see across more than just games communities. In the world of social media, there is a general shift away from public-focused platforms like Twitter and Instagram and towards smaller communities built on mutual trust. In many ways I think this is a shame - there’s a lot of power in having information somewhere where anyone can see it, where what you know isn’t predicated on who you know. When it comes to information about how to get work, how to access things important for people’s lives, making connections…&lt;/p&gt;

&lt;p&gt;Okay! So that was last year. And now finally!! Let’s talk about AI. We’re in the future now!!!&lt;/p&gt;

&lt;p&gt;So, you might have heard, but in the last decade or so, AI has been having a real resurgence. The computers have gotten big enough for neural net techniques to be applied on a large scale. And the Internet has provided the vast quantities of data that they need to be trained on. There’s a bunch of different models out there, but I’m gonna focus on a type called “Large Language Models”.&lt;/p&gt;

&lt;p&gt;How do they work? Well, GPT works something like this:&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/assets/blog/how_to_find_things_online/llm_diagram.svg&quot; alt=&quot;diagram. 2048 letters of input goes to 800 gigabytes of connections which outputs One letter of output&quot; /&gt;&lt;/p&gt;

&lt;p&gt;These are basically a machine that is trained to guess the next letter in a sequence of letters. If given the sequence of letters H-E-L-L it’ll probably guess “O”. Or maybe a space. And the way you train them is that you give them some text, and you look at what it thinks is likely to come next, and you tweak the machine to make the thing that actually &lt;em&gt;does&lt;/em&gt; come next very slightly more likely. And you keep doing this, repeatedly, with all the text you can find, until it is very good at it.&lt;/p&gt;

&lt;p&gt;2048 letters of input, 800 gigabytes of connections (“hidden layers”), and one letter of output. It’s honestly not that important how that middle bit works for our purposes - just connections with various strengths that end up producing the right answer, and that, if they give the wrong answer, the people training it can tweak them until they do produce the right answer.&lt;/p&gt;

&lt;p&gt;And of course computer scientists have sweated over it a lot. How to structure that middle bit, how to turn “letters” into “math”, how to tweak the structure to train it, how to structure the training data, how to make the whole thing run just about fast enough &amp;amp; just about cheaply enough to be practical. And the interesting thing about a lot of these answers is that often the decisions are based on trying things and seeing how well they work rather than any kind of, like, really solid theory on why a particular thing is a good idea.&lt;/p&gt;

&lt;p&gt;And of course, once you’ve trained it, no-one knows where the information inside it is. It’s just… 800 gigabytes of “model”, there’s no part of it you can point to and say “here’s where it contains the word hello”.&lt;/p&gt;

&lt;p&gt;Anyway, that’s the machine, it’s a thing that guesses the next letter. And the thing about having a machine that is really good at guessing the next letter is that you can run it repeatedly to produce longer and longer strings of text. And if it’s really good at guessing the next letter, then those strings of text will look like text that people have written. So if you start a bit of text with “If a pirate says “I got this scar on my face during a mighty struggle!”, the correct reply is” then it might know that could continue with something like “I hope now you’ve learned to stop picking your nose.”. Somewhere in that big letter-guessing machine it encoded information about Monkey Island! We dunno where or how, but it needed to learn that to get good at guessing the next letter, so it did. I think it’s important to break this down a little like this, because so often people use the words “think” or “know” or “understand” and they’re useful shorthands, but they’re also kind of misleading when trying to understand what’s actually happening. The same as whenever someone says that evolution “likes” or “wants” something. There’s no desire here, there’s just… fitting better to the task.&lt;/p&gt;

&lt;p&gt;But at the same time, it’s pretty extraordinary how effective this machine, that is just trained to predict the next letter, how good it is at a whole range of things. Like, we’ve talked a bit about how it might tell you the right answer for an insult swordfighting puzzle, but it has internalised a lot more stuff than that. I asked one about me, and it knew some facts, which is kind of wild to me. And it’s not just regurgitating facts - it can obviously generate stories, poems, copy, text of all kinds. And you can also ask it to write code for you - it has digested enough code and enough tutorials that it can generate explanations of what’s going on with it or write new code given questions about what’s needed (assuming, in my experience, if it’s seen code like that before). And you can get even more out of it by asking it to talk to itself, explain what it’s doing to itself - that gives it a short term memory, and allows it to start planning things. Or if you tell it a format for interacting with the world - it will do those things, and use the information it gets back as prompts to write more.&lt;/p&gt;

&lt;p&gt;But again. It doesn’t think. It doesn’t learn. It doesn’t have a memory. It’s just fundamentally the probability of the next letter.&lt;/p&gt;

&lt;p&gt;(And if you’re wondering what the difference is between GPT and ChatGPT, it’s that ChatGPT has been finetuned (trained a bit more) to be better at completing text that’s shaped a bit more like a dialogue. People aren’t used to asking questions of a machine by writing the first bit of the answer and then waiting for the machine to fill in the rest of it - they prefer just asking the question and getting a response.)&lt;/p&gt;

&lt;p&gt;Anyway. For all this to work, we need to train the AI on a lot of text. The more text it sees, the better it gets at picking the next letter. So the companies that make these, like OpenAI and Google and Facebook, they feed it all the text they can get their hands on.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://www.washingtonpost.com/technology/interactive/2023/ai-chatbot-learning/&quot;&gt;&lt;img src=&quot;/assets/blog/how_to_find_things_online/websites_top.png&quot; alt=&quot;table - the websites used to train the Google C4 dataset. google's patent database is at the top, then mainly news sites&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Which in this case means… pretty much everything I’ve discussed so far this talk. GameFAQs is in there, all the wikis are in there,&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://www.washingtonpost.com/technology/interactive/2023/ai-chatbot-learning/&quot;&gt;&lt;img src=&quot;/assets/blog/how_to_find_things_online/websites_gamefaqs.png&quot; alt=&quot;table - the websites used to train the Google C4 dataset. search for GameFAQs, 3.8M tokens&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;So we can see, like 3.8 million words from GameFAQs in one common training set.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://www.washingtonpost.com/technology/interactive/2023/ai-chatbot-learning/&quot;&gt;&lt;img src=&quot;/assets/blog/how_to_find_things_online/websites_monkeyisland.png&quot; alt=&quot;table - the websites used to train the Google C4 dataset. search for Monkey Island, 420 tokens for the fandom wiki&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;And 420 words from the Fandom Monkey Island wiki.&lt;/p&gt;

&lt;p&gt;So. To return to our Monkey Island example, when the &lt;em&gt;next&lt;/em&gt; game comes out (and I should note that as far as I’m aware, they’re not planning on making another one), and we get stuck, and we decide to ask the computer how to get past the puzzle. And we type the question into a next generation search engine that is actually just a large language model. What answer do we get? And where does it come from?&lt;/p&gt;

&lt;p&gt;Well, maybe it’ll be helpful. Or maybe… it’ll just hallucinate something. And at this point in writing the talk, I tried to prompt ChatGPT to make some nonsense for me, and&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/assets/blog/how_to_find_things_online/chatgpt_moustache.png&quot; alt=&quot;I ask CHatGPT how to solve the moustache puzzle in MI6. it tells me MI6 doesn't exist&quot; /&gt;&lt;/p&gt;

&lt;p&gt;It didn’t fall for it. Annoying.&lt;/p&gt;

&lt;p&gt;But then I tried the puzzle from before&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/assets/blog/how_to_find_things_online/chatgpt_waterfall.png&quot; alt=&quot;I ask CHatGPT how to solve the waterfall puzzle from MI2. it makes up some shit about cracking open a rock&quot; /&gt;&lt;/p&gt;

&lt;p&gt;and it happily made something up for me.&lt;/p&gt;

&lt;p&gt;So yeah, this is actually pretty reasonable as an outcome, it “knows” what an adventure game is, and it “knows” what kind of format the answer would come in, but the actual answer is not encoded in those 800 gigabytes.&lt;/p&gt;

&lt;p&gt;But we’re setting this hypothetical in the future, not in the present. And maybe the model has gotten better. Bigger, more reliable. And, if it has read the answer somewhere online, then it can actually pick up the answer. Or maybe it has been fused with a traditional search engine, so it can look things up itself, “understand” what it reads and then return the answer to you. This is a technique many of the search engines are actually using these days, which helps with the bullshit problem, and also means it can answer questions that relate to stuff that’s happened since the model was trained.&lt;/p&gt;

&lt;p&gt;But here’s where I think things get a bit screwy - the question then becomes… why does someone write the walkthrough and publish it online? There’s already this shift from publishing information openly and without expecting reciprocity. And towards either a really corporate model, where you’re really trying to extract money from it. Or towards a much smaller group, where you’re talking within small groups of trusted friends. And neither of these groups has much incentive to write up stuff that can train AI models.&lt;/p&gt;

&lt;p&gt;For the groups of friends on Discord, or even studios running community groups… these communities exist because they are in relative privacy. They don’t want their chats to be public - in a search engine or inside a large language model. And there’s a tension here where the AI companies would &lt;em&gt;love&lt;/em&gt; to get their hands on this data, all this rich data about how people actually talk that would make their robots work so much better. So I think there’s an open question about how well the companies that provide these platforms, like Discord, will shield their users from this kind of disclosure. And there’s encouraging trends here, in terms of smaller group chats, like Signal and WhatsApp moving towards end to end encryption by default. And you can see greater awareness of data rights &amp;amp; the harms that can come from indexing on social networks like Mastodon. Obviously that’s a little skewed because it’s full of nerds (and full disclosure, so I am), but I think it shows the way that people are increasingly aware of this.&lt;/p&gt;

&lt;p&gt;But of course, the flipside to this is that we lose much of the sense of the “commons” that has characterised the Internet so far. You lose a lot of the serendipity that comes from logging on and suddenly talking to someone in another country, who maybe shares an interest in adventure games with you but is otherwise quite different. And once people are in smaller groups, then in-group norms can shift and become more accentuated from each other. If these are norms that seem kind of harmless then this is called a filter bubble and journalists wring their hands in The Atlantic about how it’s happening to them. And if these are norms that seem kind of racialised or scary then it’s called radicalisation, and journalists wring their hands in The Atlantic about how it’s happening to other people.&lt;/p&gt;

&lt;p&gt;Anyway, that’s one motivation for writing this information up somewhere where the AI can read it gone. What about the other main motivation, profit?&lt;/p&gt;

&lt;p&gt;For the companies like Fandom or IGN, they make their money from advertising to people who visit their websites. And, like, to state the obvious, but if a robot tells you the answer then you don’t have to visit the website. It is generally a pretty terrible time right now to be working for a website that tries to make it’s money from selling advertising space next to well written articles. I mean, not that it has been a good time for a good while now. But while people talk a lot about the threat caused by robots writing the articles, I can’t help but think that the problem of robots reading them is worse. And the kind of friction you might imagine between the AI models &amp;amp; the sites they’re being trained on is already starting to happen. Reddit, for example, has tried to stop AI models from training on their data (at least, without paying them).&lt;/p&gt;

&lt;p&gt;But there are other business models out there. Remember, way back when we were using the telephone to find out answers? Those lines were often run by the companies who made the games. So there’s still a reason for the people who make products to make websites. Even if people don’t read it, you start writing for the robots. And you see this already, don’t you, the little grey text at the bottom of the shopping page that is clearly written not for people to read but for Google’s crawlers? Well, no doubt the same thing is going to happen by for telling Large Language Models specific facts about the world you want them to internalise. Is it unethical to publish a lot of fake reviews for your product if you never meant any human to look at them? Is it unethical if they’re fake negative reviews for your competitors? And people are doing this today, in little jokes, like:&lt;/p&gt;

&lt;blockquote class=&quot;twitter-tweet&quot;&gt;&lt;p lang=&quot;en&quot; dir=&quot;ltr&quot;&gt;While playing around with hooking up GPT-4 to the Internet, I asked it about myself… and had an absolute WTF moment before realizing that I wrote a very special secret message to Bing when Sydney came out and then forgot all about it. Indirect prompt injection is gonna be WILD &lt;a href=&quot;https://t.co/5Rh1RdMdcV&quot;&gt;pic.twitter.com/5Rh1RdMdcV&lt;/a&gt;&lt;/p&gt;&amp;mdash; Arvind Narayanan (@random_walker) &lt;a href=&quot;https://twitter.com/random_walker/status/1636923058370891778?ref_src=twsrc%5Etfw&quot;&gt;March 18, 2023&lt;/a&gt;&lt;/blockquote&gt;
&lt;script async=&quot;&quot; src=&quot;https://platform.twitter.com/widgets.js&quot; charset=&quot;utf-8&quot;&gt;&lt;/script&gt;

&lt;p&gt;And there are measures the new search engines can take to try to prevent this - this text was fully invisible, but that SEO spam text has to be visibile to be picked up on. But ultimately it’s an arms race between the spammers and the people running the LLMs, and I think on this one the LLM people have a bit of a disadvantage - because they don’t know how their machines work, and have to discover things about them experimentally, just the same as the spammers.&lt;/p&gt;

&lt;p&gt;And I guess this is my overwhelming message here - that the crucial thing with AI is the data it’s trained on, and the crucial thing for that is the reasons people create it, and the way that it exists in a wider ecosystem. I’m pretty down on AI in this talk, and fundamentally that’s because I don’t see how these new AI interfaces loop back round and motivate the publication of more training data. By which I mean, people sharing what they know for other people.&lt;/p&gt;

&lt;p&gt;And maybe AI will solve this, maybe we’ll have AIs that play the games themselves and generate walkthroughs, and AIs that read scientific papers and write accurate press releases for other AIs to digest. But without the kinds of feedback mechanisms that come from having people reading other people’s work, it’s pretty easy to see how that could become pretty weird pretty quickly. Or maybe we’ll get stuck in this kind of 2023-era, where the weird turns of phrases we use now get locked in forever, as later training sets start getting filled up with AI generated text that recreates the phrases we use now.&lt;/p&gt;

&lt;p&gt;And the other way to look at this, really, is not about AI at all, but seeing this as the continuation of a gradual corporate incursion into the early spirit of sharing that characterised the internet. I say incursion but maybe the better word is enclosure, as in enclosure of the commons. And this positions AI as just a new method by which companies try to extract value from the things people share freely, and capture that value for themselves. And maybe the way back from this is being more intentional about building our communities in ways where the communities own them. GameFAQs was created to collate some useful stuff together for a community, and it ended up as part of a complicated chain of corporate mergers and acquisitions. But other communities experienced the kinds of upheaval that came with that, and then decided to create their own sites which can endure outside of that - I’m thinking here especially of Archive of Our Own, the biggest repository for fan-writing online. And incidentally, the source of 8.2 million words in that AI training set, larger even than Reddit.&lt;/p&gt;

&lt;p&gt;And there’s a lot more to talk about with AI, and the weird things going on in that space. Even just with LLMs, there’s stuff about fine tuning for different tasks, the explosion of open source models, prompt injection attacks and how impossible they seem to be to mitigate… And outside LLMs there are obviously models that make pictures, understand video, do all kinds of different things. But I still I always return to the same question with AI - where does the training data come from? And, if this AI thing catches on, where will it come from, in the future?&lt;/p&gt;

&lt;hr /&gt;

&lt;p&gt;Some more reading:&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://contemporary-home-computing.org/prof-dr-style/&quot;&gt;“The last places to experience real online hypertext, hand made links, that look and behave like links, are the pages of the early web adopters and those who still follows their spirit.”&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://www.tumblr.com/rare-basement/709845987171139584?source=share&quot;&gt;“in 2003 I could have googled this and gotten to a neon blue geocities called Jim’s Teeth DYI”&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://cohost.org/playthroughline/post/1020126-empty&quot;&gt;“combine the discordapp-ification of online information with the latest fad to reach the logical conclusion”&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://maya.land/monologues/2023/02/14/mr-openai-i-dont-feel-so-good.html&quot;&gt;“Where do we go when &lt;em&gt;good web citizenship itself&lt;/em&gt; may be biting people?”&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://www.theguardian.com/technology/2023/may/09/techscape-artificial-intelligence-risk?CMP=techtonic_email&quot;&gt;“This vision of the future puts “super-intelligent AI” as a similar class of problem to “self-driving car”, but with a very different landscape.”&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://twitter.com/GalaxyKate/status/1628013361823682561&quot;&gt;“But if even trusted sources start mixing in &lt;em&gt;just a lil bit&lt;/em&gt; then there no incentive not to.”&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://www.washingtonpost.com/technology/2023/05/05/ai-spam-websites-books-chatgpt/&quot;&gt;“If you have a connection to the internet, you have consumed AI-generated content. It’s already here.”&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://open.substack.com/pub/garbageday/p/i-hope-im-wrong?r=9xg&amp;amp;utm_campaign=post&amp;amp;utm_medium=web&quot;&gt;“If an A.I. arms race within social has turned every platform into a video platform and is turning our search engines into chatbots, how do you get people to look at your website?”&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://twitter.com/v21/status/1435145965166637058?s=20&quot;&gt;“Google even acknowledges that this means there’ll be more spam to be caught by human moderation on other platforms.&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://gizmodo.com/ai-chatbot-fanfiction-fanfic-archive-of-our-own-1850524393&quot;&gt;“Nobody was told this was happening; many fic writers still don’t know that their work was scraped at all.”&lt;/a&gt; (added 13 June)&lt;/p&gt;
</description>
				<published>2023-05-11 00:00:00 +0000</published>
				<link>https://v21.io/blog/how-to-find-things-online</link>
			</item>
		
			<item>
				<title>Notes on Twitter, 28th October 2022</title>
				<description>&lt;p&gt;So, last night Elon Musk bought Twitter! Let’s talk a little bit about what I think the future holds.&lt;/p&gt;

&lt;p&gt;He bought Twitter for more than it is worth. You can tell this is true because after making a binding commitment to acquire it, he then made a load of excuses and paid a load to lawyers to see if he could find a way to wriggle out of it. A lot of that drop in value is not really to do with Twitter per-se, as it is to do with general economic sentiment and tech companies generally being worth less now than they were a year ago. But still! Bad timing.&lt;/p&gt;

&lt;p&gt;The reason this is a problem for people other than Elon Musk is that he is financing a bunch of the terrific sum he paid with debt. This means Twitter now has to pay around a billion dollars a year interest on that debt.&lt;sup id=&quot;fnref:2&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:2&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;1&lt;/a&gt;&lt;/sup&gt; This is a lot of money! Twitter’s projected 2022 revenue is &lt;del&gt;just (“just”) $1.4 billion&lt;/del&gt; (edit! I was wrong, that’s per quarter. So I was wrong, it’s 4 times that). If Twitter doesn’t have the money, then either it will need new injections of capital (from Elon Musk? from other investors?) or… the banks foreclose on it? unclear, tbh, but not good.&lt;/p&gt;

&lt;p&gt;So the purchase of Twitter is a bet that it could make a lot more money than it is currently making. How to do this? The classic private equity value extraction playbook goes something like this:&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;buy the company by loading it with a lot of debt (yes, this one has happened already)&lt;/li&gt;
  &lt;li&gt;slash costs (which usually means mass layoffs, and worse conditions and pay for the people who remain)&lt;/li&gt;
  &lt;li&gt;do what you can to juice the revenue (charge for more things, trade off making more money per person at the cost of decreasing satisfaction)&lt;/li&gt;
  &lt;li&gt;rely on the historical goodwill &amp;amp; reputation of the company&lt;/li&gt;
  &lt;li&gt;sell it ideally at the point where short term profits spike, and before the long term underinvestment starts to drag it under&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The private equity model is a scourge, yes.&lt;/p&gt;

&lt;p&gt;One rule of thumb I find useful to apply is to look at people’s incentives as a guide to their future behaviour at least as much as what they say they’re going to do. Elon Musk has said a lot of things about free speech, and making an “everything platform” and about reining in spam and so on. But I think the basic model of: how does he service this debt, how does he cut costs and raise revenues is probably just as informative as to the future of the company as the stuff he’s said.&lt;/p&gt;

&lt;h3 id=&quot;ok-ok-enough-about-money&quot;&gt;OK OK, enough about money&lt;/h3&gt;

&lt;p&gt;Let’s look at this from another side. What does this look like for the current employees?&lt;/p&gt;

&lt;p&gt;Well, it looks bad. You have a new boss who has done the following things:&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;publicly trashed, sued, etc the company he now owns&lt;/li&gt;
  &lt;li&gt;said he was going to fire 75% of staff (but then later walked that back)&lt;/li&gt;
  &lt;li&gt;started out his tenure with a weak physical pun about a sink&lt;/li&gt;
  &lt;li&gt;immediately fired the executive team, a few minutes after taking control of the company&lt;/li&gt;
  &lt;li&gt;and, importantly, decided last minute not to have the all hands meeting that had been called to actually announce these firings, leaving it instead for people to find out via the press&lt;/li&gt;
  &lt;li&gt;also just generally seems like a shitty boss from all the press about his other companies - all those reports of &lt;a href=&quot;https://www.forbes.com/sites/alanohnsman/2019/03/01/tesla-safety-violations-dwarf-big-us-auto-plants-in-aftermath-of-musks-model-3-push/?sh=1065daf54ceb&quot;&gt;unnecessary factory injuries&lt;/a&gt;, etc&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If I was at Twitter right now… I would be reaching out to people I know in other companies and seeing if there were any good roles going. Or, I mean, I guess I would’ve done that a few months ago. Getting out before the rush, you know? And it’s worth noting that one of the classic ways that tech companies keep you when you might be tempted to leave, the prospect of stock – well, Twitter is private now, so that lever isn’t so good any more.&lt;/p&gt;

&lt;p&gt;So, there is likely to be an exodus of talent from Twitter. And, on the other side, likely lots of layoffs in the future. What kind of impact is that going to have on the company?&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;worse spam prevention - which means more spam, but it also means more arbitrary false positives&lt;/li&gt;
  &lt;li&gt;more hateful and abusive content (even leaving to one side the big policy changes Musk is pushing for in the name of free speech - hello Donald Trump)&lt;/li&gt;
  &lt;li&gt;fewer new features, which is a bad thing no matter how much people dislike change. Twitter Circles, the edit button, API expansion - they seem to have just gotten up to a good velocity of shipping good features recently, and I expect that to stop&lt;/li&gt;
  &lt;li&gt;the return of the failwhale, and, more than that, random parts of the site just not working very well. Searches take longer. Follows are inconsistent. Everything &lt;a href=&quot;https://twitter.com/altluu/status/1577806809217503232&quot;&gt;feels a bit more janky&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;And the thing is, most users don’t really post on Twitter. They mainly log on to read from a selection of big name accounts that they do follow. (Understanding this is key to understanding a lot of otherwise baffling product decisions - algorithmic timeline, trends, automatically giving people a lastname-bunchofnumbers username rather than prompting them to pick one themselves). But the future of Twitter does kind of depend on the popular kids who sit down and write tweets for everyone else to read. And these are the people who are most engaged with the quality of the platform, the people who are thinking hardest about whether to go elsewhere. So if this gradual deterioration of the Twitter experience drives away these users, then, while the numbers might not immediately reflect this (I am sure there will be meme accounts to fill the gap for a while), the platform is still on a slow decline.&lt;/p&gt;

&lt;h3 id=&quot;section-break-lets-zoom-out-a-little&quot;&gt;Section break! Let’s zoom out a little.&lt;/h3&gt;

&lt;p&gt;The thing that makes Twitter special is that it is, to use the hackneyed metaphor, a town square. It’s a place that is, sometimes uncomfortably, public. Politicians can make announcements there. The media will report on things said there. You can shame a company that’s screwing you around and they will ask you to take it to DMs where other people can’t see. It’s a place you can “build an audience”, as they say.&lt;/p&gt;

&lt;p&gt;The default audience for a tweet is “everyone”, but this is increasingly unfashionable for a social network! The big defining trend for “hanging out online” is to do it in small spaces, where you are posting only for people who you have a certain degree of trust with. This means group chats, Discord servers, Instagram close friends stories, etc etc. This is where the interesting discussion happens! Where it’s safe! Where you can post your shit without worrying that lots of strangers are going to yell at you!&lt;/p&gt;

&lt;p&gt;But the flipside here is that to get into these communities you also have to have a degree of trust with the people who are in them already. This is pretty unproblematic and good if the group chat is, like, your family group chat. But if the chat is “game dev professionals”, and it’s somewhere where people post job links, then those degrees of trust start to get more nepotistic. And it doesn’t have to be quite as straightfoward as that - one thing that I value from an earlier version of Twitter was creative discussions being had openly, where I could lurk and absorb them.&lt;sup id=&quot;fnref:1&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:1&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;2&lt;/a&gt;&lt;/sup&gt; I think I learned a lot, and would be a worse artist and game designer without them. And now to get those same insights, it’s necessary to already be friends with the right people and hang out in the right places. And, likely enough, that means being the kind of person who shares the same kind of background and experiences with the people who have these kinds of insights.&lt;/p&gt;

&lt;p&gt;Of course, this is kind of nostalgia for a now-vanished past, and I don’t think it’s as easy as just saying everyone should post all their spicy criticism publicly to solve this. They won’t, there’s too much scar tissue, everyone has learned not to do that. For many gamedevs, Gamergate left a lot of trauma about having a public persona that could attract hate. Similar swarms of harassment roam around even now, let alone the constant chipping of the soul of people making tedious replies or boosting hate to tear it down. I don’t think we can simply go back. But this sense of “the public” is a thing that Twitter gave us, and is an element of the social media ecosystem that has value.&lt;/p&gt;

&lt;h3 id=&quot;heres-the-bit-where-i-plug-the-thing-im-working-on&quot;&gt;Here’s the bit where I plug the thing I’m working on&lt;/h3&gt;

&lt;p&gt;I think a kind of interesting response to this kind of thing is a re-insistence on the value of good old fashioned email and websites.&lt;/p&gt;

&lt;p&gt;Email was a big thing over the last few years, as Substack and the like took off - ironically driven by, on the one hand, writers fleeing the journalism jobs that private equity had hollowed out, and on the other, venture capital funding trying to turn email newsletters into a more enclosed platform (Substack). I think there is something solid amid that hype, though - a sense of a more direct connection with an audience. Something (despite Substack’s efforts) less dependent on a platform, and more of a model where the platform is just a service you can switch between, taking your subscribers with you.&lt;/p&gt;

&lt;p&gt;And websites also still exist. Even more so than with a newsletter, you can make a website take the shape you want it to. It can look how you like, it can slowly change colour, it can get updated rarely or often. &lt;a href=&quot;https://www.instagram.com/p/CjI1JNboVRf/&quot;&gt;There’s mechanisms&lt;/a&gt;, although they’re old fashioned, for learning when a website has added new stuff. And there are standards, although they’re kind of new, for &lt;a href=&quot;https://indieweb.org/Webmention&quot;&gt;populating a comment section with things that people have said elsewhere&lt;/a&gt;. You are reading this on a website right now!&lt;/p&gt;

&lt;p&gt;But the thing about websites is that you kind of have to be a nerd to make one. Sure, Wix and Squarespace and Wordpress.com exist, and do make it more accessible, but they’re kind of annoying, and most of them are expensive, and they’re kind of a drag to update. There’s not enough joy there (unless you are a nerd). They don’t feel like a place you wanna hang out, but an obligation to fulfil.&lt;/p&gt;

&lt;p&gt;So this is (one aspect of) my big project right now. &lt;a href=&quot;https://downpour.games&quot;&gt;Downpour&lt;/a&gt; is a tool that lets you make a fun HTML thing from images (and later text), straight from your phone. It is a platform, in that there is built in hosting and following other accounts and all that. But it also has a button you can push which will export a particular project as a zip file that you can then put on a webhost of your choice. itch.io or neocities or any service that can serve some HTML.&lt;/p&gt;

&lt;p&gt;Downpour is still a work in progress - it would be good if it was out now and I could capitalise on all the people looking for a life raft, should Twitter sink. But it’s already feeling good, and I can already make things with it. &lt;a href=&quot;https://downpour.games/~v/dear-diary/&quot;&gt;Here is a visual diary I have been keeping for the last week or two&lt;/a&gt;. Speaking from my very biased position, but it’s been fun to make? I drag images around and make a collage &amp;amp; set the links up, I added a few pages on the train last night, it feels easy. I’m very much looking forward to seeing what things other people will make with it.&lt;/p&gt;

&lt;p&gt;So! If you would like to hear when it does come out, then you can put your email address in the following box:&lt;/p&gt;
&lt;form action=&quot;https://buttondown.email/api/emails/embed-subscribe/downpour&quot; method=&quot;post&quot; target=&quot;popupwindow&quot; onsubmit=&quot;window.open('https://buttondown.email/downpour', 'popupwindow')&quot; class=&quot;embeddable-buttondown-form&quot;&gt;
    &lt;input type=&quot;email&quot; name=&quot;email&quot; id=&quot;bd-email&quot; placeholder=&quot;email@address.com&quot; /&gt;
    &lt;input type=&quot;submit&quot; value=&quot;Subscribe&quot; /&gt;
&lt;/form&gt;

&lt;p&gt;And if you think it’s an interesting idea and want to talk about it, please do get in touch.&lt;/p&gt;

&lt;div class=&quot;footnotes&quot; role=&quot;doc-endnotes&quot;&gt;
  &lt;ol&gt;
    &lt;li id=&quot;fn:2&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;Why does Twitter have to pay rather than Elon Musk, you might ask? And to that I would say: good question! I think the answer comes down to &lt;a href=&quot;https://www.inc.com/jim-schleckser/why-do-private-equity-firms-put-debt-on-an-acquisition.html&quot;&gt;“because he can”&lt;/a&gt; &lt;a href=&quot;#fnref:2&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
    &lt;li id=&quot;fn:1&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;see also: the continuing complaint about projects which have a Discord in lieu of documentation, and the way that all of these private spaces resist archiving &lt;a href=&quot;#fnref:1&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
  &lt;/ol&gt;
&lt;/div&gt;
</description>
				<published>2022-10-28 00:00:00 +0000</published>
				<link>https://v21.io/blog/notes-on-twitter</link>
			</item>
		
			<item>
				<title>Epicycles</title>
				<description>&lt;p&gt;&lt;img src=&quot;/assets/blog/epicycles_header.png&quot; alt=&quot;a simple black line diagram on a white background. it's a loop that folds in on itself in 3 places, and then that folding in also fold back on itself&quot; /&gt;&lt;/p&gt;

&lt;p&gt;I have just released &lt;a href=&quot;https://v21.io/epicycles/&quot;&gt;a new tool for generating epicycles&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;If you’re wondering what an epicycle is, here’s the short version: it’s a pattern like a Spirograph might make. You know, those toys you might’ve played with as a kid. Where you put a pen tip in a plastic cog and then spin it around inside a larger plastic cog and then it makes a nice shape on the paper.&lt;/p&gt;

&lt;p&gt;The longer version goes back to the motion of the planets. Before it was widely agreed that they orbited the Sun, people would still observe them and try to predict their movements. People have always wondered about the sky, and while most of it stays in place relative to itself, there were some bright spots that moved within a complicated pattern. Usually the planets would move forwards across the sky, but sometimes they would go backwards for a bit (the term for this is retrograde motion, which you might recognise from horoscopes). So, while inventing the concept of geometry, the ancient Greeks found that they were able to describe this motion by tracing the way a point would move if it was on a circle that was itself moving around a larger circle. Mostly it goes forwards, but sometimes (when the smaller circle is turning against the larger one) it goes backwards. And that’s what an epicycle is! Wheels within wheels.&lt;/p&gt;

&lt;p&gt;There’s a lot of history I’m skipping here, but let me gesture to it with this diagram from Johannes Kepler’s 1609 treatise &lt;em&gt;Astronomia Nova&lt;/em&gt;, which plots out the course of the planet Mars (as recorded by Tycho Brahe). The kind of shape it describes will become familiar to you if you spend a few minutes playing around with this tool.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/assets/blog/kepler_diagram.png&quot; alt=&quot;it's a scan of a very old book - a diagram with a circle, and beautiful loops going in to the center of it. there are dates annotated on it at two points, and the outer circle is surrounded by the signs for the constellations&quot; /&gt;&lt;/p&gt;

&lt;p&gt;So! This tool is a tool which will let you visualise the path taken by a point controlled by the motion of many circles combined together.&lt;/p&gt;

&lt;p&gt;Each circle within the tool is defined by three parameters:&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;&lt;strong&gt;loops&lt;/strong&gt;: the number of times we draw the circle going round&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;size&lt;/strong&gt;: how big is the circle&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;phase&lt;/strong&gt;: where on the circle do we start drawing from&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;And you can also toggle on a mode where the phase changes over time.&lt;/p&gt;

&lt;p&gt;But that’s it! But within that, I find it pretty remarkable the range of forms it can create. I love making tools that provide a set of simple parameters, but which can form a surprising variety of outputs. Not least, because I like to explore them myself - and even now I’m releasing this tool, I don’t think I’m finished finding new things within it.&lt;/p&gt;

&lt;p&gt;I originally started investigating epicycles in order to generate files to plot with my pen plotter - and this tool is still useful for this, in that pressing the &lt;strong&gt;⇣&lt;/strong&gt; button in the corner will download a SVG of the currently displayed epicycle. You are free to use these SVGs to do whatever you like with - plot them, print them, use them as the basis for a art or graphic design. Credit for using a neat tool is appreciated, but ultimately this is just maths &amp;amp; as such belongs to everyone.&lt;/p&gt;

&lt;p&gt;All of which sounds very serious - but really, this is a tool for messing with. Push some buttons, move some sliders, get a feel for it, and see what interesting loops you can find. &lt;a href=&quot;https://v21.io/epicycles/&quot;&gt;Go play!&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;br /&gt;
&lt;br /&gt;&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/assets/blog/epicycles_footer.png&quot; alt=&quot;a black line diagram on white. a ribbon with ribbing that loops round on itself several times. &quot; /&gt;&lt;/p&gt;
</description>
				<published>2022-08-02 00:00:00 +0000</published>
				<link>https://v21.io/blog/epicycles</link>
			</item>
		
			<item>
				<title>CW: Mastodon</title>
				<description>&lt;p&gt;With the recent news that Twitter is being sold to Elon Musk, lots of people have been setting up or rediscovering Mastodon accounts. Much fewer than have been setting up Discords, but still… &lt;a href=&quot;https://mastodon.social/@Gargron/108214201792073866&quot;&gt;a good number&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;And with this new influx, I have been seeing lots of discourse about CW warnings, their use, people complaining about people using them wrong, people complaining about people complaining about people using them wrong, etc. &lt;sup id=&quot;fnref:1&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:1&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;1&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;

&lt;p&gt;So I thought I would use this as an opportunity to write a little about the content warning system, and how I have seen them used in practice. Not least because they are one of the things I have been thinking about while developing &lt;a href=&quot;https://downpour.games&quot;&gt;Downpour&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;So, what is this system? It’s an optional bit of metadata you can add to a post. When activated, it gives a little textfield which is the CW, and is directly shown to a viewer. And then the viewer can click on a little SHOW MORE button to see the main part of the post.&lt;/p&gt;

&lt;p&gt;Let’s simulate it here in this post, using the built-in &lt;tt&gt;&amp;lt;details&amp;gt;&lt;/tt&gt; HTML tag&lt;sup id=&quot;fnref:3&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:3&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;2&lt;/a&gt;&lt;/sup&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;details&gt;
    &lt;summary&gt;writing&lt;/summary&gt;
I am writing a blog post, and you are reading it.
&lt;/details&gt;
&lt;/blockquote&gt;

&lt;p&gt;The CW warned you that there was going to be a mention of writing, and there was! You could choose whether to view it or not. It is a consent system for posts.&lt;/p&gt;

&lt;p&gt;So what kinds of things is this used for in practice?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Spoiler warnings&lt;/strong&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;details&gt;
    &lt;summary&gt;ofmd spoiler&lt;/summary&gt;
    ed and stede totally kiss.
&lt;/details&gt;
&lt;/blockquote&gt;

&lt;p&gt;This was the use-case that convinced Gargron to add CWs to Mastodon! You can talk about a show and also people who haven’t yet seen the show can choose whether to see the spoilers or not.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Allowing you to talk about shit that feels a bit too heavy to talk about without the reader opting in&lt;/strong&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;details&gt;
    &lt;summary&gt;ph -&lt;/summary&gt;
    with the way my fatigue currently is, I think it is a bad idea to travel internationally. and I want to so bad.
&lt;/details&gt;
&lt;/blockquote&gt;

&lt;p&gt;(“ph” stands for “physical health”, as distinct from “mh”. The “-“ means that it is negative)&lt;/p&gt;

&lt;p&gt;A classic use of a content warning! And helps provide an atmosphere where it can feel a bit more accepted to post about difficult stuff you might be going through (or maybe I am just in a good community, and post private).&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Allowing you to talk about shit that feels a bit too boring to talk about without the reader opting in&lt;/strong&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;details&gt;
    &lt;summary&gt;wordle&lt;/summary&gt;
    [I don't play it, but imagine there is a Wordle results screen here. If you play Wordle and you feel like this example is some kind of burn on you... haha suck it]
&lt;/details&gt;
&lt;/blockquote&gt;

&lt;p&gt;This is also important! Lotta boring stuff, and yet an important part of posting is allowing you to say all of the stuff that is a little too boring for you to directly message a friend or loved one about. Because posting is for the void, and sometimes there is stuff you wanna say that only the void wants to hear.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Talking about stuff that is fine for you but might have higher than expected emotional load for other people&lt;/strong&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;details&gt;
    &lt;summary&gt;alc longing&lt;/summary&gt;
    i have been swearing off booze because it seems like it sets off my fatigue, but it is a fine summer's day, and i would like to drink a beer in the sun.
&lt;/details&gt;
&lt;/blockquote&gt;

&lt;p&gt;(“alc” is short for “alcohol”)&lt;/p&gt;

&lt;p&gt;Sometimes something is fairly casual for you to post about, but you know it could be harmful for others to read. You might hesitate to post it - is saying this casual thing worth maybe ruining someone’s day? But a CW can make that easier to post about. And it doesn’t have to be a serious thing - necessarily day-ruining, just a moment of discomfort.&lt;/p&gt;

&lt;p&gt;This is I think the category that causes the most controversy &amp;amp; strife about the use of CWs. This requires you to project out to a hypothetical audience and consider how your words will be recieved there. This is kinda hard to do, because empathy is a skill, and there is a lot to learn about what maybe-innocuous things could be unpleasant or upsetting or inaccessible to view for other people.&lt;/p&gt;

&lt;p&gt;It’s also hard because the nature of wide-broadcast social media is that a post can travel beyond the specific audience (and specific norms) that it was originally written for. This manifests on Twitter as people learning to couch their words really specifically - full of caveats and hedges because they’ve had the experience of getting negative replies for not considering a particular perspective when posting a short and context-depended tweet. And on Mastodon a post can be written for a small group, travel further - and now someone is asking someone to please add a CW for whatever specific thing. I don’t think this is specifically a problem with CWs as much as a problem of social networks which tend to take statements and recontextualise them into broader contexts and conversations that they were not originally intended to be a part of.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Topic markers&lt;/strong&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;details&gt;
    &lt;summary&gt;cw uses&lt;/summary&gt;
- spoiler warnings (the main reason Gargron added them, iirc)  &lt;br /&gt;
- little jokes  &lt;br /&gt;
- allowing you to talk about shit that feels a bit too heavy to talk about without the reader opting in  &lt;br /&gt;
- allowing you to talk about shit that feels a bit too boring to talk about without the reader opting in  &lt;br /&gt;
- talking about stuff that is fine for you but might have higher than expected emotional load for other people &lt;br /&gt;
&lt;/details&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;sup id=&quot;fnref:2&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:2&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;3&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt;

&lt;p&gt;Once you are in the habit of using CWs, then you can find yourself using them just to kind of denote what you’re gonna be talking about. It’s a little intro to the post, a title, a subject line. “here are my thoughts on blah” =&amp;gt; “blah blah blah”&lt;/p&gt;

&lt;p&gt;And also this is helpful if you’re not interested in the topic, it’s just boring to you. It helps here that replies by default inherit the CW of the post they’re responding to.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Little jokes&lt;/strong&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;details&gt;
    &lt;summary&gt;bing&lt;/summary&gt;
    bong
&lt;/details&gt;
&lt;/blockquote&gt;

&lt;p&gt;Okay, this is the one I really wanted to talk about. I love the rhythm of the CW, the way that it builds a little arc of anticipation into the process of reading a post. It makes the reader complicit in the unveiling of the post. Whatever happens after you press that button is partly your responsibility. It was my bad post, but it was you that clicked on it and chose to view it.&lt;/p&gt;

&lt;blockquote&gt;
&lt;details&gt;
    &lt;summary&gt;lewd earworm&lt;/summary&gt;
    cum on eileen
&lt;/details&gt;
&lt;/blockquote&gt;

&lt;p&gt;You probably clicked on that fold out bit just above automatically, didn’t you? And now you have [REDACTED TO PROTECT THE INNOCENT] in your head. And is it my fault? Yes. But is it also your fault? Kinda!&lt;/p&gt;

&lt;p&gt;And that’s really the source of a lot of the humour that can be derived from CW-based jokes. And it’s a source of humour that feels very videogames to me. I mean, it’s &lt;a href=&quot;http://v21.io/blog/single-joke-games/&quot;&gt;a joke based on interactivity.&lt;/a&gt; A joke where the humour rests on the fact of interactivity, not just one that is delivered within an interactive context.&lt;/p&gt;

&lt;p&gt;Which is why I say that CWs are an inspiration for &lt;a href=&quot;https://downpour.games&quot;&gt;Downpour&lt;/a&gt;. CWed posts are a tiny interactive experience, and derive a special type of power from that interactive nature. What if we made them… just a little bit more capable. Just a little bit more complicated. But still kept the scope nice and small. Shitpost sized. What could people make, then?&lt;/p&gt;

&lt;div class=&quot;footnotes&quot; role=&quot;doc-endnotes&quot;&gt;
  &lt;ol&gt;
    &lt;li id=&quot;fn:1&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;This is not quite true - I don’t have a public account on there &amp;amp; only really follow people I am either friends with or who are on the small and close-knit server I am on. So as a result I have mainly seen a few boosts of some of the more meta commentary, from which I have deduced the presence of all the other posts. I am not about to go looking for them to confirm, because they seem annoying. &lt;a href=&quot;#fnref:1&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
    &lt;li id=&quot;fn:3&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;Just want to give a little shoutout here to Everest Pipkin’s work &lt;a href=&quot;http://cordite.org.au/poetry/game/soft-corruptor/&quot;&gt;Soft Corruptor&lt;/a&gt;, which is built entirely out of nested &amp;lt;details&amp;gt; tags. &lt;a href=&quot;#fnref:3&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
    &lt;li id=&quot;fn:2&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;Fun fact! This is a post that I wrote this morning and decided to adapt into this blog post! Why does it not contain the heading that it’s an example of? That’s because I was reminded of it by a reply by Martin O’Leary. Thanks Martin! &lt;a href=&quot;#fnref:2&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
  &lt;/ol&gt;
&lt;/div&gt;
</description>
				<published>2022-04-30 00:00:00 +0000</published>
				<link>https://v21.io/blog/uses-of-cws</link>
			</item>
		
			<item>
				<title>New project: Frog Chorus</title>
				<description>&lt;div align=&quot;center&quot;&gt;

&lt;a href=&quot;https://frogchorus.com&quot;&gt;&lt;img src=&quot;/assets/blog/hero_frog.png&quot; alt=&quot;a frog&quot; /&gt;&lt;/a&gt;

&lt;/div&gt;

&lt;p&gt;Together with &lt;a href=&quot;https://www.vivianeschwarz.co.uk/&quot;&gt;Viviane Schwarz&lt;/a&gt;, I am releasing a new social network for frogs. It’s called &lt;a href=&quot;https://frogchorus.com&quot;&gt;Frog Chorus&lt;/a&gt;, and it’s a place where all you can do is ribbit.&lt;/p&gt;

&lt;p&gt;The initial seed of the idea and the illustrations came from Viv, and the coding &amp;amp; the rest of the design were done by me.&lt;/p&gt;

&lt;p&gt;The site is a social network for frogs. Open it, and you will see yourself sitting as a frog in a pond. You can click to ribbit, and you can hold down to do a really big ribbit. And you can see and hear other frogs ribbiting in the same pond. It’s the smallest satisfying online social space that I can imagine.&lt;/p&gt;

&lt;p&gt;The last few years have been difficult, for reasons that I am sure will be familiar to many of you. Alongside the typical sense of isolation brought on by Covid precautions, &lt;a href=&quot;/blog/gdc-chronic-illness-talk&quot;&gt;I developed chronic fatigue&lt;/a&gt;, and have had to be very careful about my energy expenditure. This has meant I have spent a lot of time online—even more so than I usually do. And—there are a lot of opinions online. There’s a lot of things people share, a lot of Takes, a lot of Content. This is, on the whole, a good thing. But sometimes, when you’re tired and overwhelmed but also you still have this real thirst for connection… you want a way that you can be in the presence of people but also not have to say anything. You want to just be able to ribbit, and maybe recieve a ribbit in response. Or to leave a pond open in a tab, occasionally hear a frog plop in or ribbit, and know that someone else is around.&lt;/p&gt;

&lt;p&gt;So that’s the motivation behind the project. Why is it built the way it is?&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;it’s designed to give you just enough control that you feel able to express yourself. You can choose when to ribbit, and you can choose how big a ribbit you want to do. And that’s enough? Or at least, that’s a lot. It allows you to &lt;em&gt;reciprocate&lt;/em&gt;. Someone does a big ribbit, you respond with a big ribbit. You heard what they were saying, and you responded in kind. I am generally very sceptical of people saying particular bits of human behaviour are innate, but I am pretty sure that “repeat after me” is.&lt;/li&gt;
  &lt;li&gt;it’s also designed to be very sharply limited in terms of how much expression is possible. There is a term used among designers of games where users are able to express themselves and then share that content with other players - it is “Time To Penis”. As in, how long does it take a player to make something that looks like a dick and share it. Or a swastika, if they want to go for fascist abuse rather than sexual. Frog Chorus is not completely immune to this, because nothing is, but it is resistant to it. You can’t choose your username, you can’t choose your colour or pitch, you can’t choose where you sit within the pond. I guess you could Morse code out the letters P-E-N-I-S, but that’s not very satisfying.&lt;/li&gt;
  &lt;li&gt;but there’s still a sense of persistent identity. Even though you might not know who the person controlling each frog is, you can still recognise that they are the same frog each time. You have a sense that you are there with specific people, and get a sense of their personalities from how they ribbit and how they respond to ribbits.&lt;/li&gt;
  &lt;li&gt;I love a minimal interface, and I love letting people discover things. Generally as a developer I have more fun figuring out the smallest set of things I need to build to make an experience compelling than I do figuring out the largest set of things I can provide without the experience collapsing under its own weight. And of course, the fact that it’s much less work that way is also very appealing.&lt;/li&gt;
  &lt;li&gt;finally, and very much not least: it’s funny. I’m happy with the goofy ribbit samples I recorded, I think it’s fun to be a frog, I think it’s good to be in a space that is playful online.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href=&quot;https://frogchorus.com&quot;&gt;I hope you have fun being a frog too.&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;And a quick technical rundown, for those of you who are interested:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;the site is running on a boring Linode VPS (that I plan to migrate my personal site to, once I get round to it)&lt;/li&gt;
  &lt;li&gt;the backend is written in Rust, pointed at by Apache running as a reverse proxy. The backend is essentially a heavily modified version of some example code showing how to use actix with websockets to make a chat room.&lt;/li&gt;
  &lt;li&gt;and the frontend is built in Typescript, using my homebrew vector utility class. There is a bit of fussing to try to keep performance reasonable — some stuff with multiple canvases and dirty flags to try to avoid re-rendering unnecessarily — because I hope that people will keep this open as they go about their day, and it’s good not to waste computing power unnecessarily.&lt;/li&gt;
&lt;/ul&gt;
</description>
				<published>2022-04-25 00:00:00 +0000</published>
				<link>https://v21.io/blog/announcing-frog-chorus</link>
			</item>
		
			<item>
				<title>Collective backups</title>
				<description>&lt;p&gt;I’ve not set this up, but I think it would be a good idea.&lt;/p&gt;

&lt;h4 id=&quot;the-problem&quot;&gt;The problem:&lt;/h4&gt;

&lt;p&gt;You have a NAS or a hard drive in a drawer or a second computer with some storage space. And you do backups, because that’s the sensible thing to do in case your main computer breaks. But you also want to still have your data even if someone steals all your computers or your house burns down or some other calamity happens.&lt;/p&gt;

&lt;p&gt;The easy way to solve this would be to pay a company to keep all your stuff on their servers. But that’s expensive and also it kind of sucks that everything is based around paying a company money.&lt;/p&gt;

&lt;p&gt;(Is it expensive? &lt;a href=&quot;https://www.backblaze.com/cloud-backup.html#:~:text=Simple%20Pricing.%20UNLIMITED%20Data.&quot;&gt;Backblaze costs $70 a year.&lt;/a&gt; Compare: About $140 for contents insurance, which would replace all my stuff in a similar situation, or $35 for a 2TB external hard drive, which could back up all my stuff in cases that are much less calamitous. Depends on how you feel about money, and how you feel about your data.)&lt;/p&gt;

&lt;p&gt;And you have a couple of friends in a similar situation, and they have the same problem and feel similarly about paying rent to a large company.&lt;/p&gt;

&lt;h4 id=&quot;a-solution&quot;&gt;A solution:&lt;/h4&gt;

&lt;p&gt;Everyone sets up &lt;a href=&quot;https://syncthing.net/&quot;&gt;Syncthing&lt;/a&gt; for their backups. Syncthing is an open source, peer to peer, encrypted program that keeps a set of files in sync between two or more computers. It does all the stuff so that the computers can talk to each other over the internet (even if they’re moving around and connecting to random wifi hotspots, like a laptop or a phone would be) and also figures out what files have been changed and sends the changes between them.&lt;/p&gt;

&lt;p&gt;This is actually a pretty good way to keep backups yourself - if you have two computers, you can set up Syncthing and stuff will keep synced between the two and you don’t have to remember to do back ups manually.&lt;/p&gt;

&lt;p&gt;But you can also set it up so that all your stuff also gets synced with your friend’s computer. And now you have off-site redundancy. Maybe your friend is happy to just do this for you, because y’know, you’re friends. Or maybe you agree that in return you’ll let them sync their stuff onto your computer. Now, probably your friend does not have the kind of setup that can guarantee perfect uptime. Their internet might flake out, they might upgrade something and break their computer for a week, they might get all their stuff stolen. There are two answers to this. One is: this is already a secondary backup, in case something catastrophic happens to your stuff, so you can probably assume that stuff isn’t going to happen at the same time something catastrophic happens to &lt;em&gt;your&lt;/em&gt; stuff. Or you can find a third friend and divide the risk even more. &lt;a href=&quot;https://en.wikipedia.org/wiki/Swiss_cheese_model#/media/File:Swiss_cheese_model.svg&quot;&gt;Insert extra slices of swiss cheese as appropriate.&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;So, a final thing to address: if you upload your shit to Backblaze or Dropbox or wherever, you kinda trust that they won’t go snooping through it. They have a business model which is about storing things, and about not looking at that stuff more than they are legally obliged to. But a friend does not have a business model, and might decide to snoop. Or they might have a housemate who has access (because their computer is also the thing they use to play music in the living room, say). Two answers I can see here: one is to only do this with people you have a basic level of trust with. Or with data that is important to you but not something where there are catastrophic consequences to having someone poke around. And the second is that you can use &lt;a href=&quot;https://docs.syncthing.net/users/untrusted.html&quot;&gt;Syncthing’s new encrypted mode&lt;/a&gt;, which stores stuff on a computer without letting the person who runs that computer see the actual contents of the files.&lt;/p&gt;

&lt;p&gt;So. Seems like a nice idea? If you have friends who have a reasonable level of technical skill, and a preference for co-operative solutions over capitalist ones. Like I said, I haven’t set this up yet, but if you have, I’d be curious to hear how it goes.&lt;/p&gt;
</description>
				<published>2022-04-05 00:00:00 +0000</published>
				<link>https://v21.io/blog/collective-backups</link>
			</item>
		
			<item>
				<title>Announcing: Downpour</title>
				<description>&lt;p&gt;Today I announce a new project! This is the big thing I have been working on since &lt;a href=&quot;https://twitter.com/v21/status/1443618666982019072&quot;&gt;leaving Niantic&lt;/a&gt;, and I am very excited about it.&lt;/p&gt;

&lt;p&gt;It is a game making tool for phones, called Downpour. Here is what it currently looks like:&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/assets/blog/downpour_screenshot.png&quot; alt=&quot;downpour_screenshot.png&quot; /&gt;&lt;/p&gt;

&lt;p&gt;The utopian vision for the project is this: making a tool so that anyone, without prior knowledge, can make something interestingly interactive in a spare ten minutes. And without having to have access to a computer. What would you make if making a game was as easy as writing a letter?&lt;/p&gt;

&lt;p&gt;It’s inspired by seeing how an accessible tool can open up a creative space that wouldn’t otherwise exist. Seeing the impact that tools like &lt;a href=&quot;https://bitsy.org/&quot;&gt;Bitsy&lt;/a&gt;, &lt;a href=&quot;https://twinery.org/&quot;&gt;Twine&lt;/a&gt; or &lt;a href=&quot;https://itch.io/&quot;&gt;itch.io&lt;/a&gt; have had in creating spaces and genres that wouldn’t exist otherwise. Or even outside of games - for example, my own &lt;a href=&quot;https://cheapbotsdonequick.com/&quot;&gt;Cheap Bots, Done Quick!&lt;/a&gt;, or musical instruments like the &lt;a href=&quot;https://logicmag.io/play/dropping-acid/&quot;&gt;TB-303&lt;/a&gt;. The transformative power of approachability.&lt;/p&gt;

&lt;p&gt;More specifically, though, it was inspired by my experiences &lt;a href=&quot;https://v21.itch.io/a-train-journey&quot;&gt;making a flatgame&lt;/a&gt;. &lt;a href=&quot;https://itch.io/jam/flatgame-annual-2016&quot;&gt;Flatgames&lt;/a&gt; are a type of game where you put together handmade images in a (flat) space you can wander through and exist within, but without focusing on traditional gamey stuff like collision or 3-D-ness or winning. As someone who is so often On The Computer, I loved the process of drawing and collaging things together… but I hated the part of the process where you had to scan things in, photoshop them and fuck around with the settings in Unity (I spend enough time fucking with things in Unity). If only there was a way to automate those annoying processes. And if only people didn’t have to learn the basics of Unity and of coding to make them. So, I thought: what if you made this on your phone? A device with a camera built in, and that you already have in your pocket.&lt;/p&gt;

&lt;p&gt;The game format has changed a little in the process. The games you can make are fundamentally hypertext - they are built around capturing images, and linking those images together. Select the door in the image, and link it to the monster that’s hiding behind the door. It turns out this is enough to make expressive, interesting things! I spent a week or so at the start of the year &lt;a href=&quot;https://twitter.com/v21/status/1477220587080724480&quot;&gt;making games with this tool&lt;/a&gt;, and I’ve not yet scratched the surface of the possibilities. And I’m not done yet.&lt;/p&gt;

&lt;p&gt;If you want to try it out and are within reach of London, the best way is to come to the &lt;a href=&quot;https://nowplaythis.net/&quot;&gt;Now Play This festival&lt;/a&gt; between the 8th-10th April. I’ve made a special build for them, and there will be stations set up with crafting equipment, props, a doll house, etc. Plus, the festival is a great time, with lots of other cool &amp;amp; thoughtful games and artworks.&lt;/p&gt;

&lt;p&gt;Or, of course, you can wait for the full release, which will be coming out later this year (touch wood). If you want an email when it comes out, you can sign up here: &lt;a href=&quot;https://downpour.games/&quot;&gt;downpour.games&lt;/a&gt;.&lt;/p&gt;
</description>
				<published>2022-03-30 00:00:00 +0000</published>
				<link>https://v21.io/blog/announcing-downpour</link>
			</item>
		
			<item>
				<title>CBDQ update : videos, every two hours</title>
				<description>&lt;p&gt;&lt;em&gt;This is a crosspost from my &lt;a href=&quot;https://www.patreon.com/v21&quot;&gt;Patreon page&lt;/a&gt;, but with the bits thanking people for their support removed. However, if you do support me there: thank you. And if you don’t and use Cheap Bots, Done Quick!, please consider doing so. It keeps the servers humming &amp;amp; pays for my time doing this kind of tweaking and fixing.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;So, after leaving Niantic, I put a bit of time into rejuvenating and restoring CBDQ. I had neglected it a bit, what with having a full time job and &lt;a href=&quot;https://v21.io/blog/gdc-chronic-illness-talk&quot;&gt;falling mysteriously ill&lt;/a&gt;. It was running fine, but the thing about maintenance is that you can keep putting it off and it’ll be fine until one day it’ll just fall over. So it was a good time to go in and update and upgrade things, sand off the barnacles and apply some fresh paint.&lt;/p&gt;

&lt;p&gt;So, to switch out of marine analogies, I migrated CBDQ from running on my server that I’ve had for about a decade now, and onto a fresh shiny one where everything is up to date and there are fewer weird configuration bits hanging around from this project or that. I replaced the old SVG rendering solution, as the old one was very much deprecated and was in danger of stopping working - this was kind of frustrating, as there was nothing that was a good drop in replacement. So I ended up putting together &lt;a href=&quot;https://github.com/v21/render-svgs-with-puppeteer&quot;&gt;a package myself&lt;/a&gt;, which wraps “puppeteer”.&lt;/p&gt;

&lt;p&gt;(sidenote: SVG is a language for describing vector images. So far, so straightforward. However, SVG can also contain arbitrary bits of HTML… and in fact, if you want to do stuff like “render text, in a font, with linebreaks”, you pretty soon start to make use of this functionality. So, rendering it is complicated! And in fact, the server actually does this by spinning up a little instance of Chrome for every SVG it’s trying to render, loading the SVG in as a webpage, loading any images or custom fonts or whatever it might contain, taking a screenshot, and then closing again. Whew! This also means the new SVG rendering might change the output of SVGs a little - sorry if this broke your bot!)&lt;/p&gt;

&lt;p&gt;What else? A lot of work trying to trace down an annoying bug where sometimes CBDQ’s processes would get stuck, not doing all the tweets they were supposed to and also taking up system resources. But also not emitting any errors or giving any indication of what was wrong. I am still not fully convinced I’ve ironed it out, but I have at the least made it happen less often. And not need me to come in every so often and turn it off and on again to fix it. And as part of that I did a lot of work to make the internal error logging cleaner and more sensible. Boring work, I know, but it’s this kind of thing that keeps an exciting service running. Sometimes I think making tools is like 5% exciting shiny things, and it’s like 95% doing a load of boring stuff so that people who use them don’t have to think about it themselves. I also went through and upgraded all the node dependencies. Fixed up the admin panel that I use to block spammers.&lt;/p&gt;

&lt;h2 id=&quot;heres-where-i-talk-about-new-features&quot;&gt;Here’s where I talk about new features&lt;/h2&gt;

&lt;p&gt;You&lt;sup id=&quot;fnref:1&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:1&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;1&lt;/a&gt;&lt;/sup&gt; asked, I listened! You can now set your bots to tweet every 2 hours. For when every 1 hour is too frequent, and every 3 hours too infrequent.&lt;/p&gt;

&lt;p&gt;And this is an exciting feature that almost snuck in for free - you can now use CBDQ to post videos! Just use the &lt;code&gt;vid&lt;/code&gt; tag to link to a video (in a format that Twitter supports), in the same way that you’d link to an image. Here’s an example: &lt;code&gt;{vid https://cheapbotsdonequick.com/example.mp4}&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;And also I made &lt;a href=&quot;https://twitter.com/drycleaningbot&quot;&gt;a bot&lt;/a&gt;, inspired by my love of the band &lt;a href=&quot;https://drycleaning.bandcamp.com/&quot;&gt;Dry Cleaning&lt;/a&gt;. I mainly mention this here because &lt;a href=&quot;https://cheapbotsdonequick.com/source/drycleaningbot&quot;&gt;the source might be a helpful reference&lt;/a&gt; if you’re trying to make a lyricsbot.&lt;/p&gt;

&lt;p&gt;Long live the bots!&lt;/p&gt;

&lt;p&gt;-v&lt;/p&gt;

&lt;div class=&quot;footnotes&quot; role=&quot;doc-endnotes&quot;&gt;
  &lt;ol&gt;
    &lt;li id=&quot;fn:1&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;Okay, two people asked. &lt;a href=&quot;#fnref:1&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
  &lt;/ol&gt;
&lt;/div&gt;
</description>
				<published>2022-03-23 00:00:00 +0000</published>
				<link>https://v21.io/blog/cbdq-update</link>
			</item>
		
			<item>
				<title>Making Room for people with chronic illnesses</title>
				<description>&lt;p&gt;&lt;em&gt;Update, 20 Apr 2022: The &lt;a href=&quot;https://www.gdcvault.com/play/1027761/Independent-Games-Summit-Making-Room?fbclid=IwAR09wRIKA07bP08hPH1fdl8qI3hFnpDMUNbQhUlRTna6ESqYosZSF4gOfSY&quot;&gt;recording of the talk is now available&lt;/a&gt; to watch on the GDC Vault&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;This is a rough transcript of &lt;a href=&quot;https://schedule.gdconf.com/session/independent-games-summit-making-room-for-accessibility-health/885356&quot;&gt;a talk I gave at GDC 2022&lt;/a&gt;, as part of the “Making Room” track. So it’s written in a this-is-for-speaking style, and you should imagine the headings as slide transitions. OK! Let’s go:&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Hello, I’m v buckenham, and today I’m going to be talking about chronic illness and what you can do to support any of your employees who have a chronic illness.&lt;/p&gt;

&lt;p&gt;So, first things first, I should say now that I’m going to be focusing on my own experiences as someone who has a chronic illness, as that’s what I know best.&lt;/p&gt;

&lt;h2 id=&quot;spoiler-warning&quot;&gt;[spoiler warning]&lt;/h2&gt;

&lt;h3 id=&quot;--ask-people-what-they-need&quot;&gt;- ask people what they need&lt;/h3&gt;

&lt;h3 id=&quot;--build-an-environment-of-trust&quot;&gt;- build an environment of trust&lt;/h3&gt;

&lt;p&gt;And as a spoiler warning for the end of the talk, I should say more broadly the important thing is to listen to your employees and find out what &lt;em&gt;they&lt;/em&gt; need. And to build an environment of trust so that they will actually tell you about what’s going on and what that is.&lt;/p&gt;

&lt;p&gt;And the other thing I should say upfront is that my experiences are not unique.&lt;/p&gt;

&lt;h2 id=&quot;60-of-americans-have-at-least-one-chronic-illness&quot;&gt;60% of Americans have at least one chronic illness&lt;/h2&gt;

&lt;p&gt;So depending on how you define it, about 60% of adult Americans are living with at least one form of chronic illness. Chronic illness can last from several months to a lifetime and can take many forms: Long Covid, arthritis, musculoskeletal pain, diabetes, asthma, migraines, blood disorders, cancer, heart disease, irritable bowel syndrome, autoimmune diseases, and a range of mental illnesses like depression, anxiety. the list goes on.&lt;/p&gt;

&lt;p&gt;So. Let me tell you my story.&lt;/p&gt;

&lt;h2 id=&quot;my-story&quot;&gt;My Story&lt;/h2&gt;

&lt;p&gt;I’ve worked in videogames for about a decade, much of that time in small teams, and in indie spaces. I’ve put on games events, including being part of organising That Party here at GDC with Wild Rumpus. I worked on a game called Mutazione for a few years, then joined a startup making a weird digital physical stacking game called Beasts of Balance, for which I did the majority of coding &amp;amp; game design for. We were eventually acquired by Niantic (who make Pokemon Go), where I worked as a lead designer.&lt;/p&gt;

&lt;p&gt;So August 2020, the pandemic had hit, everyone was working from home. Obviously a weird time in general, but I was dealing okay… until one Monday morning, I woke up, got ready, sat at my desk for our normal morning let’s-start-the-week meeting, and found I was kind of sliding out of my chair a bit. I’d had a migraine earlier in the year and the after effects from that were kind of similar feeling, so I wondered if it was something like that, and moved to my bed to keep working. An hour or so later, it was clear I wasn’t really in any kind of state to do work. And then found I wasn’t really in a good shape at all. All in all, I basically spent the next month or so in bed other than medical appointments and for quick trips to the toilet and to the kitchen.&lt;/p&gt;

&lt;p&gt;I had a lot of investigations done&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/assets/blog/gdc2022/in%20gown.jpeg&quot; alt=&quot;image of me in a hospital gown&quot; /&gt;&lt;/p&gt;

&lt;p&gt;(here’s me in a hospital gown about to get an MRI scan)&lt;/p&gt;

&lt;p&gt;but none of them turned up anything concrete that would explain the fatigue.&lt;/p&gt;

&lt;p&gt;And at this point I’m still after all this time trying to chase down a proper diagnosis, but my assumption at this point is that I have Chronic Fatigue Syndrome, which is a “diagnosis of exclusion” - basically, when you are suffering from fatigue, have been for a while, and there’s no other good reason why. My symptoms seem especially triggered by being upright - standing, walking, even sitting up in a chair. Which means I also suspect PoTS, which stands for Postural Orthostatic Tachycardia Syndrome. This is basically where your heart doesn’t respond appropriately to the extra challenge of pumping blood all the way from the feet up to your head. Which it turns out is more effort than pumping it around when everything is on the same level. The primary symptom I get is what’s called “brain fog” - when this is bad, I can feel my eyes unfocusing, my attention starting to slide off things, my capacity to, just… think about things goes away. And this also means frustration with memory, just lots more of those “tip of the tongue” feelings. I know this, I knew this, but—&lt;/p&gt;

&lt;p&gt;And I should say that this was really scary. It turns out a lot of my self identity was built up around being a person who can do this work, who is a sharp thinker, who exists in the world, who can run around plugging cables into things at events. It’s really scary to not know what level of function you will regain, to not know if you will be able to do those things again. Ever, maybe.&lt;/p&gt;

&lt;p&gt;Over time, I’ve slowly improved a little - after a month or two (and when my sick leave had ran out), I returned to work, although initially on reduced hours, and only slowly picked up the responsibilities I had beforehand. Around Christmastime that year, my health had improved to the point that I could go for like, half hour walks in the park nearby, as long as I could sit on benches along the way and rest.&lt;/p&gt;

&lt;p&gt;And this is pretty much the state I’m still in now, 19 months later. I have left Niantic, I’m started up my own company, working on ██ █████████ ████ ████████ ████ ███ ███████ (████████! I’m announcing it next week! sneak preview!). The fatigue has gotten better and worse. At my best times, I’m able to travel into London and work in an office for a day or two or see friends - but I still have to be careful with resting before and afterwards. And there’s times when I do too much, and have crashes - the worst of which was last November, which took me back for a week or so to being unable to leave my bed for more than a few minutes at a time, and which I’m still not fully recovered from. I am giving this talk from bed, now, although I would much rather have travelled out to SF, and be hanging out with all of you in Yerba Buena Gardens eating icecream.&lt;/p&gt;

&lt;h2 id=&quot;what-was-helpful&quot;&gt;What was helpful&lt;/h2&gt;

&lt;p&gt;So. Let me talk about some of the specific things that have helped me.&lt;/p&gt;

&lt;p&gt;First up, just an obvious thing&lt;/p&gt;

&lt;h3 id=&quot;medical-insurance&quot;&gt;Medical insurance&lt;/h3&gt;

&lt;p&gt;I’m not going to go on about the difference between US and UK healthcare systems, but I do want to state the obvious and say that not having to worry about access to healthcare is a big thing. Do what you can to make sure people don’t have to stress about this. even outside of the US that might mean health insurance! Although I will say that Niantic had good coverage… but it would only cover diagnosing a chronic condition, and would stop as soon as that happened. And I’ll say that the NHS is also bad at covering this stuff - literally yesterday I was on the phone, still trying to chase up a referral to a rheumatologist to get a diagnosis, years into this. So… it’s not easy, and chasing up healthcare can be a job in itself.&lt;/p&gt;

&lt;p&gt;What else?&lt;/p&gt;

&lt;h3 id=&quot;paid-sick-leave&quot;&gt;Paid sick leave&lt;/h3&gt;

&lt;p&gt;I should say that the norms in the UK are much more generous than in the US. Here, sick leave is counted separately from holiday, and everywhere I have worked has had an allocation of paid sick leave, which (until this happened) I had never had to worry about the duration of.&lt;/p&gt;

&lt;p&gt;This is crucial. In the case of Long Covid specifically, being able to take time off and rest in the early days is what makes a full recovery much more likely. And worrying about the financial hit is what pushes people back to work before they’re ready. Before they ought to.&lt;/p&gt;

&lt;p&gt;And I’d say as well that time off is not just limited to times when people are too ill to work, but also about getting to medical appointments. It can helpful to track this separately, and flexibility can help a lot here if people need to take random hours here and there.&lt;/p&gt;

&lt;h3 id=&quot;working-remotely&quot;&gt;Working remotely&lt;/h3&gt;

&lt;p&gt;And working remotely, which is a thing I think everyone has had to get better at over the past couple of years. Obviously, this makes a huge difference. The energy involved in commuting, the ability to work piecemeal through the day, with rest in between, the ability to work from bed…&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/assets/blog/gdc2022/pixie.jpeg&quot; alt=&quot;a cat, sitting in front of a laptop, in bed, ready to work&quot; /&gt;&lt;/p&gt;

&lt;p&gt;as helpfully modelled by Pixie here.&lt;/p&gt;

&lt;p&gt;It sounds messed up to say, but I feel so fortunate to have fallen ill during this pandemic. Comparing my experiences with people who fell ill beforehand, I don’t think before this I would have been able to return to work remotely, don’t think friends would’ve been as up for hanging out online, I wouldn’t have been able to give this talk without having had to travel.&lt;/p&gt;

&lt;p&gt;So, speaking of online…&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/assets/blog/gdc2022/Zoom-Logo.png&quot; alt=&quot;the Zoom logo&quot; /&gt;&lt;/p&gt;

&lt;p&gt;let’s talk about Zoom.&lt;/p&gt;

&lt;p&gt;Zoom Fatigue is such a real thing. Illness has made me a fine connoisseur of exactly how tiring different activities can be. And I can really tell the difference between being on Zoom with video or audio only. Just making the “I am engaged and listening to you” face! &lt;em&gt;(at this point I made the face)&lt;/em&gt; There are actually academic studies around this that back this up&lt;sup id=&quot;fnref:1&quot; role=&quot;doc-noteref&quot;&gt;&lt;a href=&quot;#fn:1&quot; class=&quot;footnote&quot; rel=&quot;footnote&quot;&gt;1&lt;/a&gt;&lt;/sup&gt;.&lt;/p&gt;

&lt;p&gt;And I’d say as well, that scheduling meetings so people have time before and after to recover from them can be very important.&lt;/p&gt;

&lt;p&gt;So, as I said before, after a year or so, I had improved to the point that I could occasionally come into the office. One thing that helped when I did come in was:&lt;/p&gt;

&lt;h3 id=&quot;a-giant-plush-snorlax&quot;&gt;A Giant Plush Snorlax&lt;/h3&gt;

&lt;p&gt;&lt;img src=&quot;/assets/blog/gdc2022/me%20on%20snorlax.jpeg&quot; alt=&quot;a selfie of me, sitting on a giant Snorlax&quot; /&gt;&lt;/p&gt;

&lt;p&gt;and here you can see me, helpfully modelling it.&lt;/p&gt;

&lt;p&gt;Because I was working at Niantic, we had Pokemon stuff around, including a giant plush Snorlax, of the size where you can sit/lie down on it. Because my fatigue is triggered a lot by posture, and lying down helps me a lot, being able to work lying on this giant Snorlax meant I could come in more and for longer than I would otherwise have been able to.&lt;/p&gt;

&lt;p&gt;Now, I am not saying that you need to go buy your chronically ill employees a giant Snorlax plushy. And if I was coming in every day, I would’ve asked for a more professional setup. But the basic point here is that tailoring the office space for what people need can be helpful. Different people will need different things, be that desks, seating, computer equipment, noise cancelling headphones, whatever - ask them!&lt;/p&gt;

&lt;h3 id=&quot;phased-return&quot;&gt;Phased return&lt;/h3&gt;

&lt;p&gt;So having a lighter schedule especially in that time when I was returning to work helped a lot. A lot of managing this illness is not being sure what your energy limits are. And if you go over them, you’re really punished for it.&lt;/p&gt;

&lt;p&gt;So, it’s best to start with a light workload, and a light schedule, and then, if you feel up to it, slowly increase.&lt;/p&gt;

&lt;h3 id=&quot;reduced-hours&quot;&gt;Reduced hours&lt;/h3&gt;

&lt;p&gt;Or this might just permanently mean working less. Either fewer hours per day, or maybe fewer days per week. I am very pleased to see an increasing number of studios bringing in a 4 day week, which seems like both a great move for the workers there generally, as well as specifically for people with chronic illnesses.&lt;/p&gt;

&lt;p&gt;One thing that’s important to remember is that having a fatigue condition means that you have less energy overall - so even if you can still technically work fulltime, that means you’re likely cutting back a lot on things you’d be doing outside of work to keep within that energy budget. And that’s just not a good way to live.&lt;/p&gt;

&lt;h3 id=&quot;reducing-stress&quot;&gt;Reducing stress&lt;/h3&gt;

&lt;p&gt;So, for me, there are broadly 3 types of things that tire me out:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;physical. Luckily we make software, so this is less present than with a lot of jobs&lt;/li&gt;
  &lt;li&gt;mental. This definitely is present! Hard to get around this. We have to do some thinking sometimes.&lt;/li&gt;
  &lt;li&gt;emotional. This is also a big source of fatigue. And it is something that is hard to avoid. Especially when dealing with really scary things, like fear for the future, potentially losing your income, and maybe even your source of identity.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;(There’s a kind of funny thing: a booklet I saw early on gave the advice to limit your worrying to a few hours a day. Just not to get too tired out.)&lt;/p&gt;

&lt;p&gt;So it’s worth thinking a lot about what sources of avoidable stress there are for your employees, and how you can try to reduce them, and let them save their energy for more existential terrors.&lt;/p&gt;

&lt;p&gt;And the final thing that was helpful for me was:&lt;/p&gt;

&lt;h3 id=&quot;understanding&quot;&gt;Understanding&lt;/h3&gt;

&lt;p&gt;Just… knowing that you can ask for accommodations, knowing that you can go “I’m feeling out of it, I need to bail from this meeting”. That lack of judgement if you do so. That matters a lot.&lt;/p&gt;

&lt;p&gt;But the flipside to this is that you don’t have a right to know everything that’s going on with your employees. They should be able to have space to have work be &lt;em&gt;about work&lt;/em&gt; not about their illness. So. Understanding, but without prying.&lt;/p&gt;

&lt;h2 id=&quot;ok-but-what-about-people-who-arent-me&quot;&gt;OK, but what about people who aren’t me?&lt;/h2&gt;

&lt;p&gt;So. This has been some stuff that was helpful for me. But what about people who &lt;em&gt;aren’t&lt;/em&gt; me? Who don’t have my particular condition. Who work in a different workplace.&lt;/p&gt;

&lt;p&gt;Well, I already kind of gave you the answer up top. There’s a lot of different illnesses, and a lot of different people experiencing those illnesses in different ways. So, I’m sorry to say:&lt;/p&gt;

&lt;h3 id=&quot;ask-them&quot;&gt;Ask them&lt;/h3&gt;

&lt;p&gt;They will know what they need much better than I can guess at. Your workplace will be different to mine, &lt;em&gt;I&lt;/em&gt; can’t give you a perfect answer. Ask them.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;[this next bit was cut for time! but you get to see it. bonus content!]&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;But ok ok, I’ll try to be useful. Here’s a few more examples for various conditions:&lt;/p&gt;

&lt;p&gt;For people with Irritable Bowel Syndrome or Crohn’s disease, if they’re in the office, it can be helpful to provide sufficient access to toilets. This can also be something that affects people more or less at different times of the day, so it’s also helpful to be flexible in terms of working hours. It’s also worth considering that commuting in can be a anxious time, in terms of limited toilet access - shifting working hours can avoid rush hour, or maybe it’s more important for them to be able to drive in.&lt;/p&gt;

&lt;p&gt;For people with chronic migraines, again, different times of day can be better or worse. Shifting work hours can help avoid the worst times. And if people are in the office, see what you can do to remove triggers. For example, if they’re set off by scents you can remove air fresheners, swap scented soap for unscented, ask people to stop wearing perfume in. If it’s triggered by noise, then maybe they want to move desks to somewhere quieter, or try to dampen noise. if it’s lighting then maybe swapping light fittings can help.&lt;/p&gt;

&lt;p&gt;If you have diabetes, then you might need to inject insulin, which some people are very understandably not keen to do in public spaces. It can also be important to eat on a regular and predictable schedule - which means doing things like making sure a meeting doesn’t overrun into lunch can be important.&lt;/p&gt;

&lt;p&gt;But for a lot of these diseases - it’s the same kind of thing that’s needed. Providing flexibility, working to try to adjust the workplace so that it fits their needs better, giving people slack to take care of themselves.&lt;/p&gt;

&lt;hr /&gt;

&lt;p&gt;So this is the part of the talk where I want to get a bit more real. If you’re here at this session I am going to take it for granted that you want to support employees who are dealing with chronic illness. And why you might want to do that is pretty clear - ie, it makes their lives better, and that’s a good thing. So I want to flip this around, and ask the harder question.&lt;/p&gt;

&lt;h2 id=&quot;why-dont-people-get-the-support-they-need&quot;&gt;Why don’t people get the support they need?&lt;/h2&gt;

&lt;p&gt;And I don’t want to assume that it’s just down to people being evil, cackling away in their lairs as their coworkers go through difficult times. People want to help people… and they want to think of themselves as the kinds of people who help people… but good intentions are not always enough.&lt;/p&gt;

&lt;p&gt;So why does this happen? Let’s dig into some of the reasons, and see if we can break them down a bit.&lt;/p&gt;

&lt;p&gt;Reason one:&lt;/p&gt;

&lt;h3 id=&quot;its-expensive&quot;&gt;It’s expensive.&lt;/h3&gt;

&lt;p&gt;I’ve described some fairly good treatment from my old employer, Niantic. But I do want to acknowledge here that Niantic is a large company with a lot of money, and most small studios… have less money. I definitely have sympathy for people who are looking at a tight budget, trying to make things work, and then finding that a core part of the team is not going to be able to work at full capacity for a while. Or ever, maybe.&lt;/p&gt;

&lt;p&gt;But there’s two things I’d say to this.&lt;/p&gt;

&lt;p&gt;First off:&lt;/p&gt;

&lt;h3 id=&quot;but-its-the-law&quot;&gt;…But it’s the law&lt;/h3&gt;

&lt;p&gt;it’s the law. In the UK, it’s the Equality Act of 2010, which says that, if you have an employee who has a disability, you are required to make “reasonable adjustments” to enable that employee to work.&lt;/p&gt;

&lt;p&gt;And in the US, there’s an equivalent provision in the ADA, which says that employers are obliged to offer accommodations unless that would impose an “undue hardship.”&lt;/p&gt;

&lt;p&gt;And I think there are similar laws in many other countries around the world. Now both have a reasonableness test, which means that you’re not forced to make these accommodations if it’s going to bankrupt you, but you do have try.&lt;/p&gt;

&lt;p&gt;And for the other reason, I’m going to be a bit cynical here for a second. Making these adjustments might be painful. But that means&lt;/p&gt;

&lt;h3 id=&quot;its-an-opportunity&quot;&gt;It’s… an opportunity?&lt;/h3&gt;

&lt;p&gt;An advantage that small studios have over larger companies is that they can be much more flexible and respond to the needs of their workforce. You don’t have to worry about making a single policy work for thousands of people, managing all the exceptions that can create - you know the people you’re working with, and you can adapt how you work to fit them.&lt;/p&gt;

&lt;p&gt;And… there’s lots of people out there who have these kinds of invisible disabilities, who can’t fit into a regular in-the-office 9-5 type schedule, who have tried that and found it doesn’t work for them. And, a lot of them are really talented. So, by making your workplace somewhere where they can thrive and be happy, you can (and again, apologies for being really cynical here) hire a level of talent you might not otherwise be able to afford. Because what they value is a workplace where they can work. And work sustainably, and which supports them to have a life outside of it.&lt;/p&gt;

&lt;p&gt;And I’d say as well, these people often have another skill that can be undervalued in the workplace, which is pacing themselves and setting boundaries and knowing what their limits are.&lt;/p&gt;

&lt;p&gt;Ok, so, next reason you might shy away. And here we’re getting a bit closer to the bone.&lt;/p&gt;

&lt;h3 id=&quot;it-seems-unfair&quot;&gt;It seems unfair&lt;/h3&gt;

&lt;p&gt;So maybe it seems unfair. You maybe have a little niggle in the back of your mind, like – if I put this stuff in place for one person, then how am I going to explain it to everyone else? How come one employee gets this stuff and other people don’t?&lt;/p&gt;

&lt;p&gt;Or maybe it’s more than that. Maybe the reason is actually&lt;/p&gt;

&lt;h3 id=&quot;youre-jealous&quot;&gt;You’re jealous&lt;/h3&gt;

&lt;p&gt;Maybe you’ve been listening to this talk, hearing me talk about working 4 day weeks, taking time off to recover from things, lying on a big Snorlax plushy… and you’ve thought… damn, I’d quite like that myself. How come they get that stuff and I don’t?&lt;/p&gt;

&lt;p&gt;And to this I say. Yeah. That’s fair. And if you’re finding yourself with this kind of reaction, then&lt;/p&gt;

&lt;h3 id=&quot;you-deserve-better-too&quot;&gt;You deserve better too&lt;/h3&gt;

&lt;p&gt;Like, maybe you’re starting to get a bit burnt out? Maybe you deserve a better work/life balance. And it’s worth just really reflecting on this point, really sitting with any of this discomfort you might feel, any twinges of unfairness you might have. and really reflecting on changes you can make to make your working conditions better, and changes that might make conditions better for everyone who works there. There’s nothing saying that good conditions should only be for people who have a disability.&lt;/p&gt;

&lt;h3 id=&quot;everyone-deserves-better-too&quot;&gt;Everyone deserves better, too&lt;/h3&gt;

&lt;p&gt;Disability is not an unique thing, it’s part of the spectrum of human needs. Different people need different things in order to be happy and healthy at work. Parents need time off and flexibility for kid stuff. People going through war, people who have suffered a death in the family, people who are dealing with burnout, people whose cats got ill and they need to take them to the vet. People are people, and they have whole lives. And… you don’t deserve to hear about their whole lives, but you should try to give them the space and flexibility that they need.&lt;/p&gt;

&lt;p&gt;So this brings us onto the final reason you might not put these accommodations in place&lt;/p&gt;

&lt;h3 id=&quot;you-dont-know-they-have-it&quot;&gt;You don’t know they have it.&lt;/h3&gt;

&lt;p&gt;They haven’t disclosed their disabilities to you. So. Why not? Why wouldn’t they? This talk has been about the positive side of this, what you can do to support people who have disabilities, but on the flipside of this is that people can look at you differently when they learn about your disability. I was hesitant to give this talk, because I knew I would be here talking to a lot of people and being public about my weaknesses. About the ways that I am maybe a little more awkward to employ. And you can’t unring that bell! You can’t take it back, you can’t transform yourself back into someone who isn’t looked at in a different way, maybe with pity or concern.&lt;/p&gt;

&lt;p&gt;And I want you to take a moment, and just seriously consider that someone you work with does have an illness that they struggle with, and is concealing that from you because of fear of the consequences of disclosure. Does that seem possible? Can you think of some reasons they maybe wouldn’t be coming forwards?&lt;/p&gt;

&lt;hr /&gt;

&lt;p&gt;So. How do you build an environment where people feel like they can come to you and talk about any illnesses they have. Any changes they need. There’s a ton that goes into this, and more than I can talk about here, but fundamentally it comes down to a single word:&lt;/p&gt;

&lt;h3 id=&quot;trust&quot;&gt;Trust.&lt;/h3&gt;

&lt;p&gt;And this is about the big things, yes, but it’s also about the small things. Do you keep your word about things you casually promise? Are you sometimes dismissive about people’s reasons why they might be late in or struggling with something. Do you take people’s minor problems seriously, or do you dismiss them or brush them off? Can you be trusted to keep a confidence? If someone tells you about a thing they’re struggling with, can they trust you to keep it to yourself, or is it going to spread around the studio? Being a leader, being someone with power over others, that means those people study you intently, and are very motivated to learn exactly what they can expect from you, and what trust they can safely place in you. So: what messages are you sending them?&lt;/p&gt;

&lt;hr /&gt;

&lt;p&gt;OK OK OK. So. Let’s sum up.&lt;/p&gt;

&lt;h2 id=&quot;summing-up&quot;&gt;Summing up&lt;/h2&gt;

&lt;h3 id=&quot;--paid-time-off&quot;&gt;- paid time off&lt;/h3&gt;

&lt;h3 id=&quot;--flexible-working-times&quot;&gt;- flexible working times&lt;/h3&gt;

&lt;h3 id=&quot;--working-remotely&quot;&gt;- working remotely&lt;/h3&gt;

&lt;h3 id=&quot;--or-adjusting-the-office-environment&quot;&gt;- or, adjusting the office environment&lt;/h3&gt;

&lt;h3 id=&quot;--reduce-stress&quot;&gt;- reduce stress&lt;/h3&gt;

&lt;p&gt;There’s a lot of specific things you can do to help people with invisible and chronic illnesses. Some of the big ones are giving people sick leave, giving people time for medical appointments, giving people flexibility with the timing and number of hours worked - do they need to come in late, or work part time, or what. Letting people work from home is a huge thing that is really revolutionising access to the workplace. but if people are coming in, what can you do to make the office environment less hostile to them? Maybe that’s a giant Snorlax. And just generally what can you do to remove unnecessary stress from people’s working lives? where are they carrying a load they don’t have to?&lt;/p&gt;

&lt;p&gt;But more fundamentally, the things people with chronic illnesses need are just more enhanced versions of what everyone needs.&lt;/p&gt;

&lt;h3 id=&quot;--ask-people-what-they-need-1&quot;&gt;- ask people what they need&lt;/h3&gt;

&lt;h3 id=&quot;--build-an-environment-of-trust-1&quot;&gt;- build an environment of trust&lt;/h3&gt;

&lt;p&gt;&lt;em&gt;Everyone&lt;/em&gt; has different access needs, and the most important thing you can do to meet those needs is to ask them what they are.
But in order to have that conversation, you need to build a relationship where they will trust you. Trust that you will take this seriously, and trust that you’re on their side.&lt;/p&gt;

&lt;p&gt;-FIN–&lt;/p&gt;

&lt;div class=&quot;footnotes&quot; role=&quot;doc-endnotes&quot;&gt;
  &lt;ol&gt;
    &lt;li id=&quot;fn:1&quot; role=&quot;doc-endnote&quot;&gt;
      &lt;p&gt;&lt;a href=&quot;https://psycnet.apa.org/record/2021-77825-003&quot;&gt;The fatiguing effects of camera use in virtual meetings: A within-person field experiment. - PsycNET (apa.org)&lt;/a&gt; &lt;a href=&quot;#fnref:1&quot; class=&quot;reversefootnote&quot; role=&quot;doc-backlink&quot;&gt;&amp;#8617;&lt;/a&gt;&lt;/p&gt;
    &lt;/li&gt;
  &lt;/ol&gt;
&lt;/div&gt;
</description>
				<published>2022-03-22 00:00:00 +0000</published>
				<link>https://v21.io/blog/gdc-chronic-illness-talk</link>
			</item>
		
			<item>
				<title>r_g_b.html</title>
				<description>&lt;p&gt;&lt;img src=&quot;/assets/blog/r_g_b.png&quot; alt=&quot;colourful diagonal stripes&quot; /&gt;&lt;/p&gt;

&lt;p&gt;I have a new webpage up! It is called &lt;a href=&quot;/r_g_b.html&quot;&gt;r_g_b.html&lt;/a&gt; [warning for flashing colours].&lt;/p&gt;

&lt;p&gt;This was developed out of my older webpage &lt;a href=&quot;/%E2%96%9B%E2%96%9A%E2%96%9E%E2%96%97/&quot;&gt;▛▚▞▗&lt;/a&gt;, using the same technique that I call “iterative convolution”.&lt;/p&gt;

&lt;p&gt;As the name “r_g_b” suggests, this version is a lot more colourful. You may notice the three static dots of red, green and blue that continuously seed the pattern - everything else is just the traces of those original colours interacting with each other.&lt;/p&gt;

&lt;p&gt;This new version is also different in that it runs on the graphics card. I had tried this before, but ironically the faster update loop and full-resolution graphics made it harder to appreciate the patterns that the convolution created. I struggled for a while to create larger colour forms, but am very pleased with where I got to. I’m especially pleased with some of the ways that I’m injecting a little bit of noise, and how it sometimes creates a crunchy, fizzy kind of texture where two colours meet. I’m slightly surprised by how analogue this thing can feel - like it is physical video feedback equipment, or a cross processed negative, rather than an entirely digital effect.&lt;/p&gt;

&lt;p&gt;Oh, and like my other webpages, this is interactive. It responds to mouse position (or drag, on mobile) and clicks/taps. And, somewhat more hidden, but if you want to capture images from it, you can press the spacebar to pause (and return to step forwards a single frame).&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;/r_g_b.html&quot;&gt;Hope you enjoy!&lt;/a&gt;&lt;/p&gt;
</description>
				<published>2022-02-18 00:00:00 +0000</published>
				<link>https://v21.io/blog/r_g_b-html</link>
			</item>
		
	</channel>
</rss>