Tag Archives: Apple

So I pre-ordered an Apple Watch

Unsurprisingly the Apple Watch has sold out fast. Incredibly fast. Pre-orders were supposed to open at 8:01 in the UK. They were a few minutes late getting the Apple Store back on line (I know, I was hitting refresh every 15 seconds). I then went straight to my preferred watch, double checked the size using the scale images, and hit order. It can’t have been 60 seconds after the UK pre-orders went on line. And yet they had already sold out of my chosen watch. Delivery date for me is sometime next month. Which kind of sucks.

The whole Apple Watch thing has been a dilemma for me. I like wearing watches. For a long time I wore a very nice black ceramic watch. Sadly it was fragile and when I broke the strap a second time I decided I would keep the hundreds it would cost to fix and wait for Apple’s offering.

When the Apple Watch was finally announced I was… conflicted. I love what it does, although I do find it ironic that I want some of the features to save me having to get my overly large iPhone 6 out of my pocket. I’m not sure about the looks. They’ve grown on me, but it’s very iPhone, or iPad 1. Chunky would be a good adjective.

And herein lies the problem. The Apple Watch I wanted, with the black link strap, is damn near a grand. At that price it’s jewellery and my expectations for looks go from high (as they are for consumer hardware) to extremely picky. Then there is the question of resale value if I want to upgrade – how much of my thousand pound outlay will I lose? And finally the whole thing is an unknown quantity. Is it just a gimmick that I will tire of in a month? Or will it become central to my life like my laptop and my phone?

Oh, and it’s ‘Rev A’ in every sense of the word. It’s the first run of this model, and the first ever consumer build of a watch they’ve done. It’s likely to be less than perfect. I expect Apple Watch 2 to be sleeker, faster, better and have longer battery life. And I expect that in 12-18 months time.

So splashing a grand that I don’t have on an unknown quantity that doesn’t quite flick all the aesthetic switches becomes difficult to justify. But I still wanted one.

The obvious compromise here is to go for the Sport version. It’s considerably cheaper and will loose less money in real terms when it comes to resale, be that for an upgrade or because I no longer use it. And if I’m compromising I may as well go the whole hog and get the smaller watch. It’s £50 cheaper, slightly less bulky and could potentially go to my wife if I did upgrade.

Call it dipping a toe in the water. I get a seat at the party, albeit a few weeks later than some. I get to live with a smart watch for a while and have time to put together stupid amounts of money for Apple Watch 2 if it turns out that it is everything I hope it is.

iPhone Galaxy 6, Part II

I woke up this morning to discover #bendgate (or #bentgate, I’ve seen it both ways). In a nutshell it turns out that if you take a large, flat, thin object – for shiggles let’s say an iPhone 6+ – and make it out of something fairly soft – the thin aluminium iPhone case for example – it doesn’t take a huge amount of force to bend it. Said force could, in fact, be provided by simply putting the phone in your back pocket1 and sitting down. Sadly the internals of the phone and it’s screen are less malleable, meaning your bendy phone may stop working. The 6 is less affected thanks to its smaller size, but it’s not immune either. Great.

I’m pretty sure making the phone just a few mm thicker, using a thicker shell, fitting a slightly bigger battery and having the camera flush to the back would have made an all round better phone. But no, Apple had to make it thin.

That said, this happens every time Apple releases a phone; a couple of days later someone finds something fundamentally wrong with it and Apple are declared to have screwed the pooch. I suspect that, just like every other “fatal iPhone flaw” this will disappear quickly enough and be forgotten about after having bugger all effect on sales. That’s not to say the phone doesn’t have plenty wrong with it, but I don’t think it heralds the death of Apple, and I have no doubt that the phones will continue to sell in huge volumes.

