stitcher.io
Blog
Newsletter
Feed
Books
Tempest
My wishlist for PHP in 2026
2025-10-29
Pitch in: sponsoring open source
2025-10-28
Reducing code motion
2025-10-22
Vendor locked
2025-10-01
What is your motivator?
2025-09-29
Impact charts
2025-09-11
Things I wish I knew
2025-09-10
Readonly or private(set)
2025-08-03
A year with property hooks
2025-07-18
The pipe operator in PHP 8.5
2025-07-03
PHP version stats: June, 2025
2025-06-13
Tempest's discovery explained
2025-04-26
PHPverse 2025
2025-04-24
Request objects in Tempest
2025-03-17
Static websites with Tempest
2025-03-14
Theoretical engineers
2025-01-18
PHP version stats: January, 2025
2025-01-17
What's new in PHP 8.4
2024-11-14
Unfair Advantage
2024-11-09
Things I learned writing a fiction novel
2024-10-30
Tagging Tempest Livestream!
2024-09-16
Building a framework
2024-09-13
A simple approach to static site generation
2024-08-30
Extend or implement
2024-08-21
PHP 8.4 at least
2024-08-13
I don't write code the way I used to
2024-08-07
Improved lazy loading
2024-07-29
It's all just text
2024-07-26
array_find in PHP 8.4
2024-07-18
HTML 5 support in PHP 8.4
2024-07-16
New without parentheses in PHP 8.4
2024-07-11
You should
2024-07-09
PHP version stats: July, 2024
2024-07-08
A vocal minority
2024-07-03
Leaving Twitter
2024-06-26
Tagged Singletons
2024-05-24
PHP in 2024
2024-03-23
Testing Patterns
2024-03-22
Building a custom language in tempest/highlight
2024-03-16
A syntax highlighter that doesn't suck
2024-03-15
The framework that gets out of your way
2024-02-19
PHP version stats: January, 2024
2024-01-29
Passion projects
2023-12-13
I don't know
2023-12-12
What's new in PHP 8.3
2023-11-23
The RFC Vote project
2023-08-15
"Is A" or "Acts As"
2023-07-06
PHP version stats: July, 2023
2023-07-01
#[Override] in PHP 8.3
2023-06-21
Don't be clever
2023-06-02
Building a procedurally generated game with PHP
2023-05-30
Things considered harmful
2023-05-02
Limited by committee
2023-03-22
Cloning readonly properties in PHP 8.3
2023-03-20
Thank you, Kinsta
2023-03-15
Slashdash
2023-02-20
I'm a light schemer
2023-02-10
I'm a code folder
2023-02-06
Acronyms
2023-01-29
My top-10 favourite functions in PHP
2023-01-27
Why curly brackets go on new lines
2023-01-24
Sponsors
2023-01-21
Tabs are better
2023-01-20
PHP in 2023
2023-01-17
PHP version stats: January, 2023
2023-01-11
Upgrading to PHP 8.2
2023-01-09
All I want for Christmas…
2023-01-03
What's new in PHP 8.2
2022-12-08
You cannot find me on Mastodon
2022-11-19
PHP Annotated, the YouTube channel
2022-11-08
Upgrade to PHP 8.2 with Homebrew on Mac
2022-11-01
Deprecating spatie/data-transfer-object
2022-11-01
Readonly classes in PHP 8.2
2022-10-25
PHP 8.2 in 8 code blocks
2022-10-24
Uses
2022-09-09
Asymmetric visions
2022-08-25
What I would change about PHP
2022-08-17
Deprecated dynamic properties in PHP 8.2
2022-08-08
Light colour schemes are better
2022-07-30
PHP performance across versions
2022-07-25
The Road to PHP 8.2
2022-07-21
Uncertainty, doubt, and static analysis
2022-07-16
The evolution of a PHP object throughout the years
2022-07-15
PHP version stats: July, 2022
2022-06-27
Stitcher turns 5 🎉
2022-06-16
Clean and minimalistic PhpStorm
2022-06-08
My PHP enum style guide
2022-05-30
Attribute usage in top-1000 PHP packages
2022-05-20
Dealing with deprecations
2022-05-18
Dynamic Strategies
2022-04-06
Goodbye
2022-03-25
The case for PHP generics
2022-03-25
Why we can't have generics in PHP
2022-03-24
Generics in depth
2022-03-23
Generics in PHP: The basics
2022-03-22
PHP in 2021 (video)
2022-01-24
Dealing with dependencies
2022-01-19
"It's your fault"
2022-01-15
Twitter home made me miserable
2022-01-14
How I plan
2022-01-13
PHP in 2022
2022-01-11
PHP version stats: January, 2022
2022-01-10
How to be right on the internet
2022-12-31
Upgrade to PHP 8.1 with Homebrew on Mac
2021-11-26
PHP 8.1: real-life performance benchmarks
2021-11-25
What's new in PHP 8.1
2021-11-25
PHP 8.1 in 8 code blocks
2021-11-07
Generics in PHP (video)
2021-11-06
The case for route attributes
2021-10-27
PHP 8.1: new in initializers
2021-10-09
The birth and death of a framework
2021-09-16
PHP 8.1: readonly properties
2021-09-11
My IKEA clock, and software design
2021-09-01
re: On using PSR abstractions
2021-08-31
Named arguments and open source projects
2021-08-26
Rational thinking
2021-08-25
Why do I write?
2021-08-13
The Road to PHP 8.1
2021-08-06
We don't need runtime type checks
2021-07-26
Would you like some optimism or realism with your estimate, sir?
2021-07-23
PHP 8.1: before and after
2021-07-16
An event-driven mindset
2021-07-14
PHP 8.1: cloning and changing readonly properties
2021-07-06
What about typed request classes?
2021-06-29
PHP version stats: July, 2021
2021-06-28
Opinion-driven design
2021-06-23
What about config builders?
2021-06-18
A new major version of Laravel Event Sourcing
2021-06-15
Why we need multi-line short closures in PHP
2021-06-03
Running PHP code in parallel, the easy way
2021-04-28
PHP in 2021
2021-04-15
Fibers with a grain of salt
2021-04-12
Starting with event sourcing
2021-04-09
Thoughts on Event Sourcing
2021-04-08
Honesty
2021-03-31
Don't write your own framework
2021-03-25
PHP 8.1: Enums
2021-02-17
PHP Enums before PHP 8.1
2021-02-17
A storm in a glass of water
2021-01-20
PHP reimagined
2021-01-13
Websites should be more like Star Wars
2021-01-10
When I lost a few hundred leads
2020-11-29
Upgrade to PHP 8 with Homebrew on Mac
2020-11-26
What's new in PHP 8
2020-11-26
PHP 8: the null safe operator
2020-11-17
PHP 8: How to setup the JIT
2020-10-29
Front Line PHP
2020-10-05
What a good PR looks like
2020-10-02
Which colour scheme is better?
2020-09-26
Scopes in JetBrains IDEs
2020-09-26
The case for transpiled generics in PHP
2020-09-17
PHP 8: Attributes
2020-09-03
Don't get stuck
2020-08-29
Annotations
2020-08-28
Differences
2020-08-21
My journey into event sourcing
2020-07-25
PHP 8: named arguments
2020-07-23
PHP 8: before and after
2020-07-20
Shorthand comparisons in PHP
2020-07-14
Why we need named arguments in PHP
2020-07-11
PHP 8: match or switch?
2020-07-08
PHP 8: JIT performance in real-life web applications
2020-07-02
Braille, and the evolution of software development
2020-06-27
Abstract resources in Laravel Nova
2020-06-23
PHP 8: Constructor property promotion
2020-06-12
Survey results: type systems in PHP
2020-06-09
What does array + do in PHP?
2020-06-05
How to merge multidimensional arrays in PHP?
2020-06-05
Survey: type systems in PHP
2020-06-03
Improvements on Laravel Nova
2020-05-26
PHP 7.4 in 7 code blocks
2020-05-23
The IKEA effect
2020-05-21
Builders and architects: two types of programmers
2020-05-20
PHP 8 in 8 code blocks
2020-05-15
array_chunk in PHP
2020-05-14
Combining event sourcing and stateful systems
2020-04-14
Minor versions, breaking changes
2020-03-26
Event driven server in PHP
2020-03-13
Bitwise booleans in PHP
2020-02-14
Enums without enums in PHP
2020-02-01
PHP in 2020
2020-01-17
Preloading benchmarks in PHP 7.4
2020-01-10
Upgrade to PHP 7.4 with Homebrew on Mac
2019-11-28
What's new in PHP 7.4
2019-11-26
Relationship issues
2019-11-09
Laravel's HasManyThrough cheatsheet
2019-11-08
Can I translate your blog?
2019-11-07
Guest posts
2019-09-16
re: re: A letter to the PHP team
2019-08-29
A letter to the PHP team
2019-08-28
Things dependency injection is not about
2019-07-30
Preloading in PHP 7.4
2019-07-05
Typed properties in PHP 7.4
2019-06-30
Tests and types
2019-06-07
What are objects anyway? - Rant With Brent 02
2019-06-05
A project at Spatie
2019-05-30
I'm starting a podcast
2019-05-14
PHP in 2019
2019-05-10
SOLID, interfaces and final - Rant With Brent 01
2019-05-07
Arrow functions in PHP 7.4
2019-05-02
I'm starting a newsletter
2019-04-26
Unsafe SQL functions in Laravel
2019-04-10
Array destructuring in PHP
2019-04-01
Upgrade to PHP 7.3 with Homebrew on Mac
2019-03-21
Queueable actions in Laravel
2019-03-11
Craftsmen know their tools
2019-02-21
PHP 8: The JIT
2019-02-06
I'm building something
2019-01-29
Analytics for developers
2019-01-22
Share a blog: sebastiandedeyne
2019-01-15
Comparing dates
2018-12-21
Have you thought about casing?
2018-12-20
Share a blog: betterwebtype
2018-12-15
New in PHP 7.3
2018-12-06
Share a blog: codingwriter.com
2018-11-14
Structuring unstructured data
2018-11-11
PhpStorm OSX performance: October 2018
2018-10-26
Share a blog: assertchris.io
2018-10-25
array_merge or + in PHP
2018-10-24
Organise by domain
2018-10-16
Laravel view models vs. view composers
2018-10-16
Laravel view models
2018-09-10
Eloquent MySQL views
2018-08-27
The web in 2045
2018-08-15
Service locator: an anti-pattern
2018-08-10
The Visual Perception of Code
2018-06-09
Acquisition by giants
2018-06-05
Liskov and type safety
2018-05-19
Dependency injection for beginners
2018-04-30
PHPStorm performance issues on OSX
2018-04-25
What PHP can be
2018-04-15
PHPStorm tips for power users
2018-03-15
Responsive images done right
2018-03-07
Showing full MySQL foreign key errors
2018-02-13
MySQL query logging
2018-01-20
Where a curly bracket belongs
2018-01-16
MySQL import: JSON with binary character set
2018-01-09
Asynchronous PHP
2017-12-24
Optimised UUIDs in mysql
2017-11-29
Improving PHPStorm's performance
2017-10-22
Stitcher beta 2
2017-08-27
Mastering key bindings
2017-08-25
A programmer's cognitive load
2017-06-25
Responsive images as CSS background
2017-06-24
Object oriented generators
2017-06-17
Process forks
2017-06-09
Performance 101: building the better web
2017-05-30
Array objects
2017-05-25
Stitcher beta 1
2017-05-20
PHP Generics and why we need them
2017-05-17
Stitcher alpha 5
2017-05-01
The simplest plugin support
2017-04-27
Stitcher alpha 4
2017-04-21
Static site generators vs. caching
2017-03-02
Image optimizers
2017-02-26
Tackling responsive images - part 2
2017-02-18
Tackling responsive images - part 1
2017-02-17
Which editor to choose?
2015-08-24
Noticed a tpyo? You can
submit a PR
to fix it.
Home
RSS
Newsletter
Discord
© 2025 stitcher.io