Business : Development

Somehow I've been writing code for a living for 20 odd years now. During that time I think I've spent some time as almost all of the stereotypical developer types, including:

  • The new guy who thinks he knows better than everyone else.
  • The old hand with a whopping two years experience who definitely knows it all now.
  • The team leader who has to deal with newbies who think they know everything.

And so on.

As old workmates, especially my old managers will attest, the one aspect of being a developer that I've always shunned is the commercial and business side.

In the last few years though there's been a bit of a change. Well, more of a complete u-turn worthy of a politician really. I now stand with a foot firmly in each of the technical and commercial camps of software development. I still write code occasionally, but I also work with directors and sales talking to clients and helping to shape our offerings with an eye on the bottom line.

Whilst this previously horrified me, I now see it as a greater challenge than coding alone. There are only so many times you can write database access code, or an XML web service before it loses it's appeal. Yes, new languages, frameworks and technologies come along and my interest is sparked again (iOS and Microsoft MVC have got my coding juices going at the moment) but there's still the need for a greater challenge.

Now, instead of seeing a problem along the lines of 'how do we write an online course booking system?', I see it as 'can we build a course booking system that meets the clients needs cheaply enough so that we can charge a reasonable per-transaction fee to get the clients business off the ground, pay for our development, and have the business earn enough to be sustainable?'

That's very different problem. Yes, there are coding aspects to consider but having to factor in business considerations such as  'what's the smallest amount of code we have to write in order to satisfy the clients investors?' makes it much more interesting.

Why didn't I realise this before?!

I expect that there are wise old heads reading this and nodding who have known this all along but it seems I'm quite slow on the uptake.

The thing is - does adding some commercial awareness always make for a better developer?

I think that if a developer is being paid by a business, then yes, some commercial awareness will make them a better developer - as far as the business is concerned.

"The business” is an important point. A better developer according to who, and by what metric? Most developers think they are the best programmer in the world and won't really care what any non-technical management think.

The thing that has taken me a long time to appreciate is that those non-technical management types are probably working very hard to ensure that the company has enough work to keep those developers in a job. And in order to keep doing that they have to make decisions that keep clients happy and the money coming in. When viewed from a purely technical aspect a lot of those decisions will seem crazy.

So I’d say a degree of commercial awareness will help all developers. At the very least, it will help them appreciate other areas of the business and not take their salary for granted. At the most, it’ll make them a lot more effective and the job way more interesting.


Waffle about: 

Launching in 3... 2...

If you've just migrated to XCode 7 and your app is appearing slightly letter-boxed with black bars at the top and bottom then this might help.

Apparently the root issue is that storyboards now expect to have a launch image and something in the process of launching your app goes awry if there isn't one which results in the storyboard not sizing properly.

There's a more technical explaination out there, but that's the gist of it.

To sort it, all you need to do is add a launch image (Files, Add, iOS, User interface, Launch image). AND, in my case, set the project to use it:















Waffle about: 

Need a holiday

Everyone goes away for a summer break right? Well not me. Not usually anyway. But a couple of days ago we got back from our first proper family holiday in.. well, ever really.

We went all in and did the Disney world Florida thing, with an added weekend away / road trip in the middle to visit friends in the US we’ve not seen for a decade.

Overall, it was great. The family had a good time and I think the break did us good.

But for me, it was quite hard. It involved all the things I don’t like. Traveling, airports, flying, crowds, heat, queuing and a large dollop of ‘the unknown’ which seems to bother me way more than it ever used to. But I learnt a few things along the way...

  • Driving in America is more relaxed than the UK.
  • Big Macs do not taste the same the world over.
  • Root beer is alive and well.
  • My hair gets hot enough to burn other people in direct sun.
  • American coins don’t all have numbers on.
  • Tipping means service is way better than in the UK.
  • American TV is appalling - no wonder they invented Netflix.
  • You can buy almost everything with Mickey Mouse on it.
  • There is such a thing as too much choice.


I guess travel really does broaden the mind. (As well as the waistline in this case.)


Waffle about: 

The application of beans

I’ve had my mid-life crisis, sorry, sports car for several years now. It mostly sits on the drive looking angry and collecting bird crap.

