Unspeakably rude.

Posted by | Posted in Game Development, Life | Posted on 11-08-2015

The Incident:

The other night (Friday, 7th Aug) I was in the RoundHouse pub with some friends when I spotted a group of former work colleagues sat at another table.

I exchanged the usual pleasantries with one I know a bit better & thought nothing more of it.

At the end of the evening as they left someone I didn’t know came over and said “Hi I’m ####, you’re Andrew Copland?“, and I said – whilst reaching to shake hands – “Yes that’s me“. He shook my hand and said “I fix all your bugs“.

He let go of my hand and left laughing leaving me in silence with my hand still in the air, stunned.

A friend that I was sat beside asked me if he really had just said that and I, slightly dazed, simply confirmed he had.

This has been bugging me more than it should so I want to get why off my chest.

The Past:

When I started at this former workplace I was broke. It was after another company I worked for had gotten into financial difficulty and not been able to pay, simultaneously several big studios in the UK had gone under and made about 800 developers (in total) redundant in the UK.
There was a massive glut of talent and finding work got really hard, really fast at the worst possible time. I was unemployed from early July to late October that year.

Eventually I went to this place out of desperation, I’d heard bad things about them, so even though they were based very conveniently I’d instead chosen to go up and down the length of the country before applying to them. Partly this was also because it wasn’t a games role but a Tools one and my first time doing more than just tinkering or bug fixes on development tools.

It started fairly badly with some office politics treating the outgoing developer I would replace unfairly. Thankfully the Tools team themselves were great and the guy who was leaving (that I knew already) made that whole time work despite the bullshit.

Sadly about 6 months into this I started to suffer from depression and a little anxiety. It took me a while to realise this of course, anyone with these things will know that they don’t come with an easily identifiable rash or something to give themselves away, they come on slowly and discreetly.

The pressure was on at work due to company finance problems, project deadlines, a new tool that needed creating – which should have been a simple affair and conceptually I had no problem with. However by now my mental health was affecting my work. This was when I realised what was wrong and went to my doctors.

To cut all that short, I got help.

The Fix:

I got some very mild anti-anxiety tablets to stop me having panic attacks and elected not to treat the depression medically but to get counselling (CBT to be precise) instead and to keep medication an option for later if that wasn’t helping.

I also started to look for another job as it was clear that the way the company worked, and the work itself, didn’t suit me at all.

Getting the anxiety under control really helped my work but during the time leading up to this I had written some of the worst code of my entire life. Even with things being better I was still under a lot of time pressure to fix existing bugs / features and to write the new tool so this code also suffered quite badly. I have no doubt that I left some absolute stinkers in that codebase.

Since I started as a technical QA (bug fixer) I’ve been on the receiving end of code like that too. In fact the code I was replacing was already pretty hideous and bug ridden but only because it too was written whilst it was being used in production with all those same time constraints.

What I have never done is approach someone else and mock them for their bad code.

I’m Normal.. No, Really:

Perhaps it’s because I am an average coder, I strive for excellence, I achieve average but I don’t see a reason to beat myself up for that as I always strive for excellence regardless. The attitude that you should only code if you’re some kind of code-magician is only held by the most deplorable of shit heads. Sadly I’ve worked with a few, being openly mocked in a company wide email by the lead programmer of another studio, as junior coder, for asking for help comes to mind. I shrugged it off as my own lead was far more supportive and the better man, it was his opinion (to paraphrase: “Don’t mind him, he’s a dick”) that mattered more. I’ve remained friends with many of the people I’ve worked with, and have been rewarded in my work by always being recommended and thought of highly, sometimes even for my skill and not just my dedication.

Over time I’ve learnt that I’m not alone, other people have gone through periods like me, outside influences in their lives that have affected their proficiency at work. It seems obvious when you say it aloud, but if you’ve been dumped by your girlfriend, divorced by your partner or separated from your children, maybe you suffer from depression or anxiety for any reason, then yes your work will suffer because you are suffering. You shouldn’t be mocked for that, not then and not unfairly in the future when some 20-ish-year-old University graduate has to see those bugs you wrote at one of the lowest and most difficult times of life you’ve yet faced.

My subsequent job was also in Tools, I found out that at least that hadn’t been the problem. Just some combination of the company / tasks / projects / environment had combined badly with what was going on in my personal life at the time to affect so horribly. The next job went well and I enjoyed it until the company was being bought out and I saw an opportunity to get back into developing games themselves. Tools development just isn’t for me, Tools are part of the process of making a game, and it’s the game I wanted to be making.

These days I do contract work, we re-launched an older PC title on Steam with some bug fixes and improvements including replacing the old networking with Steam’s system and I wrote a lot of improvements and additions for it. Now I’m still working with that company and with my friends because everyone has been pleased with my work, for the most part I am too. There are disappointments, I am after all just average and I make mistake or do stupid things, but I’m also successful far more than I fail.

The, let’s be generous and assume nothing malicious, “witty-put-down” I experienced the other night out with friend has been slowly gnawing at my mind now not because I’m without fault but because of that time, because of those difficulties I faced and how much everything hurt…

…well, that and it was a just a really shit thing of them to say ;)

Andy

 

NB: Yes you can probably look at my LinkedIn page and figure out where this all happened but I’ve deliberately omitted that stuff so keep it out of the comments please.

2 weeks already?

Posted by | Posted in Game Development, Life, Pioneer | Posted on 13-09-2013

Wow time really flies when you’re … um, reading books and going to the gym more often?

Ok so I have been doing some programming on Pioneer; fixed up the solutions & projects for VS 2012 & 2013 Preview (I could do VS2010 too but am not touching 2008!) to deal with latest changes, fixed the GLEW changes to get it all building and compiling and then took up the Oculus Rift integration again – that’s a bit hairy that stuff since I’m having to modify a LOT of stuff in Pioneers rendering process.

