Paul Conroy
From Smile to Receipt: Stripe Terminal Payments and Printing
Smile for 10% Off: Private Face Detection in the Browser
Hello Stavanger 2026
Making My Website Agent-Friendly: A WebMCP Field Test
Reduce AWS SDK Bundle Size in PHP with Composer
Reduce AWS SDK Bundle Size in PHP with Composer
Charging AI Agents Per Request: A Practical Guide to the Machine Payments Protocol
PHP[tek] 2026: Practical PHP, Chicago Hot Dogs and All The Elephpants
phpday Verona 2026
Stripe Sessions 2026: The Year the Bot Became the Customer
Custom Stripe Payment Notifications with Workflows - No Code Required!
Dutch PHP Conference 2026: Notes from a Cinema Full of PHP Developers
Screen Portal: sharing a partial screen region in Google Meet
ConFoo 2026, Montréal
Migrating Subscriptions to Stripe Billing: A Guide to the Migration Toolkit
From Tailwind CDN to Production: Generate an Optimised CSS Bundle
Build Stuff 2025, Vilnius, Lithuania
Predictable Cross-Currency Payments with Stripe's FX Quotes API
How to Change YouTube Playback Speed with a Simple Bookmarklet
Why Your Average Position in Google Improved But Your Traffic Didn't
Turning Off LinkedIn's "Missed Notification" Alert
Redirecting Test Emails Safely in Laravel
Automated Takedowns, Manual Headaches: When DMCA Bots Go Bad
Creating favicons from emojis and SVGs
Avoiding Déjà Vu: Building Resilient APIs with Idempotency
International PHP Conference, Berlin 2025
Exporting Google Slides to PDF on Mac without losing Emojis or Custom Images
CyberwiseCon / DevDays Europe, Vilnius, May 2025
Project Yellow Brick Road: Fighting Scrapers with 10 Downing Street, the White House, and Some Mildly Plausible Nonsense
Stripe Sessions 2025 Review
Creating Animated Gifs from MP4 and WebM files using ffmpeg
Upgrading Chrome in Ubuntu - Fixing the "Dependency is not satisfiable: libglib2.0-0" error
Stripe Is My DNS Provider Now: When Good APIs Meet Bad Ideas
Solving AWS Lambda's "Cannot find module 'index'" Problem
Dutch PHP Conference, Amsterdam 2025
Running Ollama on Ubuntu with an Unsupported AMD GPU: A Performance Guide
Avoiding 'Route [filament.admin.auth.login] not defined' when customising Filament root
Fixing 'A Facade Root Has Not Been Set' when testing Laravel with Pest
Serverless caching and proxying with Cloudflare Workers
Using Google Sheets as a RESTful JSON API
International PHP Conference, Munich 2024
Persistent WiFi failure on Ubuntu 24.04
PHPers Summit 2024
The Price of Privacy: How Paywalled Cookie Banners are Redefining Digital Revenue Streams
Monitoring Domain Expiration Dates using Laravel's Process Facade
Upgrading PHPUnit - "metadata in doc-comments is deprecated [...] use attributes instead"
From Backend Dev to Front and Center: A First-Time Speaker's Journey to PHP UK 2024
Slack Mobile Problems After Enabling 2FA
Idempotency - what is it, and how can it help our Laravel APIs?
Juggling Databases When Testing With Laravel: Tackling the Lock Wait Timeout Error
Navigating the Shift from Developer to Leader - Decrypt Podcast Round-up
Streamlining YouTube Integration: Icon Techniques & Best Practices for Optimised Video Loading
Building Resilient Code: Harnessing the Power of Value Objects
Streamline SEPA Bank Detail Collection: A Serverless Approach with Stripe and Cloudflare Workers
A/B testing your content on social media
Calculating rolling averages with Laravel Collections
Lazy loading background images to improve load time performance
Using a TV-style background blur to showcase portrait images in landscape layouts
Adding tenancy-awareness to Laravel queues and artisan commands
Attack of the clones - removing copied websites from the internet
Embedding Google Drive videos
Font Subsetting - shrink down font files to speed up page loads
First World Cup - Celebrations Cut Short
Minimising Cumulative Layout Shift (CLS) When Loading Responsive Ads
Diagnosing a sudden jump in "Direct" traffic in Google Analytics
Avoiding The Google Ads Two-Click Penalty
Improving Page Speed - Optimising for Core Web Vitals
Using the Measurement Protocol API to find the impact of a Consent Management Platform
Toolbar colour customisation in Chrome with theme-color
Internet connection problems with eircom efibre fixed
Jumping off the waterfall - lessons learned from an agile transition
Picture perfect – useful code visualisation tools
Mailcatcher, Vagrant & Laravel: Email testing made easy
Schrödinger’s Mysql table – does it exist?
Encoding a euro symbol in email subject lines
Mysqldump syntax error fixed
CSS & Javascript truncated by nginx
Symlink shenanigans - node.js, npm, express and vagrant
Share and share alike – Facebook Tags and Twitter Cards
The Daft.ie Property Tax Calculator – how does it work?
Talking to Joe: What’s a mention by Joe Duffy worth?
Will valid markup now help your Google ranking?
Geeks on the run
What's the best time to renew an ad on Daft.ie?
Bookmarklets – a quick introduction!
DeCluttering Twitter, Part Deux
DeClutter Twitter