Blog

October 24, 2023 21:38 +0000  |  Cycling Urban Design 0

I've got two videos for you today that might -- if you're not there yet -- just nudge you in the right direction toward radicalisation around the subject of cars.

The first video has a car fanatic make the convincing case against car dependency.

Via YouTube

The second shows you a world where we can do better.

Via YouTube

August 18, 2023 09:44 +0000  |  Climate Change Employment Environment Shell 3

That's it, I'm out. It took me longer to find the exit than I would have liked, but such is life. I'm actually sad to be leaving some of the people there, but I'm afraid I'll be wrestling with the moral quandary that is my contribution to Shell's bottom line for the rest of my life.

When I started working at Limejump, I honestly believed that I was doing the Right thing: using Shell's oil money to build a green future. I know now how naïve that was.

Once we were TUPE-transfered into the parent company, it became clear to me how Shell really works, and perhaps more alarmingly, how so many working there perform appalling mental gymnastics to convince themselves that they're doing good things for the world.

From the Orwellian "Respect for Nature" scrawled on the walls of the office, to the contemptible climate denialism you hear from staff at all levels, it's clear that too many of the people working there truly believe that they're somehow making the world better even when confronted with the evidence.

There are of course some great people still there, attempting to "change the company from within", but it's a fool's errand if you ask me. Shell has known about the climate crisis for decades and every new generation of management since has worked to support and expand fossil fuel extraction. This latest crop is no different. Their performance at Shell's latest AGM where they straight up denied that their plans violate our Paris obligations in the face of clear evidence should divorce anyone of the illusion that Shell is on the right side of history. So long as it's profitable to burn the world, Shell will continue to provide the fuel.

What's more, even if Shell were interested in achieving a carbon free world (its actions say otherwise of course), I don't think it's capable.

Shell is a Very Large Company that's spent more than a century doing one thing: digging stuff out of the ground and setting it on fire. They're heavily invested in this pattern, with infrastructure all over the planet and tens of thousands of employees dedicated to it. They've got armies of lobbyists working to preserve that model in every country that matters and mountains of amoral investor cash lined up to support it too.

Combine this with the reality that big corporations can't pivot because of the black hole of inertia all of the above represents, and you get what happened to Limejump: a small renewables start-up, bought by a Big Corporate Fossil Fuel Company, after which it's swallowed and dismantled -- its goal of a renewable energy future lost.

Perhaps the most frustrating part of working there was the way staff and management would attempt to separate their actions from the ethical implications: "Don't blame us, the world demands energy. We're simply supplying it."

This is a convenient lie Shell employees tell themselves, crafted to obfuscate the fact that Shell has leveraged substantial lobbying efforts on all sides of the political arena to ensure a fossil future. They lobby (or fund 3rd parties to lobby) government and the public to crush green legislation and expand support for fossil fuels, all while repeating "net zero by 2050" as if merely saying it is sufficient.

These are not the actions of a company looking to embrace a carbon-free future. They're not even those of a company hoping to expand their portfolio to include renewables. This is a concentrated effort by the one arm of the company to crush the business of the other arm, a tactic that only makes sense if the renewable side exists exclusively to greenwash the fossil one.

Maybe this is obvious to you, but 2½ years ago, I really couldn't see it, so I'm sharing what I've learnt now.

To future generations: I'm sorry. I never contributed to Shell's fossil fuel business, but I did build systems that Shell used to distract the public from what they're really doing. I honestly believed I was helping, but for over two years I was part of the problem.

To my brilliant Limejumper colleagues that I've left behind: I'll miss you all and hope that one day soon you come to the same realisation as I have: that your skills are valuable, that Shell is using them to burn down the planet, and that you can do better.

Image credit: Rosemary Mosco

July 28, 2023 11:56 +0000  |  Employment Management Software 0

When I started as tech lead at Limejump, it was my dream job. Finally, I was going to be able to actually lead a project's technical direction, rather than spend a whole lot of time arguing about how I thought it should work. As it turned out, this job was a whole lot more than that, and all of it has been a fantastic experience.

Now that I'm leaving though, I find myself having to explain just what my job is for those that will step in to replace me and I thought it pertinent to write this all down. Maybe someone will see it and find it useful, or maybe they'll call me out on my bullshit. Either way, the result will likely be net-positive.

External Relations

The idea that as technical lead I'd be spending a big chunk of my time not talking to my team at all was a big surprise, but that's how this has worked out. Over the last 2½ years, a surprising amount of my work has consisted of communication with other teams, our product owner, my manager, and even upper management directly.

Coordination

