David Peach

David Peach

David Peach

Programmer and Virtual Photographer from England.

Contact Me

Welcome to my new website. Currently being built "in the wild" using 11ty.

I got sick of using WordPress and not having an easy and full control over the entirety of my website. So this new site, at my original domain, is my place to really focus in on learning and sharing the best new features in front end technologies.

I am a backend (PHP) developer by trade, but have always had a cursory interest in front end technologies.

I want to start working on my front end skills too now.

Blog

  1. “What the hell was I thinking?”; “Huh?”; “Who’s the fucking idiot who did this?.. oh. It was me…”.

    Three questions every developer / coder / programmer / whatever-er asks themselves from time to time.

    And I am definitely no different.

    I built an initial version of a web-based tool for work some time ago. I built it with some speed to get it done as quickly as possible. But I should have taken longer and focused in more on the ongoing code quality.

    I wrote tests from the get-go, but I let it slip a little when I would dip back into the project for little updates and tweaks across the last twelve months.

    The other day I ran a static analysis tool over the project for the first time.

    Christ on a bike.

    So for the past day or so I’ve been battling hard to climb up the 9 rung ladder to the highly sought after status of level 9 all green. (Larastan/phpstan this is).

    I’m currently on level 7 with about 15 errors to fix.

    I have found that from implementing the fixes — many of which have been type hinting and generics-related — I am understanding the code — and the underlying framework Laravel — much better.

    I’ve even found a very odd design decision in Laravel. The `auth()->id()` method can return either of the following:

    • int
    • string
    • null

    Why not just “int” and “null”?

    Anyway.

    It’s been fun and I’m looking forward to fighting through level 8 before defeating the final boss — level 9 All Green. 🟩🟩🟩🟩🟩

    Posted: by David Peach

  2. I’m having a great time keeping up to date with the blogging journey of a friend of mine.

    And I mean keeping up — he must post at least three times a day.

    And I have found it inspiring.

    I used to write often back when I’d commute to work. But weirdly since working remotely I have written less. I suppose it’s not surprising — at home I have many things to pre-occupy myself.

    But I want to start posting more often. Maybe not three times a day, but much more often than i do.

    I do tend to post my daily Wordle plays, but I’m not counting those.

    Who knows how this will go. Or even if it will go.

    Let us see.

    Posted: by David Peach

  3. Trying to move my wordpress site over to using the composer-driven “bedrock” structure of wordpress.

    It’ll be a new server running docker, but will hopefully make it easier to make changes and deploy those changes to my site.

    We shall see.

    Posted: by David Peach

  4. Aral Balkan

    @[email protected]

    Somehow managed to get food poisoning so that’s fun. Extra marks for having only had a cheese toasty and a dirty (but not in that way) chai latte for breakfast at a local cafe I always go to.

    (Feeling better now after details I won’t go into here even though they’re rather hilarious in hindsight.)

    :awesome:👍

    24th March 2025, 5:23 pm 2 boosts 8 favorites

    /** * ActivityPub embed styles. */ .activitypub-embed { background: #fff; border: 1px solid #e6e6e6; border-radius: 12px; padding: 0; max-width: 100%; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; } .activitypub-reply-block .activitypub-embed { margin: 1em 0; } .activitypub-embed-header { padding: 15px; display: flex; align-items: center; gap: 10px; } .activitypub-embed-header img { width: 48px; height: 48px; border-radius: 50%; } .activitypub-embed-header-text { flex-grow: 1; } .activitypub-embed-header-text h2 { color: #000; font-size: 15px; font-weight: 600; margin: 0; padding: 0; } .activitypub-embed-header-text .ap-account { color: #687684; font-size: 14px; text-decoration: none; } .activitypub-embed-content { padding: 0 15px 15px; } .activitypub-embed-content .ap-title { font-size: 23px; font-weight: 600; margin: 0 0 10px; padding: 0; color: #000; } .activitypub-embed-content .ap-subtitle { font-size: 15px; color: #000; margin: 0 0 15px; } .activitypub-embed-content .ap-preview { border: 1px solid #e6e6e6; border-radius: 8px; overflow: hidden; } .activitypub-embed-content .ap-preview img { width: 100%; height: auto; display: block; } .activitypub-embed-content .ap-preview { border-radius: 8px; box-sizing: border-box; display: grid; gap: 2px; grid-template-columns: 1fr 1fr; grid-template-rows: 1fr 1fr; margin: 1em 0 0; min-height: 64px; overflow: hidden; position: relative; width: 100%; } .activitypub-embed-content .ap-preview.layout-1 { grid-template-columns: 1fr; grid-template-rows: 1fr; } .activitypub-embed-content .ap-preview.layout-2 { aspect-ratio: auto; grid-template-rows: 1fr; height: auto; } .activitypub-embed-content .ap-preview.layout-3 > img:first-child { grid-row: span 2; } .activitypub-embed-content .ap-preview img { border: 0; box-sizing: border-box; display: inline-block; height: 100%; object-fit: cover; overflow: hidden; position: relative; width: 100%; } .activitypub-embed-content .ap-preview video, .activitypub-embed-content .ap-preview audio { max-width: 100%; display: block; grid-column: 1 / span 2; } .activitypub-embed-content .ap-preview audio { width: 100%; } .activitypub-embed-content .ap-preview-text { padding: 15px; } .activitypub-embed-meta { padding: 15px; border-top: 1px solid #e6e6e6; color: #687684; font-size: 13px; display: flex; gap: 15px; } .activitypub-embed-meta .ap-stat { display: flex; align-items: center; gap: 5px; } @media only screen and (max-width: 399px) { .activitypub-embed-meta span.ap-stat { display: none !important; } } .activitypub-embed-meta a.ap-stat { color: inherit; text-decoration: none; } .activitypub-embed-meta strong { font-weight: 600; color: #000; } .activitypub-embed-meta .ap-stat-label { color: #687684; }

    The question is, will you be returning to your favourite cafe tomorrow.

    Posted: by David Peach

  5. Been really digging this album today.

    Murder Ballads by Nick Cave and the Bad Seeds.

    Never really heard their / his stuff other than the title song from Peaky Blinders.

    This album is incredible and dark. Going to be investigating more of his stuff.

    Posted: by David Peach

  6. It is scientifically impossible to play this song too loud.

    I liked the darkness in the early 00s when their initial hits came out but then just forgot about them.

    I have since rediscovered them.

    This song, Bald, and the album it featured on: One way ticket… are absolute fucking bangers.

    10/10.

    Posted: by David Peach

You can also find me in these other places: