Archive for February 2008

The Trouble With Trifles

For a few years before I moved from Scotland down to Yorkshire I used to do a lot of swimming at the University of Dundee pool. Not just a few lengths followed by ages in the shower, but hours in the pool every day training with a variety of interesting characters from accountancy students (maybe it’s the monotony of counting strokes and lengths that attracted them) to a former representative of Scotland at the Commonwealth Games (who was an awesome athlete - I could write pages on his flawless butterfly technique) to a triathlete who competed in IronMan races (he was a scaffolder by trade, was built like a bodybuilder but had endurance like you couldn’t believe - which is essential for a 2.4 mile swim followed by 112 miles on a bike rounded off with a marathon).

Anyway, I used to train with these sorts of people, battling to keep up with them and their punishing sessions while acquiring quite a physique in the process (I’m sorry to disappoint you ladies out there but the v-shaped back, washboard abs and powerful shoulders are no longer quite there). The irony was that I learned to swim late preferring to burst into tears as a small child when presented with water like the wuss that I was. What I realised when I was 21 was that if my parents had been the pushy sort that pushed their kids into sport, I might have actually made a decent competitive swimmer. Ah well, I can always dream!

Right, I’m digressing somewhat (rambling comes with the territory when I take trips down Memory Lane). So I’d walk out of the pool from a tough session and my arms would feel like they’re about to fall out, my legs would feel like jelly and the goggle marks around my eyes would make me look like I was wearing eye liner. I was ravenously hungry. At the time I wasn’t drinking alcohol, was eating wisely, steering clear of junk food and high fat stuff, generally looking after myself. Except for one vice I allowed myself. Full sized trifles.

A bowl of delicious trifle

The saying “Never go shopping for food when you’re hungry” is spot on as if I went to the supermarket after a workout I’d inevitably come back with a family sized trifle. I’d remove the lid, get a dessert spoon out from a drawer and devour the whole thing (which would normally feed 4) in a matter of minutes.

Digression Number 2: I was at a party once where I’d just finished explaining this piece of gluttony to the hostess who said “I’ve got a trifle in the fridge, I don’t believe you could just eat the whole thing like that”. Cut to 10 minutes later and a horrified expression on her face when I’d done exactly that!

The way I figured it, since I was burning thousands of calories per day and was eating very healthily in general, I could get away with such a high concentration of Trifles Per Week (or TPW) and indeed I suffered no ill effects. Sadly when I moved to Yorkshire I couldn’t find anybody to train with who was at the level I was at so I eventually hung up my trunks and moved onto other things. And curiously, my obsession with trifles went too. I’m not sure whether it was the chlorine or the tight-fitting trunks, but as soon as I was no longer exposed to that lifestyle my desire to gorge myself on trifles disappeared.

It’s a shame really as I’d become quite an expert on trifles having eaten so many varieties (things like varying the ratio of sponge thickness to custard to cream can make all the difference in advanced trifle design and manufacture). Strangely I’ve managed to replace the swimming / trifle combination with a similar football / tiffin obsession so I suspect that different sports have different complementary foods that you (or strange people like me) crave. I may have to do some experiments to find out - huge waistline here I come…

As Fast As My Imagination Isn’t Fast Enough Damnit!

Picture this scene. My good lady is looking on the Dell website speccing out a new laptop. She’s not the most technically savvy person on the planet so isn’t exactly sure of what options she should and shouldn’t choose.

Like most non-technical people she gets bored of reading technical talk within about 30 seconds. So after a couple of minutes she says the following in a monotone, bored voice, almost sighing as she did: “Dual processor processes power as fast as your imagination… Do I want that?”.

Some marketing BS courtesy of Dell

A slogan like that is supposed to be said in a triumphant, confident way, and definitely in bold like Buzz Lightyear saying: “To Infinity And Beyond!”. I’m sure the copywriter who wrote the line about dual processors imagined people reading it and saying “Wow! I want one of them!”. But of course the reality is that most people won’t understand what a dual processor does and if it being “as fast as your imagination” actually matters on not.

A techie like me just ignores it as meaningless marketing spiel (I don’t know which part of their statement to correct first) but I’m sure many people like my good lady just get confused and turned off to technology even more. So much for being consumer focused.

This Upstart Joins A Start-Up

