Do you think it’s going terrain today?

Last time I talked about the new game project I’m planning to start. I was feeling quite enthusiastic about it and I had a bit of time while I was away in the caravan, so I decided it was time to actually start doing stuff on it!

I won’t say too much about the actual concept of the game yet, and in fact it might still change a bit before it’s finished, but it’s going to be set in a 3D town that you can wander round. So one of the first things to do will be to get the bare bones of a game engine running that can display the 3D world using WebGL, and also get an editing pipeline working so that I can create and edit the environment.

For most of the 3D editing I’m planning to use Blender. It’s free, it’s very powerful, it has a great community, it runs on almost everything and I already know how to use it, so what’s not to like? At some point I might want a more customised editing experience, maybe either writing a plugin or two for Blender or adding an editing mode to the game engine itself, but for the moment vanilla Blender will do.

The first element of the environment that I’m going to focus on is the actual ground, since it’s (literally) the foundation on which everything else will be built. I could model the ground as a standard 3D mesh, but it would be more efficient to treat it as a special case: it’s basically a single plane but with variations in height and texture across it, so we can store it as a 2D array of height values, plus another 2D array of material indices. My plan for the ground was as follows:

  • Add the ground as a “grid” object in Blender, and model the height variations using Blender’s extensive array of modelling tools
  • Export the geometry in OBJ format (a nice simple format for doing further conversions on)
  • Write a converter program in C++ to convert the OBJ file into a compact binary format containing the height values for each point and the material values for each square
  • Create a single texture image containing tiled textures for all the materials used
  • Write JavaScript code to parse the binary file and actually display the terrain!

(We could load and parse the OBJ file directly in JavaScript, but this would be significantly larger, and size matters when working in a browser environment, because every data file has to be downloaded over the internet when running the game).

Editing terrain in Blender

The terrain work went reasonably smoothly once I got started. Editing the heights as a Blender grid worked well, with the proportional editing tool being very useful. Writing the C++ converter tool didn’t take too long, and the binary terrain files it creates are about 10 times smaller than the original OBJ files exported from Blender, so it’s well worth doing the conversion.

Terrain rendered in WebGL

Writing a WebGL renderer for the terrain was a bit more involved. The main problem I ran into was an unexpected one: I could see dark lines appearing along the edges of the terrain “tiles” when they should have joined up with each other seamlessly. I eventually traced this to my decision to store all of the textures for the ground in a single image. This works fine for the most part, but I hadn’t foreseen that it would cause problems with the filtering used by WebGL to make the textures look smoother at different scales. This causes a slight blurring effect and when you have multiple textures side-by-side in a single image, it causes their edges to “bleed” into each other slightly.

I solved this by putting 4 copies of each texture into the image, in a 2×2 layout, and mapping the centre section onto the terrain, so that the blurred edges are never used. This reduces the amount of texture data that can be stored in a single image, but it’s still better than storing each texture in a separate image and having to waste time switching between them when rendering.

Now that it’s done I’m reasonably happy with how it looks. I was a bit worried that the height differences might distort the textures too much, but they actually don’t seem to. I do plan to add some additional texture images for variety, and it should also look a lot better once some of the other elements of the scene (buildings, roads, vegetation, etc.) are in place.

Another shot of the rendered terrain

The WebGL renderer is still in its very early stages; right now all it can do is render a single 3D terrain object with a plain sky blue background, illuminated by a single directional light source, and allow me to move the camera around for testing. Obviously it’ll need a lot of other stuff added to enable it to show everything else required for the game, as well as to make things look a bit nicer and run a bit faster – but we’ll get onto that next time.

(Incidentally, the texture images are all from textures.com, a great resource for anyone doing anything 3D related. You can get loads of textures of all sorts from there and they’re free to use for most purposes).

New game project

I’ve decided it’s time to start a new game project. I haven’t done one (well, not a proper one) in a few years but things now seem to be nudging me back in that direction.

A screenshot from the first full game I created. Yes, it’s a fan-made Dizzy game for the Spectrum.

Since the Union Canal Unlocked project finished a year or so ago, I’ve been working on a 3D project in my spare time, but I’ve become frustrated that it’s not really going anywhere, at least not very fast. I had very ambitious goals for it and maybe I’m just starting to realise how long it would realistically take for me to achieve them. I may go back to it at some point, but right now I’m getting tired of pouring time and effort into code that may not actually produce any interesting output for several months or even years.

At the same time, a few things have happened that reminded me how much I used to enjoy making games. I read through an old diary from the time when I was making my first one (well, the first one I actually finished), back in 1994, which seems impossibly long ago now. It brought back the feeling of achievement and progress I used to get from making another screen or another graphic. I’ve also recently played through a game that a friend made a few years ago, and another friend started studying game design just a few weeks ago. It feels like the right time to go back to it.

My second game, also for the Spectrum. This was going to have a ridiculously ambitious 56 levels but I only got around to making 6

Of course, it’s going to be challenging to find the time, especially with our new arrival in the household! But in a way that just makes me more determined to use my scarce time more effectively, on something that I’ll actually find rewarding, rather than trying to force myself to work on something I’ve lost interest in.  Even if I only manage to do a little bit each week, I’ll get there eventually.

I have a rough plan for the new game, which will no doubt get refined and altered a lot once I get started on it. It’s going to be my first 3D game (except for a little joke one I made late last year), something I’ve shied away from in the past mainly due to the additional complexity of 3D asset creation, but after actually completing some 3D models in the last few years, I feel a bit more confident that I can do it, and I think it will fit my concept better.

My third game, this time a historical Scottish game for DOS PCs. I only finished one level of this one

I’ve decided to write it to run in a browser, using JavaScript and WebGL. This will have its pros and cons. On the plus side, it’s technology I already have quite a bit of experience of; the game will automatically work on pretty much every platform without much extra effort on my part; people won’t have to install it before playing it; and not using a ready-made game engine will give me freedom to do everything exactly the way I want (plus I find tinkering with the low level parts of the code quite fun!). On the minus side it likely won’t run as fast as it would have as a “native” app, though I don’t see this being a huge problem in practice as what I have in mind shouldn’t be too demanding; and building the engine from scratch will take quite a lot of work.