The news comes, rather ironically, just as I decided I am going to persevere with my iPhone 6. My reasoning is that, given past release cycles, we can assume there will be a 6s which will be almost itentical to the 6 externally. Basically I’d be pinning my hopes on an iPhone 7 in two years time before moving from the 5s. I rather suspect the iPhone 5 form factor will either be killed off, or turned into the budget phone by then, leaving me with no options other than dealing with it or obsolescence. I’m not sure I can cope with obsolescence so I’ll just deal with it now. I still reserve the right to bitch constantly about it, poke fun at the ridiculous size of the 6+ and generally bemoan the travesty that is the iPhone 6.

So have we seen peak Apple? Is this the beginning of the end? Hopefully not. This isn’t the first time Apple have done this recently. OSX Lion took Macs in a dangerous direction that started ostracising pro users and generally making OSX much more like iOS. Another step in that direction would have had me going back to Snow Leopard until it became obsolete before finally switching to Linux. That would have been a sad day. Thankfully Mountian Lion and Mavericks addressed many of the issues Lion introduced and trend is a positive one again. I’m very excited about Yosemite.

My hope is that Apple will realise they’ve made some mistakes with the iPhone 6 and correct them. With some tweaks to the OS, and with App developers creating UIs for larger screens, hopefully we’ll also see usability increase. Until them I shall tolerate the phone and try and concentrate on the fact that is does have a nice screen.

Incidentally, unlike my last blog entry this wasn’t written on my iPhone. While I’m slowly coming to terms with typing on that I’m not a complete idiot.


1 A pocket you’ve probably chosen because the phone is so stupidly large it doesn’t fit anywhere else

Apple, I am very dissapoint…

A friend of mine once expressed surprise at a long email I’d sent from my iPhone 4. To him, typing that much on a phone was a long and arduous process. For me, the iPhone keyboard was well designed, easy to use and something I could write long documents with using a single thumb.

Even the iPhone 5, which I expressed concern about due to its larger size, only increased the height so typing wasn’t affected. It just meant reaching some rarely used (~1%?) parts of the screen required a stretch.

Sadly the iPhone 6 changes this. It’s both wider and taller than the iPhone 5 which means I can no longer reach the whole screen with a single thumb. This is a big thing for me.

If I position my hand so I can type [relatively] comfortably [and then only for short bursts] I can’t reach the top 2cm of the screen. This means I can’t post a tweet in Tweetbot, can’t send an email, can’t press “Done” in numerous apps without using two hands – or doing some kind of digital gymnastics with my hand to shuffle the phone about and risk dropping it.

Now I get that people want large phablet phones which they’ll use with two hands, but that’s not everyone. Some of us were happy with our 4″ screens that we could use one handed, not some halfway house that is neither a phablet, or a 1 handed phone. I don’t get why we weren’t given the option of regular and large, rather than large and stupidly large.

So I have three choices: fundamentally alter the way I use my phone; deal with the fact that using my phone is going to be much slower and cause thumb ache; or go back to my iPhone 5s. The third option is seriously tempting.

Having dumped North of £600 on a new gadget I want it to be perfect. I want the feeling of joy I got from my iPhone, my iPhone 3, my 4, 4s and 5s1. I don’t want some cheep looking, plasticky Android clone that’s a pain in the arse to use.

There are other issues too. Moving the top button to the side makes things awkward for a southpaw like me. Every time I go to put the phone to sleep I end up hitting the volume buttons too. Screenshots are awkward to do now, as is resetting the phone.

Design decisions like having the camera protrude are questionable. The phone doesn’t lay flat, something that’s exacerbated by the lack of dock. I think Apple would have been forgiven for making the back flush with the camera and having a bigger battery.

The styling on the back is not to my taste. Whatever material they’ve used for the lines top and bottom looks cheap and makes the metal look like painted plastic. I think it’s those, more than anything else, that detract from the “premium product” look an iPhone should have.

So what does this £600 fondleslab give me that my 5s doesn’t?

Well thumb and arm ache for starters – writing this much text is a serious chore2.

Faster CPU – except I don’t play games on my phone and, unlike my 3, the recent OS updates haven’t seemed to adversely affect my 5s.

