Paul Conroy's Avatar

Paul Conroy

@conroyp.bsky.social

πŸ–₯️ CTO at Square1.io ✍️ Conroyp.com

57 Followers  |  109 Following  |  62 Posts  |  Joined: 15.11.2024  |  1.86

Latest posts by conroyp.bsky.social on Bluesky

2026 Schedule | PHP UK Conference Check out our talk schedule for PHP UK Conference 2026, we have a wide range of talks and workshops lined up.

If the site of a speaker breaking out in a cold sweat of panic, realising their talk is out of date 30 seconds after writing it, isn't quite enough for you, there's a stellar line up this year - www.phpconference.co.uk/schedule

Code PHPUK26 will get you 10% off - www.phpconference.co.uk/tickets

05.02.2026 18:11 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Vibe Coding vs. Engineering: Building AI Apps in PHP with Paul Conroy
YouTube video by PHP UK Conference Vibe Coding vs. Engineering: Building AI Apps in PHP with Paul Conroy

Ahead of the conference, I spoke with @daveliddament.bsky.social about vibe coding vs ai-assisted dev. We also discussed what a stupid idea it is to try preparing a talk on AI-assisted development more than 10 minutes in advance, given how fast the space is moving πŸ«₯

www.youtube.com/watch?v=nBJJ...

05.02.2026 18:08 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Post image

Only 2 weeks until this year's @phpukconference.bsky.social!

My talk will be the story behind #wdydy site EverythingIsShowbiz.com - a side project that started as "search podcast transcripts" and spiralled into the good, bad, and ridiculous world of AI-assisted development in PHP.

#php #phpuk

05.02.2026 18:06 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Post image

WE HEREBY ANNOUNCE A LIVE SHOW IN DUBLIN. March 3rd, baby. On sale now. Tickets on sale now: www.ticketmaster.ie/artist/56740...

23.01.2026 13:05 β€” πŸ‘ 44    πŸ” 7    πŸ’¬ 5    πŸ“Œ 3
Post image

🎭 When a #PHP side project turns into a full #AI-powered system… @conroyp.bsky.socialΒ talks about the real lessons from building PHP + AI beyond the hype.

#IntPHPCon |πŸ“BER | πŸ“… June 8 – 12, 26

The session: https://f.mtr.cool/nfztgkerhg

#GenerativeAI #SideProjects

07.01.2026 10:02 β€” πŸ‘ 0    πŸ” 1    πŸ’¬ 0    πŸ“Œ 0

* It being 2026, the "I" here of course is the royal I - an afternoon of poking and prodding at Claude code until we were broadly on the same page. The impact of Claude code and it's like on lowering the barrier to bringing ideas to life is genuinely phenomenal, and worth a deeper dive into.

02.01.2026 19:37 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Preview
TicTacGoAway - Tic-Tac-Toe, Evolved You only get 3 pieces-place a 4th and your oldest vanishes! A fresh twist on the classic that keeps every game exciting.

The twist is that your oldest move vanishes from the board, meaning only 3 pieces "in play" at any one time. It's a small change which makes a big change to the strategies you can use! It also massively cuts down on draws.

Try it out at tictacgoaway.com!

02.01.2026 19:37 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Preview
TicTacGoAway - Tic-Tac-Toe, Evolved You only get 3 pieces-place a 4th and your oldest vanishes! A fresh twist on the classic that keeps every game exciting.

Tic Tac Toe (or Xs and Os) is a fun game, loved by small kids in particular. Though once you get the hang of it, it more often than not ends up in a draw.

TicTacGoAway.com is a version I* put together which adds a small twist to cut down on draws and get more winners.

02.01.2026 19:36 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Post image

⚑#ModernPHP offers tools that make your code cleaner, safer & more expressive.

@conroyp.bsky.socialΒ highlights the features many devs miss and how they elevate your everyday workflowΒ 

#IntPHPCon|πŸ“ BER | πŸ“… June 8 – 12, 26

πŸŽ“The session: https://f.mtr.cool/pvchkoxnuo

#CleanCode #DeveloperExperience