To begin with I’m just going to target computers rather than tablets and phones. The control system I have in mind will work with keyboards and mice but not so well with touchscreens. At some point later on I might add a touch control scheme since most of the rest of the code should work fine on touch devices.

“Return of the Etirites”, probably the best game I ever made. It’s basically a rip-off of Mystic Quest on the Gameboy

I’m intending to write a series of posts on here to chronicle my progress. Of course, it’s always a bit dangerous to commit to something like this publicly, but that’s part of my reason for wanting to do it… I hope it will encourage me to actually do some stuff and not just think about it! And it will give me something nice and constructive to write blog posts about, instead of Brexit 😉 . It might take me a while to get the first post up, because as anyone who’s used WebGL (or done any OpenGL coding without using the fixed pipeline) knows, it takes quite a lot of code to even display anything at all. But once the basics are done it should be possible to build on it incrementally and progress a bit more rapidly.

Wish me luck!

 

Brexit gets even more insane

The developing Brexit process has reached the point now where it’s one of the most extraordinary things I’ve ever seen. If it wasn’t for the fact that I’m increasingly frightened for the future of the country I live in, it would be a great thing to settle down and watch with a big bowl of popcorn.

I honestly never thought I would see such monumental, terrifying incompetence from a British government. Sure, I haven’t been the biggest fan of any of the Westminster administrations of the last few decades, I didn’t vote for any of them and I’ve disagreed with all of them on plenty of things, but up until a couple of years ago I would have grudgingly admitted that they’d kept the country functioning and reasonably stable.

Not anymore, it would seem. A few months ago when I inflicted my last Brexit blog post on the world, I still believed (as I said in that post) that a catastrophic “no deal” Brexit probably wouldn’t happen; that sanity would prevail in the end and some sort of deal would be done, even if it was just the bare minimum to prevent disruption on a huge scale. But my hopes of that happening have been fading ever since, and it’s getting hard to see how the “no deal” scenario can be avoided now.

On the face of it it seems unbelievable that a mainstream political party could be so irresponsible – just imagine how the tabloids would react if a Labour or SNP government were pressing ahead with a policy that had a significant chance of causing food and medicine shortages! But Theresa May seems determined not to negotiate in any meaningful way with the EU. Last week, after a bruising humiliation in Salzburg, she announced that it was either going to be her Chequers deal or no deal. And since the EU had already rejected Chequers, and neither side appears willing to give any ground at all, that can only mean no deal.

What’s most striking to me is how unnecessary this all is. Even if you take the view that the referendum result is sacred and can’t under any circumstances be challenged (which I don’t personally agree with, primarily due to the lying and overspending by the Leave side), there was no need for things to become such a mess. The only reason we’ve ended up here is because before the negotiations even got going, Theresa May set out a number of completely unnecessary “red lines” that effectively ruled out any of the deals the EU might have been willing to offer us, and has refused to compromise an inch on them since. She then proceeded to trigger Article 50, starting the clock counting down before even getting internal agreement on what sort of deal we should be trying for, and wasted a large chunk of the very limited negotiating time by calling an unnecessary general election (which of course backfired spectacularly when she lost her majority).

A lot of people are blaming the EU for not giving us what we want, but that’s not a view I have any sympathy with. Firstly, they’re not throwing us out, we chose to leave – Britain ultimately set this chain of events in motion itself. Secondly, it was widely predicted before the vote that the EU would hold all the cards in the negotiation and wouldn’t compromise on its “four freedoms”, so anyone whose post-Brexit plans relied on the EU rolling over and giving us everything we wanted was pretty stupid. Thirdly, the people who are now moaning about the EU being inflexible and “punishing” us are by and large the same people who would have hit the roof if the EU had bent the rules for a non-member (let’s say Turkey, for example) while we were still a member, so I find it hard to take anything they say seriously.

And fourthly, I don’t actually think the EU have behaved badly towards us under the circumstances. Despite all the antagonism from certain British politicians, they’ve offered a choice of future relationships that they would accept, giving us at least as good terms as any other “third country” enjoys. That doesn’t seem unreasonable to me.

It’s been depressing, but at the same time strangely impressive, to see that every time someone has tried to offer a possible escape route from the impending disaster, our politicians quickly swoop in to block off that possibility and make sure there truly is no way out. It’s not even confined to the Tories: for example, John McDonnell recently stipulated that any “People’s Vote” on the Brexit deal should not include an option to remain in the EU, thus completely nullifying any point of holding such a vote in the first place.

It’s easy just to blame the “extremists” on both sides of the house for all this, but I’ve also been less than impressed by how the supposed “moderates” have conducted themselves lately. We’re constantly told that most MPs supported Remain and most of them want what’s best for the country… but where are they, and what are they doing to try to stop the no deal disaster? It seems as if, like much of the media, they are terrified of criticising Brexit in case they alienate people who voted Leave. But by not speaking out in stronger terms, they’re lending a sort of legitimacy to the process – people might reasonably think, “Well, if the majority of MPs are going along with this, and if the BBC portrays it as being just as legitimate as any other option, it can’t be that bad, can it? Those Remainers must just be scaremongering”.

Maybe most of all, though, I wonder what the hell the drivers of Brexit are hoping to get out of this at the end. I just can’t see a scenario where it ends well for them. If “no deal” does happen, and if it’s even half as bad as most of the warnings say it’s going to be, their careers are surely finished. Maybe they’re relying on being able to blame it all on the EU, but I’m not convinced that will work – for a while polls have been showing that most people already think the government is doing a bad job of handling Brexit, and that percentage is only going to increase if the country gets plunged into chaos at the end of March. Governments tend to get blamed for the bad stuff that happens on their watch even when it isn’t really their fault (e.g. New Labour and the 2008 financial crisis), and in this case it undeniably IS their fault.

