A 365 day writing project.

This is day nineteen of my attempt to write something, anything, every day for 365 days in a row.

It recently came to my attention that accessibility on the web is experiencing something of a renaissance in the spotlight; This is thanks, in part due to efforts such as the a11y project. However, I do wonder why we have gotten to a point where such efforts are required. Correctly styled markup should be accessible by default.

I have been developing websites for more than fifteen years. While technology has progressed in that time, it feels as though – at least in some cases – that progress is just for the sake of it.

In those early days pretty much every website project I worked on had user customisable accessibility feature. You could select a larger font size and one of a handful of colour themes that were aimed at making the content more legible to those with different colour blindness or dyslexia.

It could be said we had dark mode before it was cool.

Markup was king. If your HTML didn't pass the W3C Markup Validation Service without good reason (and there were some valid excuses.) Then it didn't get released into production.

Back then, the reasoning for this was one of SEO. It was believed that the better your markup, the easier it was for search indexes to correctly index your content. The conclusion being that better markup equaled better index placement, equaled more visitors. Visitors equaled customers.

I am unsure how much of that was based upon fact, although I did have first hand experience of redeveloping client websites and seeing them go from the bottom of the page for their keywords to the top three positions; largely because we fixed a lot of issues with their markup.

A side effect of making websites easier for robots to digest meant that they were also easy for screen readers and other accessibility tools.

Eventually laws have been amended to protect the right of people with disabilities to have equal access to electronic and information technology. In the US this was done via an amendment to Section 508 of the Rehabilitation Act of 1973.

Similar legal protections have been introduced in various countries around the world since then and this has meant we have had a handy checklists like this available containing items such as “Is the site free from pages that re-direct after a timeout?” and “Are all elements that can be operated by a mouse also able to be operated by keyboard?”

Unfortunately it seems those rules are too often forgotten or ignored. While the laws as wrote are often limited in scope to government published materials there should be no excuse for bad craft, especially in websites with tens of thousands of pounds of investment.

Unless you work on public sector publishing, you probably aren't aware that in 2018 the UK law on web accessibility had new regulations on the accessibility of websites and mobile applications of public sector bodies.

Concreting into law accessibility provisions is not a bad thing. It is concerning however that once again this change only applies to publicly-funded institutions.

HTML is by design accessible. Yet so many websites used by millions every day are not.


This is day eighteen of my attempt to write something, anything, every day for 365 days in a row.

This morning I was reminded the practical implications of an old adage it's a little more complicated than that. We had need for a basic function that takes a list of strings for example “Thing One, Thing Two, Thing Three” as an input and return a single string in the format of “Thing One, Thing Two and Thing Three.”

The function itself is rather simple, weighing in at 15 lines of code in its non-golfed iteration and we thought that maybe it would be useful to be included in another public library. It was at this point things became complicated.

The function is tightly coupled to the English language and not all languages around the world concatenate a list of things in the same way. For us to even consider submitting a pull request against a library we would first need to make sure it was sound in the world of I18N.

In the end we settled for just keeping it in our project and moving on, there is a reason it's not already in the libraries we looked at; it's a little more complicated than we first thought.


This is day seventeen of my attempt to write something, anything, every day for 365 days in a row.

I remember watching Tomorrows World in 1994 when they introduced the World Wide Web as the Information Superhighway. I was only a child at the time and wouldn't have my first taste of access until two years later when as a family we visited the Goonhilly Satellite Earth Station.

There they had set up five or so computers as a web-cafe with what was at the time one of the fastest connections to the internet (gigabit internet access in 1996 was rare and restricted to those with deep pockets.) For the record the first website I ever visited was the BBC homepage followed soon after by their children's sub-site.

It took until 1998 when my parents could afford to buy a family computer that I began to have weekly access to the internet via use of a noisy 56k modem; but at 6p/min it was restricted to an hour a week at most.

A combination of not having constant internet access and having to share that hour a week with two sisters resulted in offline viewing being a necessity. Downloading webpages for later reading became the norm but that was ok because most websites at that time where little more than html and a handful of small images and css that was usually included in the page <head>.

The internet today has come a long way since those days but intrinsically the content hasn't changed; its still predominantly text and images except now we find most pages also saturated with JavaScript.

I say it's come a long way, I am unsure if it's actually progress. I use a handful of single page apps almost daily and while they work and are useful they do not compare to a native executable in terms of speed.

However beyond the use-case of single page apps the concept of having JavaScript be required for a website to display or be usable is in my mind ridiculous. It should be used to add to the experience but not be required.


This is day sixteen of my attempt to write something, anything, every day for 365 days in a row.

Last night I watched a trailer for the new Addams Family film set for release later this year. Even though it's being done in 3D animation I am still excited for another addition to what is one of my favourite fantasy worlds.

Watching the trailer reminded me of the game The Addams Family that I used to play on my Saga Mega Drive back in the late 90s. I have fond memories of playing the game for hours on end but never actually completing it.

Intrigued to see if it is as good as I remember it being I sourced a copy of the ROM and a Mega Drive emulator and after figuring out how to map my xbox controller to the emulator I began to play.

It scored quite low in reviews at time of launch back in 1992 with Mega advising readers to “watch a tree grow or something instead”1 but I still find it an enjoyable game to play. It's child friendly enough that I could have my two year old sat with me joining in by telling me where to make the man go next.

The game itself doesn't have a save function, instead relying upon an often used mechanism of the time: passwords. These could be unlocked as you progressed and upon starting a new game used to unlock achievements so you could start “where you left off” sans points. With modern emulators the games entire state can be easily saved so maybe now I have a chance at actually completing the game.

Only time will tell.



  1. Mega review, issue 14, page 36, November 1993

