Loving you isn’t easy.

Loving you isn’t easy.

You constantly challenge me, make me question my own preconceptions, my hang-ups: and I want to break down the boundaries of my comfort zone and confront those issues.

You are so much wiser, smarter and more more talented than me: and that inspires me to become so much better myself.

You show me a mirror that reveals my own shortcomings and failings: and I see all the things that I dislike about myself, and want to change and improve.

You had faith that I could still be a better person, even though I’d given up hope on myself; and gave me the courage to challenge the demons of my past.

You helped me recognise the hole inside myself, the belief that I could never love or be loved; and you helped me restore the faith that I had lost.

I know it’s foolish of me, but sometimes you frighten me, you set such high standards for yourself, and I know that I could never live up to those same standards, no matter how hard I tried. I can only set the bar for myself, forgive myself when I fail, and try again and again.

I’m both scared and in awe of your passion for the things that you believe in, that make your eyes dance and your colours swirl about you: and I want to break my restraint and show my own passions.

I feel so happy when we’re together, and it hurts when we’re apart. There’s so much that I want to share with you.

Loving you isn’t easy; but you make me complete, and that is why I love you.

Posted in Uncategorized | Leave a comment

Confronting our Demons

Confronting our own inner demons is the hardest battle we ever have to face, especially when they’re so deep-rooted after so many years: filling in the holes that each leaves behind with hope, because that’s all that I have at the moment. I’m feeling a little like Pandora’s Box.

Breaking through the barriers that my own mind has constructed, and confronting those demons; reliving painful memories that my mind would prefer to forget: and this is just one of the battles that I’m facing, leaving me feeling exposed and vulnerable.

Accepting my vulnerabilities – breaking down all those protective shells that I’d built around myself over the decades – was never going to be quick or easy, and something that I’ll never finish; but it’s something that I need to do, and even a small victory is still a victory.

I know I’m winning this fight, because the pain that I feel grows each day, and I wonder if hope is enough; but I know that those doubts and the fear of that pain is how the demons are fighting back. I have to convince myself that hope won’t give way to despair.

Will I be a better person when it’s over? I don’t know! I do know that I will be able to look at myself in the mirror, and feel more comfortable with myself.

Fighting our own demons is a personal battle, one that we fight alone. The struggle makes me feel so lonely; and the only person that will ever know the outcome is myself. I just wish I could be there to provide support to those that I love, rather than being a drain on them.

Posted in Uncategorized | Tagged | Leave a comment

A Reverse-Retrospective: Places that I’m looking forward to visiting in 2021

With all the closures and travel restrictions in place during last year, there are so many places that I wanted to visit, but wasn’t able to. So rather than a look back at last year (with so much trauma and negativity), I’m going to look forward (and positively) to where I’ll be able to go this year as lockdown eases, and travel becomes possible again. There are so many places in Europe and across the world that I want to go, but I’m going to limit myself to the Netherlands at the moment, places just a few hours drive or train journey from where I live.

Besides wanting to take a full spa day (saunas, pools, jacuzzi, herbal pool, ice room, steam room, caldarium, etc. and with massage, mud packing, food and fruit juices and all the trimmings), there are a number of sites and locations in the Netherlands that are on my post-covid list of places that I really want to visit. Not in any particular order, but here are a few of those places.


Kersenbloesempark (Cherry Blossom Park) is a corner of the Amsterdamse Bos that is filled with 400 yoshino cherry trees that are filled with blossom in the Spring. It was open last year, but so crowded with visitors desperate to get out of their homes during first lockdown and ignoring social distancing rules, that it didn’t feel safe going there. Sadly, that may well be the case again this year.

Fortunately Amsterdamse Bos is large enough to go walking and to maintain social distancing (there are parts of the park where you can find yourself completely alone for long stretches), and it’s all beautiful; but that small corner with the Cherry trees when they’re in full blossom is especially lovely.

The Keukenhof Gardens

The Keukenhof is near Lisse in Zuid Holland, and in the very centre of the bulb growing region of the Netherlands. With more than 7 million bulbs planted in the Keukenhof Gardens during the Autumn, the gardens are absolutely spectacular in the Spring months. I enjoyed a visit there 2 years ago; but last year it was closed to the public, and (sadly) I think restrictions will still be in place when it’s at its finest this Spring. 😦 But last year they provided a virtual tour of the gardens, and I’m hoping that they will do the same again this year.

The Eftling