Or maybe they don’t care about their own popularity. One theory is that they just want out of the EU so that they can implement their dream of a Britain closely aligned with the USA, with regulations slashed and the NHS sold off to American healthcare providers. I wouldn’t put it past them, but I’m still not convinced it’s going to work – unless they plan to let things get so bad that they actually suspend democracy, there’s going to be an election at some point, and the party that brought on the chaos will surely be annihilated. Will they have enough time to get their plan past the point of no return before that happens? Would they even have enough support in the current parliament for it? Who knows.

Another theory is that no-one has a clue what to do because no-one (including the leading Leave campaigners) ever expected Leave to win, so they’re just making it up as they go along right now. After the shambles of the last few weeks, this seems by far the most likely explanation.

My take on “Codes of Conduct” for software projects

The news that the Linux kernel development project has adopted a new code of conduct has prompted a lot of comment. As someone who’s been a software developer for all my working life and who’s written about vaguely related stuff before, I thought I would stick my oar in as well, at least to address what I think are some widespread misconceptions.

First off, I’ll say a bit about myself and my own experience. I’ve been a software professional for 16 years. During that time I seem to have impressed a lot of the people I’ve worked with. I have more than once “rescued” projects that were previously thought to be doomed and turned them into success stories. Collaborators who have worked with me in the past have frequently requested to work with me specifically when they approach my organisation for further consultancy. Last year I was promoted to a fairly senior technical position, and also last year I did my first paid freelance project, receiving glowing praise from the client for the way I handled it.

I’m not saying this to brag. I’m normally a pretty modest person and believe me, talking about myself in those terms doesn’t come easily. I’m saying it because it’s going to be relevant to what I say next.

I’m also, by pretty much any definition, a snowflake. (That’s the term these days, isn’t it?). I don’t like confrontation and I tend to avoid it as much as I can. I find it hurtful being on the receiving end of harsh words or blunt criticism and I also tend to avoid situations where this is likely to happen. When it does happen I find I need to retreat and lick my wounds for a while before I feel ready to face the world again.

I didn’t choose to be this way, and if I’d been given the choice I wouldn’t have chosen it, because to be honest it’s pretty damned inconvenient. But it’s the way I am, the way I’ve always been for as long as I can remember. (Again, this may not seem relevant yet, but trust me, I’m bringing it up for a reason).

It’s maybe not surprising, then, that I’m broadly supportive of any initiative that tries to make software development a friendlier place. I don’t follow Linux kernel development closely enough to have a strong opinion on it, but some open source communities certainly have acquired reputations for being quite harsh and unpleasant working environments. This probably is a factor in my choosing not to contribute to them – although I have contributed a bit to open source in the past, these days if I want to code for fun I prefer to just tinker with my own solo projects and avoid all that potential drama and discomfort.

Not everyone agrees, of course, and sites like Slashdot are awash with comments about how this is a disaster, how it’s going to destroy software quality, and how it’s the beginning of the end of Linux now that the Social Justice Warriors have started to take over. I’m not going to attempt to address every point made, but I would like to pick up on a few common themes that jumped out at me from reading people’s reactions.

Fear of harsh criticism makes people deliver

The main justification put forward for keeping the status quo seems to be that people will up their game and produce better code if they’re afraid of being flamed or ridiculed. I don’t believe this works in practice, at least not for everyone.

I remember years ago when I was learning to drive, my first instructor started acting increasingly like a bully. When I made mistakes (as everyone does when they’re learning something new), he would shout at me, swear at me and taunt me by bringing up mistakes I’d made weeks before. But far from spurring me on to improve my driving, this just wound me up and made me stressed and flustered, causing me to make even more mistakes, in turn causing him to throw more abuse my way, and so on. It got so bad that I started to dread my driving lessons and when I was out in the car with him I lost all confidence and became terrified of making even the tiniest mistake.

After a few weeks I got fed up with this so I phoned the driving school and told them I wanted a different instructor, someone who would build up my confidence rather than destroy it. They assigned me to a great instructor, an experienced and patient older man who I got on very well with, and the contrast was dramatic. My driving improved straight away and I started to actually look forward to my lessons. Within a few weeks I was ready to take my test, which I passed on the first attempt. I always remember this experience when I hear someone express the opinion that abuse will make people perform better.

Of course, everyone responds differently to these situations. I knew someone who said he was glad his driving instructor shouted at him because, after all, it was potentially a life-or-death situation and this would help him to take it seriously. So I’m not saying everyone’s experience will be the same as mine, just pointing out that not everyone responds positively under that sort of pressure.

Furthermore, someone who goes to pieces in the face of abuse might still be perfectly capable in other circumstances. I was able to drive just fine once I got away from that first instructor, and since then I’ve driven all over the country, driven minibuses and towed caravans without incident.

People will use the code of conduct to blow grievances out of all proportion and seek attention

Personally, as someone who hates conflict and hates being the centre of attention, I can’t imagine anything I’d be less likely to do than go out of my way to draw attention and publicity to myself. If anything I think I’d more likely be far too reticent about seeking help if someone was violating a code of conduct, and I imagine it would be the same for most of the people who would actually benefit the most from the code.

That’s not to say everyone would be the same, of course. There might well be a vocal minority who would act in this way, but that shouldn’t stop us from trying to improve things for people who genuinely do need it. In any case, whether a given behaviour really constitutes gratuitous “attention seeking” or whether it’s out of proportion is very much a subjective judgement.

Emotionally fragile people have nothing to offer anyway

I hope my description above of my own working life has shown that we do have something to offer. I think this belief is due to confusion between “people who are good at software development” and “people who are good at being loud and obnoxious”. If you create a working environment so toxic that 70% of people can’t cope with it and leave, that doesn’t mean you’ve retained the 30% best developers, it means you’ve retained the 30% of people best equipped to thrive in an abusive environment. I see no reason to think there’s going to be much correlation there.