This is day fifteen of my attempt to write something, anything, every day for 365 days in a row.

For those of you who may have been following along I vanished from most online spaces for some of February and the majority of March.

There are a few reasons for such a long hiatus and they all add up to “life happens,” mostly in the shape of fire-fighting a project with a tight deadline at work that resulted in a few 80-100hr work weeks in order to get everything done. Between that and family commitments it left very little in the way of free time for social media and my personal projects.

Now that the deadline has been met and things have returned to normal I am back. My 365 writing project took quite a hit, but I will now attempt to write something every day.

Lets see if I can at least get a ten day streak!


This is day fourteen of my attempt to write something, anything, every day for 365 days in a row.

I recently had a discussion with my father around the whole privacy vs “I have nothing to hide,” discussion going on at the moment and he gave me an interesting insight.

Forty years ago the notion that your government would intercept, open and read every item of mail posted to every home in the country would have had the general public and the media up in arms, condemning in unison the very obvious government over-reach and the dangers it presents.

Yet here we are today with government schemes such as the international Five Eyes signals intelligence alliance making automated un-targeted intrusions en-mass that are essentially identical in nature to having every item of post opened, read and documented; and the general public seem ambivalent at best and complacent at worst.


This is day thirteen of my attempt to write something, anything, every day for 365 days in a row.

Yesterday I wrote about What sparks joy? and a while before that is it a van life for me?; both posts share the theme of minimalist living and divulge a deep yearning for a much simpler life.

I think that to some degree we all share a common want for simpler, less cluttered living free from the many constant pressures of modern life while also benefiting from the positive aspects that modern life can bring. While that does sound a little like having your cake and eating it too its easily achievable within the framework of tiny homes and the tiny living movement.

Tiny homes (100 to 400sqft) have the potential to be less cluttered and due to their relative cheapness in comparison to a traditional home they also come with far less financial pressure often being cheap enough to be paid off in less than ten years.

My dream is to obtain a few acres of land where I can build a tiny home, I know it wont be easy, it will take a long time.

— 🌻

This is day twelve of my attempt to write something, anything, every day for 365 days in a row.

For a couple of weeks now I have sat through that Tidying Up program on Netflix with Marie Kondo; it began as a way of spending more quality time with my Wife but the program has a strange charm about it that has meant I have gone out of my way to watch more.

It has made us both look at our own home and ask ourselves why we have so many things gathering dust that we either do not need or do not know that we have in the first place!

Aside from being a catalyst to reducing our ownership of things, the phrase “sparks joy” goes beyond being a method of deciding if you should keep one inanimate object over another and – in my mind at least – puts you in the mindset of discovering what makes you happy.

For me that is thoughts of my Wife and my Daughter and our Daughter to come. They all spark immense joy. When I think about the possessions I own a good 99% do not spark joy, in actual fact I could throw away the majority of what I own and still be happy, maybe more so.

Coming to this conclusion has taught me that I would be happy to live in a tiny home, not only would it restrict the space for possessions to exist but it would actively force me to question their existence in the first place and instead focus more on what does in fact bring me joy.

What sparks joy for you?


This is day eleven of my attempt to write something, anything, every day for 365 days in a row.

Yesterday I came across this weird error while running one of the unit tests I was working on:

PDOException: SQLSTATE[42000]: Syntax error or access violation: 1305 SAVEPOINT trans2 does not exist

It may not look like much but in search of a resolution I ended up taking a deep dive down a rabbit hole of red-herrings and incorrect assumptions.

Having spent a good few hours thinking it was something in my code that was breaking and finding nothing at fault I quickly realised that the tests that were returning the error all had something in common. I was running them individually, if I ran the tests in a batch or all of them then the error didn't show.

It was at that point that I began kicking myself, the problem wasn't caused by anything I had written but instead by my IDE of choice: PHPStorm.

Looking at the console output from running the tests as a batch or all of them I could see that PHPStorm was generating the command correctly with --configuration set. However if I ran an individual file or method it would generate the PHPUnit command with --no-configuration. It was the latter that caused the tests to break.

My issue was caused due to my not setting a default configuration file to be used by the test runner, once set PHPStorm began generating the correct command and my tests began working as expected.

Six hours wasted, all because I didn't know to set an obscure configuration property in a config sub-pane popup of a config sub-pane popup.

Welcome to programming.


This is day ten of my attempt to write something, anything, every day for 365 days in a row.

At the beginning of this project I had an vision of celebrating certain milestones, ten posts, twenty five posts, fifty, one hundred and so on. However having reached ten posts during a two day streak after a hiatus of thirty days it feels a little anticlimactic and honestly not worth celebrating beyond simply being a milestone achieved.

I get a similar vibe from the over-hyped commercial holiday St. Valentines Day. It feels as though many people validate their happiness in the days leading up to and for a number of days after through the materialistic medium of valentines messages. Not that one can blame them, it is a nice feeling to feel loved but I honestly find it upsetting to see good people in distress because they don't have a sweetheart and are therefore in their minds at least unwanted.

Before meeting my wife Valentines was just another date in the calendar, one that I had rarely noticed beyond the increase in chocolate, tacky toys and card marketing when I get groceries. Because of my past ambivalence the idea of buying a card or present felt weird, but I went along with it because I was dating and it's the thing you do and since then we “celebrated” every year with a card, sometimes combined with a meal out.

This year we have both decided not to bother, as a boycott on the commercialisation and waste. The idea of buying a card with all the waste that goes into making it for the purpose of saying something that is otherwise said every day in both words and actions feels wrong.

Valentines day shouldn't be a day where you base your happiness on how desirable you are, it should instead be a day to be extra nice to everyone — if that is you notice it at all.