For the most part, a lot of the comms are about coordination. My team needs X to be finished by Team Y, so I'm talking to them about what they need to get X done. I can then later go back to my team and set reasonable expectations about the future, which will sometimes include a conversation about workarounds for the interim.

It's more than just harassing other teams about deadlines though. In many cases, I'll be asking for advice around what those teams are doing, what works best for them, what they might need from us or trying to arrive at a consensus of best practice across the company.

It goes the other way too. Other teams, when curious about what mine is doing, will usually just reach out to me directly. "Why does service X do Y? Can it do Z instead or as well?" This is a big part of my day.

Technical PR

If your team builds Something Awesome, but no one knows about it, it'll never be used, and so those efforts are effectively wasted. So part of my job is talking to other teams (usually just the nerds) and promoting some of the cool stuff we're doing. Maybe we've got a new library we think others might benefit from, or a new process for our CI that has improved things. Talking about this with other nerds earns our team respect and helps the company as a whole build on our experience.

Taking those Meetings Bullets

No one likes going to meetings, especially engineers who would rather be writing code. Honestly, I'd much rather engineers never have to be in any meeting they don't want to be in 'cause their contributions toward actually building things are much more valuable. To that end, if someone has to go to a meeting, I usually volunteer. It's my job to know everything about what my team is doing technically, so theoretically I should be able to advise on any subject related to what we're doing. Let the nerds do what they love instead.

Criticising Management

When I became a tech lead, I thought I'd never be in a situation again where I had to argue with my boss about the right direction for things, but I've learned that as you move up the chain, you're still writing software, just through additional layers of abstraction ;-)

There have been a few times where upper management has made decisions that I've disagreed with. Whether it was a choice to keep an antiquated legacy service alive, or to migrate a bunch of systems to another standard, it's my job to be critical of things I disagree with.

Sometimes I've been persuasive, and other times I've simply had to adopt a position of "well, at least the truth is where it needs to be". I've even reconsidered my position a few times and gone back to my team to support the new direction. In any case, I think it's important that a tech lead speak out when they see the company doing something they think is wrong. It's basically a big reason they're paying us.

Institutional Knowledge

As someone who's not necessarily deep in the code but rather leading a team of people developing (19!) different projects, I'm in the unique position to be able to "mostly know what's going on" in a lot of different areas. As employee turnover churns, that knowledge becomes more valuable, such that on any given day, about 20% of my conversations are from newer colleagues asking me why something is the way it is and if it can be safely changed to do something else.

A lot of companies think that you can solve this problem with thorough documentation, but in a start-up atmosphere, where things are developed, tested, partially adopted, and then thrown away because of a discovered failure (move fast and break things!), expecting that everything be documented is a bit nuts. Even if you could document it all, no one would ever read it. Hell, if you've read this far into this post, you're probably in the 1%.

So, the best you've got in a lot of cases is good communication between your longer-running staff and the newer staff. Make sure people ask why a lot, so we can pass on lessons learnt.

Greasing the Wheels

My team is awesome and they all really know what they're doing, but sometimes they run up on something that blocks their progress. If that problem is political (management needs to fix something, or someone above needs to approve something) then they go to our engineering manager, but if it's technical they come to me.

I have a lot of days where I'll spend an hour or more with my nerds troubleshooting a problem, pair programming, or just fiddling with configurations together to get things working. Sometimes it's just me sitting in for some technical advice/guidance, and sometimes we're learning together. Either way, my involvement is usually only momentary, getting the engineers un-stuck so they can carry on being awesome.

Mentoring

Probably my favourite part of this job has been the mentoring. I've worked with some really brilliant people at various stages in their careers. With 23years behind me, I get to play the "Elder Nerd" and talk about "that one time where I worked at a company where X happened".

The key thing here for me is that you have to put the interests of the person you're mentoring over the interests of the company as a whole. If you don't, they'll know it and they won't trust you. I think I've managed to cultivate a reputation where people know that I'll always be straight with them, and that's allowed me to have some really great conversations about personal and career development. I've also made some great friends.

Technical Direction

Much of what I do as a technical lead is not technical direction at all.

Imagining the Future

This was the most daunting part of the job when I applied for the role. I figured I was a pretty good coder, but could I actually lead a team? Why they hell would anyone follow me? I decided to look back on all of the tech leads I'd had over the years and apply the good stuff (obviously) but also look deeply at the truly terribly bosses I'd had and decidedly do the opposite.

To that end, I didn't direct the team at all. Instead, I spent months just getting to know the team, the context, and the various codebases we were responsible for. Over time I started to sketch out a diagram of where I thought we should be and updated it daily through various conversations.