I think a similar argument can be made about the contentious “safe spaces” I’ve written about before. Many of their opponents argue that it’s healthier to be exposed to a diverse range of different points of view rather than living in a bubble. I completely agree, but I disagree about how best to achieve that. A complete free-for-all isn’t necessarily a reliable way to foster open debate – you can easily end up with a situation where the loudest, most abrasive people come to dominate and everyone else is reluctant to express a contrary opinion for fear of being abused and ridiculed. If you genuinely want (and I’m not convinced many of the detractors actually do want this) to hear as wide range a of opinions as possible, you need an environment where everyone feels comfortable expressing themselves.

Maybe if there were unlimited good software developers in the world you could make a case for only working with the emotionally hardy ones and avoiding the possible difficulties of dealing with us “snowflakes”. But there aren’t. In most places developers are highly in demand, so it makes no sense to dismiss people who might actually be able to make a valuable contribution.

It’s not up to us to accommodate your emotional frailties, it’s up to you to get over them

Of all the views expressed in these discussions, I think this is the one that irks me the most. It implies that anyone who reacts badly to harsh words and insults could easily “get over it” if they chose to do so, and that just doesn’t tally with my experience at all.

I’ve spent many decades trying to “get over” the problems I’ve had. I’ve spent a five figure sum of money on therapy. I’ve read more self help books than I care to remember and filled notebooks cover-to-cover with the exercises from them. I’ve forced myself into numerous situations that terrified me in the hope that they would be good for me. I’ve practised mindfulness, attended support groups, taken medication, taken up exercise, talked things over with friends and family, spent long hours in painful introspection. You name it, I’ve probably tried it.

And you know what? I’m a lot better than I was. At the start of the process I could barely even hold a conversation with someone unless I knew them well, and I certainly wouldn’t have been able to hold down a job. Now I function reasonably well most days, I do pretty well at work and I have a decent social life as well. But despite all this progress, I’m still pretty emotionally sensitive, and I still don’t cope well with insults and intimidation. Maybe I’ll get even better in the future (I certainly hope to and intend to), but I suspect I will always find that kind of situation unpleasant enough to want to avoid it when possible, even if I no longer find it as debilitating as I once did.

So it makes me pretty angry when people who don’t even know me assume that, because I still get upset more easily than most, I obviously just haven’t tried hard enough. It’s noticable that these people almost never mention how you should “get over it”. Some of them seem to just assume that if you keep putting yourself in the situation that upsets you then you’ll eventually adjust and be OK with it, but this has never worked particularly well for me – as with the driving lessons example I gave above, it typically just leads to me feeling more stressed and harassed.

Basically, I think this one is an example of the just-world fallacy. It’s uncomfortable to realise that some people might struggle with certain situations through no fault of their own and that there might not be any easy solution open to them. It raises all kinds of awkward questions about whether we should be making adjustments to help them and so on, not to mention the fear of “maybe this could happen to me too some day”. It’s much neater to pretend that those people must have done something to deserve their problems, or at the very least that they must be “choosing” to forego a perfectly good solution.

Whilst I do have a tiny bit of sympathy for some of the objections to the way things are going (I wouldn’t personally relish software development becoming yet another field where social skills and confidence are valued over actual technical ability, for example), overall I find it really hard to take most of the objectors seriously. They moan and whinge about what a disaster it would be to have to treat others with basic civility, then go on to accuse the other side of being over-sensitive and blowing things out of proportion. They heap disdain on people for having problems they never asked for and almost certainly don’t want, but fail to put forward any useful suggestions on how to deal with those problems.

My Bucket List

I’ve been going through a rough patch again lately and I feel like I could easily end up losing sight of what’s important, as well as forgetting the progress I’ve already made. So, inspired by seeing a friend’s bucket list on Facebook, I decided to make one of my own.

I’ve included a lot of stuff that I have already achieved, but that’s deliberate, to remind me of how good the last few years have actually been and what I can do if I put my mind to it. Conversely the stuff that’s not yet ticked off is a little sparse right now, but I’m sure more stuff will come to mind to flesh it out with now that I’ve got this list.

So, without further ado, on with the things! They’re not in any particular order, I couldn’t be bothered sorting them by importance or anything, and in any case my idea of their relative importance probably changes with my mood. I also haven’t set myself an end date of a particular significant birthday like some people do; my next “significant” birthday is uncomfortably close already and so wouldn’t give me much time to make progress.

First the ones I’ve already achieved:

Get marrieddone 05/2016

Buy housedone 05/2014
Take part in Beltane – done 04/2014, and every year since

All painted and costumed up and ready to go for my first time as a Torchbearer

Release a smartphone app – done 2014
Learn 3D modelling – done 2016
Learn to code in JavaScript – done 2015
See my favourite bands live – done 06/2016
Do a paid freelance project – done 2017
Create a blog – done 09/2011
Get promoted at work – done 07/2017
Go on all the big rides at Alton Towers – done 09/2015

I know it’s blurred, but that gives you a better impression of what it actually looks like.

Go hostelling around Europedone 2012-2017
Go skinny dipping – done 08/2014
Run 5kmdone 09/2015
Run 10km – done 09/2016
Explore Scotland Street Tunnel – done 07/2014
Old toilet blocks in Scotland Street Tunnel

Explore Botanic Gardens Station – done 11/2014
Explore East Fortune Hospital – done 08/2013
DSC_3600

Explore Barnton Quarry bunker – done 02/2005 and 06/2014
Visit a disused tube station – done 12/2016
Learn to play the complete Moonlight Sonata – done 1997
Learn to play Chopin’s “Black Keys” Etude – done 2013
Learn to play Chopin’s Fantasie Impromptu – done 2013
Learn to play Bach’s Fugue no. 20 – done 2013
Learn to play Bach’s Toccata and Fugue – done 2015
Visit Croatia – done 05/2013
Visit Tropical Islands Resort – done 07/2017
Handle a large house spider – done 11/2016

Now the ones still to come:

