This year’s developer satisfaction survey[0] revealed that many people felt there wasn’t enough communication around local dev improvement efforts. In fact, some people didn’t even know that there were any. The following is a brief history of those efforts and an update on what we have in progress, as well as some ways for us to communicate and keep informed about the local development space.
A little under 2 years ago, I took on the task of developing a container-based development environment for mediawiki and services, partially since our production deployments are moving in that direction. As someone who had never done development on Mediawiki and its surrounding extensions and services, and whose job was not to do that development, this was (and is) a challenge. Here’s a quick outline of what I, with other contributors, did since then:
Coded and analyzed the 2019 developer satisfaction survey[1] and did one on one interviews with developers to understand the problems faced by developers.
This research provided insights into areas in and out of the scope of local development that probably deserve more attention
Created a prototype in minikube[2]
Brennen Bearnes created the dev-images repo to support this work
Demonstrated at the Prague Hackathon in 2019
Did not generate much interest
Confirmed suspicions that kubernetes is not an ideal tool for developing
Led local-dev work group meetings
Presented findings and ideas at Tech Conf in 2019[3] with Brennen
Together with session attendees, decided to create mediawiki-docker[4], a lightweight dev solution for pure mediawiki developers.
Had another session to attempt to figure out what kinds of services, etc, could be grouped together for more complex development environments, but didn’t explain this in a way that session attendees understood, and they probably left frustrated
Continued work on mediawiki-docker, and a cli[5] to simplify repetitive docker commands
Kosta Harlan, along with Brennen, Mukunda Modell, and James Forrester headed this up
Zeljko Fillipin (and a bunch of other people!) worked on documentation of setting up a number of extensions to use with mediawiki-docker, which indicates some adoption of mediawiki-docker
You can collaborate with us or track our progress by visiting our phabricator work board[6]. Tasks welcome :)
If you've made it this far, thanks for reading! I hope these changes will help improve communication and collaboration with everyone who wants to participate.