All Posts Filed in ‘Work


Welcome To The Cloud John, Enjoy The View


The latest chapter in my software development career makes interesting reading. You may remember some time ago I joined a start-up with some friends (who also happened to be ex-colleagues) of mine to build a product in the performance and attribution world of financial investment (exciting indeed). We were then acquired by RiskMetrics Group and that took us into a wonderful world where instead of thinking about how we could build out a product with minimal costs and minimal hardware, suddenly our concerns were how we’d scale to hundreds of clients looking to shift huge amounts of data around using shed loads of high-spec machines in a data centre. It was like a dream come true for a techie like me.

Even better were the calibre of people. I always want to work with people Β I can learn from and RiskMetrics was definitely that place. I was working with people who were incredibly smart, insightful, able to think in ways you just can’t teach and analyse and solve the sort of problems that make your brain implode. Hearing about so-called rock star programmers and the type of people who can change the world is one thing, but when you’re sat in a room with them while they think about how to solve incredibly far reaching and complex problems was quite another. I had to pinch myself to believe I was working with these people.

We spent a couple of years building our product under the leadership of and with help from some of the best people I’ve ever worked with. And as a result we built something that continued to push the envelope of what you can do with the Microsoft development platform. Everybody who saw our software was blown away – there was literally nothing to touch it in terms of usability and potential in the industry and by the middle of 2010 we had ticks in most of the boxes potential customers were looking for. The team expanded so that development was happening in the UK, Switzerland and the USA. Everything was coming together better than I could have expected (up until then I didn’t believe you could do distributed development in this way but it turns out that with the right people you can).

And then everything changed. After some unconfirmed rumours it transpired that we were being bought out. Since most of us had been through this sort of thing before we decided to just keep our heads down and continue building our product. Many others became consumed by speculation and couldn’t focus. Of course the writing was on the wall and ultimately the decision was made to close our office and kill our product – literally exactly the same thing that happened to me almost 7 years ago. Some things never change!

The last time this happened I was a little bitter and twisted and annoyed that we’d come so close to success but been cut down before our time. This time I shrugged my shoulders thinking “such is big business” and phoned a recruitment agent. I figured there was no sense wishing things were different – people way above my pay grade had made the decision and whether it was right or wrong (in my eyes) that didn’t matter. What’s done was done and it was time to move on and find something new. And that’s exactly what I did.

So just a few weeks later I started Β at a company called They build an accounting product on the cloud computing platform, something I’d not really paid attention to (I’d been so busy building software on the Microsoft platform I hadn’t really looked outside that for a while). So far I think it’s fair to say I’ve landed on my feet and in many ways my new role is a much better fit for what I enjoy doing than my previous one (so every cloud has a silver lining after all). Plus after only a few weeks I feel like I’ve known my new colleagues for years (always a good sign)!

And the more I learn about the platform (as it’s known) the more impressed I am. I’m used to having to build software from the ground up and therefore having to reinvent the wheel every time (and wasting months doing it). On you’ve got so much for free in terms of an application platform, relational database, consistent user interface model, batch processing, scalable, reliable hosting, the fact that you’re building on a trusted platform, the list goes on. Sure, you’re giving up quite a lot of control – you have to live within the limitations of the platform and there are plenty of things you can’t do – but on the whole it means you spend a lot less time writing boilerplate code and a lot more time focusing on actually building a product.

So all in all it’s been a very interesting couple of years filled with many highs and lows. But if it’s alright with you I’ll be quite happy if things stay the same for a while. All this being bought out makes me feel like a commodity rather than a human being! πŸ˜‰


My Start-Up’s Been Acquired!


Back in February I mentioned that I was joining a start-up founded by some ex-colleagues of mine. I was hoping that we’d build a product and spend a few years building up a business that would mean an escape from the evils of the corporate world. To have a direct say in the direction a product takes and potentially a better share of the success of the company. Instead only 8 months after I joined we’ve been bought out by a large American company called RiskMetrics.

I’ve not had a lot of happy times working for American companies before. One closed our office down thinking they could kill our product off (and ironically it’s the now only product that they are able to sell) after a prolonged period of “us against them”. They were a large, slow-moving company with more Vice Presidents than I’ve had hot dinners, everything that’s wrong with corporate America. The second company did pretty much the same thing and made the working environment so miserable that I left after a year and a half. So it was with some feeling of dread that the directors told us that they were thinking of selling out to a big American company.