A theme park in Kaatsheuvel, Noord Brabant. The attractions reflect elements from ancient myths and legends, fairy tales, fables, and folklore. The original designs from the early 1950s were by the artist Anton Pieck, and his style (grim and dark, but also romantic and nostalgic) has provided the basis for all subsequent expansions or changes to the park. Day or night it looks spectacular, and has seasonally themed events throughout the year, so one visit probably isn’t enough.

De Zaanse Schans

A district of Zaandaam, Noord Holland, that is famous for its collection of historic windmills and buildings that were brought to the district from all over the region in the 1960s and 70s, and also hosts seven museums covering traditional crafts like weaving and cooperage. It sounds like a great way to discover what life was like for the Netherlands in the last century.


The Afsluitdijk is a causeway and dam that runs from Den Oever in Noord Holland to the village of Zurich in Friesland, and carrying the A7 motorway for 32 kilometres (20 miles). It separates the Zuiderzee (now the IJsselmeer) from the North Sea/Wadden Sea, and took 7 years to build in the 1920s and 30s. At both ends of the dike, there are also complexes of shipping locks and a total of 25 discharge sluices. As part of the Zuiderzee Works, it has been declared one of the Seven Wonders of the Modern World by the American Society of Civil Engineers.

The DeltaWorks

DeltaWorks is a series of construction projects in the southwest of the Netherlands, designed to protect the land around the Rhine-Meuse-Scheldt delta from the sea, and comprises a series of dams, sluices, locks, dykes, levees, and storm surge barriers in the area between Zuid Holland and Zeeland. Like the Zuiderzee Works, it has also been declared one of the Seven Wonders of the Modern World by the American Society of Civil Engineers.


Biesbosch (‘forest of sedges’) is a large network of rivers and smaller and larger creeks with islands; and is a large national park near Dordrecht in Zuid Holland. It is also one of the last extensive areas of freshwater tidal wetlands in Northwestern Europe, making it an important wetland area for waterfowl.


Kamp Westerbork was a transit camp in Drenthe province, and used as a staging ground for the deportation of Jews to the concentration camps during World War II. Following the war, Westerbork was first used as a remand prison for alleged and accused Nazi collaborators, and later housed Dutch nationals who fled the former Dutch East Indies (Indonesia). Since then, the camp has been almost completely removed, and the Westerbork Synthesis Radio Telescope built on the site; but a museum has been set up nearby to keep the memories of those imprisoned in the camp alive, and as a tribute to those inmates who had died after deportation. The 102,000 stones memorial has a stone for everybody that transitioned through the camp to die in the death camps.

Van Gogh Cycling Path

Created in 2014, the Van Gogh Cycling Path at Eindhoven in Noord Brabant is a 600m stretch of cycle path covered with luminous stones. These charge up during the day and emit light in the evening; and are designed in a pattern inspired by the Van Gogh’s famous painting ‘Starry Night’.

The Moses Bridge

Fort de Roovere is a 17th century fortress near Halsteren in Noord Brabant. Renovated as a tourist attaction over the last 10 years, a bridge across the moat was considered “disrespectful” of its purpose, so a submerged bridge, nicknamed “the Moses Bridge”, was designed instead.


A village in Overijssel without any roads (at least in the old part of the village), and that you can only see on foot, by bicycle (since a cycle path was built recently), or from the canals. It does look to be a beautiful picturesque village, and worth visiting for that alone; but the excitement seems to be watching all the tourists who can’t navigate a boat bumping into each other in the canals.

The Hoge Veluwe National Park

A former hunting estate consisting of heathlands, sand dunes, and woodlands in the province of Gelderland, this is a national park even though it is still privately owned, and there is a charge to visit. Besides the park with its deer, wild boar and mouflons, there are also two museums; one devoted the the geology, flora and fauna of the estate; the second an art museum with works by Rodin, van Gogh, Seurat, Piet Mondrian and Picasso among others.


A small village with some very lovely (and expensive) properties near Hilversum, the village green in Laren is home to Poffertjeskraam de Haan, with really delicious poffertjes.

Fort Bourtange

This 16th century fortress at Bourtange in Groningen is built in the traditional 5-pointed star shape common to many of the fortifications in the Netherlands. Restored in the 1960’s, it has now been converted into a historical museum.

Posted in Uncategorized | Tagged , | 1 Comment

Under the Radar? A Backwards-Compatible Break for SPLFixedArray in PHP 8

The official release date for PHP 8 is 26th November, just 9 days away, so we’re almost into the last week; and I’ve just discovered a change to SPLFixedArray that I wasn’t previously aware about. While not many developers use SPL Datastructures, and probably fewer still use SPLFixedArray, it is a big BC break; and it wasn’t something that I had seen documented as a PHP 8 change.

