Sign in

haikushane :d20:

@shane.d20.social.ap.brid.gy
7 followers 2 following 117 posts

I write about local Nottingham news over on morningbrefing.org. 🌉 bridged from ⁂ d20.social/@shane, follow @ap.brid.gy to interact

PostsRepliesMedia
haikushane :d20: @shane.d20.social.ap.brid.gy · 05/10/2026
I have purchased Weezer tickets for next year. 🫘
000
haikushane :d20: @shane.d20.social.ap.brid.gy · 05/10/2026
I’m in holiday this week. I’m heading off to the library for a day of cakes, coffee, and journaling games. I’ve got Thousand Year Old Vampire, Tales From The Old Gods, and The Wretched to try out. TYOV I’ve played many times, but not the others. Very excited.
100
haikushane :d20: @shane.d20.social.ap.brid.gy · 01/10/2026
Every time I see a new Mastodon release, I try to get my self-hosted server upgraded faster than @mastohost upgrades theirs, but they beat me every time. Go grab your own Mastodon server with them. #indieweb
010
haikushane :d20: @shane.d20.social.ap.brid.gy · 01/10/2026
I've reached a certain age milestone: I lost my glasses and found them on top of my head. I think for the first time.
000
haikushane :d20: @shane.d20.social.ap.brid.gy · 01/10/2026
Incident.io's iPhone app gives basic read-only data about incidents, and then a button to chat to AI to do any actions on it, like escalating to someone else or closing the incident. I guess it's an easy way to avoid thinking of UX: no buttons at all.
000
haikushane :d20: @shane.d20.social.ap.brid.gy · 28/09/2026
I hadn’t looked at my RSS reader on the iPad yet. I’m very pleased with it. This is a snazzy looking website.
001
haikushane :d20: @shane.d20.social.ap.brid.gy · 27/09/2026
Hey, there's a new All-American Rejects track. www.youtube.com/watch?v=VWdQW4x5NT8 #music
001
haikushane :d20: @shane.d20.social.ap.brid.gy · 27/09/2026
This is the type of drama I want from my tech companies. techcrunch.com/2026/09/25/automatti…
techcrunch.com
000
haikushane :d20: @shane.d20.social.ap.brid.gy · 27/09/2026
RE: c.im/@msbellows/117327725373472404 Back in high school, I guessed a teacher's two digit password to the school Blackboard-like system. The head teacher threatened me with the Computer Misuse Act and my dad had to speak to the police. How times have changed.
000
haikushane :d20: @shane.d20.social.ap.brid.gy · 27/09/2026
@mags someone made a website you'll love! modernmotherfuckingwebsite.dreamsta…
modernmotherfuckingwebsite.dreamstation.systems
This is a modern motherfucking website.
Zero of the bullshit.
001
haikushane :d20: @shane.d20.social.ap.brid.gy · 26/09/2026
Incredibly pleased for a win. I'm eager to watch the highlights when they're released. I'm especially excited for Danny's post-game interview. Will he be happy today? www.eliteleague.co.uk/article/5551-… #EIHL
eliteleague.co.uk
Corbeil notches three in Panthers' win
Photo: Panthers Images
000
haikushane :d20: @shane.d20.social.ap.brid.gy · 26/09/2026
I ticked off one of my technical tasks this weekend: no more secrets stored in .env files. ✅ They can now be moved into 1Password and more securely passed into containers. I wrote up how. technicallyshane.com/2026/09/26/usi… #webdev
technicallyshane.com
Using 1Password to store secret environment variables
_Huge breakthrough:_ I’ve finally discovered how to get my database passwords out of plaintext .env files and into an actual password manager. The industry way of doing this is to use a key management system (KMS), and then have an orchestration system inject sensitive values into a machine’s environment variables. This is handy as the sensitive data never has to hit the disk. **You can do this same thing with 1Password** , with fewer moving parts, which is ideal for someone like me who runs a few hobby services. The steps for getting these values into a Docker container are: 1. Create a new 1Password Vault. I called mine ‘Basement Credentials’, as it’ll hold the passwords that my ‘Basement’ machine will need to hold onto. 2. Create a new 1Password Service Account and give it read access to only our new vault. 3. Install 1Password CLI. 4. Set `OP_SERVICE_ACCOUNT_TOKEN` on the user who is going to be running the docker container. Usually you’d do this with a ~/.bashrc change. (See: ‘Robbing Peter to pay Paul’ below.) 5. Create a new Secure Note in the new Vault, and name it after the application hosted in Basement. Like, Forgejo. 6. For each secret bit of data in your application that’s hanging around in your .env file, create a new field: ‘Add more’ on the 1Password Secure Note window. Choose ‘Password’, though this doesn’t matter. Name the new field after the env var, if you can. 7. Update your .env file with placeholders for 1Password to update. # .env RAILS_ENV=production SECRET_KEY_BASE="op://Basement Credentials/Forgejo/SECRET_KEY_BASE" 8. Update your docker-compose.yaml to read envs from environment variables. You likely want both `environment:` and `env_file`. (See ‘Disappointing complexity’ below.) web: image: forgejo:latest environment: SECRET_KEY_BASE="${SECRET_KEY_BASE}" [... etc, but not RAILS_ENV, which will be loaded via .env] env_file: .env 9. Load `docker compose` via `op run`. op run --env-file=.env -- docker compose up And then you’re good to go. No secret details held on disk anywhere. They can’t be accidentally committed, and you can commit your .env file, which was a key requirement for me. The way this works is that `op run` creates a shell session with those env vars available. Docker-compose will then interpolate those via the `${FOOBAR}` syntax used in the docker-compose.yaml. I’m reasonably happy with this solution for the moment. ## Disappointing complexity I’m saddened by the need to add both `environment:` and `env_file:` attributes. This works because of a (documented and intended) quirk of docker compose where `environment` takes precedence and is merged on top of whatever is in env_file. This means we can still put non-secret values in .env for configuration (where I’m used to looking) without polluting the yaml file too much with a huge list. I wish it were enough for `op run` to process the .env file and figure out what I want, but that isn’t the case: the .env file that `docker compose` sees is still the one that’s on disk (the file on disk has not changed). So, it ends up seeing it with the 1Password placeholder strings. ## Robbing Peter to pay Paul That’s a very good point you’ve made: this whole thing hasn’t changed the security concerns if someone gains access to the server. The secrets aren’t on disk any more, but that 1Password vault key is right in that .bashrc and it can output the lot. This isn’t the problem being solved. Every security system will have this issue. The aim here is to move the secrets out of the app configuration folders so the whole lot can be safely committed to git. That Git repo is distributed to many systems, including CI, whenever I update the configuration. They don’t all need to know the password for Basement. _Well, you shouldn’t be committing .env files anyway._ There are two reasons this is very good advice for almost every other project. First, because they usually have secrets in them. Mine no longer does. Second, because .env files are for configuration and other machines will need different values, so why commit this? It’s like committing your VSCode config: we don’t want to mess up another dev’s machine. However, this particular repo is _entirely_ configuration for this one server. The application itself is in another repo, following this ‘do not commit .env’ rule.
100
haikushane :d20: @shane.d20.social.ap.brid.gy · 25/09/2026
Busy weekend. I don't think I have any other plans... I've not been on the ice in ages, so I thought I'd keep my options open. I doubt I can do the full length of these sessions, but I'll certainly try to make a dent. #iceskating
Calendar showing around 8 hours of ice time.
000
haikushane :d20: @shane.d20.social.ap.brid.gy · 25/09/2026
I just thought DDH's talk was made all the more insufferable by not having anything to do with Rails. Step aside if you aren't interested in talking about the main focus of the event. Yammering on about photography for 15 minutes is not an analogy. He's not half as poignant as he thinks he is […]
d20.social
Original post on d20.social
000
haikushane :d20: @shane.d20.social.ap.brid.gy · 25/09/2026
I've been enjoying watching Frasier recently. It's interesting to see how much has changed societally, even on a fairly liberal show. It's not really laugh-out-loud funny, but the writing is sometimes quite smart. www.youtube.com/watch?v=DxuSSz7c43Y
000
haikushane :d20: @shane.d20.social.ap.brid.gy · 19/09/2026
I'm burning through these Rune Arcs. #eldenring
010
haikushane :d20: @shane.d20.social.ap.brid.gy · 15/09/2026
Fun with fonts over on my blog. Turns out, you can find a nice font you want, and then subset it with just the characters you need. That trims down the font size HUGELY. technicallyshane.com/2026/09/15/fan…
technicallyshane.com
Fancy fonts
I’ve been migrating repos from Github to my privately hosted Foregjo server. One of the recent moves was this very blog. It also meant I could rip out `github-pages` which pinned me to some gems. Now I feel fully in control of this blog. I wanted to make it look less Jekyll-default-theme, but I think web sites generally look terrible. So I’ve stuck with the theme but changed the fonts. This was exciting! However, the fonts took ages to load. 322 KB of them. Pages look very odd when the font is jumping around so I used `font-display: optional`, which says “use this fancy font if it’s available immediately”. After “immediately”, the font will not swap to the requested one (even if it’s downloaded now). The next time you load the page, the font will be in memory, and will display fine. This lead to a mish-mash of fonts though. I discovered that a library, Subfont, can work well with Jekyll. It looks at the built, static website and checks which characters you need. Then, it resets your font files with just the characters you need. If you don’t use the letter ‘d’ in your website, that’s not added to the font. More likely, it’s the euro symbol, or something. That’s reduced the fonts sizes hugely. Font | Original TTF | Subset WOFF2 | Reduction ---|---|---|--- Special Elite regular | 147.5 KiB | 34.6 KiB | 76.5% Lekton regular | 74.5 KiB | 11.1 KiB | 85.1% Lekton bold | 74.1 KiB | 10.2 KiB | 86.3% Lekton italic | 26.4 KiB | 4.3 KiB | 83.6% **Total** | **322.5 KiB** | **60.2 KiB** | **81.3%** So now I’ve switched to `font-display: swap`, which will trigger a font-flicker as it’s loaded, but it’s so small I’m hoping it downloads before the first paint. ## Lekton-Medium The regular version of Lekton is a little too lightweight for me. I got GPT to make it bulkier for me (but not as bulky as bold), and I think it did an alright job so far. You can download this version of the font: Lekton Medium and its license is here. Though, of course, it has nothing to do with the work of the original author, so don’t blame them if it’s super janky.
001
haikushane :d20: @shane.d20.social.ap.brid.gy · 13/09/2026
None of the normal shops I look at have these in stock (in the UK). … and this one is chock full of PVA that I’m having some bother clearing. Does anyone know where I can find some more? #bookbinding
000
haikushane :d20: @shane.d20.social.ap.brid.gy · 12/09/2026
Nottingham Panthers on BBC News last night! 🏒 Around 20:40 in this video. Lets get this season started! www.bbc.co.uk/iplayer/episode/m0031… #icehockey #eihl
bbc.co.uk
East Midlands Today - Evening News: 11/09/2026
The latest news, sport and weather for the East Midlands.
002
haikushane :d20: @shane.d20.social.ap.brid.gy · 09/09/2026
I'm super interested in following @jamesshore's series on measuring the impact of agentic coding. I've genuine concerns we've gone a bit Too Far at my company, but am eager to have a toolset to figure that out definitively […]
d20.social
Original post on d20.social
000
haikushane :d20: @shane.d20.social.ap.brid.gy · 09/09/2026
I’m not sure I’m interested in a folding phone.
000
haikushane :d20: @shane.d20.social.ap.brid.gy · 04/09/2026
I have exported all my Goodreads data and moved it to my jekyll blog. I was quite an infrequent user of it, but it seemed a shame to lose the data that was there. I'm waiting on the data export so I can delete my account there. One thing I did note I will lose is my 'to read' list. I've gone […]
d20.social
Original post on d20.social
100
haikushane :d20: @shane.d20.social.ap.brid.gy · 29/08/2026
I'm at a frustrating moment where it takes three hits with the pebble to kill the gargoyle creatures: two hits to get it down to 20hp... Just a smaller gust of wind would finish them off, but no, I need a full extra attack. 🪄 💫 shane.city/2026/08/is-it-cheating-i… #eldenring […]
d20.social
Original post on d20.social
011
haikushane :d20: @shane.d20.social.ap.brid.gy · 28/08/2026
Is there any reason to buy the FLAC? Will my ears ever be good enough to spot the difference? It's not that much more expensive, but is it just setting fire to the money? #music
An album that costs £8.99 for the 320kbps MP3 but £11.99 for the 16-bit FLAC.
011
haikushane :d20: @shane.d20.social.ap.brid.gy · 27/08/2026
This is a fun idea. I should get back into running games. riseupcomus.blogspot.com/2026/08/th… #ttrpg
riseupcomus.blogspot.com
The gods are the gay people that live in my phone
Sometimes I kvetch about how boring I find fantasy pantheons that are just Greek gods with a bad coat of paint. Sometimes I've blogged about it. --- _Guys do you want to hear about my setting's unique pantheon? My god Warfrith is the god of both war AND peace isn't that interesting?_ The next time you sit down to start writing a list of 10 gods and 1 evil god, stop. Don't do that. Do this instead. Think about your RPG friends that aren't in your immediate campaigns. Maybe they live out of state. Maybe they work third shift. Select 3-6 of them. These are your setting's **gods**. There might be other gods elsewhere in your world, but these are the local ones that form the basis of the major religion(s). (**Prerequisite** : You must have 3-6 RPG friends. If you don't have any, come join the His Majesty the Worm Discord.) Think about something you know about them. What is their job? What are their hobbies? What is their user name and pfp? These are the gods' **spheres of influence**. Take the letters of their name and rearrange them, spell it like Jolly Old England, or write some fantasy gibberish with similar phonetic tones. These are the **gods' names**. Look at your campaign map. Put temples, fanes, and wild altars to these gods everywhere. A city has one god as a patron: put their main temple there. Put a desecrated altar to one of your gods in a dungeon (the players can cleanse it). Put a Pantheon - a Temple to All Gods - on a high mountain or remote island. When your players encounter a temple to a god, they may make an offering and petition the god through prayer. Write these down. After your game session, text your friend. Tell them what the player offered them and what they prayed for. Ask them what they think would happen. Take their suggestions and action them in your world. You don't have to tell the players that their prayers were answered. Perhaps they'll never connect the prayer to what happened on account of your friend's advice. But gods work in mysterious ways like that. #
000
haikushane :d20: @shane.d20.social.ap.brid.gy · 25/08/2026
Oh goodness, I hope this wasn't me.
eliteleague.co.uk goes down as I'm testing a project which crawls the website.
000
haikushane :d20: @shane.d20.social.ap.brid.gy · 25/08/2026
I wrote up my tech to-do list, which is presumably of interest to only me. However, if you've thoughts on any of them, I'd love to hear them. technicallyshane.com/2026/08/25/aro…
technicallyshane.com
Around 15 items on my technical to-do list
Last Friday I found myself standing at my computer and staring at it, realising that I have no idea what I should be working on with my precious free time. So I decided to make this unordered list as a bit of a focusing menu of choice. Many of these I know how to resolve, I just need to actually do it. **1. Resolve issues with images not loading correctly when loaded via Misfed.** I have some thoughts I’d like to write down on vibe-coding and how I’m surprised that the AI revolution hasn’t led to literally everyone making their own apps for which they are the only expected user. I’ve made an RSS reader that I don’t intend anyone else to ever use, just throwing instructions for features at ChatGPT and it’s gone quite well. Is the code good? It can’t possibly be. Does it matter? Not really. Are there likely massive security concerns? Likely - have fun inside its non-root container. And again, I’m the only user of it. Anyway, some websites don’t have RSS feeds, like a certain sports league who I’ve recently become interested in, and so I had ChatGPT make a scraper for it, which converts it into an RSS feed, and then I can use it with my feed reader. Downside is that the images it returns (which it downloads to ActiveStorage rather than hotlinking) are all output with URLs like `http://localhost/storage/dds8fu3r.png` and that hostname is useless. I don’t want this service to be public (another piece of software I expect to be the only user of) so it shouldn’t have a public hostname. I need to do some docker network-fu and then figure out what the src of the img tag should be for the RSS reader to download the image too. **2. Tollport needs a way to archive keys.** Tollport is a piece of software I wrote by hand (why!) during my sabbatical and one I’m still quite pleased with. I realised there’s no way to remove a personal access token once you’ve created it. There needs to be an ‘archive key’ button. **3. In the RSS reader, “Themes” need more work to make “Topics” useful.** I’m using BERTopic to generate and assign topics to feed entries. There are some problems: the topics are incredibly niche. I need a layer to group topics together, which I’m calling Themes. Additionally, right now, if I retrain a new model (which I desperately need to do following some data quality fixes) then the old topics go away. I’d rather link the old topic to a similar new topic - again, leading to a grouping like Themes. **4. Enable Action workflows on every application.** I spent an afternoon really enjoying getting Action pipelines working on my self-hosted forgejo instance. Very pleased! But in my eagerness to get it working for my RSS reader, I built images and configuration that only really work for that one project. The set up should have been Forgejo-wide but was RSS-reader-wide. This needs fixing, and will unblock me moving off of GitHub. **5. Add Mastodon discovery tools to RSS feed reader.** If a friend on Mastodon toots about a blog post, that can be used as a signal to boost importance of an entry. It can also find more feeds that way too, suggesting which to follow. **6. Linking authors in the RSS feed reader needs an improved UI.** My reader lets users Subscribe to Feeds. The software tries to make webrings too: this blog talks about this blog a lot, you should follow that one. The way it does that is by crawling links in entries in Subscriptions and looking for more RSS feeds. When it does that, it creates new Feeds and new Authors. The current Authors UI links every damn author - thousands of them - rather than just the ones the user is subscribed to, which feels smarter. **7. Identify placeholder or legit author names and make an effort to display the correct name.** Often the author in a feed will be “invalid@example.com (chrissy banks)”. As a human, I can see that it should probably be ‘chrissy banks’. The system should take a stab at identifying NotNames and guessing at a BetterName. **8. Publicly accessible homepage for basement.wales.** I recently acquired basement.wales for my basement server. I point it at my tailscale IP addresses. I have an idea of something fun to put on the public homepage though: a roguelike which behaves like a dashboard. A room where you can listen to radio.shane.computer or a library where you can look through blog posts. I’m excited about the idea of a room where you can see through the window and see that the indicators are all green, but you need a passkey to get into the room where you can read the Grafana details. (Only I would have the passkey.) **9. Factorypi should recover gracefully when it starts dropping frames.** I have The Matrix running on a loop in my studio. After some time, it starts dropping a frame. I have code that should detect this has happened and refresh the page (which fixes it immediately), but that’s not working for some reason. My guess: the setTimeout I have that keeps track of progress is running every 5 milliseconds rather than every 5 seconds. **10. SSL cert management needs automating.** That basement.wales set up means that certbot can’t access the server to confirm the SSL cert, so I had to do it manually (with TXT records). I need a way of automating that. **11. dotfiles need to be per machine.** My dotfiles were an idealistic dream of a world where one config set would work on Mac OS and Ubuntu and Debian and Raspbian, but that was a folly. A pipe dream. Instead, I should have branches per environment. **12. Resolve 1Password ssh-agent and git signing.** Same as above, maybe. In my dotfiles, I have Host * IdentityAgent "~/Library/Group Containers/2BUA8C4S2C.com.1password/t/agent.sock" which obviously doesn’t work on any other machine than the first one. **13. Forgejo configuration is in the mounted volume. It should be version controlled.** I need to split out the important files so I can see what broke when things start failing. **14. Forgejo still refers to basement:222 when it should say git.basement.wales.** There must be a second config for what it displays in the ‘copy SSH command’ box. **15. Take another look at envs in 1Password.** I need to rethink how I have passwords in my version controlled configuration for each website. I think 1Password have a solution where you start your server with `op run` and it injects the secret envs from 1Password into the container, never needing for them to be on disk. I need to think about what security I’m trying to keep though. If someone has access to that server to see the .env files, that’s the ball game, so who really cares.
100
haikushane :d20: @shane.d20.social.ap.brid.gy · 24/08/2026
I'm going to try this ecoegg thing. (I thought you ought to know.) www.theguardian.com/thefilter/2026/…
theguardian.com
Which eco-friendly laundry detergents actually clean your clothes? I put 11 to the test
Our writer spent weeks putting capsules, sheets and liquid detergent through their paces to find the best for your clothes and the planet
000
haikushane :d20: @shane.d20.social.ap.brid.gy · 24/08/2026
In vim, how the heck do I see this top line? Ctrl-y doesn’t behave as I’d like. (It doesn’t add buffer to the top.)
000
haikushane :d20: @shane.d20.social.ap.brid.gy · 23/08/2026
I've picked up Elden Ring again. I remain bad at it. shane.city/2026/08/finding-grace-in…
shane.city
Finding grace in the Lands Between – shane.city
000
Reposted by haikushane :d20:
Howard Gees @howardgees.mastodonapp.uk.ap.brid.gy · 22/08/2026
🌻 Sunflowers Daily #45 Solved in 1:15 sunflowersgame.com
sunflowersgame.com
Sunflowers: Logic Puzzle Game
A new logic puzzle game. Use number clues to plant sunflowers around your logical garden. Unlimited free puzzles across 6 different difficulty levels.
001
haikushane :d20: @shane.d20.social.ap.brid.gy · 22/08/2026
Very excited to have purchased basement.wales, which points to my tailnet for my basement server. Mild quirk with getting Lets Encrypt to gimme a cert for it (manually, using TXT records). But now I have nginx running on my server downstairs and don't have to […] [Original post on d20.social]
git.basement.wales working nicely and pointing to my internal forgejo instance.
100
haikushane :d20: @shane.d20.social.ap.brid.gy · 18/08/2026
Is there really any point in release notes which are all creative ways of saying "no release notes"? slack.com/intl/en-gb/release-notes/…
slack.com
Slack for Mac - Release Notes
Follow along with our change log to stay in the know about upcoming and recent updates that affect your team.
000
haikushane :d20: @shane.d20.social.ap.brid.gy · 18/08/2026
I accidentally ended up with two copies of this lovely art book, which I mostly use as writing inspiration for #ttrpg. It’s quite lovely. ebay.io/m/pMCRRs
000
haikushane :d20: @shane.d20.social.ap.brid.gy · 15/08/2026
I remain confident that there are bus-sized leviathans living under the ice of Europa, grazing lazily on algae. www.theguardian.com/news/2026/aug/1…
000
haikushane :d20: @shane.d20.social.ap.brid.gy · 10/08/2026
RE: crispsandwi.ch/@VOLEwtf/11707060398… This is a fun internet thing.
crispsandwi.ch
001
haikushane :d20: @shane.d20.social.ap.brid.gy · 09/08/2026
If someone forces me to open a restaurant, I'm going to call it "Literally Just Roast Vegetables" and that's all it'll sell. It'll be like a burrito place, where you pick the veg, but it's just veg on a plate. You can pay 50p more for gravy.
000
haikushane :d20: @shane.d20.social.ap.brid.gy · 06/08/2026
RE: social.vivaldi.net/@lproven/1170426… “Please read the license. It says without any warranty, explicit or implied. I think you maybe implied.” Wonderful.
001
haikushane :d20: @shane.d20.social.ap.brid.gy · 01/08/2026
"World" is a word quickly looks like it's spelt wrong after looking at it for too long.
000
haikushane :d20: @shane.d20.social.ap.brid.gy · 27/07/2026
There’s no construction happening today for the first time in a least two years. My studio is beautifully quiet. Incredibly peaceful. I’d forgotten it could be like this.
000
haikushane :d20: @shane.d20.social.ap.brid.gy · 26/07/2026
This is a 'Fill code' from my phone which was very useful when it popped up the first time, but it doesn't need to pop up again every time I start my computer! The text has been deleted! #apple
A 'Fill code XXXX From messages' pop up that normally completes a two factor auth.
000
haikushane :d20: @shane.d20.social.ap.brid.gy · 25/07/2026
This could be interesting. It’s fun play in a setting with lore I’m familiar with. #rpg #wow www.enworld.org/threads/dungeons-dr…
enworld.org
Dungeons & Dragons’ next major product announcement leaks--and it's WORLD OF WARCRAFT
Expect a more formal announcement at Gen Con.
000
haikushane :d20: @shane.d20.social.ap.brid.gy · 22/07/2026
Not explained well in this article: the “international climate finance” referred to is a system of grants we give developing countries to help with invest in renewable energy (rather than oil from hostile states). The plan is to change from giving grants to giving loans. So, becoming revenue […]
d20.social
Original post on d20.social
010
haikushane :d20: @shane.d20.social.ap.brid.gy · 21/07/2026
Now is the time for #emfcamp write ups! I don't have one yet, but here's my good buddy, my ole pal, @asj aaronsplace.co.uk/blog/2026-07-20-e…
aaronsplace.co.uk
EMF Camp 2026
Today I headed home from EMF Camp 2026. This was my third time I didn't realise it at the time, attending EMF Camp for the first time To people who are experiencing EMF for the first time, I want to
051
haikushane :d20: @shane.d20.social.ap.brid.gy · 21/07/2026
The start of a Back To The Real World day. #emfcamp was a delight that made me feel an exhausted kind of content. Four days of friends, workshops, nerdy talks, and stepping away from everything else for a bit. I am properly still exhausted though. I shall opt for the bus to work today.
000
haikushane :d20: @shane.d20.social.ap.brid.gy · 19/07/2026
RE: mastodon.ie/@dalekmad/1169441655275… “Low data bar” 😆😆 #emfcamp
mastodon.ie
000
haikushane :d20: @shane.d20.social.ap.brid.gy · 18/07/2026
There were, for a brief period, ducks in the duck pond. #emfcamp
000
haikushane :d20: @shane.d20.social.ap.brid.gy · 18/07/2026
#emfcamp folk near Camp 2, I’m SO sorry that I left my phone in the tent whilst I went to shower. I just came back to my alarm going. Sorry!
000
haikushane :d20: @shane.d20.social.ap.brid.gy · 13/07/2026
I stumbled upon @alifeee's #Factorio post. Many levels of cool in there! - Multiplayer factorio fun - Proximity chat mod - Custom blog post theme!! blog.alifeee.net/factorio-maps
blog.alifeee.net
Pictures from a proximity voice chat Factorio server
A timeline of progress in a Factorio world, played with a proximity voice chat mod that I made
100
haikushane :d20: @shane.d20.social.ap.brid.gy · 07/07/2026
This is a very cool way to spend sometime. I don’t have any cool projects like this. aaronsplace.co.uk/blog/2026-05-18-h…
aaronsplace.co.uk
The HP 2225 ThinkJet
For some reason, @DosFox decided he didn't want his HP ThinkJet I dismantled the printer and attempted to fix the flex PCB by applying So, I'm here to fix that. You can find the KiCAD source, gerbers,
000