However following a 2 day trip to New York to meet some of their senior people I was really impressed. This wasn’t the sort of company that had 20 layers of management (and no obsession with Vice President of this and that). Every person we met was not only very intelligent and insightful, but genuinely interested in and passionate about what they do. We had a meal out with them on the first night where we were just ourselves and so were they (although to be fair I’m just myself all the time) – and we had a great time. But the thing that really impressed me was how the people were the next day – the “corporate types” I’ve worked with before would be friendly outside of work but put their business faces on the next day as if the previous night had never happened. This was not the case with these guys. From the 2 short days we had it was clear that these were the sort of people I’d relish the chance to work with and could learn a great deal from.

I do have mixed feelings about joining a new, 1000 employee company. As a regular employee I don’t make any money from the buyout and my long-term hopes for the company will not come to be. But I will get the chance to work with some incredible people on a platform the scale of which I’ve never encountered before. A big reason I joined the start-up was to work in a small company away from a large organisation and that’s exactly what I’m going back to – time will tell what working for this company will be like although all signs so far are good. The work I’ve spent the past few months doing has been pretty frustrating and “bitty” while we were chasing business in the short term (which I guess is unavoidable in a start-up) so having the backup of a larger company will mean we can be more organised and structured and I can get more of a chance to do what I do best.

Ultimately from what I’ve seen so far this may turn out to be a great opportunity that otherwise I’d never have had the chance to take. And so the John Conners career roller-coaster ride continues with more unexpected twists and turns!

I’ve certainly learned a few lessons in this short journey working for a start-up that would make me a lot more wary about doing it in the future. But then again, to coin one of my favourite non-Steven Seagal phrases: nothing ventured, nothing gained!


A Chair Makes A Hell Of A Difference


People like Joel Spolsky have been going on for years about how paying a bit more money to get a better quality chair up front can make a massive long-term saving, combined with increased productivity and “cool” appeal (there’s a lovely comparison of the cost of a quality chair compared to toilet paper Joel wrote here). The sort of chair that the hip start-ups in the Valley choose to show how cool they are and how valued the employees are has always been the Herman Miller Aeron Chair.

Unfortunately I’ve never worked anywhere that values me enough to buy me an Aeron chair, so instead of shelling out Β£700 for an office chair they’ve preferred to shell out a tenth of that. And that’s been OK. However, since I started working from home it’s meant sitting in my 10 year old cheapo office chair for up to 10 hours a day. And it’s been painful.

Since it offers no back support, lumbar support, buttock support or any other kind of support that a chair should provide I’ve had more than my fair share of aches and pains. My good lady has had to give me numerous back massages to get rid of the searing pain in my shoulders. I soon decided this couldn’t go on and it was time to splash out on a new chair. At the back of my mind the Aeron chair was always there and no matter where I looked I couldn’t find anything good enough (even the top-of-the-range IKEA chairs wouldn’t cut it). So I decided, if it’s good enough for John Topley (who has one), it’s good enough for me – I’m buying an Aeron chair. And then, while about to shell out the requisite Β£700 I came across the Mirra chair, also by Herman Miller.

The Mirra chair, while Β£200 cheaper than an Aeron, is really the new Aeron chair. It’s more adjustable than an Aeron, more recyclable, looks cooler (IMHO) and has myriad colour options (unlike the Aeron). Since the thought of a black chair in my home office wouldn’t go down too well with my good lady (it just wouldn’t match the decor), I realised that we could customise the Mirra to perfectly match its surroundings. So with a deep breath and credit card in hand I ordered the most expensive chair I’ll ever buy. And a couple of days ago it arrived!

My Mirra Chair

So, was it worth the money? Well, to be completely honest I’d have to say yes. It’s worth every penny. As soon as I sat down in it, without even making any adjustments, I found I was sat in a position that was really good for my posture (my posture is usually terrible) and I was completely supported in all the places I should be. I could sit literally all day and know I wouldn’t get the slightest bit of back or shoulder ache. Some tweaking later and the armrests are the perfect height so I can use the keyboard with no effort or strain. It is without doubt the most comfortable chair I’ve ever sat in and really, all office chairs should be like this.

So since I’m not knackered after a full day’s working it means the quality of my work will increase as I won’t be battling fatigue and pain. Instead I can concentrate on what I’m doing. If you too spend your working life stuck at a desk in front of a computer screen you owe it to yourself to get your boss to buy you one of these chairs. And if they say “no”, then sounds like you need to change jobs – it certainly worked for me, kinda! I just know that in 20 years time my older self will thank me for spending a bit of cash on a chair now to save the medical bills later.


