2021-02-03 New Beginnings
To all things, their season. As of December 8th 2020, I'm no longer tenant to
any landlord save the bank. That house I was talking about in the last post?
Reader, I bought it.
So, now I own a little end-of-terrace three-bedroom house a little north of
Cambridge, on a quiet suburban side-street. I have a tatty front lawn and an
overgrown back garden, and a garage that's full of boxes to unpack, but I never
have to put up with another scheduled inspection again and I never have to open
the front door to anyone I don't want to. It's liberating. It's nice.
It's not yet cosy, but I'm working on that. I have a functioning office,
bedroom, kitchen and bathroom and a mostly functioning living room: it like the
garage is full of boxes and assorted tat right now. I also have a spare/hobby
room, which contains my model rail stuff and a desk with a soldering iron, but
not the folding bed/seat one might expect in a spare/guest room. One thing at a
time - furniture shopping during a pandemic in times of Brexit is hard.
Hopefully, this year I'll get the rear windows on the house double-glazed
(currently we're single glazed in partially rotten wooden frames, so that needs
done fairly quickly) and grow "some" veggies in the back garden. Some minor
roofing repairs are also needed, but for the most part this year's primary goal
is to rebuild some savings after buying a house. After that? I've a laundry
list of improvements I'd like to make and some are more urgent or important
than others. Let's see what feels necessary when I'm in a position to do more
work on the place.
Other than housing? Living a vaguely normal life during a pandemic is hard.
Working from home during a pandemic is hard. I'm learning to cook new things,
and playing through my back catalogue of computer games, and thinking hard
about what the next steps are on my model railway, the D&D campaign I'm
running, and indeed this website. I'm probably going to implement HTTPS on GHE
fairly soon, meaning that it'll gain a padlock in the address bar, and I'll be
doing some back-end stuff to set up future development. Maybe visitors will
notice, maybe not, who can say?
It passes the time. Which is much of what we're all trying to do right now,
2020-09-14 - Moving again
Well, turns out I was right to be worried about the valuations agents that have
been round recently. It's been a few weeks, but I've been busy, starting with
instructing my letting agents in the basics of tenancy law. Initially, they sent
me a standard two-month Section-21 (no-fault repossession) form - unfortunately
for them, the Coronavirus Act of 2020 requires a minimum of three months' notice
for notices sent after the end of March. I pointed this out, and they replied
with a three-month Section-21 notice ... shortly after the Government had
extended the notice required in the Coronavirus Act (as amended) to six months.
It doesn't appear to have been their month. Still, when I pointed it out they
gave me a final six-month notice. Fair enough. I aim to be out well before then,
but I'll be damned if I'm going to accept an illegal notice after the trouble
they've given me here.
So, as a result I need a new place to live. Times, as they say, are tough. So
be it. I jumped into the local housing purchase market, on the basis that I was
planning to buy at some point and with six months of lee-way I might as well
give it a shot - can always fall back into another rental property if it doesn't
start working out in a couple of months, right? Long story short, it's a couple
of weeks later and my conveyancing solicitors are working hard on the contract
for a house, with expected completion some time in late October or November. So
that's a thing... I must admit, even with the Cambridge market's reputation for
fast moving I wasn't expecting it all to go by that quickly. The house I'm in the
process of buying was on the market for a grand total of one working day, and in
that time it received three offers.
...it's going to be so lovely not to be beholden to a landlord, at last. Sure,
if something breaks I have to fix it or get it fixed myself, rather than
complaining at the letting agent but also I can have a proper garden, I can
tweak the house to be exactly how I want it, and I don't have to worry about
people demanding access to tell me the place is a mess. I'm looking forward to it.
And I already know the first bit of work I'm going to do on the house (double
glazing, as it doesn't have any yet).
There'll be a guest-room / library, and a proper permanently-installed model
railway, and one day there'll be a gaming table and I can have friends round to
play D&D without having to worry about whether we'll all fit in the living room.
When the Covid-19 situation is less serious, of course - for now, the only way
people are visiting my house is by webcam.
Wish me luck.
2020-08-24 Oomed. We're Oomed, Cap'n
Three quarters of a year since my last post, whoops. So, there's been some problems
here - mostly technical. Let's see...
First, the VPS (virtual private server) that hosts glasshalfempty was being heavily
crawled by search engines (hey there Bing, how you doin'?), and having some trouble
handling the load. It turned out that there were two problems: the database back-end
(psyco-pg2) was erroring out, and the server was running out of available connections.
So, I turned off connection keepalive in apache, which isn't really ideal but prevents
this small, cheap VPS's RAM from filling up with paused connections when a web spider
is stomping all over it. Side note, I should write a robots.txt. Anyway... The
database is currently entirely turned off, because this stop-gap version of GHE is
rendering posts from markdown files in a directory - no database interaction at all
right now. Side note the second, I should fix that too. Still, GHE is now less prone
to crashing when Bing decides to come hammer it. Apache still falls over, but it
comes back after a few seconds and it no longer locks up the server altogether.
Next problem, bulkhead.glasshalfempty.co.uk, the firewall/router I was using here, is down.
It simply stopped transmitting packets through itself one day, and when I hooked up a
spare screen and keyboard its BIOS professed no knowledge of its own boot disk. I
suspect the SSD it was running from died for some reason - it's still under warranty
so I'll ask the seller to fix it. Side note the third, I should do that, too. It's
been replaced with an older, less capable unit in the mean time.
Next problem, I tore an actual chunk out of my foot overbalancing backwards on to a
sharp piece of metal in my kitchen. I did the first-aid and wound care thing like I'm
trained to (after a few seconds of panicking and bleeding on the kitchen floor, like a
real human being), and it's healing up pretty well. Don't need it right now.
Next problem ... well, the whole pandemic thing. Covid-19 means that I've been working
from home since March, and I've been getting kinda strange and bent out of shape from
the lack of exercise, scenery and human contact. I play D&D with some friends via video-conference every
couple of weeks and I see some people every so often, it's just. Weird. A bit like
being in jail (except that I can go out whenever I like and I have all my stuff).
Which brings us to what is I hope the last problem for now: landlords.
My landlord here is having the place revalued for mortgage purposes (apparently). This
is theoretically fine, but any interaction with my landlord puts me on edge these days.
I'm quite sure they're going to kick me out, which is probably unreasonable. Although...
I've had two valuation agents round to look at the place, and they were both perfectly
pleasant to me, asked a few questions, made some notes and left. Today I discovered
that they complained that the place was untidy and they couldn't get into some areas to
take a look. They didn't use their words. Ask, and it shall be given / I will move stuff
for you. I've been shifting stuff out of my storeroom and bedroom into my car tonight,
for about an hour: the car's currently undriveable because of all the stuff jammed into it,
but an inexperienced person can now probably get everywhere in my flat without stretching
or balancing. And I do mean everywhere, including to the back of the storeroom and behind
And people wonder why I hate landlords and letting agents so unreasonably so.
I'm actually not comfortable with the amount I dislike them. They're people, they're doing
a job for a paycheque and they're probably kind to animals and give up their seats to old
people on the bus, for the most part. All my interactions with them have the form "you're
not good enough", "pay us some more money" or "I'm going to mess with your life for no
clearly defined reason", though, and that has grated for a long time.
So I guess it's a good thing that I'm hoping to move into a place I own in the next six
months or so. Nowhere lined up yet, and a lot of ducks to align before I can do it, but I've
kicked the project back off now after a couple of years of licking my wounds from it all
falling down last time. I've a couple of mortgage brokers to try, and I'll be setting up
some saved searches real soon now.
Let's see what happens. It's basically the only option we have right now.
(no, I do not want to talk about Brexit)
2019-11-06 So it begins...
It was the day after Fireworks Night, and all through the house, not a creature
was stirring, not even !BANG! Oh. Oh dear.
Well, never mind that. It's past Halloween and past Fireworks Night, so I guess
Christmas is the next item on the calendar. Time for mince pies and mulled
wine and all that good stuff - myself, I stay away from it at least until
December starts but it's in the stores from October, so if it's your thing
knock yourself out I guess.
Unfortunately, it's also the time of year for "'Certain areas of the country'
hate our poppies" and "You can't say Merry Christmas any more" and other
shitty nonsense to do the rounds on social media. It's got to the point now
that the Royal British Legion (they of the poppies) have had to issue a
over the years saying that the former is total rubbish (it's also dog-whistle
racist to boot, as those 'certain areas' being talked around are never predominantly white
and middle class, but the RBL didn't address that one). The latter is a
slipperier customer, given that it's so vague and personal-point-of-view ranty
to begin with - I can easily put up an
to counter that opinion but it's not particularly well-sourced or
authoritative. Frankly, though, if your particular rant is well-travelled
enough to be included in a
and debunked there too, I feel I don't need to put too much time in.
These social media posts are "interesting" to me because they seem like examples of
in the wild. An idea with all of emotional resonance, a reason/desire for the host
to spread it and a coat of reasonability surrounding a hijack payload designed to
turn a reasonable person into an infection vector. It spreads through the networks
of modern social media, from host to host, and even those immune to its payload
start to question their own beliefs once it starts appearing everywhere. As an
engineer and a citizen of the Internet, I feel like I should understand how this
kind of thing works. I really don't, though, and it's increasingly clear to me
that some people do. Maybe if I'd put some time into the (at my school)
generally derided "easy soft classes" of sociology and media studies I'd be
better equipped to understand - I've certainly been schooled often enough by
friends who did study those subjects to recognise a gap in my mental armoury. I
think it's harder and harder as time goes on to justify putting all of your time
into learning the new computer languages and server technologies of the day without
putting some time into psychology and human sciences. Ad companies and other
groups who want to make people think particular ways (e.g. political parties) have
people that specialise in messaging and "spin" and making groups of people think
in a particular direction for a few weeks at a time. We, the people of the
Internet, need better defences.
That got dark and a little tinfoil-hatty, but well, it's hard not to in this
climate of lies in the news, lies on the net and apparent weakness or
unwillingness of legal justice. Over the next few weeks I'm going to give some
time and money to Full Fact,
who are an independent fact-checking charity, and if you have either spare I'd
encourage you to do so too. Their site is a good read and a good resource when
you spot another piece of poisonous nonsense floating by, and we need
organisations like them now more than ever, what with Brexit and the ongoing
Tory Omnishambles in the UK and the rise of Trump and the ruin of the
Republican party in the US.
Enough about the world. As a wise person somewhere on the internet said, "We
became a global species overnight, and it's giving us PTSD". We're set up for things happening in our local area and to our little community, and now that we see glimpses of a thousand other communities a day via Twitter and Facebook and so on, it's hard to keep up with all the changes and problems people are having, even though the rate hasn't changed - we just see more of them. The world is full
of darkness but little lights still burn in our hearts, and it's wise to cherish
them if you can. Happy Equinox, welcome the dark of the year and look for the
rising of the spring. Keep safe, so far as you can, and guard the backs of
your friends and neighbours through the long nights.
2019-01-25 New Firewall
I've just finished installing a new firewall machine for my home network, and
I thought I'd write about it here in the interest of having something to write
about, and because it's useful to talk about how things went so other people
can learn from your experience. So here goes.
The firewall's hardware is an NA204 network server appliance from
Mini-ITX.com, with a Seagate Barracuda 500GB hard
disk. I had the Mini-ITX store build it, which means it comes with a 3-year
warranty - can't argue with that. The NA204 is based on the Jetway JNF9HG-2930
motherboard, which has a quad-core Intel N2930 Celeron processor clocked at
1.83GHz, 4GB of RAM and integrated Intel graphics. In addition to all that,
this unit has a daughterboard with four gigabit Ethernet ports, which makes
it ideal for jobs like this.
Softwarewise, we're running pfsense 2.4.4
which is based on FreeBSD 11.2. It's
a UNIX, which means I can get into its guts if I need to (though I'm not as
familiar with it as I am with Linux). That became relevant during the
install, as I'll mention later.
The installation process was pretty standard, at first. I burned the pfsense
installer to CD from an ISO image (after checking the checksum), slipped the
disc into a USB optical drive and plugged it into the front panel of the NA204,
along with a monitor and keyboard. The UEFI on the motherboard picked up the
optical drive without any problems, and gave me an option to boot from it (press
F7 during startup to pop up a boot menu), and the installer ... choked. It
gave me the a nice ascii-art welcome screen and started scrawling bootup
information on the screen, and then just stopped.
It turns out that on certain graphics cards, the FreeBSD 11.2 installer is known
to fail to correctly discover the properties of the screen, and it tries to set
the resolution to a size the GPU can't support, and the GPU gives up and dies.
Thankfully, it's an easy problem to fix. As
The Geek Pub's "pfsense-hangs-at-booting"
states, there's a kernel parameter (kern.vty="sc") that will set the resolution
and disable discovery, so I passed that to the installer kernel at boot time
and then dropped the relevant parameter into the bootloader config
(/boot/loader.conf) with vi so that it would always apply in the future.
At that point, the install proceeded to completion and it was on to
configuration, firstly of the interfaces. I thought this was pretty neat. To
tell the machine that a particular interface is the WAN port, for example, you unplug all network cables from the machine and then select "WAN port", "auto" and
plug a network cable that has a device of some kind on the other end. pfsense
will then notice the Link Up event from that cable being plugged in, and
associate the port it came from with that interface. And so on for the other
ports (LAN and WAN are required for obvious reasons, and I assigned the other
two interfaces to WIFI and DMZ for future use). Very neat. A DHCP server came
up automatically on the LAN port, which had set itself to 192.168.1.1 by default.
Unfortunately, my ISP's modem's wifi router was handing out .1.x addresses.
I'd disconnected from the wifi but not disabled the wifi adaptor. This meant
that my wifi card had 192.168.1.1, and was hanging on to it in case it
reconnected. There then followed
a tiresome dance of my plugging a cable between my laptop and the firewall and
trying to go to the firewall's webconfig page to finish setting it up, and my
laptop saying "...there's nothing there." Of course, I pinged it to see if the
web browser was lying, and I got a response! It took a depressingly long time
to work out that the response I was getting was from my own wifi card. Then I
reset the firewall's LAN port and DHCP to 192.168.2.x and everything started
So there you have it: the story of my pfsense install. I'm liking pfsense,
because it's highly configurable and exposes a lot of options. That same option
profusion makes it... probably not ideal for inexperienced users - I've been
maintaining house-LANs for years and I don't understand some of the options yet.
But, if you're looking for a tough, reliable, configurable firewall I'd
recommend pfsense. And if you want a machine to run it on, the NA204 is really
2018-10-22 Living in a box
OK, new flat, new start - in theory, at least. It's a month and two days
since I moved in here ("here" being Milton, a couple of miles north of where
I used to be), and everything is still everywhere but things are starting to
get sorted out. The kitchen is usable if I'm willing to shift stuff about to
make room on the worksurfaces, and I can walk into and out of all the rooms
and more or less use them for their assigned purpose. Still need to assemble
the media centre and get the packed clothes off the sofa, but it's not too
bad for somewhere I live.
This is not forever. It's a small flat with a cheap rent and slightly
questionable facilities, on a 12-month contract with the option to extend at
expiry. Long enough to get my feet under me, have a damned good sort-out and
get rid of some stuff I don't need. Long enough to get my head back together
and find somewhere to live longer term.
In other news, hey, glasshalfempty's up again. The new place struggles to
manage 1Mbps, so I'm not hosting the site in my living room any more - we're
coming to you live from a linode in Frankfurt and I upgraded the site to use
Python3 while I was at it. Easier to upgrade now, while there's not much to
2018-07-20 Life in boxes, 2018 edition
An out-of-band update here, to note the following: I've just received two
months' notice on my flat, meaning that the landlord wants to take possession
of it no later than the 20th of September. This kind of thing is why I hate
renting - the lack of control, the lack of warning, the difficulty of planning
anything when you don't know when someone you've never met is going to pull the
rug out from under your feet. It sucks. It happens. Gotta get over it.
So, I've rented a storage unit and ordered in some flatpacked moving boxes, and
I'm going to start looking for another rental in the next few days. I was
planning on trying to buy a place of my own over the coming winter, but that's
out the airlock now: there's no real chance of exchanging, completing and
moving in two months and once I'm moved to a new place I should probably stay
there for at least six months/a year (since that'll be the initial rental
contract). The move, at least, gives me an opportunity to declutter and
reorganise in a way that's difficult when everything is in its familiar place
- I'm aiming to shed up to 20% of my equipment volume, which should make the
second move substantially easier when the time comes.
Let's see what happens. I'm going to a LARP event next weekend and a
convention the weekend after, both booked months ago, so I'll survey the market
and move stuff to storage until after the con, then start looking in earnest.
2018-02-28 Technical Debt
It's been a very long time.
Some of the wait is because I kept being busy, having better, more urgent or somehow more distracting things to do. Some of it is because the feedback loop through the old site is broken (along with the old site), so I don't remember that it's important or interesting to some people. Some of it is because the hardware upgrade stalled amidst a series of sick hard disks a couple of years ago, and I haven't gotten back to it. Doesn't really matter.
I've been drowning in details for the last few years, I think, and hadn't realised until very recently. I don't like putting things online that aren't the best I have: if people are going to have the opportunity to critique something I've made, I'd like it to be as good as I can make it. Less than perfection, say some parts of my mind, is waste. There are at least three versions of New GHE that will never see the light of day, because I abandoned them because they were wrong or incomplete or poorly designed.
I'm going to try not to care about that any more. This is an experiment, but fundamentally I'm an information designer/software engineer/technical author/whatever. I trained as an embedded software developer, and a computer and AI scientist. I never trained as a web designer. I've never claimed that my websites are the best they can be, and chances are that this one won't be. It'll be as secure as I can make it, because that sort of thing matters, but it won't have lots of features or use up-to-the-minute CSS or be perfectly standards compliant at all times.
Here's the very beginning of Glasshalfempty 3.0, or 3.0.0-alpha1, I think we'd call it at work - the first alpha version of 3.0. It's incomplete and probably buggy, there isn't even a blog here yet, just a framework and some HTML and CSS. I'll bring more things online in time.
But I got some queries from old friends recently that made me wonder why it wasn't online, and I found I had no good answer, only excuses. So here we are. Join me round the campfire, I guess in companiable silence for now. Blogging, commenting, all that fun stuff, is in the future, so silence is the only option you have anyway.