After all that time, I had a pretty good idea of where I figured we should be going, but critically I never tried to impose that vision on the team. Instead, I used it to inform my conversations with them and slowly nudge us in the direction I wanted. The idea was to make sure that the team as a whole decided to go in a direction collectively with some guidance, rather than just slapping a diagram on the screen with "Ok kids, here's where we're going!"

Some concessions were made of course, but they were never treated like battles won or lost because there was never a battle at all. We decided, as a team to build things this way. I've been really happy with the result, and I believe, so has the rest of the team.

Code Review

I don't write a lot of code these days, but I review tonnes of it. With a team of 5 other engineers churning out multiple PRs each a day, I'm usually the one going through that code.

For the most part, I'm not looking for bugs. Instead, I'm trying to make sure that the code is:

  • Safe: Have we made any decisions that could leak data or pose a security risk?
  • Boring:
    • Does it conform to standards?
    • Is it needlessly clever?
    • Can someone who's never seen this code before understand what it does easily?
    • Does it violate the principle of least surprise?
    • Is it self-documenting, or do I need a probably-out-of-date document to understand it?
  • Tested: I mandate 100% test coverage, allowing for explicit exceptions that must be defended during review. This may sound extreme, but the result is code that can be regularly and easily updated. On our projects, a complete Django update takes about 1hr of developer time, while at previous companies it was weeks or even months of work combined with a lot of fear & uncertainty.
  • Performant: This is where I get to say things like: "We did this at Y company back in the day and it didn't go well, maybe try Z instead."

I also try to give some time to questions around broader architecture. Should we be storing this code here, or should we instead be moving it into a different folder or even an external library or service? Sometimes these questions are more meant for later conversations though.

The pattern we usually follow is that unless there are "show stopper" bugs, security flaws, or violations of any team standards, I usually mark the PR as "Approved" and let the engineer decide if they're going to implement any of my suggested changes. It's a collaborative effort, and engineers shouldn't feel like their tech lead is writing their code for them.

Compromise

However every once in a while someone writes something that I just think is a Bad Idea. It's not that the code is bad, but rather that it takes the wider codebase in a direction I'm not comfortable with.

This is a Hard Problem for me. In these instances I struggle with balancing what I think is the right direction for the project and making someone on my team feel like they've wasted their time, or worse, that I think they're a bad engineer. What follows is usually a dance of egos and an attempt to find some middle ground, which is not always possible.

This sometimes is a battle, and in the end, someone will have to give a little. I like to think that I've been reasonably conciliatory, but I guess I'll leave it up to my colleagues to be the judge there.

Cheerleading

Humans aren't ants. We need a reason to keep going, so if you work at a job that feels soul-crushing, you won't work there very long if you know what's good for you.

Collective Ownership

I can't take credit for this idea, as I'm pretty sure that Rob, our perpetual team sunshine inspired this, but I'm a big proponent of it:

If you write the code, and I review it, it's not your code anymore. It's our code.

A lot of companies talk about "no fault retros" or a "culture of shared responsibility", but in 23years I've never seen it done as well as we've managed in our team. Somehow, we've managed to foster this culture of collective ownership to the point where we carefully choose our pronouns when talking about our work.

  • "The server fell over when it received X"
  • "We made a change last week to call Y when X was received"
  • "Alright no problem, let's make a ticket for this so we can patch it up for tomorrow's release."

If someone tries to claim ownership of a bug or failure, someone always reminds them that they didn't cause this problem, we did. The result is a team that celebrates individual and collective successes and takes on failures as a shared burden.

Morale

Sometimes things suck. Sometimes there's a load of work ahead, or a colleague has left, or a project was killed. Whatever the cause, as the lead it's at least partially my job to try to keep spirits up, to make what needs to be done feel achievable.

Honestly, this is one of the harder parts for me as it always feels forced. I mean, I'm usually a rather emotional and animated person, but it's hard to step out of myself and try to illicit a particular feeling in others, especially if it's for the benefit of a company rather than a person.

The same goes for good news though. Pitching a subsidised night out to management when a project is delivered on time, or even just to acknowledge the efforts of individuals is a pretty great part of the job.

Actual Code

I used to have a tech lead that would regularly lament: "I didn't even get to write any code today!". As one of his engineers at the time, I thought that this was a pretty weird thing to get worked up about. After all, I was writing code all the time and it wasn't that great.

You start missing it though. If you're in a job where you're only ever looking at other people's code and not writing any of your own, you get... itchy.

Ticketed Work

I'm in stand-up every day, and I try to regularly take a ticket and hack away on it throughout the week. This work generally takes a back seat to everything above though, so I try to avoid taking any work that might require a lot of time or upon which other tickets depend so I don't end up blocking anyone.