Getting Up To Speed


One of the frustrating things about starting a new job is the time between starting and the time I’m actually productive. I’ve had 6 jobs in the last 10 years and the process usually goes something like this (in a sort of rough order):

  • Say hello to everybody then immediately forget their names.
  • Find out what the product or products I’ll be working on actually does and start trying to understand the field I’ll be working in (be it financial, sales, electronics or whatever).
  • Figure out how the source code for the software is organised and have a look at it to get a basic idea of the quality of the software, how it’s organised and what not. Nothing too in-depth.
  • Try to understand how the team culture works: do they have friendly banter? are they all-business? are they all prima donnas? (if so polish the CV and get out).
  • Get my first piece of work. To do this I need to…
  • …work out who “owns” each system or sub-system. When working on a system there’s always someone who understands it intimately and has some sort of ownership of it (whether they want that glory or not). Since software is a complex beast you can’t always understand all of it all of the time and when you’re working on it you’ll invariably have to interrupt this poor person quite a lot while you learn about it.
  • Following on from that I need to know who the business brains are. They are either customers or colleagues who are less techies and more business types. These are the people who appreciate the software from the user’s perspective, understand the problems the software has to solve and I need to build up a relationship with them. Doing this means less of me misunderstanding what I’m doing and having to go round the houses again and again.
  • Slowly get up to speed with the business as I do more projects / pieces of work. Writing software is the easy bit, working out what the software needs to do and all the nuances of the business that the software operates in is the tricky part and takes time.

As I progress through those stages I become more and more productive and the quality of what I deliver gets higher and higher. But it takes time and when you hire new people you have to appreciate that despite having to pay recruitment agents you also have to pay for the time it takes for them to get up to speed and the impact on their colleagues as they learn the business before you see a healthy return on your investment. I always find it frustrating because I know I can gather requirements, write specs, build and deliver software, but like I said they’re the easy things.

However this time it’s been a lot easier. Since I’ve joined a team I’ve worked with before I already know the people and I know the culture they work in. I’ve already worked in the industry (financial) with them and have done all the learning about what the market entails, what the software we’re building needs to do and enough to be effective when I worked with them last time (it’s amazing what knowledge gets buried in your brain but can come back when you need it). I know how they organise their code as I helped them choose the systems to do it. Since we’re working from home most of the time and I know the guys so well I don’t hesitate to pick up the phone or use IM to talk things through – whereas if I was a new-hire who’d never worked with them I’d probably feel a lot more isolated as it’s hard getting to know people via non-physical communication channels.

As it’s a new product we’re building I still have to learn about the software (how it’s designed and where everything lives) but that’s a much quicker process than getting to know people and learn about the industry you’re working in. All in all it’s slashed my start-to-productive time. Although that’s a double-edged sword as it means I’ve got no excuses for delivering pretty much straight away! I better get back to it! πŸ˜‰


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! πŸ™‚

Update (2010): Read all about how it went and what happened next here!


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! πŸ˜‰


We Haven’t Changed A Bit


I met up with some ex-colleagues on Friday night. I met them when I started my first job in Leeds for a company who shall remain nameless and I remember the time fondly. Not for the work, because that sucked. My timing was out as when I joined them there wasn't really anything relevant to my skill-set for me to do (they were a sort of consultancy / body shop / pimping operation) and I was young and cocky so I was a tad pissed off to be sitting around reading rather than working with shiny new technology.

However all was not lost. You see we had table football.

As soon as the clock struck 12 we'd surround the table and the banter would begin. At times I could barely stand up for laughing such was the quick wit of some of the guys. Even when not playing it was hilarious to watch two protagonists trying to win the game, and if not the game then putting off the other one. Oh, and of course fighting like crazy to avoid the shame of a 10-0 hammering.

There was the power player, the skillful one, the show-boater, the people's champion (who's always the moral victor), the shoot-on-site one and of course the lucky one (I hate lucky people!). They all know who they are! I was never much good at it but it was a lot of fun and better than writing another tedious white-paper nobody was ever going to read. It certainly served to get rid of some of the frustration of the job!

So we met up for the first time in quite a while as I said (we've all kept in touch but just don't together often enough) and it was a real laugh. Even though 4 years have passed we were right back there discussing the finer points of goading an opponent to lose at table football and such like!

