A PHP library for jsonstorage.net
I first heard about jsonstorage.net when searching around for a quick place to persist some data while writing a Twitter bot. jsonstorage.net provides a simple JSON storage, with a free tier that can be very useful for small personal projects. The REST API is super simple, GET POST PUT DELETE etc. You can have either public…
addwiki php libraries 3.0.0
Back in 2014 I wrote a small collection of PHP libraries, releasing 2.0.0 of the base library in 2015 for interacting with MediaWiki and Wikibase. My goal back then was to create a stable base that PHP bot frameworks could be built on, while also experimenting with some framework like features in surrounding libraries. And…
VSCode & PHP XDebug from Localhost, WSL2 and Docker containers
VSCode seems to be one of the up and coming IDEs over the last year. I personally switched from Jetbrains IDEs to VSCode fo most of my development work at some point in 2020. Apparently up until now I have avoided running the PHP debugger Xdebug. I had to do a little search around to…
PHP 7 composer docker image digest
At some point in the last weeks the composer docker image that can be found on docker hub switched from PHP7 to PHP8. Some projects, such as wikibase-docker, still require PHP7 for installation. It looks like the composer image is not going to be providing an additional tag using a pre PHP 8 version, thus…
mediawiki-docker-dev v1 rewrite
Back in 2017 at the Wikimedia Hackathon, I played around with Docker and docker-compose in relation to MediaWiki and testing with multiple setups at once while developing, meaning multiple PHP versions, web servers and databases. My original slides can still be found here. Since then mediawiki-docker-dev evolved into less of a testing system and more…
sMite
sMite stands for ‘simple Mite’, which to most people still means nothing at all. Mite is a time tracking web service, and depending on how companies make use of it things can become more complicated than they should be. smite is how I tried to tackle this complexity in less than 8 hours!
My Joomla Component development workflow
My first and currently only Joomla component development was for the SWA UK website. The component manages memberships, events, tickets, results and more and is a rewrite of a previous component for Joomla 1. But in this post lets ignore what the component does and instead concentrate the development workflow that is used. After lots of…
Wikidata references from Microdata
Recently some articles appeared on the English Wikipedia Signpost about Wikidata (1, 2, 3). Reading these articles, especially the second and third, pushed me to try to make a dent in the ‘problem’ of references on Wikidata. It turns out that this is actually not that hard!
Guzzle 6 retry middleware
Recently I switched from using Guzzle 5 to Guzzle 6 in my mediawiki-api-base PHP library. Everything went very smoothly except for there being no compatible version of the retry-subscriber that I had previously used. The subscriber has been replaced by retry middleware of which I was provided an extracted example. In this post I cover my implementation for the…
mediawiki-api-base 2.0.0
Roughly a year and a half ago I started writing a collection of PHP libraries to make interaction with the Mediawiki API and extension APIs super easy. The base library has just made it to 2.0.0! The new release really only uses the new version of the Guzzle HTTP library which makes use of PSR-7 and adds…