Usually, I try to sharpshoot tickets whose work will inform future development, so that I can establish what I think are good patterns for what's coming down the pipe, but it doesn't always work out that way.

Gardening

Finally, if everything else is accounted for, I try to do a little of what I affectionately call "gardening": the process of looking at existing code and creating a pull request to make it a little more stable, performant, or just developer-friendly. Most of the team is focused on churning through tickets, and sometimes improvements are overlooked: typos in comments, missing type hints, somewhat kludgy ways of doing things that could be a lot cleaner and simpler if afforded the time and attention. On days when I need a break, I do some gardening, create a PR, and ask that someone review it when they've got a moment.


And that's it. That's my job. It's a whole lot more than I expected it to be when I answered the recruiter 2½ years ago, but to be honest, I really like it. It's kind of the perfect middle ground between hands-off management and hands-on trench work, and I wish more companies followed a model like this.

At my next job, my title will be "engineering manager", but as I understand it, the role won't be all that different, just with added line-management responsibilities. This probably means I'll have even less direct code access, but that's fine by me. I can satisfy the "itch" with some Free software projects. 😆

January 05, 2023 22:48 +0000  |  Cambridge Transit Urban Design 0

There's some exciting stuff happening here in Cambridge. The county council (the tier of government between municipal and national that handles Cambridge and the surrounding smaller towns) has declared that they want to build what they're calling a "sustainable travel zone" around pretty much all of Cambridge proper.

In practise, this means that within this area, if you drive your car, you'll be billed to the tune of £5/day. There are a series of exceptions of course, ranging from cabs to emergency vehicles, but on the whole most drivers in the city will have to pay this fare every day they enter (or leave) the city. And yes, this applies to people who live inside the zone.

Understandably, a lot of people are upset by this, but I think that it's a great idea that's long overdue.

I'm going to rant on this for a bit.

Why charging £5/day per car in Cambridge is great

For nearly 70 years, most of the developed world has been asleep at the wheel (see what I did there?) when it comes to urban design to the point where private cars are seen as not just a necessity, but even a force of nature. When pedestrians are mowed down by careless drivers in this country, the conversation inevitably falls to victim blaming, asking "why weren't they wearing their government recommended high-viz jacket?" Discussions around cycling centre around the decorum of those who violate laws written for cars, while ignoring the drivers who violate those same laws with fatal consequences.

Cars are dangerous

Cars kill 1.5million people every year and that's collisions alone. When you factor in the deaths from pollution and climate change, it's insane that we've entertained this pattern for so long.

Cars kill community

On top of that, a society that privileges private cars (ie. nearly every country) necessarily excludes the poor, the disabled, the young and the old. That means that events like all candidates meetings and football games, or public parks and children's play areas place an unfair burden on people to own and be capable of operating a car or depend on having someone else drive them. People can be isolated by their partners because they simply have no way to leave the house, or feel "fenced in" by the pedestrian-hostile world outside.

We know all this

The thing is, everyone knows this is terrible. 9 out of 10 drivers will agree: cars are terrible for all of the above reasons. However, when it comes to actually reducing cars on the road, everyone thinks they're an exception.

Everyone else needs to get off the road, but I have to drive my kid to school! What am I supposed to do, send her on a bike? It's not safe!

This of course comes from the self-fulfilling prophecy: we built a world so dependent on private cars that we can't interact with that world safely using any other means. You can have a development without cycle lanes or even sidewalks and no one will bat an eye, but dare to skimp on the free parking and people lose their frickin' minds.

Ok I get it, so what're we supposed to do?

This world our predecessors built for us sucks. Accepting that, where do we go next? To my mind, you have to start with a collective decision around what we want to become, and the rational answer to that has to be: Amsterdam.

Clean, quiet, safe streets mostly used by pedestrians, bicycles, and transit, allowing for delivery and emergency vehicles and even the occasional (very slow moving) private car. That's a world where you can safely send your kid to school on her bike, the world where an 80 year old woman can choose to live alone and still buy groceries and visit friends independently.

I don't think it's unreasonable to say that most people want this. The problem mostly seems to be around the public's unwillingness to accept that this is even possible. I want to go through some of the more common objections:

We can't do that here! The Netherlands is flat. We have hills!

There are plenty of examples of good pedestrian, cycling, and transit infrastructure being applied in cities all over the world, but like anything else, we can tailor our designs to the geography. Many towns (like Cambridge) are flat, so a heavy cycling focus makes sense. Other cities (like perhaps San Francisco) are probably better suited to biasing pedestrian and transit corridors, or subsidising e-bikes.