08.12.2025 12:07 β€” πŸ‘ 2    πŸ” 1    πŸ’¬ 0    πŸ“Œ 0
Preview
Reflections on 30 Years of PHP Marking PHP’s 30th anniversary, this interview gathers insights from leading experts reflecting on the language’s evolution, resilience, and enduring impact on the web. From its role in the dot-com boom to its modern capabilities and rich frameworks, PHP continues to adapt and thrive. Looking ahead to PHP 8.5 and beyond, the discussion highlights a language that remains vibrant, innovative, and essential to the future of web development.

πŸŽ‰ PHP turns 30!
A new @devmio.bsky.socialΒ expert roundtable brings leading experts β€” to share what makes PHP still thrive πŸš€

ft. @spriebsch.bsky.social,Β @naderman.de, @conroyp.bsky.socialΒ - and many more!

Dive into the full interview: https://tinyurl.com/59ubsdrs

#IntPHPcon #PHP #WebDev #PHP8

18.11.2025 10:03 β€” πŸ‘ 0    πŸ” 1    πŸ’¬ 0    πŸ“Œ 0
Preview
Predictable Cross-Currency Payments with Stripe's FX Quotes API Cross-currency payments don’t need to be guesswork. Stripe's FX Quotes API lets you lock exchange rates, eliminate reconciliation surprises, and give customers clear, predictable pricing across curren...

I did a write up on the ins and outs of this new API - how it works, and the common gotchas when you first start working with the API.

If you build global marketplaces or handle multi-currency pricing, this is a big QoL upgrade πŸ‘‡
www.conroyp.com/articles/pre...

06.12.2025 14:04 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

Stripe’s new FX Quotes API fixes a huge chunk of this. πŸ’±πŸ”’

It lets you lock exchange rates upfront for PaymentIntents and Transfers, so you know exactly what each party will pay or receive.

No surprises. No drift. No β€œwhy did this settle at €19.85, not €20?” support tickets.

06.12.2025 14:04 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 2    πŸ“Œ 0

Expanding your business internationally has never been easier - more demand, more channels, more global customers. 🌍

But the payments side hasn’t always kept up. Multi-currency pricing still creates pain: unpredictable FX, messy reconciliation, transfers landing a few cents off - no fun!

06.12.2025 14:03 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Post image

This year's "52 things I learned list" from Tom Whitwell is a great one. Tax evasion via snail farming, Apple insulting Korean manhood, the Taiwanese receipt lottery, and Marchetti's constant - lots of super trivia in there!

medium.com/@tomwhitwell...

01.12.2025 16:05 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Preview
How to Change YouTube Playback Speed with a Simple Bookmarklet Playback speed options now appear on some YouTube videos, and vanish on others. This lightweight bookmarklet lets you toggle playback speed controls on any YouTube video.

I've written up a short explainer on how this works, with simple installation instructions for the bookmarklet:

www.conroyp.com/articles/how...

22.11.2025 20:19 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Post image

So we turn to bookmarklets - an older tool, fallen out of favour in recent years.

A tiny snippet of JavaScript saved as a browser bookmark - click it, a custom UI appears, set any speed you want, done.

A nice bonus of YouTube being an SPA is that settings stick between videos!

22.11.2025 20:19 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Post image

Fortunately, the underlying video element still listens.
Pop open the console and run:

document.getElementsByTagName("video")[0].playbackRate = 2.5

...and boom, instant speed-up to 2.5x, or whatever speed you like.

But nobody wants to open DevTools on *every* video.

22.11.2025 20:18 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Post image

When I’m watching longer YouTube videos, I usually bump the speed up to 2Γ— or 3Γ—. Recently though, YouTube’s UI has gotten a tad erratic.

Some videos have the full speed menu. Others only show the menu, but stick at 1x with no way to change it.

22.11.2025 20:18 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Preview
Why Your Average Position in Google Improved But Your Traffic Didn't Noticed your Google Search Console "average position" suddenly improving while traffic drops? You're not alone. A quiet change to Google's systems removed millions of bot-generated impressions, making...