After two and a half years working for Marshalls I’ve decided to move on. Despite being in essence a concrete manufacturing company and therefore theoretically about as far away from the cutting edge of IT as it’s possible to be, Marshalls has actually been a fun place to work where I’ve managed to write some interesting software, been a bit creative and met some really good people. Despite the fact that I always call myself a software developer, I do a lot more than sit down and write code. I enjoy doing everything from gathering requirements (that means speaking to real people who’ll use the software I write) as well as designing, building and delivering the software to do what they want. I’ve managed to do plenty of that over the last couple of years.

My first ‘real’ job (working for a University doesn’t count) was for a company that had just been bought out but it continued to operate as a start-up. We were building a product, chasing our first customer and having to change direction all the time to try and make that sale. It was at times frustrating (like sometimes having to cut corners to get things out the door) but the fact was that every person in the team counted - there’s no room in a start up for people there just to make up the numbers if you want to be successful. Everybody had to be able to turn their hand to any problem - it wasn’t as though there was a whole department dedicated to setting up machines and networks, one of us would have to figure it out and do it.

What I’m getting at is that in that start-up it was all about the end result - building the product was the most important thing. Since building a product that sells is what keeps you in the job, you’re strongly motivated to make sure it’s a success and since there’s only a few of you you’re in prime position to make that happen. And that’s what I’ve always been interested in as far as software development is concerned - building something that people want to use.

But in the big companies I’ve worked for that’s not the way things work, and this is especially true of companies where software is not their primary business. At the end of the day, if you’re writing in-house software that your users will have to use no matter what you produce, the standards just aren’t going to be as high as shrink-wrap software to paying customers. You’ll never hit the high notes and frankly there’s no point in senior management making that a priority - where’s their return on investment they’ll wonder?

And as my friend Stu (who I worked with at that start up all those years ago) told me when I last visited him, end-user software is the most satisfying place for people like him and myself to be. I want to build something that’s a success and is good enough that real people want to pay to use it, something I can be proud of.

For me the best place to build something I can be proud of is a start-up with none of the politics, red tape or risk aversion that gets in the way. Sure it’s longer hours, harder work, more responsibility, more risky in that if you don’t get things right you’re out of a job, but for me the potential rewards and satisfaction of building something I believe in makes it all worth it. The chance to join a start-up where I live doesn’t come along very often so I always promised myself that if the opportunity came along again with the right people I’d take it.

Imagine my surprise when an ex-colleague of mine phoned me up over Christmas to talk about joining him and some other ex-colleagues in their start-up. After meeting them it took me all of about 5 minutes to decide I’d say yes if they offered me the job. For me the risk is a lot lower than just joining any start-up. For one I know them all very well and they happen to be some of the most talented people I’ve ever worked with. I also worked with them on a similar product to the one I’ll be helping them build so know I won’t be starting from square one and having to learn the ropes. And there’s a lot of market interest in the product which is half the battle. For the first time in a long time I’m really looking forward to starting something new and seizing the opportunity that has presented itself to me.

I start tomorrow. Wish me luck! :)

Still Wearing A Hat Syndrome

‘Still Wearing A Hat Syndrome’ or SWAHS (pronounced sw-a-z) is a physiological and psychological reaction to a continuous stimulus that is abruptly removed after a period of time resulting in the sufferer believing themselves to still be subject to that stimulus. The classic example of this affliction is when you’ve been wearing a hat all day - perhaps a beanie hat or a top hat - and you remove it. For a considerable period of time you will still feel like you’re wearing your fashionable headgear and will be surprised to find that when you go to straighten your hat that it is no longer there. The short period of confusion that inevitably follows is termed ‘Still Wearing A Hat Syndrome’.

The following pictures of a person afflicted with SWAHS show the devastating confusion that can result from Sudden Hat Removal (SHR) - one of the main causes of SWAHS. To the left they are wearing a hat and are content, but with the hat removed in the second picture the subject is confused and disoriented. These pictures were taken under laboratory conditions with a team of medical staff on standby to deal with any complications. No Scotsmen were harmed during the making of this illustration:

The Effects Of ‘Still Wearing A Hat Syndrome’

For many years mainstream scientists didn’t accept that SWAHS really existed preferring to blame other factors on those who claimed to be suffering from it - such as them being stupid. However in recent times the very real problems that SWAHS has caused people has pushed it into the forefront of medical research and is now widely recognised by the scientific community as fact.

However there are many people who suffer from acute SWAHS - often brought on by SHR - but have never heard of the condition and remain undiagnosed. If you believe you may be suffering from this condition and would like some help and support in coping with it then don’t panic - you are not alone! Leave a comment at the end of this post and one of the expert staff from the “John Conners Still Wearing A Hat Syndrome Foundation” will contact you and ensure that you get the help you need.

