My 2018
2018 was a difficult year, with some notable highs, primarily finishing and publishing my book. As with 2017, my professional life dominated, and it was challenges there that made 2018 extremely difficult for me to get through at times. However, there were highlights in my personal life, primarily a series of weekend breaks (notably Budapest and Porto).
As I discussed in my 2017 retrospective, I had just taken on a project known as the Trial Platform which had a significant step change from my previous work as lead developer on web-based projects. I was suddenly a project lead, which for BBC R&D also includes responsibilities that product teams might consider that of a product owner, whilst also being the team leader (although not line manager) and technical owner. I recruited a team, including hiring a non-technical role, which really highlighted to me the pressure of recruitment in Manchester’s tech market at the moment.
Although one part of the Platform, SOMA, was a web-based project, and RESTful APIs make up a substantial portion of the APIs, the most complex part of the system was C++ code, which the last time I touched was in 2008 working on Sophos Anti-Virus for UNIX. During the year I took a significant step back from actually writing code, as the “site reliability engineering” side of the team took over, and I was mostly managing the team’s work, and when I was engineering, it was focussed on deployment automation.
I did learn new things. I got very familiar with Ansible — which I dislike. Rant incoming:
- YAML is not a programming language, and hacking Jinja in there to get some semblence of control flow is just a bit awkward… I’d rather have a DSL in a full programming language, like Chef.
- I do get the idea of being completely stateless, and I can see why it’s important in some use cases… but it’s not helpful to me for what I’ve been using it for (i.e., provisioning servers). e.g., if I remove a user from my list of authorised users, I just want it to be removed, I don’t want to have to write a play to prune users not defined in the config file, I’d rather just have it do a diff against the state and remove that user.
I also learnt a lot about networking. Unlike my friends who have quite fancy home networking setups with VLANs and enterprise-level kit, I’ve always used consumer gear (sometimes with tools like DD-WRT) in mostly out-of-the-box configurations, and at work I’ve not had to do much beyond setting up a VPC. As part of the Trial Platform project I suddenly had expensive, enterprise-level kit to manage (2 Cisco Nexus 92160YC-Xs), which was a steep learning curve.
Once I got used to the fact that by default all the switchports are set to down and also not set to be switchports, I managed to get somewhere, figuring out exactly what a L3 switch was (it’s a switch that can also route), learning along the way far too much about PTP (debugging some cheap grandmasters which didn’t quite operate to spec…) and actually finally understanding how multicast works and what IGMP is. IPv6 is for another day. I’ve actually enjoyed working close to the bare metal after a while in the cloud, and although the cloud will eat most of the world, it’s going to be a while before we can reasonably ship uncompressed raw video from multiple cameras, graphic sources, etc, at a reasonable cost to a cloud provider. And we should be wary of a monoculture.
It was a tough project. We saw some failures where we failed to meet the high quality expectations of BBC production teams, but from a research perspective each one of those helped us understand how the system we built as a prototype worked in real-world settings, but importantly proved that the architecture we had in mind was right (that of API-driven and software-defined live remote production workflows), even if there were bugs in the prototype system that had been built to prove that architecture.
However, the end of 2018 saw the bugs fixed, and 2019 and beyond will see R&D continue to prove the future of broadcasting as software-defined and API-driven.
I won’t be part of that project though.
I almost left the BBC (again) in 2018. I actually got as far as handing in my notice before I was convinced to reconsider and alternative options became available. I became disillusioned with the work I was doing and stopped enjoying it, wanting to get back to web development, if not actually engineering it, then being involved in a leadership role in product or service development. I also became frustrated that although the BBC senior management seemed to start recognising where our online estate had stagnated and we were losing relevance with the under-35 audience, the proposed changes weren’t actually going to be the right ones to address that, and an obsession with Netflix as a competitor and the continued dominance of traditional TV/radio mindsets will take us too long to react to the real challenge to a public service broadcaster — the emergence of new media types through social media platforms, YouTube, etc. The BBC seems at times to have become a place where bottom-up innovation is hard to get through, and top-down hierarchies dominate the big decision making. We can’t seem to make small things and fail fast, and then get them to stick if they succeed. (Although please don’t get me wrong — the BBC is a wonderfully supportive employer as an engineer, working on very interesting problems, it’s just as someone who’s now risen to a relatively senior role I’m now exposed to a lot more strategy). The BBC also has a challenging future — we have to fix the issue with losing youth audiences, maintain relevance, sort out the significant funding challenge when we lose the licence fee income for households with over-75s, and at times it feels our editorial policy is far too neutral, giving an unchallenged platform people who use that platform to drive the direction of discourse, rather than ensuring facts and trust remain at the core of our offering.
I see some of this as a development challenge. As in 2017, where I failed to instigate a product/platform mindset in the team I was working in, it seems that I should be able to get better in communicating my vision and trying to get buy in for some more radical ideas. I don’t know how to do that, but it feels like an important skill to learn.
But I decided not to leave, for now at least. My original plan was to leave to run a startup, focussing on developing those software-defined/API-driven broadcasting products that the industry has a gap for, bootstrapping it originally by contracting, but interesting opportunities have become available inside the BBC for me to have a go at. So in the new year, I’ll try one of those, and we’ll see what happens. And hopefully I’ll get back to doing what I love — actually building something for users.
In my crisis of confidence, I reflected long and hard about what I wanted to do if I left. I knew I didn’t want to go and work for an e-commerce company or in fintech, or yet another consumer startup. I’m still proudest for the time I spent working on Bitesize, and I’ve always been driven by this abstract notion of “wanting to make the world a better place”. In theory the BBC should be the place to do that, but before I settled on the idea to do a broadcasting startup, I began looking much more into the Effective Altruism (EA) movement, which I was originally introduced to through my friend Rosie.
In 2017 I started donating money through “Giving What We Can” — although I haven’t taken the full 10% pledge, instead taking the “try” pledge, although when I first signed up I miscalculated my income (I took gift aid into account twice and assumed it was on my post tax income) I currently donate 5% of my pre-tax income (although the charity get more once Gift Aid is taken into account, but I’m still not sure if that should count or not…). I’d highly recommend people consider giving to an EA fund through Giving What We Can. Many of my peers who read this earn relatively comfortable salaries, and making at least some level of regular donation to the charities that have been identified can have very significant impacts on people’s lives.
Effective altruism is focussed on the idea of maximising the effectiveness of our individual impact on the world. It feels like a good fit to my mission! The charities Giving What We Can recommend have been assessed to have a significant positive impact, normally a greater one than many other charities.
A flip side to the financial aspect of EA of Giving What We Can is 80,000 Hours — a website that advises people on how best to spend their career in order to maximise their positive effectiveness. I spent a lot of time looking at this and applied for several jobs, successfully in one case (although I would have been employed as a remote contractor as they were US-based).
I’m hesitant to get more involved in the EA movement though. I lurk in a number of EA Facebook groups and often I see some very literal interpretations of Effective Altruism that boil down to pure utilitarianism, with all its faults (you should watch The Good Place), and a lot of people taking purely rational approaches to things and claiming superiority, ignoring the fact that humans are not rational (Thinking Fast and Slow is a good read on this subject). Effective Altruism, like everything in life, is a good principle, but can not be your only guiding principle (see also, Doug Forcett in The Good Place).
My personal highlights of 2018 were travelling. Alongside my girlfriend, we visited Oxford, Porto and Budapest, but I also went skiing in Meribel, and I accompanied her on a visit back to her home country of Latvia, where her family very graciously got me a birthday gift of a stay in the countryside with a traditional Latvian sauna treatment, which was absolutely brilliant.
I also got to know Manchester a bit better. Alina and I went on a Skyliner tour of the art in Manchester’s Northern Quarter and it was brilliant. I live in an area called New Islington, which is next door to the very trendy Ancoats. Ancoats has really come into its own over the past year, with the opening of a brilliant bakery, and a number of high quality restaurants, including my favourite street food vendor, the Hip Hop Chip Shop opening their first permanent venue. I’m really loving life here and where I live, and I’m happy to have a number of friends (even if it did mean going to 2 New Year’s Eve parties!), as well as being a member of Manchester’s always active tech community (although I probably do spend too much of my day on Slack…), with some excellent peers. And an active Werewolf player (one particular highlight was coming out as seer on day 1, and surviving to the end where the village won…). I also started spending more time in London, where my girlfriend’s job has taken her, which is providing new experiences too.
I’ve tried to be cultural as well. I saw some more live bands (even attended Parklife) as well as seeing Hamilton in London, as well as made my now regular trip to the Edinburgh Festival Fringe, taking Alina along with me this time.
Another issue that became increasingly prominent in 2018 was that of climate change. Although in the past I’ve made small token efforts to contribute to minimising my impact (recycling, being on a “green” energy tariff), this year I made two decisions: I got rid of my car (which was also for financial reasons — I didn’t use it enough to justify the cost), but I also made some active choices to reduce my meat consumption, particularly red meat. Although I find the idea of shifting to a completely vegetarian diet difficult, I’ve made a mental switch to not immediately discount vegetarian options when they exist, and when cooking I’ve experimented and found a number of good veggie recipes I can cook and truly enjoy (there are some brilliant veggie and vegan curries, I’d suggest for anyone looking to start, start with curries—you don’t miss the meat with a proper veggie curry). I also have invested in carbon offset credits, although I’m unsure as to the effectiveness of that.
Other things happened in 2018! I, alongside Luce Carter, Claire McDonald and Rick Threlfall, put on BarCamp Manchester 8. It went well, although the turnout was lower than we expected from the signups. I intend on putting on BarCamp Manchester 9 too, and we should start getting together to organise that one…
And, oh yeah. I wrote a book. But I’ve already gone on about that plenty. (Buy my book).
No matter what happens, as a citizen and resident of the United Kingdom, especially one who is in love with an EU27 citizen, 2019 is going to be a bit of a roller-coaster of a year. Either the disaster of a no-deal Brexit, Theresa May’s slightly-less disasterous “it’s better than no deal” Brexit, or a general election and an unlikely Corbyn unicorn Brexit, or a second referendum and potentially no Brexit, politics in this country is broken, and people continue to suffer as a result of it. I read Utopia for Realists this year which genuinely excited me about the concept of universal basic income as a way of improving the living situation of many in this country, but whilst Brexit sucks all the oxygen out of the room we can’t actually do anything meaningful to improve the lives of those who desperately need it.
I really want to become more active in politics, but it’s hard to know where to effectively direct my effort to make a difference (at one point in my re-evaluation of jobs I considered moving into politics or the civil service in order to be effective). I struggle with very large crowds, so even simple entry-level things like attending demonstrations I don’t do, although one might argue the effectiveness of those protests anyway.
But there are areas I can control. There are things that worked well in 2018 for me, I managed to maintain friendships and I intend to continue putting effort in there, and I’m glad I have done. I also want to repeat my committment to eat better, which started off reasonably well in 2018 but towards the end of the year, when I was struggling mentally the hardest to get through the day at work, I spectacularly failed at, and have put on ~10kg. I’m looking back at what has worked well for me in the past and setting up those systems that helped me succeed before, again. I have maintained my committment to the gym, and still enjoy strength training, and continue to have a personal trainer that I get on with well and who helps push me, and I intend to continue with that.
I want to continue travelling. I enjoy going to see new places and eat new food, as well as sometimes just to recharge, and I’m going to try and be more mindful of when I need time to recharge. However, I also need to be aware of the impact on the environment that has. I intend on making some trips to Europe this year by train, but I would also like to reach another long haul destination. Visiting Japan remains one of my all-time highlights, and there is much more of the world to see, although this will almost certainly involve flying.
I also intend to speak at conferences and share my knowledge more, now my book is out there. I’ve been mentoring junior members of staff through an internal BBC Women in STEM scheme, and I enjoy working with the more junior members of staff on my team who help me develop as well as seeing them develop. When I was at my lowest, a comment from a developer who I mentored early in her career brought tears to my eyes when I remembered that I was having an impact after all. So I intend to continue that.
But I’m not intending to make specific resolutions, but go into 2019 with a renewed energy, and not let the external circumstances that I can’t control get me down.
Now, some data to finish the retrospective with:
- Most listened to artist: Armin van Buuren (mostly as a result of using A State of Trance as background music whilst writing my book)
- Most read blog post: Today’s JavaScript trash fire and pile on (my writeup was linked to by The Register)
- Most popular tweet
- Books read this year: 12
It feels difficult to predict what will happen in 2019, but with friends & family I’m sure that we can get through it together. Happy New Year! 🥳