How to Clean Up GitLab Artifacts

October 27, 2022

If you are running into GitLab storage quota limits there is a high likelihood that the usage is coming from job artifacts. These artifacts contain information about the job itself, such as the files an application built, code scan results, etc. In my experience, there is usually no need to keep the old job runs

Highly Performant PHP Sessions with Redis

March 29, 2021

The web is stateless, but often the apps we build are not. To facilitate state in web apps, PHP provides a session handling mechanism. Sessions are off by default, and enabled with the `session_start()` function. Read more about PHP session handling at https://www.php.net/manual/en/book.session.php If you have worked with PHP sessions before you may have noticed performance issues

How to Detect Mobile Devices Accessing a Shopify Store

January 25, 2021

how you how to detect mobile devices accessing a Shopify store. Shopify is a great platform for many ecommerce stores. Developing themes is simple with the Liquid template language, however it does have some drawbacks. Liquid templates are pre-rendered on the server and not able to respond dynamically to the device accessing the store. This means whether

How to Make a Domain Proxy for Digital Ocean Spaces

January 15, 2021

Digital Ocean has been my go to solution for hosting for many years. When the Spaces service, an S3 compatible object store, was introduceed, I jumped on board right away. The service performs well and allows me to manage all the web infrastructure from one location. The drawback with Spaces, to me, is how custom

Using An iPad For Web Development

May 31, 2020

My obsession with using an iPad for web development started all the way back with the first generation iPad. Tools then were sparse, but I made it work by jumping through some hoops. Today’s iPad is a much superior machine, and the available apps have come a long way toward making the iPad comfortable enough,