Remember, SWAHS is real and understanding the condition is the first step to conquering it!

The Difficulties Of Finding Good People

My company has been looking for the past while to hire someone with very strong software development skills using Microsoft ASP.NET with C#, SQL Server and a host of the usual 3 letter acronyms (which I won’t bore you with). It’s pretty much the standard skill-set of any current developer that works on the Microsoft platform building web applications - so nothing out of the ordinary.

In addition to these skills we’re after someone who can not only sit in a corner and write code, but can go in front of business people (i.e. non-technical types) and gather requirements, spec out a piece of work, build it, deal with customer changes and ship it to end users. Someone who can work on their own and as part of a team as the projects dictate, has no ego and is just a normal person at the end of the day. We’re pretty much looking for someone like me or Ian. Writing a blog or being obsessed with your hair is not a requirement! ;)

Now that said, what we’re really after is someone who’s smart and gets the job done. We’d far rather hire someone who has less experience in our toolset but is smart enough to pick it up than someone with loads of experience but isn’t very bright. As a further twist, I along with my boss have been doing the interviewing! Although I’ve not interviewed everybody, thank goodness.

The thing I’ve found amazing about the experience is that we’ve been taking the absolute best CVs that have come in, throwing loads of others out. We’ve been in the software game for long enough to know what we’re looking for and time after time we read a CV and think “hey, this person looks great, with their experience they could be the one”. We bring them in and time and time again they bear absolutely no resemblance to the person on their CV.

We split the interview into 3 parts.

  1. A light-hearted overview of the company, the department, the development team.
  2. We ask them about their experience, some of the projects they’ve worked on and more importantly what their thought process was about decisions they’ve made and how they approached any problems they came across. We’re just trying to stimulate a conversation to see how their mind works and if they’d be a good fit for the team (no prima donnas please).
  3. A short technical test (which I wrote).

A rabbit in a hatIt’s the last part that’s surprised me the most. Since it’s an interview situation, you’re under a lot more pressure than in a normal day so there’s no point making that worse with an extremely complicated trick problem. The test is in fact very easy. You get to sit down with Visual Studio 2005 to write a single method for an already-existing console application. You’ve got a spec telling you exactly what it needs to do and some helper classes and methods to provide you with what you need. In essence you need to match all orders for a given customer and the code is already there to return all the customers and all the orders for a given customer. It should take no more than 10-15 minutes and when I wrote it some of us thought it was so easy that it would be a waste of time.

Even under the pressure of an interview situation anybody who can actually write code should be able to waltz through it. Since you have full access to the documentation and internet in the test, even if you don’t know C# but can write any sort of code, you can probably work it out!

We leave them to have a read of the spec and come back to answer any questions they might have. Then we give them 10-20 minutes and see how they’ve done. It’s not a black-and-white right-or-wrong test as it’s really just to see if they can actually write code and if it doesn’t work first time (none of the code I ever write does) then can they debug it and work out what’s wrong, with some help from us if need be. You wouldn’t hire a magician without watching them do a few tricks would you? There are lots of opportunities to ask what-if questions just like you’d do in the real world and rather than a “test” we look at it as a way of having a discussion.

But what’s left me utterly beside myself is that virtually all the people we’ve interviewed that consider themselves to be very strong developers have done absolutely terribly at the test! It beggars belief that people who can’t even compare a string to another string should be writing software for a living - comparing strings is one of the most basic things you can do in software. It’s like a plumber not knowing how to turn off the hot water supply. Some of the interviewees have 15 years development experience with CVs that look far better than mine and talk the talk, but have clearly managed to survive using the drag-and-drop method of writing software without ever understanding what they’re actually doing. No hire.

A lovely chrome piece of pipingNow I know we’re not going to attract the creme de la creme to work on a hill above Halifax in Yorkshire even if we do score 8/12 on the Joel Test (which isn’t too bad - and we’d have 11/12 if it weren’t for some of our management). And I know that most decent people aren’t looking for jobs because their employers realise how important they are and pay them so much money that they’d never leave (heh heh, yeah right). But we’re surely not being unrealistic to think we could find some people who can actually write software and communicate with other human beings.