Have a child – due 09/2018!
Climb the main hills of the Pentlands
Visit Italy
Go to a ghost hunting night
Play a pipe organ
Learn to speak German
Finish writing my 3D software
Make some 3D environments with my software
Get weight down to 80kg (and keep it there)
Learn Chilly Gonzales “Solo Piano II”
Write a book

Should keep me busy for a while 🙂 .

Brexit: two wasted years

In a couple of weeks time we head off on our biennial midsummer trip to Sweden. That means it’s nearly two years since the last one, which also means it must be nearly two years since the Brexit vote, since I vividly remember flying out there the morning after the referendum. To avoid getting too depressed about the way things are going I’ve tried to avoid thinking about it too much this year, but that has mostly been a total failure, so I’m going to share the pain by ranting about it here instead.

To begin with I was (as you can probably tell from my earlier writing on the subject) disappointed that Leave won, and I thought we would be worse off outside the EU, but I actually wasn’t expecting it to be a total disaster. I thought that the government would just get on with the painstaking process of negotiating an agreement with the rest of Europe, compromising where necessary, and at the end of it day-to-day life would stay much the same for most people in the UK, just with a slightly poorer economy and maybe more annoyances for those who wanted to live and work abroad.

How wrong I was. Nearly two years on, I’m now seriously worried that it is shaping up to be a total, life-destroying disaster after all.

Earlier this week, a leaked report suggested that the UK would start to run out of food, medicine and fuel within days of a “no deal” Brexit. Predictably this has been dismissed as scaremongering, but it’s worth pointing out two facts about it: firstly, it originated from within the government, not from the EU or from some pro-Remain think tank; and secondly, this wasn’t even the worst of the possible scenarios they studied, it was the middle one of the three!

Brexiters in general seem unconcerned by this. It’s unthinkable that food shortages could ever happen in a modern western democracy, they say. And they’re absolutely right. It is (or at least was until now) unthinkable, but the point they’re missing is that it’s not unthinkable because of some innate law of the universe that guarantees a ready supply of all life’s essentials for rich countries no matter what happens. It’s unthinkable because a huge amount of effort has gone into building mind-bogglingly complicated legal frameworks and agreements that allow these things to flow as freely as possible, frameworks that now work so well that most of us barely ever stop to think about where the necessities we rely on actually come from. In Britain’s case many of those frameworks are now deeply integrated with the EU, and whether you like that or not, that is where we are right now. And the Brexiters have voted to tear those frameworks apart without, apparently, having any idea what to replace them with.

Don’t get me wrong. I’m not saying (as some people do) that Brexit is inherently impossible, or that every possible version of it would be utterly catastrophic. There are two ways Britain could have left the EU without destroying itself in the process. The first would have been to seek a Norway-type deal, still fairly closely integrated with the EU without actually being a full member. This would have its disadvantages in that we would have to follow a lot of EU rules without having much say over them, but it would have been by far the least disruptive option and would have avoided scenarios like the ones the leaked report warns of.

The second option would have been to make a more complete withdrawal from the EU’s institutions, but to do it gradually enough that there was time for the UK to develop its own alternatives (for example, to build the necessary customs infrastructure and associated legal frameworks). Most experts (yeah, yeah, I know they’re not popular in Brexit Britain) seem to think it would take at least 5 years, if not considerably longer, to do this in a way that would allow a smooth transition to life outside the EU.

Unfortunately, the government has repeatedly ruled out the first option due to its various “red lines” (on trade deals, freedom of movement, ECJ jurisdiction, you name it), and we don’t have the 5+ years it would take to implement the second option properly. We have 9 months. Because as soon as the government triggered Article 50 in March last year, they started the clock counting down to March 2019, at which time we’ll be out, deal or no deal.

This two year period would have been far too short to make all the preparations required for the clean break with the EU that the government claims to want even if they hadn’t already pissed away more than half of it fighting like rats in a sack and achieving the square root of bugger all (which they now have). In my view it was criminally irresponsible of them to trigger Article 50 without first at least laying the groundwork for the extra agencies and institutions that a UK outside the EU was inevitably going to need, and even more so to trigger it without even having a coherent and realistic plan for what to do next.

It’s difficult now to see any way out of the corner they’ve boxed themselves into. If we end up leaving the EU without a deal there will be chaos, that much is obvious. Even if we negotiated a free trade deal similar to Canada’s, for example, we’ll still be screwed come March next year, because 9 months is just nowhere near enough time to replace all of the EU institutions we’d be leaving with new UK versions. It simply can’t be done. It seems increasingly obvious that the only way to avoid disaster now is to negotiate to stay in the single market and customs union, either temporarily or permanently, but the government still refuses (publicly at least) to recognise this.

It makes me wonder what on earth they are trying to achieve and what they think is going to happen. Are they just genuinely shambollic and incompetent, lurching from one crisis to the next, knowing on some level that they’re doomed but forever too distracted grappling with this week’s immediate problems to fully acknowledge it? Are they so deluded that they really think the rest of the EU is going to cave in and give them everything they want, despite all evidence to the contrary, not even bothering to prepare for the possibility that they might not get it? Or do they think that the chaotic aftermath of a no-deal Brexit will enable them to get away with policies that no-one would ordinarily vote for, privatising the NHS and slashing the welfare state and human rights protections to the bone, relying on the people rallying round to uncomplainingly make sacrifices in a time of national crisis?

Or is the whole thing just a bluff? Are they going to bring the country right to the very brink, close enough that no-one can fail to see what a terrible idea Brexit really is, so that when they cancel it at the last minute most people will quietly breathe a sigh of relief rather than getting angry about the referendum result not being respected?

Much as I would love that last explanation to be true, I think the truth is more likely some mixture of the first three. If so, I think the strategy of using Brexit to enable extreme right wing policies is a very risky one. Whatever the reason, if we end up having (entirely avoidable) food and medicine shortages on the Tories’ watch, they’re surely finished. Their reputation for being the responsible, prudent, safe option (not that it was ever deserved to begin with of course) would be in tatters and whoever stood against them in the next election would probably win a landslide victory.