That's unreasonable. They had the density so it was easy for them. We're too spread out!

This sounds plausible until you realise that the Netherlands looked like this in the 1970s:

An Amsterdam traffic jam in 1970

Cities change all the time. We can change ours, but we have to want it.

That's nice, but the Dutch don't do the same kind of work that I do. I need a big truck to do my job!

This is laughable to anyone who's seen a hydraulic crane truck hoisting a grand piano three storeys into the air on the Haarlemmerstraat. Nine times out of ten, small trucks do the work just fine, and for that last 10%, a work truck can always be acquired. You do not need a land rover to buy groceries.

My office is in a business park off the freeway. I have to own a car to get to my job.

This is a symptom of our failed design philosophy: the idea that everyone owns a car, so they "they can just drive" to my cheap office space. These far-away office parks don't make anyone happy. They're painful and dangerous to commute to, require expensive hardware (cars) to make the trip, and typically exist in "deserts" where you can't find food or child care, let alone nearby homes.

This model is bad for everyone and has to die. At the very least, it shouldn't be cheaper to subject people to this.

What about the suburbs & villages? Those people need cars!

Some people don't like living in a "city" like Cambridge and prefer to live further out where the land is paradoxically cheaper, but where you must own a car to go basically anywhere. That's fine, but we can't let their preferences dictate the structure of our community. If Cambridge wants to be like Amsterdam, these people need to be dissuaded from driving their cars into the city.

The carrot & stick

The £5/day charge will be applied to cars driven within a very large "sustainable travel zone" (STZ) on any weekday. The proceeds from this levy will be applied to expanding transit (frequency and routes & lowering fares) as well as improving/expanding cycle infrastructure.

In effect, this is a classic carrot/stick arrangement: you can drive your car if you want, but you're going to pay. However if you're open to alternatives, they're now faster, cheaper, and more convenient.

It's not a perfect plan. Personally, I would have favoured outright banning of cars within the zone, or at least extending the STZ to include weekends, but this is a step in the right direction.

The risk

There's a whole bunch of politics operating under the radar here that makes this all rather interesting.

Cambridge's mass transport, like all transport in the UK (excluding London) is privately held. There are a handful of bus companies managing separate routes charging exorbitant fares for notoriously unreliable service and they don't even allow transfers. It's a terrible system that's barely used and politically, no one has dared step up with a solution to fix it. Through this plan, these companies stand to benefit considerably, effectively absorbing a public subsidy for a private service that has historically not been provided well at all.

In other words, this might just be a case of politicians finding a way to soak the public for some money so that they can give it to their friends in some private companies. It certainly wouldn't have been the first time.

What's worse is that they'd be doing this with the blessing of active transport activists like Camcycle who have pinned their names and reputations to the project for support. If this is, as I suspect, a fleecing of the public purse, it could be terrible for everyone.

Why it won't happen

The plan is being executed by the Cambridgeshire County Council which is presently governed by a Labour/Lib-dem coalition. The Conservatives, who are largely elected by car-driving village dwellers will likely use this as an issue to beat their opponents in the next election.

That election is timed to happen just before the £5/day charge comes into effect, but after the public funds have been spent "bolstering transit". My inner cynic says that this is all designed to take that public money, give it to the bus companies and then fold up shop before the next election so they don't have to go through with it.

All of this is terribly disappointing, but even given the very likely chance that this is all a scam, I find myself still siding with it.

When it comes to building our cities to be clean, quiet, and safe for everyone, I'm going to support any plan that furthers that goal. If the alternative is letting a bunch of carbrains turn around and kill it ensuring that nothing gets better, I'll back any plan that gets us even a little bit closer to a better home.

December 01, 2022 17:12 +0000  |  Mastodon 1

Mastodon is Twitter's logical successor. Like Twitter, it's a "microblogging" platform that lets you follow and ~~retweet~~ "boost" posts you like for your followers to see. The key difference compared to its predecessor is the "federated" nature of the platform, which others have written on heavily, so for the uninitiated I'll just say that "it's distributed, so no central authority controls it."

What we don't talk about nearly as much though, is Mastodon's painfully limited system of managing that federation at scale. When faced with the reality of dealing with unwanted content, the answer in the Mastodon community is "the instance moderator does that". The assumption being that not only does the owner of the server you're using have the time/skill/inclination to sift through reports of your content, but also that this moderator shares your values.

Additionally, instances can be "de-federated" from the greater network by moderators of other (potentially huge) instances for not blocking content those networks consider objectionable. It all sounds like a neat and tidy way to keep the baddies out, but it's also a recipe for an echo chamber.

