Chris Roos by Chris Roos

Week 349

We were back to working on Smart Answers after our week off to work with Hookline. I think the break helped and I came back feeling refreshed and motivated.

We followed our regular pattern of working on Smart Answers from Monday to Thursday, and on GFR on Friday.

Smart Answers

Part Year Profit for Tax Credits

I continued to respond to HMRC’s feedback about this new Smart Answer during the week. We finished the week with just a couple of minor text changes required before it could go live!

Converting questions to use ERB

James investigated switching questions to use ERB templates. As a first step he extended our regression tests so that they stored questions as well as the outcomes and landing pages. He also spent some time refactoring the NodePresenter so that it’s going to be easier to make changes to how we store the questions in future.

Erroneous events in Google Analytics

I investigated some erroneous Smart Answer “Completed” events that were appearing in Google Analytics. These events are fired when someone reaches an outcome of a Smart Answer (i.e. they’ve reached the end) so it was slightly worrying that we had some events being registered against Smart Answer start pages. Google Analytics revealed that the majority of these events were being generated by version 4 of the Android Browser. I’m fairly confident that the problem is caused by our use of pushState to update the browser history while navigating Smart Answers. According to the “Can I use?” website version 4 of the Android Browser doesn’t support pushState. I was really hoping to be able to confirm this by using an Android emulator but I couldn’t get any of them to work reliably on my laptop. Fortunately, our Smart Answers analyst was happy with the explanation so we’re able to leave this for now.


James and I spent a couple of hours discussing our priorities with David and Jenny, whose team will be responsible for Smart Answers when we leave. We went through Trello and tried to prioritise the stories we’d already created, as well as adding new ones where appropriate. One of the outcomes of this chat was that we need to spend some of our time focussing on documentation to help future Smart Answer developers.

I made a first step toward improving the documentation by reorganising the content from three large READMEs into smaller more focussed documents. This should hopefully make it easier to make some of the other changes that we’re planning.

Other changes

I simplified the date question. These are the sort of changes we feel more comfortable making now that we’re really familiar with the codebase.

I started adding support for graphing Smart Answers that don’t use the next_node predicates.

James fixed the data we were sending to Rummager after noticing that we’d inadvertently broken this when switching from YAML to ERB for templates.

We noticed a problem with our deployments in that the release tags we deploy now contain merge commits from Jenkins. We haven’t got to the bottom of this yet.

Tijmen and Finding Things

Tijmen made a number of changes to Smart Answers during the week. He was adding functionality to send Smart Answers to the content store and tidied up some of the existing code in the process. Thanks, Tijmen!

Tara Tadas

James and I spent some time with Tadas on Thursday to get an update on what he’d been working on. He’s off on holiday next week and is going to be working on a different team when he returns!

It turns out that Tadas worked on quite a few of Smart Answers during the week including Student finance calculator, State Pension top up calculator, Overseas British passport applications, Maternity and paternity calculator for employers, Statutory Sick Pay (SSP) and Check if you need a UK visa. Apparently it’s the time of year that a number of rates or rules change which result in all these updates to Smart Answers.


Friday was mostly admin and writing week notes although we did also manage to make time for a lunchtime pizza and beer in the sun with Murray.

James did a great job of writing up the week we spent with Hookline.

I spent an hour or so trying to understand GitHub flow and whether the spaghetti of git branches you can end up with is actually worth worrying about.

James and I both made the switch to the Atom text editor sometime during the week. We’d both tried it shortly after it was released and found it too slow but those problems appear to have been solved. It’ll be interesting to see whether we both stick with it.

Until next time.

– Chris

If you have any feedback on this article, please get in touch!

Historical comments can be found here.