Bigger screen – which is a nice screen, but I’m not sure it’s worth the price in terms of usability due to its larger size.

Better camera – meh, the one on the 5s was OK and nothing compares to my DSLR anyway.

Barometer – nothing uses it yet that I can see, although that’s one thing I was looking forward to having.

Apple Pay – I’m in the UK, we’re not getting that for a while and we already have NFC in our cards.

A lot of my Fandroid friends have been teasing me of late that Apple are playing catchup with Android. I disagreed; different users, different goals, different ideals. Apple don’t play catchup, nor do they lead the way: they look at what people are doing and forge a different path. What appears to have happened with the iPhone 6 is that Apple have forgotten this. They’ve played catchup with Android, and they’ve lost. Welcome to the iPhone Galaxy 6.


1 I didn’t get the 3s and the 5 due to not being able to afford them at the time

2 The main body of the text was written on the phone, but I gave up and edited it on my laptop

Of VGA Adapters and Sods Law

So, my shiny new MacBook Pro has an advantage over my old one insofar as it’s got an HDMI input. This means when I’m using it connected to modern and civilised projectors I can just use an HDMI cable and be done with it. Still, it’s not guaranteed that people have projectors with HDMI inputs so I normally pack my Mini Display Port to VGA Adapter just to be on the safe side. I also normally head to talks direct from the office so I keep it in a drawer there to be packed when I head out.

Tomorrow I’m doing a talk at Cromer Academy. Since it’s free of direct government control I’m going to give it a 50/50 chance of a brand new, state of the art projector with every port known to man, and an old projector that accepts VGA as an advanced input. These odds will, of course, be affected by certain factors; like me forgetting my VGA adaptor. I remembered at 9:50 this morning on a day where my wife is at work, I don’t have access to the car, and I have my daughter to look after. We were heading to the Zoo for the morning.

What resulted was categorically not me cutting short zoo time and making a Herculean dash for the office on rural public transport on a Sunday. No, that would result in tantrums. Instead we went on a fairyland adventure with trains, river walks and a castle (hurrah for Norwich’s historic architecture) resplendent with a hastily bought picnic on the train. Spin at its absolute finest.

I am now armed with my VGA connector, the child has fallen asleep from all the excitement and I’m in desperate need of a shower having charged round Norwich with a pushchair in a heat wave. I expect fate will repay me with some fancy 8K 3D projector that wirelessly displays images without the need for any adapters.

The Joy Of Development

It would appear someone has stolen my week. It’s Thursday afternoon already and I left the office wishing I could stay for another hour or two as I was on a roll and wanted to finish what I was working on. While I do have the ability to work on the train it’s offline for most of the journey, and interjects a 30 minute delay which is enough to derail any train of thought. Instead I need to wait until I get home to finish off.

It’s been a long time since I’ve been caught up in The Joy of Development at work. Too long in fact. I’d almost forgotten how much fun it is to take a complex problem and provide an elegant solution. I’d also forgotten how much of an arse it is to get OSX to play nicely as a web server – something the Apple make even harder when you’ve got OSX server running on the box. Still judicious amounts of Googling and sudoing have fixed that issue so shortly we shall have beautiful reports and pretty graphs coming from our CI builds which we can proudly display in the office on our dashboard screens.

Next job is to take the rather meta PostIt note from the whiteboard1 saying “build Kanban board” and turn it from a makeshift board with a few things stuck on it into a work of functional art. Then we can take the newly purchased PostIt notes, write down everything that needs to be done between now and the 21st2, panic at the size of the backlog and then wish we hadn’t visualised it.

All of which is a nice segue-way into a weekend of learning about continuous delivery into the cloud and blue/green deployments; although I could quite happily handle several more working days in this week before the weekend. I’ve missed enjoying work.


1 Actually, there’s two of them, and this one is on the left, so technically it’s the wheftboard, not the whiteboard… anyone? … no? … One is on the wheft, one is on the white? … really? No-one? Fine, forget it.