The reality of living in a society is that there's very little consensus around what content should be permitted, and this is a good thing! Some people share pornographic content daily, while others consider this a mortal sin. For that matter, posting a drawing of a prophet is enough to drive some idiots to violence, while for others, it's considered hate speech.

The hate speech question alone is especially difficult, as the term itself even lacks a consensus-backed definition. It's regularly used in online spaces to shut down debate rather than to inform it.

So with all of this, how can we expect the human moderator model to scale? The word "scale" itself suggests expanding a system's capabilities beyond that of individuals. We must accept the use of algorithms in navigating this space, and we can do this without risking the bias AI-based systems have demonstrated.

For my money, the answer is community tagging and leveraging that tagging to allow clients rather than (or at least in addition to) instances to filter according to their values.

The idea is allow users to tag content (and even other users) with whatever string they want: tree-hugger, fascist, pedo, cute-puppies, porn, nazi, deluded-psycopath, nerd, bootlicker -- whatever. Instances or clients can then choose which tags they want to filter on, as well as the weight they want to allocate to tags applied by people and posts bearing specific tags.

So for example if a user gets a lot of nazi tags from 15 different accounts, your client, configured to have a nazi threshold of 10 will filter out that user's content. If however a user was tagged as pedo from 15 different users who are also already tagged as nazis according to your threshold, the weight of those tags could be diminished or completely invalidated and so the "probably not a pedo" user's posts would get through.

The idea is to mimic actual human behaviour. If a MAGA nut tells you that "that dude's a fascist" you're less likely to care about that statement than if it had come from someone whose opinion you actually value.

Of course this system suffers from the whole question of gaining a reputation from the start, so maybe this would have to work much like other reputational systems (eBay comes to mind) and rely on people less filter-conscious to rate people and posts before the more filter-heavy users see that content.

I'm curious what other Mastodon users (Mastodonians?) think about such a system. If they're satisfied with the current system of filtering/defederation or if they have different/better ideas to manage the problem with limited bias.

September 14, 2022 17:06 +0000  |  United Kingdom 0

Queen Elizabeth is finally dead. We all knew it was coming. The lady was 96 years old, and no matter how ridiculously rich you are, no one is immortal. This country is losing its mind over the whole thing of course, with everything from Cancer appointments to bike racks, and even other people's funerals being cancelled out of condolences to the royal family.

Not everyone in the country has lost their mind though. Shouts of "God save the King" were met with boos in Edinburgh, and there have been a variety of incidents of protest across the country. Some of these were put down by police of course because apparently holding a "Fuck imperialism, abolish monarchy" sign is grounds for arrest in this "free" country.

For my part I want to be clear that have never had a single fuck to give about Elizabeth or her entire family. They're all entitled, inbred parasites and they need to go. Elizabeth was far from the "sweet old lady" people like to pretend she was, but rather just another manipulative billionaire who banned "coloured immigrants or foreigners" from working in her palace, tried to steal money from a poverty fund to heat said palace, and sat upon a mountain of money while her "subjects" literally starved.

Now that she's in a box, that mountain of money and investments all pass to her son Charles, with zero inheritance taxes thanks to laws she likely helped write thanks to King's consent conventions dating back to 1728.

It is absolutely maddening that, in the 21st century, in a country where people are literally having to choose between eating and heating their homes, that those same poverty-stricken idiots are lining up to pay their respects to a billionaire parasite. I don't get it. I likely never will. These people are insane and they clearly deserve this level of subjugation.

August 29, 2022 13:39 +0000  |  Music 0

Today, I thought I might tell you a story about someone else. Maybe you've heard this one, but if you haven't perhaps this post will add a sense of urgency to your life, or maybe it'll just remind you of the terrible tragedy of being. Either way, it's a story about an amazing young woman that I want to share.

This is her. If you watch through to 1:40 and aren't hopelessly blown away by her talent, you are indeed made of stone.

Christina Grimmie was one of those breaking stars in the earlier days of YouTube, a kid with no industry connections wielding an internet connection and a bottomless well of raw talent. She updated her channel regularly and over time built up a fan base, was doing live shows, and even cutting albums. Her life was looking up: she was young, beautiful, and amazingly talented.

Then one evening at one of her shows, all that ended when a complete stranger murdered her.

Her Wikipedia page tells a more thorough story of her life and death, so I won't add more here. If you're curious, you know where to read it. I just wanted to share her song with you, and maybe remind us all that sometimes, our time on this earth isn't as much as we expect.

August 10, 2022 07:31 +0000  |  Education Religion United Kingdom 2