It's a good thing - more realistic, human-only data.
But if your SEO reporting leans on impressions, time to annotate those charts.

Full write-up here: www.conroyp.com/articles/why...

#seo #webdev #googlerankings

04.11.2025 11:35 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

Without the impressions data from those bots, average position shoots up, but without a big traffic surge to go with it.

Google isn't counting so many robots any more, so the Search Console stats are more realistic than they have been in the past.

04.11.2025 11:34 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

In September, Google quietly retired the old &num=100 parameter. SEO tools and bots often this to fetch 100 results per page, rather than iterating over a load of pages 1 by 1.

Those bots and scrapers were creating fake "impressions" for positions 20–100.

04.11.2025 11:34 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Post image Post image

Over the past couple of months, "Average Position" in Google Search Console has shot up across loads of sites.

Normally great news! Except impressions and clicks are often down. πŸ€”

So what's going on under the hood here?

04.11.2025 11:34 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0

Thanks to everyone who came along to my talk at @phpconference.bsky.social today, "Modern PHP Features You’re Probably Not Using (But Should Be)". Great to see so many familiar faces in the room, and also to talk to some new ones afterwards!

The slides are up now at speakerdeck.com/conroyp/mode...

30.10.2025 12:59 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Post image Post image

πŸ’‘ What happened at #IntPHPcon Munich?

βš™οΈ @conroyp.bsky.social – Modern PHP Features You’re Probably Not Using
πŸ— Thiago Cordeiro – #DDD & Clean Architecture

A great mix of modern syntax and solid structure β€” showing how PHP keeps evolving for scalable, maintainable apps πŸ’ͺ

#PHP #SoftwareArchitecture

30.10.2025 12:56 β€” πŸ‘ 3    πŸ” 1    πŸ’¬ 0    πŸ“Œ 1
Preview
Turning Off LinkedIn's "Missed Notification" Alert LinkedIn has started sending a persistent notification to alert me to notifications I might have missed. It leads to generally-useless content, yet my monkey brain can't ignore it. I need a way to kil...

If your monkey brain is anything like mine, it's hard to ignore notifications coming through. Annoying when they're pointless!
Fortunately there's a simple way to turn them off on Android.

www.conroyp.com/articles/tur...

16.10.2025 18:00 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Post image

LinkedIn have taken to sending notifications warning you of notifications you may have missed. Potentially useful! In practice, not so much.

They're not warning of useful ones (connection requests, post responses), but "person you don't know is playing game Y/posting in group Z you're not in" etc.

16.10.2025 17:59 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Preview
Build Stuff 2025 Tickets – Secure Your Spot at the Software Conference Get your Build Stuff 2025 tickets now! Join top software engineers, architects, and tech visionaries in Vilnius, Lithuania (Dec 3-5, 2025) for hands-on workshops, cutting-edge talks, and game-changing...

There's a very strong line up for what is always a great conference.

πŸ“… December 3-5, 2025 | Vilnius, Lithuania
🎟 Use my promo code 2025SPEAKER_15 for 15% off tickets
πŸ”— buildstuff.events?sca_ref=9646...

#buildstuffconf

15.10.2025 08:28 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Post image

I'm excited to be speaking at Build Stuff in Vilnius this December!

"Digital Cat & Mouse: Strategies to Outsmart Phishers, Scrapers, and Thieves" covers the (mis-)adventures that taught me how to protect digital assets in the wild (selling 10 Downing St, moving the Eiffel Tower to Dublin, and more)

15.10.2025 08:27 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Preview
Redirecting Test Emails Safely in Laravel A small Laravel feature that prevents a big headache: how Mail::alwaysTo() keeps staging and demo environments from accidentally emailing real users.

πŸ”— www.conroyp.com/articles/red...

#laravel #php #webdev

11.10.2025 19:11 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

We've all done it - testing on staging, click send… suddenly a real user replies to your test email.

Laravel has a one-line feature that prevents that from ever happening again: Mail::alwaysTo()

It quietly redirects every outgoing email to a single, safe inbox.

Tiny feature. Big sigh of relief!

11.10.2025 19:11 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0