We have a strange relationship. I fuss over it, needlessly worrying about the smallest thing and hate parking it anywhere in public. The strange bit is that this attitude is completely reversed once we’re at the track. Then I drive it like I stole it, flirting with the rev limiter on most gear changes and tutting at the manically flashing (nay shouting) traction control light as I take each corner slightly too fast. (Yes, yes, I’ll turn it off - next time. And once I address the ’slightly too fast’ issue.)

A clear example of this being the time it decided to *ahem* leak a bit of petrol whilst on a track day. I noticed it leaking from behind the filler cap, out over the rear bumper. But, my track day brain said “it’s not dripping now so it must only be under lateral g-forces” and out we went for another session. Had that have happened at home I would have been a nervous wreck.

Today wasn’t a track day. It was a rather dull Sunday and I was out of coffee. As the whizzy car hadn’t really moved in a few weeks I decided to pop to Tescos in that and get its oils flowing.

On the way back I took the longer, dual carriageway route home and applied a law abiding amount of beans, officer. After a few miles I looped round a roundabout to head home.

Then it happened. As I left the roundabout there was nobody in front of me. Two straight lanes in front, 333 nicely warmed up BHP under the bonnet and some recently purchased wine behind me in need of the fridge.

So I did as BMW’s M division intended and smoothly yet swiftly applied the loud pedal.

No, nothing bad happened. Instead I experienced what Evo magazine’s strapline calls ‘The thrill of driving’. The acceleration, the noise - oh, the noise, and the feel of the road in my hands. It brought a genuine smile to my face which I hadn’t noticed I’d been missing for a while.

Alas traffic, legality and common sense put an all too soon an end to the feeling, but it was great whilst it lasted and the wine was in the fridge in good time.

Waffle about: 

Hacked Off

Yup, my site was hacked. My own silly fault really, as I forgot to update the underlying CMS when it had a rather nasty security issue a while back. In my defence, I updated all the other instances that my clients use but I forgot my own personal site. Ah well.

It started with a text at 0900 on Sunday morning from my work mate Jonny saying it looks like my site has been hacked. A bleary eyed check via my phone confirmed that whatever my domain was serving up, it wasn't what I put there. Bugger.

In fact, it looked like this:


Firing up the laptop and after checking all my other sites with a bit of a sweat on I confirmed it was only my personal site. Ok, not tooooo bad then. I have backups, somewhere.

Poking about on the server, I found a bunch of files that aren't part of the Drupal installation, and were put there over night:

Yes yes I should have taken a full 'forensic' backup, but it was Sunday morning and I was operating in a severely under-caffinated manner. Instead, I deleted the files and hoped for the best. Neither of which made any difference at all.

Ok. I then removed the sub-domain that pointed to the Drupal installation and went in search of coffee (sub domain edits take up to an hour to take effect)

A coffee, some breakfast and a while latter I checked again... no change. Not sure how that can be... There's nothing pointing to that Drupal install now. Ok, time to contact the hosting company. Which I did, explaining the situation and asking if they could check the sub domain deletion had actually worked.

It seems mentioning the word 'hacked' prompts a slightly more dynamic response than the usual support ticket. They (quite rightly) disabled my site and asked that I delete the nasty stuff before they would enable it again.

Fair enough. I backed it all up, then nuked it. Out of interest I poked about in the MySQL database and saw the hack had changed the admin user. No way I using that DB again anyway, but interesting to see.

Once my empty site had been enabled again, I reconstructed it from (not so) recent backups, and here we are.

As far as I can tell, they got in via this SQL Injection exploit -