Anna is will be four years old next year, and they start kids into school early in this country, so Christina and I have begun the process of looking for a school for her.

Apparently, it's not as simple as "you go to the one closest to you" here, but rather there's an application process wherein you rank your preferences and you're awarded your first, second, or third choice based on a variety of factors, including (possibly?) any personal appeal letters you might submit to justify your choice. It all sounds terribly stressful and yet another way to enforce class structure.

The process is made additionally complicated by our preferences: we don't want to put her into a religious school and we want to avoid mandatory uniforms. OMG does that limit the field of options.

In the UK, school uniforms are touted as a virtue and in parent's circles people have a tendency to get completely irrational on the issue. As a result, it's often the case that when you're comparing schools on any sort of official list, uniform mandates aren't even mentioned, so you have to dig into each of the (poorly designed) school websites to find out for yourself. It's not been fun doing this digging. The number of sites that think it's ok to use comic sans is... unfortunate.

The religion question is murkier.

There are straight-up religious schools here, typically Anglican, but there's also Catholics, and presumably others I've not seen yet. There's also supposedly non-religious schools (ie, not funded/controlled by the church) with names like St. Matthew's (check out the font choices on that one) that make figuring this out based on name alone difficult.

It gets even more complicated though. There's an official policy here called "The Cambridgeshire Agreed Syllabus for Religious Education" which sounds like some progressive guidelines to expand kid's understanding of religion in general... that is, until you read it (emphasis mine):

Teachers should consider the religious experience of the pupils in the classroom and the whole school when planning which religions to look at and in which order. * Christianity will be studied in all Key Stages.

  • The choice of which other religion(s) to study in KS1 should be relevant to the experience of the pupils in the class and local demographic. Where Christianity is the only religion present the school will choose the other religion to be studied.
  • However, by the end of KS2 all major religions (Christianity, Islam, Judaism, Hinduism, Buddhism and Sikhism) and a secular world view (humanism) must have been studied.
  • In KS3, building on KS2, all major religions and a secular world view must have been studied in greater depth.

It is desirable that all pupils visit a church or other Christian place of worship and the school should make all efforts to plan visits to religious buildings of other faiths. Visitors from different faiths and world views should be encouraged to visit all schools. When neither visits nor visitors are possible then the use of virtual tours and resources are recommended.

I'm reasonably certain that something like this wouldn't be ok in Canada, but apparently this is normal here.

Annoyingly, the above (and the rest of the guidelines) are clearly written to be very flexible, so the guidelines themselves aren't enough to tell you what kind of education you're signing your kid up for. You could have teachers that discuss Christianity in the same way most people talk about Greek Myth and do a field trip to a local church cemetery as part of a local history unit. You could also interpret the above to teach Christianity as the default, and other religions as adorable savages.

It's so hard to tell if I'm signing my kid up to be indoctrinated and the state is clearly not on my side here.

April 29, 2022 21:43 +0000  |  Media 0

I have a kid now, which means the kind of media floating around in my home has changed since my child-free days. Sure, we still find time to watch The Witcher and The Wheel of Time, and I still love The Expanse when I'm on my own (Christina doesn't care for it because she's a savage), but for the most part, if the TV is on these days, it's playing something kid-friendly because you can't have people getting their heads chopped off in front of a 3-year-old.

As you might have guessed though, the quality of children's programming is all over the place. From the brain-rotting Cocomelon, to the formulaic and ear-wormy Octonauts there's a lot of options out there that can make any adult forced to watch a little bit crazy.

So, I thought I'd make this (short) list of shows that I've been watching recently that I'd consider "kid and adult friendly". If you've got kids, or just enjoy exciting kid-friendly stories, you might wanna check these out.

Kipo and the Age of the Wonderbeasts

  • Available on: Netflix
  • Published by: Dreamworks
  • Ages: 3+
  • Links: Wikipedia, IMDB

I love this show. Kipo is an inspirational character abound with wonderful human qualities. She has a way of seeing the world -- her wild and fantastical world -- that just makes you want to be a better person.

The supportive characters (heroes and villains) are interesting, complex characters with their own backstories and development, the art is fantastic and the music is brilliant. By the second season I was literally punching the air at the opening credits of every episode! It's so good!

At Anna's age (3), I don't think she gets all that much out of it. The characters are cute & funny and the music is fun to dance to. I don't think she's really grasping the plot or anything like that just yet, but I imagine that this show would be enjoyable for pretty much anyone.

The show had a fixed run of 3 seasons, all of which have been released.

Infinity Train

  • Available on: Cartoon Network, HBO Max
  • Published by: Cartoon Network Studios
  • Ages: 8+
  • Links: Wikipedia, IMDB

