Weeknotes: 005

Personal

  • This was a fairly uneventful week.

Ph.D

  • I finished off the corrections for chapter 7 of my thesis. Only chapters 1, 4, 8, and 9 to go.

Work

  • I started deleting our logging machines (Weeknotes: 003), and then stopped to open a support ticket with our hosting provider. Our CDN is set up to stream real-time logs to the machines I was deleting, and write logs on a 15-minute delay to an S3 bucket. We didn’t want to lose the real-time logs, so I changed things around to save the real-time logs on another machine, for a short period of time. All seemed to going smoothly, except that our CDN couldn’t talk to the new machine! We think the updated firewall rules should work, and our Reliability Engineering team also had a look, but no dice. So now we’re wondering if something is up with the hosting provider. They haven’t got back to me yet.

  • I paired with another developer to fix a rounding issue in our holiday entitlement calculator. As I understand it, holiday entitlement should be rounded up in all cases, but in some cases we were rounding down. There was also another problem with trying to calculate your holiday entitlement based on hours worked, rather than days worked: it assumed everyone worked 5 days a week. After this has been code reviewed, it’ll be sent to the relevant department (BEIS in this case) for fact-checking, where a subject-matter expert will try out a bunch of different scenarios to verify that it’s correct. Hopefully they’ll give us their scenarios, so we can then add them to the testsuite.

  • I spent the rest of time preparing some Gatling test scenarios, for load-testing the GOV.UK frontend apps. This is mostly in response to brexit: what if we suddenly get far more traffic than we’ve ever had before? I’ve been writing the test plans (I’m sure the GitHub repository will be publicly visible at some point) and learning how Gatling works, when we’re happy with the plans we’ll need to run them, which will probably involve provisioning a bunch of EC2 instances to generate the needed load, or maybe even using Gatling’s enterprise edition. Gatling uses Scala, which I’ve never touched before, but it’s similar enough to Java and Haskell that I can sort of get by.

Miscellaneous

  • My Call of Cthulhu campaign is starting up again next weekend, so I did some preparation after catching up on the Encounter Roleplay play-through of Masks of Nyarlathotep. It’s been really useful to see how a more experienced Keeper runs some of the things my players are likely to encounter. My first session went pretty well, but things can always be better.