Continue reading

Posted in PHP | Tagged , , , , , | Leave a comment

An Attempt at Poetry

It’s been nearly two months since my last post, two months trying to pull myself out from the state that I’d got myself into. 2020 isn’t a forgiving year, and I’m hurting myself and others with the darkness that I’ve found myself facing.

So I’m trying to express some of my emotions in poetry (of a sort) in English, and also in Dutch.

Continue reading

Posted in Uncategorized | Tagged , | Leave a comment

Fear and Self-Loathing in Amsterdam


I must not fear.
Fear is the mind-killer.
Fear is the little-death that brings total obliteration.
I will face my fear.
I will permit it to pass over me and through me.
And when it has gone past I will turn the inner eye to see its path.
Where the fear has gone there will be nothing.
Only I will remain.

– Bene Gesserit Litany Against Fear, Dune series of books, written by Frank Herbert

As an Englishman of a certain generation, I was brought up to believe that it was bad to show emotions, that I should keep everything bottled up inside… “stiff upper lip”, “it just isn’t the done thing”, “it’s a sign of weakness”, and all that. If you’re scared, then you should put on a brave face: if things are going badly, then still look cheerful and don’t let anybody know how unhappy you are.

Continue reading

Posted in Uncategorized | Tagged , | 1 Comment

Citizen of Nowhere

Tonight at midnight (local time) I become a “citizen of nowhere”.


Continue reading

Posted in Uncategorized | Leave a comment

Filtering and Mapping with SPL Iterators

Four or five years ago, the most popular talk that I gave at conferences was entitled “A Functional Guide to Cat Herding with PHP Generators” (the cats proved a very enjoyable talking point at every event where I gave it, because who doesn’t enjoy a technical talk featuring cats); and I even wrote a blog post here about that self-same topic. That presentation described how I was building up enormous volumes of GPX tracking data showing where my cats roamed each day. In order to analyse that data without using equally enormous amounts of memory, I read it directly from the GPX files, using Generators to process each trackpoint one at a time; and and took a map, filter, reduce approach to resolving the questions I wanted to answer about my cats movement habits. Because PHP’s standard array_map(), array_filter() and array_reduce() functions only work with arrays of data, which are expensive in terms of their memory usage, I wrote my own versions of those functions to work with Traversable objects (like Iterators and Generators) as well as with arrays. And the technical body of the talk was how I wrote and used my versions of these functions.

I chose to write the functions myself as a learning exercise, to better understand how they (and Traversables like Generators) worked; but for map and filter, I could just as easily have used the Iterators that already existed in the Standard PHP Library (SPL).

Continue reading

Posted in PHP | Tagged , , , , , | Leave a comment

Parallel Looping in PHP with SPL’s MultipleIterator

There was a time, back when I was working with PHP 5, when I found the Standard PHP Library (SPL) an extremely powerful and useful toolbox; and I particularly enjoyed working with SPL’s Iterators and Datastructures. Sadly, SPL was always a somewhat forgotten component of PHP, even when it was incorporated into core, probably due to the lack of documentation (although Pete Cowburn and the other PHP documentors did work hard to improve it over the years). With the arrival of PHP 7, SPL seems to have dropped even further into a backwater: generally we create our own exception classes, though we may sometimes use those in the SPL; we rely on Composer to handle autoloading, rather than using SPL directly to set up our autoloading manually; and Datastructures (one of my favourite SPL components) are better implemented in Rudi Theunissen’s ext-ds library.

But although much of the SPL is now outdated, or has been superseded by better language elements; some components are still useful. SPL’s Iterators are confusingly named, and there’s little in the documentation that explains when and how they can/should be used, but if you can learn to understand them, they are still powerful tools even with PHP 7; especially as they work with any Traversable (like Iterators and Generators, or the Collection objects provided by many frameworks), not simply with arrays.

Continue reading

Posted in PHP | Tagged , , , , | Leave a comment

Withdrawal from Speaking at PHPCE 2019

I’m always nervous when I speak at a conference or in front of a user group; but I also enjoy sharing my passion and excitement for things that I’ve learned, or new tools that I’ve discovered. That makes it particularly difficult for me to withdraw from a conference where I’ve already committed to speak, not giving just one talk, but two. But sometimes it is necessary to stand by my beliefs, despite the fact that it causes disruption to the conference organisers when they’ve already announced the schedule, and means that I can’t share my passion for coding with the attendees at that conference.

That’s the position that I found myself in barely a week ago.

Continue reading

Posted in PHP | Tagged , , , , | 27 Comments