I don't think Anna's ready for this just yet, but if your kids are older, it's a great thing to sit down and watch with them.

With each episode running at just 11 minutes, each 10-episode season of Infinity Train follows a different "passenger" as they traverse the train and learn how to sort out their life before they're permitted to return home. Our heroes meet new and interesting characters as they pass through car after car after car after car, learning about themselves and growing as people. Each car is different and more bizarre than the one before it, and the characters we meet along the way are fun, interesting, and sometimes voiced by awesome people like Kate Mulgrew (squee!)

For the most part, I'd say that this is safe for really young kids, but there are a few problematic scenes for younger kids that mean you probably want to avoid it for the young ones. In season 3 a character dies somewhat graphically (no blood, but it's still scary), and in season 1 a character is turned into a sort of shadow monster.

Hilda

  • Available on: Netflix
  • Published by: Silvergate Media and Mercury Filmworks
  • Ages: 2+
  • Links: Wikipedia, IMDB

Anna loves this show and has for a long time. I originally picked it up because my friend Robin worked on season 1 and he sent me a link. I loved it within the first few minutes so I made sure to inject it into Anna's diet in place of some of the dumber stuff.

Hilda is a great character, full of adventure and courage, with a strong sense of justice. She lives in a fantasy world loosely built around Scandinavian folklore, with giants, elves, thunderbirds, and dear foxes, and because Hilda is "a friend to all animals and spirits", she gets along well with (almost) all of them.

The stories are largely self-contained with long-running character development but not much in the way of the "season arcs" you tend to see in some other shows. I think what I love most about the show (aside from Hilda herself) is her relationship with her (single) mother who is objectively a fantastic role model for her kid. Oh and Alfur. He's fantastic too. And Twig! And Woodman!

You should watch this show.

Honourable Mentions

The three above are lesser-knowns, so I wanted to give them special treatment, but there's a few more that're worth covering if you've not heard of them yet:

April 29, 2022 20:29 +0000  |  COVID-19 Health 0

On April 12th, our child minder called to let us know that she had COVID-19 and as a result would have to close her doors 'til she was done with it, which likely meant the rest of the week. I cycled over there to pick up Anna, put her on the back of my bike and Christina's parents (visiting from Greece for a few weeks) took care of her for the rest of the day while I finished my work.

By Thursday, Anna had minor symptoms. By Friday she had a heavy fever and a positive lateral flow test. Both of Christina's parents were also suddenly positive and I had a very feint line on my test as well. Christina was blissfully healthy.

Friday was the easy part. I continued to work from home and Anna mostly slept on my lap while I wrote code and attended meetings as if everything was just fine. Christina's parents had mild symptoms and spent the whole day inside trying not to stress themselves.

By Saturday, Anna was fine, getting more active & animated, wanting to dance to the Octonauts theme etc. Unfortunately Saturday is when COVID hit the adults pretty hard. I literally couldn't keep my eyes open for big chunks of the day and Christina's mom Carol and I took turns keeping an eye on Anna while the other slept. Christina's dad Yannis helped out in the times in between, and Christina, still happy & healthy went to work.

Sunday through Tuesday I was in no shape to be useful, so I took those days off and tried to just focus on getting better. Wednesday I said goodbye to the in-laws and went back to work (remote) feeling pretty good. Thursday I felt a little worse. Friday I was a mess again and had to clock-out early so I could sleep the rest of the day. Christina & Anna came home to me fast asleep at 1730h.

I took another lateral flow test tonight. I still have it, and the line is much darker this time than it was when I tested last week. I don't know if the line intensity correlates to level of infection, but either way, I'm very much not over this thing. I'm going to take the whole long weekend to do as little as possible, sleep whenever I'm tired, and stay the hell away from everyone else.

Thankfully, Christina is still just fine. My guess is that she is/was an asymptomatic carrier or just still has sufficient immunity from her shot back in January. She'll be able to care for Anna while I'm down for the count and can even do grocery shopping etc. I honestly don't know what single parents do in this situation. It's one thing to be sick & miserable living alone, but to be charged with caring for someone who's not sick and wants to run-around-and-do-all-the-things is a whole other nightmare that I'm glad I don't have to live in.

From what I've been reading online, COVID-19 infection & symptoms can last anywhere from 3-4 weeks with a misery peak at around 10days so this weekend should be fun. At least my symptoms are manageable and not life-threatening. I'm mostly tired, with inflammation in my sinuses. I still have my senses of smell and taste, it's just that my arms and legs are so much heavier than they usually are. Hopefully some more rest and fluids will get me through this soon.