They may think that a compliant press and frequent rousing calls for the country to patriotically unite behind them would help them weather that storm, but I wouldn’t be so sure. Brexit isn’t some unavoidable natural disaster or an attack from outside, it’s completely self-inflicted and unnecessary. I can’t see many Remainers in 2019 thinking “Well, I didn’t want Brexit in the first place, but now that the Tories have made a monumental, unprecedented balls-up of the whole thing and brought my country to its knees, I’d better throw my support behind them”. I can tell you right now, I certainly won’t be.

Oh well. It’s an interesting time to be following politics, that’s for sure. And despite the doom-and-gloom tone of most of this piece, I still don’t actually think a chaotic “no deal” exit is the most likely outcome. It’s certainly a real possibility, but my money would be on a humiliating climb-down to a messy last-minute compromise, when it finally dawns on the Tories what a “cliff edge” Brexit would really mean for the country and, more to the point, for their own careers. I hope I’m right.

I’m struggling this year

In my last post I talked about how I thought it should be OK to share more about your mental health issues on social media and that there should be less stigma attached to it. I’m starting to realise, though, that I haven’t really been practising what I preached, and maybe it would help if I did.

The truth is that so far, I’m not doing so well this year. Over the course of my adult life I’ve had a lot of years (the large majority in fact) in which I haven’t done well in this respect, but 2018 is a bit different in that it’s come after a run of comparatively good years. Up until about Christmas last year I really thought I was starting to get this under control, but now I don’t know anymore.

(I should preface this entry by saying that I’m not about to do anything daft and irreversible, so please don’t worry about that. I’ve been through far worse than this for far longer in the past and I’m still here, so I doubt this latest down period is going to finish me off).

I’m not entirely sure what has made the depression start to come back, though I have a few ideas of what might have contributed. Being ill three times already this year certainly hasn’t helped; I feel like I’ve spent half of January and February either suffering from the cold or flu, or trying to recover and catch up on everything, and by the time the third virus hit I was getting seriously fed up with living that way. I also feel I haven’t been doing enough in the way of socialising or fun stuff lately, which usually doesn’t help either.

But in truth, while those things obviously haven’t helped, I think the problems run much deeper. I’m starting to question whether the progress I thought I’d made since about 2012 is really progress, or at the very least whether it might be built on much shakier foundations than I thought.

You see, the only thing that was ever really effective in making my depression go away was to find activities that excited me and do as much of them as possible. These included taking up Scottish Country Dancing, going hostelling in Europe and, probably most of all, urban exploration (which for a time was such a large part of my life that I made a second blog completely dedicated to it). At the time, doing all this stuff felt amazing and I didn’t waste much time worrying that it might not be the right approach to solving my psychological problems. For the first time since 1997 I wasn’t feeling dragged down by depression at every turn, and that was more than good enough.

The best antidepressant I’ve found so far

The trouble with using excitement to combat depression, though, is that for it to keep working, you need to keep on doing exciting things, and that’s not always easy. Life intervenes and the time, energy and money required are not always plentiful. More than that, no matter how amazing any activity seems at first, the novelty just tends to wear off a bit after a while. Take the urban exploration, for example. The places I loved exploring the most were the disused urban tunnels… but there really aren’t that many of them in Scotland. Once you’ve explored Scotland Street, Botanic Gardens and a handful of others, you’re left with ones that are either far too difficult or risky to get into, are a huge anti-climax compared to what you’ve already explored, or both.

I’m now wondering whether all I really did for the last few years was try to outrun my real problems, but now they’re catching up with me and I don’t think I’ve got the strength to run any further. “What real problems?” you might ask, and that’s understandable. After all, I’ve got a good job, a happy marriage and a nice house, and I haven’t suffered horrific abuse on a par with what some people go through. What right do I have to feel so depressed?

Well, the biggest problem is a constant feeling of being out of place, disconnected, and different from other people. It’s bothered me pretty much my whole adult life, other than fading into the background a bit during the last few good years. I experience it with almost everyone (I think I can literally count the exceptions on one hand), almost all the time, and it can get intense enough to make me just not want to be around people anymore. And I really don’t have a clue what to do about it 🙁 .

Over the years I’ve already exhausted the obvious potential solutions. Most people seem to think (and I used to as well) that if I just pushed myself to be sociable despite my discomfort, I would then realise that actually there’s no reason for me to feel out of place and the feeling would go away. But unfortunately it doesn’t, not even when I spend quite a lot of time around people and get used to them.

The worst thing about this is that it becomes a sort of vicious circle. The more I keep myself apart from other people, the more I don’t just feel different from them, but actually am different. For example, whenever any group of people around my age socialise together, it seems to be only a matter of time before the conversation turns to reminiscing about the great times they had at uni or in their teens. I don’t have any great times from that part of my life to reminisce about (the depression and social awkwardness was at its worst back then) so it makes me feel utterly alienated and depressed. So then I avoid that group, I miss out on yet more life experiences, and I feel even more out of place in the next group.

(Don’t get me wrong. I’m not saying there’s anything wrong with them reminiscing about that stuff. It’s obviously enjoyable for them and I’m certainly not going to ask anyone to stop it for my benefit. I’m just observing that it inevitably puts up a barrier between me and everyone else, one that I haven’t yet found a way to get past).

I suppose, since the simple and practical solution failed, all that’s left is to dive into the murky waters of my emotional mind and try to work out what the hell’s gone wrong down there. I have tried this in the past (in fact I once calculated roughly how much I must have spent on private therapy sessions over the course of my life, and it was quite jaw-dropping), but I think for various reasons I shied away from doing it properly. There are certain upsetting facts about my life, and more generally about how the world works, that I didn’t feel ready to fully accept, but I probably need to accept them if I’m ever going to conquer this.

Do I feel ready now? Frankly, no, and I strongly doubt I ever will. But maybe realising that’s what I need to do is the first step.

