Firehose

And with a single click, I find myself transported to an ancient place. I’m a digital archaeologist, and I’ve stumbled across a long-forgotten remnant of those who came before. UI untouched for a decade.

It is two rebrands old. The palette is warped. Distorted. There are gradients. Buttons forged from a low-resolution image. I brush away a drop-shadow-lg.png to inspect an input form. Picking it up, I bring it to my face to count the pixels, only to be hit by the harsh aroma of Bootstrap 2 in the back of my throat.

I drop it to the ground, and it shatters into CSS properties. ‘Oh well,’ I muse aloud. ‘It’ll be fixed on refresh. Assuming anyone ever discovers this place again.’

I do what I came to do and close the tab.

What is it with big corps trying to make ‘everything apps’? We’ve already got apps that do everything.

Web browsers. I’m talking about web browsers. Just invest in the web. It isn’t hard.

I’ve been CAPTCHA’d. They’re holding me at a data centre and won’t let me go until I point out all the motorcycles, but they keep telling me I’m incorrect. Please send help! The situation is dire.

Note with text distorted like a CAPTCHA reading: 'I'm still stuck here. I feel insanity creeping in. I swear I clicked all of the motorcycles. Do the little bits in the corners count? I'm starting to think they just like the sound of my panicked keyboard clicks. Please help me. I beg of you.'

A hand reaching out through a Google reCAPTCHA interface towards the viewer. The top reads: 'Select all squares where something feels wrong. If there are none, click skip'. The hand is going beyond the borders of the image box and covering portions of the UI.

#372C25. The silty sediment that swirls at the bottom of a river bed. Slightly washed out and absorbent of light rather than reflective. Clay muddles what is otherwise organic and grounding. Decaying leaves and mud. Undulating and dispersing as it ebbs and flows between the toes of those who wade and splash.

I left my flexbox out in the sun for too long, which caused it to dry up. Now it won’t wrap anymore.

Do I need to get a new one, or can I rehydrate it somehow?

Sometimes I read something I’ve written and think, ‘Who the hell writes like that?’

Then I have the horrifying revelation that it is me. I write like that. Oh dear.

‘Did you, or did you not, kill this man?’

‘Your honour, he recommended I rewrite my static site with React because, quote, “It’s better.”’

‘The killing was justified. Court dismissed.’

This just in:
People shocked as venture capital backed company with good product/service that was operated unsustainably and at a loss to draw in users enshittifies as backers scramble for return on investment.

‘I’m shocked’, says one user of the product/service. ‘I know this exact thing has happened every other time without fail, but I thought this time would be different.’

Sending love to all the poor folks named Albert who go by Al.

None of us saw this coming, and I’m sorry most fonts don’t differentiate between ‘l’ and ‘I’.

Video

Turning Off My Laptop Using My Magnet Implant

Putting my laptop to sleep by placing my xG3v2 bio-magnet implant on the lid sensor.

Advising Reasonable AI Criticism

We're the good guys. They're the bad guys.

A loose analysis of the unproductive criticism surrounding artificial intelligence from both pro and anti camps, with advocations for more nuanced, constructive engagement and how that can be achieved to allow more informed and respectful discussions about AI technology and its impact.

https://vale.rocks/posts/ai-criticism

Last night I crept into your house under the cover of darkness and made almost imperceivable modifications to your browser’s user-agent stylesheet.

Changes just impactful enough that you will be mildly inconvenienced. I chucked a few !importants in there as well.

My evil knows no bounds.

Video

Quick xG3v2 Bio-magnet Implant Showcase

A showcase of my bio-magnet and some of the more presentable things I can do with it.

You use * + * because it is a useful CSS snippet. I use * + * because I think it looks funny, and I like saying ‘lobotomised owl’.

We are not the same.

A word of advice: don’t have a default username system if you’re running an online service which you’ll need to moderate.

Automated accounts will use these default names, which allows them to blend in with genuine users using default names and makes it harder to spot patterns.

Sometimes I push to prod simply because I’ve grown to hate my creation and wish to watch it suffer and toil in this cruel world at the twisted hands of deranged users.

Other times I feel sorry and have sympathy, so my pushes to prod are because I can’t bear to watch my own creation flounder alone within the confines of my machine with me as its sole tormentor any longer.

Part of becoming better at a craft is to reflect on shortcomings and to see what can be improved and iterated upon. I feel like a lot of people forget to do that bit when ‘moving fast and breaking things’.

Words, laid bare. Branded with the mark of shame: ‘[sic]’. The textual equivalent of a public flogging. Execution in bracketed form.

Carousels are a web staple. Websites use them, and thus people do in turn. They’ve garnered a lot of hate over the years, primarily due to being largely inaccessible and poor ways of presenting information, yet still they persist. So, if you can’t beat ‘em, join ‘em.

The Chrome team put together Carousels with CSS which Sara Soueidan has examined in extreme depth. My main takeaway from the main article and Sara’s analysis is that while this is a vague step in the correct direction, it doesn’t address any of the core issues like accessibility and introduces new ones. I was disappointed to see the approach taken in regard to addressing those issues and think Eric Eggert hit the nail on the head.

It completely fails with regard to separation of concerns by using CSS for structure, rather than HTML. I don’t know how to address that other than asking why? I’ve noticed a lot of new CSS features, especially ones with the Chrome team’s influence, are getting a little too markup-y for my liking. David Bushell has covered this and the overreliance of pseudo-elements with touchings on the carousel kerfuffle.

HTML is for structure, CSS is for styling, JS is for anything that can’t be achieved with HTML/CSS, and accessibility isn’t omittable. We should be striving to build a web that is both functional and inclusive. Respect the web; respect users.

I wanted to see how the times Bluesky posts are published affect the popularity of those posts, so I put together a super quick and dirty little tool to do that.

https://tools.vale.rocks/bluesky-posting-analyser

My findings lined up with my hypothesis that posts around American mornings and evenings merit the most activity.

I was surprised to see that weekends are popular within technical communities, as I expected engagement to drop off when people aren’t ‘working’.

If you’re on Twitter/X, I think less of you.
If you’re on Substack, I think less of you.
If you’re on Facebook/Instagram, I think less of you.

To remain on them knowing the damage they are doing and facilitating is to comply with and endorse their actions. There isn’t an excuse for staying.