Friday 28th September, 2018
Yesterday was our last day working for Trainline. We’ve been there 13 weeks although that time has passed quite quickly.
We were brought in to help with feature development but found ourselves trying to improve the development process too. Notable improvements include using Vagrant to codify the requirements for running the app locally, fixing some intermittently failing tests, making RuboCop a failing step in the build pipeline and quietening some very noisy test output. Making these sort of changes, and generally keeping things tidy as we go, is something I take for granted when working on a project but it became clear that it wasn’t a view shared by some of the team. I think in future we could do a better job of trying to explain why we’re making certain changes: the change is often easy, it’s teaching people why we think the change is important that’s harder.
I’m left feeling that there’s much more we could’ve helped with had we had more time (we were asked to extend but only after we’d accepted another project). It’s a similar feeling I’ve had when we’ve finished working with GDS in the past. And it’s probably inevitable given that we’re only dipping in and out of these large ongoing projects. I occassionally find myself wondering how it’d feel to work on a project that has a more definite “finished” state (in the way a film, or a building is finished), but that doesn’t really fit with my view of software as a living, evolving thing.
Our next contract is working with DXW on a project for CCS. Ben and Chris have spent a couple of days at CCS this week in preparation for us all starting properly next Wednesday. The first phase of the project last 12 weeks and, although I don’t know much about the detail, it sounds as though there are some ambitious goals given the time available.