Thanks for reading.

“Attention seeking” is good. Stop shaming people for it

This blog post by my brother is worth a read (in fact his whole blog is, but I’m going to focus on that particular post just now). In the second half he brings up things that I’ve thought about before, related to social media and mental health. He points out that making negative posts online when you’re struggling is sometimes frowned upon, and that people who do so are often labelled as attention seekers, something that I’ve observed as well.

I’ve always thought that the “attention seeking” accusation in particular is an odd one. Surely seeking attention is exactly what we’re trying to encourage depressed people to do when it gets too much to deal with on their own? There are any number of mental health awareness campaigns out there these days, and the core message of pretty much all of them is something along the lines of: don’t suffer in silence, don’t bottle up your feelings, reach out and talk to someone when you feel down. If we’re serious about that message (which we really should be), we’re going to have to accept that it will mean seeing things we might not be comfortable with on social media from time to time.

Some people seem to have a curiously black and white view of mental illness sufferers, as if we can be neatly divided into two groups: on one side the “moaners” who just complain incessantly about their problems and are never going to get any better, and on the other the more positive people who are bravely and quietly putting in the work required to get better. In my experience it doesn’t work like that at all. God knows I’ve done a lot of moaning in my time (mostly on specialist forums but occasionally on regular social media), but I’ve also put a lot of work into trying to get better, even at times when it felt completely hopeless.

Other people I know are the same; there is no great divide. The people who are moaning helplessly one day might be pouring their effort into recovery a few hours or days later when they feel a little better, and even the most dedicated positive thinker needs to vent from time to time. In fact, if anything I’d say the people I’ve known who never expressed their negative feelings are probably less likely to get better, because they seem to be less in touch with what’s going on in their heads and more likely to be in denial about their problems.

Maybe some people are fine with the idea of talking about mental health, but think that social media is the wrong forum, and that those sort of discussions should be kept for family and close friends and professional therapists. That’s all very well, but not everyone has those options. Some people’s families and friends aren’t sympathetic to these issues. Some people have no family or close friends. As for professional therapists, NHS waiting times for them are ridiculous and not everyone can afford to go private. Finally, some people (myself included) might simply find it easier to be open online than they do face-to-face.

The downsides to being too negative in public are often pointed out: you’ll drive people away, you’ll just wallow in your problems and become overwhelmed by negativity, you’ll regret revealing such personal stuff later on. What’s rarely brought up is that there are also significant downsides to not talking about it. The main one, in my experience, is that if you’re going through massive turmoil inside your head, it’s basically impossible to forge any kind of meaningful connection to another person if they don’t know about it.

When I was first suffering from social anxiety and depression, I followed the standard advice of trying to meet people at social events and meetup-type groups. I would dutifully go along to as many of those as I could, then try to pretend as best I could that I was a normal person and didn’t feel like I had a huge aching void inside me. To put it bluntly, it was a total waste of time. I hated every minute, I felt horrifically out of place, and I never succeeded in making a friend that way.

Things changed dramatically when I stopped trying to hide what I was going through and started actually opening up to people instead, regardless of how negative I must have been sounding. Within weeks I had made several good friends, some of whom I was still in touch with a decade later, and within months I had been… ahem… more than friends with a few people as well.

Sure, it’s a lot nicer if mental illness isn’t a huge part of your life, but sometimes it is. And when it is, the only successful way I’ve found of building a meaningful friendship or relationship is to share that part of you along with the rest. Of course given the choice it might have been nicer to base those relationships on something more positive, but at the time there was simply no other choice. All the more positive stuff seemed to pale into insignificance compared with what was going on in my head, and trying to interact with people based on it felt shallow and dishonest. It was a choice between revealing the negative stuff or not having any meaningful interactions with people at all.

(The other option, I guess, is to recover from the mental illness first and only then seek out friendships and relationships. Maybe that would work, though I’m not sure it ever would have for me. It’s a lot more difficult to overcome these sorts of problems when you feel completely alone, and it’s difficult to start feeling like you’re a valid, fully fledged member of the human race when you have no friends and no love life).

This has gone off at a bit of a tangent, but I think it still has relevance to the original point about social media. Basically, sharing how we’re feeling, whether in person or online, is a way of building connections with people, probably the only way of building genuine connections. When we make certain people feel like they can’t share their feelings, we’re excluding them from building those connections, quite likely at a time when they need that more than ever. Worse still, we are invalidating them and likely making them feel as if they shouldn’t even have those feelings, which can be surprisingly destructive. And I don’t think that’s a good thing.

I tried to write some thoughts on 2017 and 2018 in a Facebook status, but it was getting far too long for that so I decided to put it up here instead.

I’m looking forward to 2018 more than I’ve looked forward to most new years, but I think that’s more to do with my state of mind than with anything specific I’ve got planned, or any external circumstances. Over the past few weeks I’ve sorted out a long standing sleep problem (I hope… at the very least it’s a lot better now than it was) and it also feels as if I’ve made a lot of progress with my general mental state as well.

It’s weird… for years (well, decades to be honest) I felt like I was constantly struggling and struggling with it and getting almost nowhere, but recently I seem to have reached the point where it’s improving almost on its own without me having to do much at all. It’s strange but I like it. Of course a part of me is still worried that my mood’s going to crash again and I’ll be back to where it was, but I don’t know if that’s likely. Some of the realisations I’ve come to are things that I don’t think I could ever easily un-realise, so while there will no doubt be more ups and downs in the future, maybe I won’t ever be as down as I was before.

It’s been a good year in other ways, too. After feeling stuck in a bit of a rut with work for a while, 2017 brought me both my first ever promotion and my first paid freelance project, which have been great learning experiences and things I definitely want to build on. Doing the canal app has got me into the habit of working on projects in my spare time in a properly focused way and I’m trying to keep that up. In the past I’ve had lots of ideas but I’ve only worked on them sporadically, or I’ve tried to do too many things at once and failed to really get anywhere with any of them. So now I have picked one project that I want to focus on in 2018 and I’m trying to keep up the momentum on it. I don’t know where it will lead me, but that’s part of the fun.