2 Release date for our open beta; sign up if you haven’t, it’s rather cool stuff. Also the date of my next talk, which I really need to get finished.

goto fail

If you’ve ever worked with me (or had me review your code), you’ll know that I am a stickler for good coding standards1. I consider a Checkstyle failure a build failure and it does cause the build to break. The reason for this is that we’re human, we make mistakes, and by adhering to good coding standards we can minimise the number of mistakes we make.

One of my absolute bugbears is single line statements with no braces2. My preference is:

if (condition) {
    action();
}

Since this isn’t a post about the ongoing Holy War on where the braces should go I will also accept:

if (condition)
{
    action();
}

I will grudgingly accept:

if (condition) { action(); }

I’m more inclined to accept the above with languages like Javascript where this is a commonly used convention.

Unless you’re coding in Python or similar I will not accept:

if (condition)
    action();

Why not? Well it’s just asking for failure. It’s so easy to just add another line and suddenly have something accidentally be executed that you didn’t want. Python gets round this with indention, which is significant, other languages just trip you up.

How bad can it be, I hear you ask? Well lets consider the following snippet of C:

if ((err = SSLHashSHA1.update(&hashCtx, &signedParams)) != 0)
    goto fail;
    goto fail;

We are quite literally going to fail. This is a snippet from sslKeyEchange.c which is responsible for this little nasty. Ignoring the fact that the code is a whole series of WTF’s piled on one another it’s a bug that could have been so easily spotted by just using braces.


1 The actual phrase used would imply that my policies on coding belong in WWII era Germany.

2 For languages that support them.

OSX Screen Saver Bug

Screen Saver PreferencesJust had a really weird bug with Screen Savers in OSX after upgrading to 10.9.2. I use hot corners to enable the screen saver (and thus lock the screen), but this stopped working after the update. Quick Google suggested it wasn’t actually the hot corners not working, but the screen saver. Further Googling uncovered it was something weird to do with the “Start after” setting. I had this set to “Never“. Changing this to “1 Minute” caused my hot corners to start working again. Changing it back to “Never” and everything was still fine. Most odd.

Eclipse, OSX and JDK 1.7

Despite being a massive Mac fanboi I am the first to admit that as soon as you start going a little off piste with OSX you run into problems that require technical knowledge to fix. Java development on the Mac falls into the category of off piste and it has always been more than a little fun getting things set up.

Now that Oracle are providing the JDK it seems that things no longer live quite where they do which left me scratching my head when trying to get Eclipse working with JDK 1.7.

Installing JDK 1.7 is easy, go to the Oracle download page, grab the 64bit OSX DMG, open, run, job done.

$ java -version
java version "1.7.0_45"
Java(TM) SE Runtime Environment (build 1.7.0_45-b18)
Java HotSpot(TM) 64-Bit Server VM (build 24.45-b08, mixed mode)

Now to tell Eclipse where the JDK is:

$ ls -l `which java`
lrwxr-xr-x  1 root  wheel  74 24 Oct 15:37 /usr/bin/java -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java

Great… except Eclipse doesn’t recognise /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/ or /System/Library/Frameworks/JavaVM.framework/Versions/Current/ as a valid JDK location.

A bit of Googling I discovered the magic java_home command.

$ /usr/libexec/java_home -v 1.7
/Library/Java/JavaVirtualMachines/jdk1.7.0_45.jdk/Contents/Home

Giving that directory to Eclipse made it happy and I’m now able to use an up to date version of Java for my code.

NorDev 2 – brought to you by the MacBook Pro

For impartiality here I should probably point out (if you hadn’t worked it out already) that I’m a rabid Apple Fanboi and love most1 things they do.

Falling as I do in the anti Windows camp it’s little wonder I haven’t done any .Net development2. Personally I don’t have anything against .Net, from what I understand C# is just Java written with the benefit of hindsight, which can only be A Good Thing™, plus there is plenty that you can learn from the .Net camp that applied to the broader world of programming. It does amuse me somewhat, however, that the two .Net centric talks we’ve had so far at NorDev have been given on Macs – albeit running windows.

