Weeknotes: 6th January 2020
This week I wrote my first Lambda.
I’ve always thought of Lambda’s as one of AWS’s signature features. It’s one of the first I heard about and it really exemplifies what makes AWS differ from a traditional virtual hosting provider. Admittedly it’s not really a unique feature any more (Azure and GCP have their own alternatives), but it was an eye-opener to me when I first heard about the modern public cloud.
For the uninitiated, Lambdas/Functions are simple scripts which are run on-demand and you’re only charged for the execution time. They’re perfect for uncommon, intensive tasks so you can effectively pop open a server for 30 seconds every few hours as needed.
Anyway, I’ve never written one and we haven’t used them in any products I’ve worked on. That is, until this week, when I’ve written a very simple Lambda to restart one of our services on a semi-regular basis (which sounds as iffy as it is, but is due to reliance on a third-party image).
This has slightly been a rite of passage, and a good thing to cross off my personal development list, but it also indicates a growing confidence with cloud hosting and ability to just muck in with such things. Very exciting indeed.
We’re in the post-winter-break period now, in which everyone can freely shrug off responsibility for two weeks by saying they’re still getting into the swing of it. That might sound critical, but I genuinely like that we can all pick our own pace right now. It’s famously a bad time of the year for mental and physical health, and being able to pair that with a little self-care in your workload is really powerful.
My team has taken what I think is a very reasonable approach to our first sprint of the year: we’re fixing a bunch of bugs and “the basics” to make sure we’re in a good place to support our service and introduce bigger features. We’re also having a session next week to redefine what the service does, so we can better prioritise and align our work. Hopefully by the end of the month we’ll be designing and building high-quality unblocked work that’s really helpful to our users.
- Unblocked the pipeline: some of our automated tests relied on referring to the current calendar year, which has recently changed. I made them more flexible rather than just updating the year.
- Upgraded our PDF generator: we had a minor failure over the winter break, so I brought the generator back under our control and upgraded all the dependencies/OS.
- Fixed the stability of our virus scanner: this was having trouble restarting smoothly, so I used a Lambda and some improved ECS configuration to make it more stable.
- Started adding user management to Serve OPG
- Planned some goals and personal development opportunities for 2020
- Fought off a cold (though it’s having a late resurgence 🙁)