One thing about the technical test we’ve found is that it hasn’t made us change our opinions about a candidate. If they were doing badly and did well on the test we’ve still said ‘no’ and if they’ve done well everywhere but the test we don’t rule them out. By having a chat with someone for an hour we reckon we can pretty much tell if they’re a good fit or not even without testing their coding so for now we’re going to move the test into the second interview stage (which is usually just a formality and chance to meet the director and more senior people than us) and use it as final confirmation rather than wasting half an hour with someone now that we already know we’d not hire.

Fortunately the last time we hired someone we found a guy who really blew us away. I was starting to lose hope that decent people existed but then in walked my future colleague who was clearly a really nice guy, intelligent, sharp, on the same wavelength as my boss and I and of course he flew through the technical test in record time!

But until we get lucky enough that another superstar walks through the door we’re wasting a hell of a lot of time interviewing people who we can tell within 20 minutes aren’t going to cut it - but because we’re nice people we don’t say “Stop! There’s no point carrying on - get out!”, we give people every opportunity to show us what they’ve got. It’s hard work and I’m glad I don’t have to do it all the time. I’m almost inclined to take the advice I read somewhere about recruiting and throw half the CVs in the bin because you wouldn’t want to hire someone who’s unlucky! ;)

How Do You Get A Swan Out Of Your Garden?

That’s not a question I ever thought I’d find myself asking but from just after I got out of bed this morning I’ve been wondering exactly that. It seems that a not-quite-fully-matured swan has decided to call my front lawn its home for the time being and has been splitting its time between cleaning itself, sleeping and flapping it’s impressively large wings at my good lady when she came back from the shops!

I was planning on cleaning and vaccing my car today but I’m not entirely sure our new visitor would be happy about that:

Our swan blocking my way to the car

Since I don’t get very close to swans all that much I forget just how big the things are - that neck’s about as thick as my arm! According to our neighbours it’s been there since at least 8am this morning so I’m expecting it to wander off and get some food / drink at some point (according to the advice I’ve read you shouldn’t feed swans on land as it encourages them to seek out food from people which brings them into contact with dogs and other tricky situations). Still, it doesn’t seem too bothered about me and was happy to demonstrate swan yoga to me with my camera pointing:

Swan yoga

I’m not sure what it is about my garden but it really does seem to attract all sorts of interesting animals such as the ducklings we had last year and long may it continue. But I don’t fancy having to battle my way past an angry swan every time I want to go out to the garage or head off to work!

Once They’ve Got Your Name They’ve Got You

As I’ve written about in detail before I applied to become a Royal Marine Officer when I was younger, cockier, fitter and had better knees. I came within a cat’s whisker of making it and if I’d been even cockier I’d have passed first time. At the time I was particularly proud to pass the Officer selection course which consisted of all sorts of fun activities like press-ups, running with a telegraph pole slung over your shoulder for hours, being dragged through underwater tunnels and discussing politics and world affairs. But when I eventually failed to get in I was really gutted, although looking back it was the best thing that happened to me as it made me realise nothing is mine by right, I have to work for it. Plus now that I’m in my 30’s all that getting shot at in Afghanistan sounds less than the fun I thought it would be in my early 20’s.

A letter I received from the MODAnyway, I digress. This morning a letter turned up from none other than the Ministry Of Defence. It had been sent to my father’s address and he passed it on to me. You may or may not have heard that just the other week a laptop was stolen containing the personal details of some 600,000 people including such things as names, addresses, passport details, national insurance numbers and so on. The BBC wrote about it here. There’s been a spate of missing government laptops being stolen along with CDs containing details of all UK benefits claimants going missing. I always shake my head at the incompetence of the people who lose these things, don’t properly secure data or are so stupid as to send unencrypted CDs through the post!

However according to the letter I received from the MOD, my details were on the laptop that was stolen! Ten years ago I applied to join the Royal Marines and they still have my personal data lying around on someone’s laptop sitting in the back of their car. Idiots!

The letter reassures me that while my passport details, National Insurance number, driver license details, family details, doctors address and National Health Service number might be included in the stolen information, I can rest easy knowing that my bank details were not. Nice! So more than enough information to steal my identity, set up a bank account in my name, create some loans and not repay them, but at least they can’t get at my current account…

Fortunately the passport details they have are no longer valid, my address has changed, as has my doctor. But that’s about it. We don’t think twice before handing over our personal details to various institutions but we never consider the fact that our details might be hanging around in their systems 10 or 20 years later just waiting to be stolen. Having worked in the IT industry for many years I can testify to the incompetence of the vast majority of the people in it and therefore don’t hold out much hope that this sort of problem’s going to go away.