Yesterdays talk was by Simon Elliston Ball3 on Glimpse, a very funky looking debugging tool for .Net web developers which I really, really wished existed for Java developers as I could seriously do with a tool like that. Glimpse is open source and well documented so I would recommend you go check it out. It’s also very extensible so if you fancy writing a Java port for it I’d be eternally grateful.

Our second speaker, Phil Nash, also used a Mac, but that’s hardly surprising as he was giving a talk on TDD and iOS development, something that’s not going to work on anything else. After a brief introduction into Objective-C, which is a funny old language, we were then shown some techniques to effectively use TDD when writing iOS (or in fact any Objective-C app) with some live coding examples – something I always enjoy watching. Interestingly, 100% of all NorDev talks have ended with someone called Phil live coding on a Mac. You may argue that a sample size of 2 is not statistically significant but it still doesn’t stop it being fact 🙂


1 Im not a complete fanatic and will admit there are some things they’ve done wrong, for example: mice. Apple are a company that seem incapable of making a good mouse. Trackpads they can do; mice, they suck at. I get my mice from Razer. They know how to make mice.

2 Yes, I know there’s things like Mono which means I can code and run it on other platforms, but… faff.

3 Elliston Ball is a double-barrelled non-hyphenated surname – can your code cope with that? Not entirely sure all of ours can. There’s a lesson to be learned there 🙂


New Mac Pro: *Want* *Need* :(

Recently I’ve been looking a building a gaming rig. My main desktop now resides at work, and my laptop really isn’t cutting the mustard on the gaming front. Historically I’d just go to Alienware and hand over a few grand, but since they’ve been bought by Dell I’ve found the build quality to be substandard1, and I really don’t have the £40002 for the rig I want. Also the current cases are fugly as hell. My last rig was actually a stupidly expensive Mac Pro – not the best gaming rig in the world, but it’s still going strong some years on. No, the only option was a custom build.

Cue about a week of scouring the internet for cases, and hours upon hours of YouTube reviews and case porn. I want this thing to look good. Seriously good; to the point of taking £300 of my budget and throwing it at a Cosmos 2 case…

…and then Apple announce the new Mac Pro and [almost] all consideration of getting the best gaming rig money can buy goes out of the window. The phrase “shut up and take my money” springs to mind – in fact “shut up and take my firstborn” has crossed my mind :S.

There is just something about [some] Apple designs, and the new Mac Pro flicks my ‘must have‘ switch. The Mac Cube3 was the first Apple product that caused this, then the first, second and 4th iPhones, the iPad 34, and the 30″ cinema displays also caused the same reaction. Luckily for my wallet the iPhone 5 and retina display 13″ MBPs have fallen into the really want category, which I can, with great force of will, resist.

Ultimately I suspect reality is going to come crashing down on me and the need to shift a certain amount of polygons per GBP will win out here5. What I will be left with is a very big, very brash, very fast games rig, but in my heart I will be pining after a fairly small, very sexy, stonkingly expensive workstation. A lottery win would seriously help with this first world problem.


1 It’s kind of upsetting to find out that the water cooling option has simply been rammed into a case designed for air cooling, putting pressure on joints and ultimately causing coolant to spill all over my pair of £1000 [each]2 GFX cards, shorting them, 3 days after I got hold of the rig – and yes, I’m well aware you can add stuff to water coolant that makes it non conductive, and no, I don’t know why they didn’t add it.

2 I don’t piss about when it comes to building rigs.

3 Sadly that was quite a bit of style over substance, and System 9 was shockingly bad. By the time OSX came out and made the machine all it could be the hardware was a bit dated.

4 Sorry, the old “New iPad” – Apple do like to confuse with model names.

5 While I don’t buy the whole “Apple is too expensive” argument as it’s often comparing Apples with pears [or PCs :)], there is no denying that if you want to build something to shift as many polygons as possible for as cheap as possible you want non Apple hardware… and, sadly, Windows.