The morals of the story....

  1. Back up.
  2. Apply security updates
  3. Back up (again. One isn't enough)
  4. Test that you can restore from a backup (ideally before you have to)


Waffle about: 

iPoint of Sale

It’s been almost a year since I waffled on about the then new iPhone 5 and what else people might want from a phone.

Now the iPhone 5S has been out for a bit, here’s what I reckon.

I previously wondered what else they could add in terms of hardware, and in the end they added three new features:

- Fingerprint reader
- M7 co-processor chip
- Faster CPU

Software-wise, you might have noticed that Apple also released iOS7.

Now, so what - you may well ask. Taken individually these new features seem like a bit of a gimmick in the case of fingerprint reader and only slight updates in the cases of the coprocessor and faster CPU.

But I think they’re just laying the groundwork for bigger and scarier things.

As Apple realised before anyone else (apart from maybe Amazon), it’s not about the individual devices; it’s about the infrastructure and reducing the friction involved when relieving customers of their cash.

With the new fingerprint scanner, assuming it’s accurate enough in real-world use, they’ve combined the devices in our pockets with our credit card details to produce walking points of sale. Tack on the new iBeacon bluetooth stuff and they’re about to make in-store tracking and payments as easy as Amazon made it online.

The new M7 chip basically takes care of capturing and processing all the data from the various gyroscopic, compass and accelerometer sensors in the phone, even when asleep, freeing up the CPU and preserving battery life. If basic gyroscopic sensors were good enough to navigate Lancaster bombers across Europe during WW2, imagine what the ones in an iPhone can do. All the time. Whilst it’s asleep. Some say scary, I say cool, a phone that knows when you’re driving and doesn’t disturb you.

Glueing all this together are the more boring features of the faster CPU and the new APIs in iOS7. Non-techies might not care but having more CPU power available means a lot more potential in terms of app functionality and the new iOS APIs make it easier to extract that functionality.

I think the new iPhone is greater than the sum of it’s parts and with my tin-foil hat on I know that its ultimate aim is to relieve me of (more) money, but I’m still quite looking forward to seeing what developers make of it’s new capabilities.

Waffle about: 

iPhone5? We want MORE!

It seems that people are disappointed with the new iPhone 5 release. Apart from Samsung that is, they seem quite pleased by it. I think both viewpoints are down to the lack of hardware features that make for great news headlines. The article writers wanted more to shout about, and Samsung are relieved that there isn't anything more to shout about.

The thing is though, I don't know what other hardware they could have added. The screen is now 16:9 and a decent resolution, it has 4G capability, a whizzy enough processor and a decent camera capable of full HD video capture. Without sounding like a troll, what's missing?

I suspect a lot of the negative attitudes (lack of traffic attracting headline-grabbing features aside) is down to the apparent lack of freedom. Yes, you have to use iTunes, yes you need Apple TV to connect to use Airplay and yes, you have to use the App store to buy stuff. The thing is, I like that. We're a Mac household. We don't have a household Windows PC that we all use - just MacBooks, iPhones and an iPad. So I quite like the way they all 'just work' with each other.

I understand that the lack of tinkering options and being 'forced' to use Apple stuff is a deal breaker for others, and that's cool. But their deal breaker is exactly the reason I like it. I don't want 15 different ways to be able to do something, with the option of adding more - I just want one way that works.

Waffle about: 

Outburst, me?

Having removed the car based content from this site and moved it to Owners Diary, I thought I'd carry on with this content-type specialisation stuff and create somewhere for me to rant as well.

There it is. An outlet for my rantings that will hopefully result in this site evolving into something with a line of content that is more considered, thoughtful and less shouty.

Yeah, right.

Waffle about: 

Why So Quiet?

I just realised that I've been throwing all my words onto a different site recently which is why it's been a bit quiet around here.

As my car related ramblings had started to take over this site I thought it best to give them a home of their own. And then I thought others might want to do the same thing, and so Owners Diary was born

Whilst the entries at the moment are car related, there's no reason why other vehicles can't be included. The idea is to also have it remind you when things like MOT and insurance are due, once I get the basics sorted.

It's in closed beta at the moment, but please drop me a mail/tweet/comment/facebook post if you'd like an account to play with.

Waffle about: 

Things that make you go

This isn't a snobby rant, much, but is based on my genuine confusion.

I'm confused as to why people stick badges on their cars which lie. In particular, the BMW 'M' badge. Now, if you don't know what that is, it signifies that the BMW it's stuck to is the 'Motorsport' model of the range. Which in turn means that it's significantly different under the skin with uprated suspension, brakes, differential and engine. At least.

Now the key point is my qualifier 'if you don't know what that means'. The 'M' badge itself doesn't explain anything in the same way that 'turbo', 'V8' or '3.0 litre' do. It's just a letter, and if you don't already know what it means it doesn't really explain itself.

Conversely, if you do know what it means, you'll immediately be able to tell if the car it's stuck to is really the Motorsport model by virtue of it's extra exhaust pipes, flared arches, side grills, and (for the extra nerdy types) red needles in the dash dials.

So if you stick an M badge on a non-M BMW, the only people who will know what that means (and therefore the only people who could technically be impressed) will be exactly the people who know you're lying.

Waffle about: