Reading

One advantage of the weather being rubbish (and, admittedly, of me being lazy) is that I have plenty of time to read on the train: thirty or forty minutes in each direction, although it tends to be interrupted by changing trains and so on. So, this year I'm aiming to work through some of the books I've been meaning to read for a while; an ebook reader makes that rather convenient.

I started off by reading The Girl With The Dragon Tattoo, after seeing the new film (I'd already seen the earlier Swedish film). I'd have to say that in some ways it's better than the films; I quite enjoyed the slight tangential subplots every so often, which wouldn't really have translated well to film and so were replaced. I did find his habit of adding irrelevant technical details quite annoying. I don't care about the specifications of the protagonist's iBook; I'm not even sure I care that it's an iBook unless it's relevant to the plot or the character.

After that I read Tinker Tailor Soldier Spy, once again after seeing the film. Although I did love the film, again I have to say I preferred the book. In the film, it was at times hard to follow the subterfuge, and particularly the reasoning that lead the protagonist to uncover it. Perhaps it's just because I'd already seen the film, but I didn't have any such issue with the book. On the other hand, Le Carré has a nice way of not spelling out the conclusions; when the protagonist receives information, which obviously relates back to an earlier event, the reader can work out this connection without the author having to add "it were the butler what done it!".

There were noticable differences between the book and the film, mostly in terms of the order in which events were explained (the film, for example, starts with an operation that goes badly wrong, whereas in the book the details of this are kept secret and only uncovered later). There were also additional scenes of a Christmas party at MI6, apparently as a device to establish the relationships between some of the characters. Either way, both were thoroughly enjoyable.

After that, I decided to go for some more le Carré: The Spy Who Came In From The Cold. Another enjoyable read, though it felt somewhat lighter than Tinker Tailor (at least, I finished it in half the time; a disadvantage of the Kindle is that it's hard to judge how long a book is in absolute terms). Interesting perspectives on the Cold War and early-Sixties Berlin, and multiple layers of plotting and secrecy. It was quite fun during the last few chapters, when everything was going wrong, to try to work out why it was going wrong (I think I got it about half a page before the reveal). My only complaint is that the ending is a little abrupt.

So far I've been averaging a book every two weeks; I want to see if I can improve that average by the end of the year.

Cycle rides

I've tended to be quite lazy about cycling since I moved to London; at best I've cycled two or three times a week (just between home and work), and there have been periods when I've gone weeks without cycling (which does, admittedly, give me an opportunity to read more, which I don't otherwise find time for very often).

In an attempt to remedy this, I've been challenging myself to cycle to work every day. After a couple of months in which I'd only been cycling once a week, if at all, last week I managed three days again --- one of the days I missed due to going go-karting after work, and the other because I was so sore after the go-karting. I want to keep it up all winter, because I know if I stop it could easily be spring before I start again.

A big problem has been oversleeping: if I don't have time to wake up properly before I leave the house, I don't feel safe cycling in traffic, so I take the train --- and end up being even later, as cycling is significantly faster than public transport. Another reason to try to fix my sleeping pattern, I suppose.

I've also been trying, from time to time, to go out for longer rides at weekends.

  • Last weekend I went out with Tower Hamlets Wheelers: from Hackney Wick, down the Greenway to Beckton and Woolwich, across the ferry then back along the river to Greenwich. After a break in a pub, I cycled back, got slightly lost trying to find the Greenwich Foot Tunnel (it's surrounded by construction work, it seems), and ended up getting the East London Line back across the river to cycle home from Shadwell. I got an odd look from people who saw me at the bottom of the lift with my bike and then again at the top as they came out --- I couldn't be bothered waiting until there was space, so just carried it up the stairs.

    The Greenway is an okay ride (unless you're riding into the wind, in which case it's terrible), but the Greenwich side was disappointing --- there was quite a lot of walking along the side of dual carriageways in order to get to cycleable paths.

  • Last month, I went out on the Tour du Danger, which was a 15-mile ride around a good chunk of central London, with a 5-mile ride between home and the start/finish lines. The ride was in protest at the failure of the Mayor and Transport for London to provide safe cycling facilities around various major junctions; on the day, there were at least two hundred of us and several people commented that it was the safest that they'd ever felt while cycling in London. I can't say much for the scenery (Elephant and Castle is not exactly a tourist destination), but it was a fun ride all the same; so far that's the longest I've ridden in one day, and it made me realise the importance of keeping a sensible pace on longer rides --- when I'm riding to or from work, I normally go flat-out, which works fine for a five-mile commute but not much more. We also had musical accompaniment (at least on the beginning and end sections, not the main ride) from someone with an amp strapped to their bike.

  • Back at the end of August I decided to try to cycle past the M25. Up the canal path past Hackney Marsh then on up to Walthamstow, where I hid in a bus shelter out of the rain for a while, then back west to Tottenham Hale and Seven Sisters (horrible one-way system), then following the main road north. Not hugely recommended, there are some shitty junctions and roundabouts around Edmonton and the North Circular, and I realised later that there's a cycle path going pretty much the same way, up the Lea Valley. Got to Theobalds Grove (one of the first stations north of the M25) and took a train back to Hackney, then raced a bus home from there (no contest, I left it behind after the second stop).

  • The week before that, I took the North London Line to Hampstead Heath after a recommendation from a coworker. Unfortunately, I encountered two problems: firstly, a lot of the paths are pedestrian-only, and secondly, it's really steep. I ended up staying on the road and cycling around the western end to Golders Green and then back through the middle (slightly unpleasant road that seemed like a country road but with drivers still treating it like central London) and then turning north to Highgate before coming home. Highgate Hill was an experience; even going quite slowly it felt like I was going to go over the handlebars. Sometime I'll try it again and see if I can actually find a path through the park itself.

  • Sooner or later I'll get around to cycling up to Epping through the forest. It'll be about 15 miles, and then I can either get the train back or cycle back. I've been too lazy so far, though. (Although, I also need to visit Epping station for Chromaroma.)

Tracking Packages Not Installed by Puppet

I use puppet to manage my servers (and my laptop), primarily because it's what we use at work. However, I have a bad habit of just doing things manually rather than through puppet; since I've recently begun moving my website to a new host I thought I'd try and track this a little better.

FreeBSD has a helpful tool, ports-mgmt/pkg_cutleaves, for listing and removing packages that are not depended upon by any other packages. So, I generated a list of packages installed by Puppet:

< /var/puppet/state/state.yaml awk -F'[\\[\\]]' '/Package/{print $2}' | sort > /usr/local/etc/pkg_leaves.exclude

Then pkg_cutleaves -lx gives a list of everything not installed by Puppet and not depended upon by anything else.

For Debian, it was a little harder, since I'd never had cause to use the relevant tools before. With some help from Server Fault, I got a list of manually-installed packages with the following script:

#!/bin/sh
set -e
all_installed=$(mktemp)
auto_installed=$(mktemp)
dpkg --get-selections | sed -n 's/\t\+install$//p' > ${all_installed}
</var/lib/apt/extended_states awk -v RS= '/\nAuto-Installed: *1/{print $2}' | sort > ${auto_installed}
comm -23 ${all_installed} ${auto_installed}
rm -f ${all_installed} ${auto_installed}

Then marked everything as being automatically installed:

get-manually-installed|xargs apt-mark markauto

Then, similar to the FreeBSD method, marked all the packages installed by Puppet as manually-installed:

< /var/lib/puppet/state/state.yaml awk -F'[\[\]]' '/Package/{print $2}' | xargs apt-mark manual

Alternatively, to get a list of only manually-installed packages not installed by Puppet:

#!/bin/sh
set -e
manual=$(mktemp)
puppet=$(mktemp)
get-manually-installed > ${manual}
< /var/lib/puppet/state/state.yaml awk -F'[\[\]]' '/Package/{print $2}' | sort > ${puppet}
comm -23 ${manual} ${puppet}
rm -f ${manual} ${puppet}

Debian should be somewhat easier to maintain than FreeBSD, as anything installed by Puppet will be marked as manually-installed

P.S.: Yes, I'm aware that this is basically the worst way of parsing yaml ever. Sorry. Also note that the name in puppet will be the namevar, so if the namevar isn't the package name (e.g., package { 'meaningless_string': name => 'real_package_name' }) you lose. Sorry.

Bus Lanes

There seems to be a trend of allowing motorcycles to use bus lanes; Plymouth began shortly before I started cycling, and it seems to be the norm in London too. I actually find motorcycles more offputting than buses or taxis when I'm cycling (though I have other complaints about taxis). Buses and taxis will generally overtake a cyclist properly, moving well to the side (traffic permitting), and so they don't present any real threat; conversely, motorcyclists tend to try to share the lane with cyclists, which means they're passing relatively close and often at full speed. There's not much that's more offputting than the sound of a speeding motorcycle approaching from behind in an otherwise empty lane. (That's quite aside from their tendency to use cycle lanes and advance stop zones, even more frequently than other drivers do.)

My objection to taxis, particularly black cabs (in London) is more political. In central London, inside the congestion charge zone, cabs make up a significant proportion of the traffic anyway, and I don't see any particular reason that they should have special privileges — it's not like they're any better for the environment than any other car. For most journeys, people should be using trains (mainline or underground) or buses, and the only people driving or being driven should be those who aren't able to use public transport — not simply those who are too lazy. (Conversely, I see no reason why blue badge holders shouldn't be allowed to drive in bus lanes, since the reason they're driving is that they're unable to use public transport.)

Six Months

Apparently it's a been a while since I wrote anything here. Nothing hugely noteworthy has happened; life just carries on. I've been at Mendeley for six months now (and a few days), and I'm now officially (semi-officially, perhaps) a system administrator --- given that I haven't spent any time on web coding since late August, it seemed sensible. I also finally graduated from university in Plymouth, with such a stupendously unimpressive result that I almost wish I'd dropped out a couple of years ago and done something practical instead.

I got myself a new bike through cyclescheme last month, and so I've been trying to cycle to work at least a couple of days a week --- the new bike is much nicer than my old one, and London roads are surpisingly pleasant to cycle on (for a start, the gradient is generally negligable, and the potholes are mostly no worse than Plymouth). I'm living in Hackney at the moment, about 4.5 miles from work, which is a pretty reasonable distance to commute unless I'm feeling lazy.

I signed up for flickr again, after deleting my account a while back. It's mostly old photos on there so far, but I'm going to be attempting to take more from now on. There are a few more recent ones, or not-so-recent ones that I never got around to uploading. I've started using Digikam to manage them, which makes it somewhat easier to manage them than a command-line interface did (which was the main barrier to me actually doing stuff with flickr previously).

I have a vague intention of writing more in the new year. Most likely this means that I'll post again in six months' time...

Life in London

It's been three and a half weeks since I moved out of Plymouth, and two and a half since I started work at Mendeley, so I thought I'd post an update.

Work's been interesting; as well as web development (which is my primary role, but not really something I want to do forever), I've been learning the server and network setup so that I can do some sysadmin work too (and stand in for our sysadmin when he's on holiday, like he is this week). As part of that, it's also possible I'll end up writing Java for the datamining team; again, not something I necessarily want to do long-term, but improving my Java would be useful, I think, if only so that i can add it to the list of languages I'm comfortable coding in.

I've been reading a hell of a lot; it's 35 minutes each way on the Tube to work, so I've had a lot of time with not much else to do. I'm half-way through my fourth book since moving; first was The Gathering Storm, the latest book in the Wheel of Time series. I was expecting it to be fairly mediocre, as the original author (Robert Jordan) died and a new author (Brandon Sanderson) was brought in to finish the series. However, it's actually bloody good; probably better than a few of the previous books (towards the end, the series was starting to drag, in my opinion). So, based on that, I've been reading Sanderson's Mistborn trilogy, which is again rather good. It has an original take on magic, plus some very clever plot twists. Also, Foyles bookshop on Charing Cross Road is awesome. I could live there.

At the moment I'm living near Grange Hill tube station, which means it's a direct train to work with only a couple of minutes walking, but it's a little inconvenient to be so far out (especially in the evening, when it can sometimes be nearly 8pm before I get home). This place is only temporary, though, so (hopefully!) next month I'll be moving to Hackney, which will be within cycling distance of work (and walking distance, at a push --- it's only four miles), though not so great for public transport.

Hopefully at some point I'll get around to going along to the local LUG and Python/Ruby groups, etc., but mostly so far I've been too lazy. I did go to a goth night with Loupie a couple of weekends ago, which was fun (it's not often that I go out somewhere that actually plays decent music...).

Moved to London

As mentioned in a previous entry, I'll be working in central London from the 14th. So, since the commute from Plymouth would be pretty horrific, I've moved to somewhere slightly closer: Grange Hill in Essex. This is only temporary: Loupie's sister had a spare room until the beginning of August. That should give me enough time to sort out somewhere more permanent.

Currently my room's a bit of a tip; it's smaller than my old room and I have a lot of stuff. I've put some of it in storage (mainly the four boxes of books, two of computer hardware, three computers that I don't use regularly, etc.) but it's still a bit crowded. My bike's also in there temporarily, as it's a bit far to cycle to work (also, drivers around here are frankly scary, and I don't want to be on a road anywhere near them).

I'll still be down in Plymouth every so often; I have too many good friends there to stay away. I'm particularly looking forward to terrifying some newbies at the Freshers' Fair, and I should also be around for Gem's and/or Ross and Christa's housewarming.

Current plans are to get to know the area and to brush up on my PHP before the 14th, get stuff unpacked (assuming there's space to do so), and acquire more books.

Job!

On the 25th of February I was up in London for a job interview. Apparently I didn't do as badly as I thought, because a few days later they emailed me to offer me the job. So, starting on the 14th of June I'll be working for Mendeley as a PHP/MySQL developer.

Next obstacle: finding somewhere to live within a reasonable distance of Farringdon tube station. After that, I get the fun of trying to move all my stuff (including two bookcases full of books) 250 miles. Any volunteers?

Empty Tory Promises

Yesterday I received Tory propaganda in the post, along with a questionnaire. They are still repeating their claims that not only will they not cut NHS funding, but they will improve the service. On the face of things this seems like a reasonable proposition, but from the Tories it seems to demonstrate a disturbing lack of arithmetic ability.

The problem is, the Tories insist that they will not increase the deficit. They also claim that they will cut taxes (on rich people at least). How exactly do they propose to reduce government income and increase or maintain government spending without increasing the deficit?

The only solution is for them to cut some other services, but they attempt to gloss over this in the vain hope that people won't ask how they intend to pay for anything. They make vague and misleading promises and hope that they won't be caught out.

The simple fact of the matter is that the NHS, and the welfare state, are socialist ideas, and yet no matter how much some Conservatives might want to, they have no hope of ever getting rid of them. The Tories have no choice but to maintain and even improve these embodiments of left-wing principles, because like it or not, people want them. If they were to promise to abolish the NHS and replace it with a US-style system of private healthcare, I suspect that they'd not only be soundly beaten by Labour, but the Liberal Democrats would give them a tough time too; thus, they're reduced to basing their campaign on not Conservative principles, but Labour ones.

Atheism, Liberalism, and Freedom of Religion

The French report calling for a ban on women wearing Islamic face veils worries me, for a number of reasons. Don't get me wrong, I think the world would be a better place in general if religion ceased to exist, but I don't think banning it, or specific religious practices, is the way forward.

I'd base my reasoning, in part, on John Stuart Mill: "the only purpose for which power can be rightfully exercised over any member of a civilized community, against his will, is to prevent harm to others". The wearing of a veil, when done willingly and without coercion or manipulation, harms nobody; therefore, it should be permitted.

The supporters of the report claim that "it is the symbol of the repression of women"; while ending the oppression of women is a goal I'd wholeheartedly support, I'm not entirely convinced that fining women for being oppressed is a particularly helpful solution. Punish men who force women to wear the burka; don't punish women who are forced to wear it (and, for that matter, don't punish women who wear it by choice).

The report also recommends that anyone showing signs of "radical religious practice" be refused citizenship or residence. Again, not necessarily a bad thing, assuming for the moment that "radical religious practice" is harmful to others; however, I suspect that the burka is a much more obvious symbol of "radical religious practice" than anything that might be worn by men, leading to disproportionate punishment of women.

In discussion with members of TermiSoc, I took my position further: though in many cases, religion is harmful to liberty, banning or restricting religion and most religious practices would be in contradiction with the Harm Principle quoted above.

It does not hurt others, for example, for someone to believe that the world was created by an omnipotent being. It does not hurt others, even, for someone to believe that the world was created in six days 6014 years ago, any more than it hurts others for someone to believe that the sky is green or that there is a china teapot orbiting the sun between Earth and Mars. They are almost certainly incorrect, but they have the right to be.

The point at which it becomes legitimate to oppose religion is the point at which it begins to affect others. When people demand that children are taught about the orbitting teapot as if it were fact, or at least likely, oppose it: being taught something as if it is fact when it is not is harmful. When people demand that women wear robes that covers their entire body aside from their eyes, oppose that, and oppose violence against women who don't wear it (in fact, oppose violence against all women) --- but don't, as explained above, punish the victims for being victims. Conversely, when people try to demand that someone not wear a symbol of their faith, oppose that --- a crucifix or turban harms nobody, and thus there are no grounds on which to forbid it.

When people try to pass laws based solely on their religion, oppose them, because while people may opt into a set of religious laws if they like, such laws shouldn't be enforced upon others. In fact, any laws that are not simply an application of the Harm Principle should be opposed: government has no right to exercise power over individuals for any other purpose, and neither do other individuals.

This was written for week 4 of project52, see others.