Anyway the result so far is the following;

  • distortion shader working,
  • head tracking working,
  • rendering two cameras to a framebuffer working.

screenshot-20130911-205145

So all done huh? Nope, not by a long shot.

There’s a lot of other stuff that needs to be done to get a 3D projection + FOV + view offsets for each eye and a few other bits before we actually get a working 3D view and I haven’t worked through all of that yet since I’ve been busy with time consuming other stuff.

Unexpectedly, probably only to me, some of it is just stuff that didn’t used to take much time at all but is now quite time consuming.

Take going to the gym, this is what it used to work out like:

  • Leave work & walk to gym (11 mins)
  • Get changed (3-ish mins)
  • Exercise (30 mins)
  • Shower and get dressed (10-ish mins)
  • Hurry back to work stopping at Tescos (15 mins)

I think that in truth that used to usually take about 1 hour and 15 minutes, sometimes longer if we’d been doing leg work and I couldn’t walk as fast on the way back. Now however I’m coming in from Beeston which entails an extra train journey, and because I don’t choose when the trains run I have to catch them based on which one gets me there _before_ my session with my personal trainer. This means that I’m getting in quite a bit earlier, but that I’m travelling for much longer and due to the scheduling granularity of the trains… well, I left the house at 11:30am and got home today at 15:00pm just to do a 30 minute session. I could have gotten home earlier today, but decided that since I’d be missing one train anyway I got a haircut (I’m male, so if it takes more than 10 minutes to cut my hair then something is wrong). So I could have shaved 30 minutes off that (Train schedule) but even so it’s around the 3 hour mark to go to the gym just once.

Everything has scaled similarly though, popping out to get milk was to the nearby Tesco Express and less than 10 minutes but now involves walking across Beeston to the big 24 hour Tescos (or further for Sainsburys) because that’s the nearest one that does the Lactofree stuff. I’ve also been getting to the doctors (knee injury and anxiety attack stuff), dentists (keep flossing!!!) and the talking therapy place for an assessment (I’m not mad, might want to work on my confidence in a couple of months – quitting was the right thing to do apparently!).

At first I was worried about how this was going ot impact on two of my stated goals from the previous post:

  1. Work through some UDK tutorials – the new job is on Unreal Engine 4 so I think getting a footing in the tech’ will be good for me,
  2. Work through Frank D Luna’s D3D 11 tutorials but convert them to OpenGL 4.0 – Been meaning to do this for a while, it’s a good ramp up and parallels these SlimDX posts,

…but screw that, I’ve really really really (emphasis!!!) needed this downtime to get myself sorted and simply running into yet more challenging stuff and then freaking out about that wasn’t going to help anyone least of all me.

My plans haven’t changed, I still want to dive into the UDK stuff – I have it all installed and a selection of tutorials ready, I’ve just pushed the start of it back until this weekend or Monday. That takes the pressure off me for doing the Pioneer Oculus Rift integration which is acting like a pressure valve and gentle reentry into doing some coding again for fun.

Now though I’m going to go and tidy up downstairs before Danni gets home. She’s started at a secondment to a new primary school which is in Special Measures. It’s taking a lot of her time and mental capacity, everyone there is under tremendous pressure, so I’m trying to suck less at the housework. Of course I come from a position of sucking _utterly_ to begin with but I am getting less awful :)

 

Andy

I’ve left Crytek

Posted by | Posted in Life | Posted on 01-09-2013

Well this should probably be another post about Pioneer and it’s terrain generation / rendering, instead that’s all taken a back seat as things have gone steadily more wrong at Crytek and I’ve finally quit.

I wish I could put my finger on the “what” of went wrong but I’ve struggled to do so.

The effects however are much easier to list:

  • anxiety
  • panic attacks
  • no concentration at all
  • some truly terrible code (embarrasingly bad at times)
  • really struggling to implement even basic algorithms because of all the above

I finally got some medication to control the panic attacks and have been referred for other help but suffice to say that whatever the combination of things wrong with my time at Crytek it simply didn’t matter anymore, I had to get out.

Seeing that things were not right I started looking for something else and decided that I had enough strong leads – and with one offer on the table already – it was simply time to get out.

 

Friday 30th August was my last day and for that last week I didn’t need to take the anti-panic-attack medication once during the proceeding week.

I felt much better, I felt enthusiastic again, I had energy, I even started doing some coding at home and on Pioneer after months of twiddling with projects and solution updates.

 

I accepted the offer I’d had, it’s a work from home role and I’ll discuss it in another post in the future, that starts on the 30th September so I have a bit of a break to get better again.

To that end I’m going to do a few things:

  1. Work through some UDK tutorials – the new job is on Unreal Engine 4 so I think getting a footing in the tech’ will be good for me,
  2. Work through Frank D Luna’s D3D 11 tutorials but convert them to OpenGL 4.0 – Been meaning to do this for a while, it’s a good ramp up and parallels these SlimDX posts,
  3. Get back to doing Pioneer coding – I have a massive to do list for this,
  4. Cycle around the nature reserve more and in town when I go during the day,
  5. Keep going to the gym and eating healthily.

That’s a lot of things but I’m not going to fit them all into a month :D these are things I’ll simply be starting in this month, and taking slowly so as not to get overwhelmed. I suspect I’ll stop the UDK ones once I’m up to speed at the new job and I’ll be flexible with myself about all of the above, doing more or less as I see fit and when I feel fit.

 

Right now… off out for Sunday lunch with Danni and other friends :)

More “recovery” don’t ya know!

Yeti

 

PS: I should probably on reflection, add that Crytek isn’t a bad place to work, far from it, lots of people seem to really like it. All of the above is solely how *I* have found it.