Hi, I'm Mark Story. I'm a developer / illustrator. I work at Sentry during the day, and build Stickler CI & CakePHP at night. I work primarily in PHP, JavaScript and Python.

Improved CASE expression in CakePHP 4.3

CakePHP 4.3 was recently released, and it contains a greatly improved way to build CASE expressions. CASE expressions are great when you want to do conditional aggregation or add computed fields to results. Lets say you wanted to create SQL that mapped integer values to string names, you could use SQL that looks like:

Switching to NeoVim Native LSP

I do all of my day to day work in vim, specifically NeoVim . One of my favorite plugins as of late has been the CoC plugin. CoC provides language server integrations, autocompletion, linting, and formatting all in one easy use package.

Testing SQLServer and PHP locally in 2021

I’ve recently been working on overhauling the test database fixture system in CakePHP . My goals are to separate fixture schema management from fixture data management. By doing this applications will more easily be able to use their existing schema management to generate their test database. This project has entailed fixing many differences between the database servers that CakePHP supports.

Building a Split Keyboard part 1

Like many others, I’ve been exploring new hobbies and learning new skills as the pandemic continues to keep many of us at home. Lately, I’ve been exploring building custom mechanical keyboards. Its been a long time since I used a ‘normal’ keyboard for my day to day work. A few years ago I had the opportunity to use a coworker’s

Learning InertiaJS and building a task list

I use task lists extensively to organize my life both work and at home. Over the years I’ve used tools like Things.app and Todoist. While I like lots about Todoist there are a few aspects I miss from Things like the ‘evening’ view and task descriptions.

more posts..