As well as that, and some domestic things that I won’t bore you with the details of, there’s a few other things I want from 2018:

  • Do some fun stuff! If 2017 had a failing, it’s probably that I wasn’t as sociable as I could have been and didn’t spend a lot of time having fun. So this year I want to do Beltane again, go travelling again, and whatever else takes my fancy.
  • Stop stressing about politics so much. OK, I may not like what’s happening in the world right now, but there’s effectively nothing I can do about it, so there’s no point making myself feel worse by obsessing over it. That doesn’t mean I’ve stopped caring, or forgiven the people who caused this mess, just that I’ve realised I’m a happier and healthier person for not thinking about it so much. And if things do go badly wrong, I’ll have a much better chance of surviving it and helping the people I care about if I’m happy and healthy.
  • Get out of the city more often. Towards the end of 2017 I started to go walking in the Pentlands quite a lot, something I hadn’t done for a while. I definitely want to keep that up as much as possible, and maybe even get back to walking in the Highlands.
  • Lose some weight… but only if I can find a way to do it without feeling constantly hungry and miserable (like I did last time I tried).

Happy New Year to anyone who read to the end 🙂 . I hope 2018 will be good to you.

 

Is it undemocratic to oppose Brexit?

It seems that anyone who dares suggest that Brexit might not be a good idea is immediately shouted down as “undemocratic”, and “opposing the will of the people”, as if that should be enough to just end any argument there and then.

Unlike many Remainers, I don’t think parliament could realistically just cancel Brexit because the impact is likely to be bad. Much as I think the referendum should never have been held, and much as I wish the result had gone the other way, it was held, and it did return a Leave victory. Ignoring the result of a direct vote would be setting a terrible precedent.

What if Labour were to win the next general election, but the Tories turned round and said “We know you voted for a Labour government, but we think a Jeremy Corbyn administration would be a disaster for this country, so we’re just going to keep on governing instead”? Or if Scotland voted Yes in a second independence referendum but the UK government responded “We’ve looked into the likely impact of independence and it’s going to be so catastrophic for Scotland that we can’t let you do it”?

However. Having said all that, I still think Brexit can (and should) be opposed democratically. The Leave side are not exactly acting like paragons of democracy themselves: firstly, they’re refusing to allow for the fact that people might change their minds as the impact of Brexit becomes clearer; and secondly, they’re trying to use their referendum win as a mandate for all kinds of things that weren’t mentioned on the ballot paper, and in some cases were barely even mentioned at all during the campaign.

Imagine that by the time we actually come to the point of leaving the EU, things have got so bad that 65% of the public now want to stay. Why would it be somehow more democratic to listen to what 52% of people wanted three years ago than to what 65% want today? OK, so maybe the swing won’t be quite that pronounced, but I can easily imagine a few percent of people thinking “Well, I liked the idea of that extra money for the NHS, but I didn’t think leaving was going to devastate our economy and risk an end to peace in Northern Ireland. I wish I’d voted Remain” – and a few percent is all it would take to mean that Brexit is no longer “the will of the people”. There’s a fairly good chance it’s even already happened.

Brexiters tend to react with fury if anyone suggests that Leave voters didn’t know what they were voting for. Of course people knew what they were voting for, they fume, they’re not stupid. But we’re now 18 months on from the referendum and several months into the negotiations, and unless I’ve missed something pretty major, we STILL don’t have a clue what Brexit is going to look like. It could literally be anything from shutting ourselves off completely and becoming a dysfunctional third world country to a Norway-type deal that’s so similar to EU membership that most people won’t even notice the difference. It seems utterly preposterous to claim that people knew what a Leave vote meant back in early 2016 when we still don’t have answers to some of the most basic, fundamental questions even now.

And then there’s the question of mandates. Yes, the government (unfortunately) have a mandate to take us out of the EU, but that was the ONLY question asked on the ballot paper. They don’t have a mandate for a hard Brexit, whatever they might try to claim, because the referendum never asked us whether we wanted a hard Brexit, it only asked whether we wanted to leave the EU, and a soft Brexit would still be leaving the EU. And they certainly don’t have a mandate to bypass parliament, make new laws and trade deals in secret, and slash our employment rights and food safety standards.

Once again, pointing this out seems to make the Brexiters very angry. Of course people voted for a hard Brexit, they reply. People voted to end free movement and make our own laws, and we can’t do that if we’re still in the single market.

Well I’m sorry, but no, people did not vote for that. People voted to leave the EU and that’s all. If you wanted a mandate for leaving the single market as well, you should have lobbied to have that included on the ballot paper. Furthermore, various prominent Leave politicians are on record before the vote as saying that there was no plan to leave the single market, even that it would be insane to contemplate leaving the single market. Therefore, it is highly likely that many Leave voters thought they were voting for a Norway-type deal rather than a hard separation, and even if it was only 4% of them, that means there was no majority in the referendum for leaving the single market. (Though of course we don’t know that because the referendum didn’t ask that question, which is exactly my point).

And as for claiming “it’s obvious” that people voted to end free movement… no, I’m afraid you can’t have it both ways. If you’re going to get angry when Remainers lump all Leave voters together and claim they all voted Leave because they’re xenophobic or ignorant, you can’t then lump all Leave voters together yourself and claim that they all want exactly the same thing you do. Either Leave voters are one big homogenous Borg-like blob who are incapable of individual thought, or they’re not. You don’t get to claim they are only when it suits your argument.

In summary: the government have a mandate to take us out of the EU, and I don’t think that can be overturned without another referendum, or maybe a general election where the winning party explicitly stands on the platform of reversing Brexit. But they don’t have a mandate for anything beyond that, and certainly not for the sort of hard right coup that senior Tories and parts of the press seem to want. It’s absolutely democratic to oppose that, indeed it would be profoundly undemocratic to let them get away with it.