There are some people you meet and for a time you're really close, have a great time and are best friends. But when that time passes and you only meet up now and then, it's never quite the same again as the shared experiences are in the past. Fortunately with these guys it's like no time has elapsed at all and we picked up from where we left off. I guess that's my definition of true friendship. You don't need to work together or spend a lot of time together, but when you do things are just back the way they were.

And you know, I'm sure I dished out a 10-0 hammering one time to Nige… I just bet he's blanked the trauma of that out of his mind – but I never will! πŸ˜‰ 


The Company Photographer


I spent a good part of Tuesday taking pictures of attractive women.

Perhaps I should clarify that a bit. We’re doing some work on our extranet and the idea came up that we should get some photos of our sales people – some team and individual shots – to show our customers that there are real people at the end of the phone. As I’m “into” photography I naturally volunteered to take the pictures. It was an interesting experience for several reasons.

Firstly, it was nice finally getting to talk to a lot of these attractive women I’ve only seen in the cafeteria and realise how nice they are. It’s amazing how you construct someone’s personality in your head from their appearance but that can turn out to be completely wrong.

It was fun trying to get people relaxed when I was taking their photo. A lot of women (usually the really good looking ones) don’t seem to like their picture being taken so I had to try a bit of banter with some to get them to oblige. And some of the complaints afterwards that they look terrible just mystifies me – why do the pretty ones often have such low self esteem? Still, I wish I’d discovered photography when I was younger and single – it’s a great way to get to meet women!

I also got a glimpse of what a pain being a photographer must be. You’d think that to get a team photo of, say 10 people would be easy enough. Just show them where to stand, get them to smile and click. But you really have to take control of people, get each person to stand in the right place to balance out the shot and pay attention at the back!

I think I’ll stick to the day job, although I’m rather pleased with how they came out. I had to continually resist the urge to go for good portrait shots or something arty. We wanted people to look like they were on the phone or something whereas my natural instinct is to try and get the best shot of people that they’d want to put on their wall at home or something interesting and a bit different. I guess sometimes you have to sacrifice creativity for work. It was fun though!


Why Does My ASP.NET Cache Keep Clearing Itself?


I’ve just spent the last week or so doing some testing on our ASP.NET application. We’re in the process of porting it from ASP.NET 1.1 to 2.0 and it’s been an intriguing voyage of discovery so far. But after a random period of time the software would stop working – page postbacks would fail, data we were storing in the cache was disappearing and it was driving me crazy! The only way to get things working was to reboot my machine. One step forward, two steps back.

I eventually figured out what the problem was (I had several red herrings to work through first as is always the case in such things). I put a callback onto inserts into the cache to determine why items were being cleared out of it and interestingly at certain points I’d add something and it would be removed immediately with a reason of “underused”. This is ASP.NET’s memory collection at work deciding that as my machine is so low on resources it would try and save as much as possible. The following change to web.config (in the System.Web section) sorted it out:

  <cache disableMemoryCollection = "true"
    disableExpiration = "false"
    privateBytesLimit = "0"
    percentagePhysicalMemoryUsedLimit = "90"
    privateBytesPollTime = "00:02:00"/>

The reason I was getting the problem so often was that my work laptop died and the one I’m using until I get it fixed is far less powerful and has a lot less memory. So it was happening frequently on my machine, less frequently on everyone else’s, even less frequently on our test server and very rarely on our live server (the problem also effected our ASP.NET 1.1 version). Still, it’s a nice feeling to have figured it out.

Of course the real problem wasn’t the cache recycling at all – it’s perfectly natural that the cache should clear itself out when it wants. The problem was that when a particular object was no longer found in the cache by our software, the code wasn’t properly re-populating it from the database. So with that fixed we shouldn’t need to turn off the memory collection at all.

And to think, if it wasn’t for my laptop expiring this would probably have remained a random, undiagnosed crash for quite some time yet. It’s a tricky old game this debugging one…


Another Certificate For The Wall


Well, my 3 day course on SQL Server 2005 is over and done with. I certainly learned a few things I wouldn’t have come across and have some things to think about. I still wouldn’t want me to administer a mission-critical SQL Server box but I have more of an idea of some of the cool new things you can do.

Not only did I take some knowledge away with me but I also got a Microsoft Certificate of Achievement as you can see below:


Yep, you can see the pride in my eyes! I haven’t found a place to put it yet so I’ll leave it in a drawer until I do – it may well spend the rest of its natural life in that drawer alongside those old phone chargers I never use. Oh yes, you can’t spell “John’s Adventures” without “Adventure”. I really need to get out more. πŸ˜‰