So. iPhone 4S.


Let’s get this straight.

Apple have just announced their new iPhone with a dual core processor that’s twice as fast as the previous model, graphics that are up to 7x faster, an improved — global (GSM/CDMA) — antenna design, an all new 8MP camera that blows the previous 5MP one out of the water with its new sensor and lens AND it can shoot 1080p/30fps video with image stabilisation, plus a new OS that includes hundreds of features and updates, like in-built twitter integration, a new message system, reminders, better photo/video editing, newsstand and even some of those things that you’ve been moaning about for years (better notifications) plus the iCloud service that backs everything up for you without ever needing to plug it into a computer, not to mention probably the most advanced voice control system ever seen on a mobile phone…

…and yet you’re disappointed because it looks the same as its predecessor, rather than like that new design that the Chinese case factories were suggesting, oh and it isn’t called the iPhone 5.

Boo-fucking-hoo, you spoiled twats.

Grow up.

If Microsoft, Blackberry or any other company had announced these improvements it would be getting endless praise. Then again, if it were Microsoft it would have been called “Windows iPhone 4S Professional Edition for Windows Phone 7 Mobile”, and if it were Blackberry it would still have a physical keypad, thumb wheel and shitty little screen.


Stop complaining.

Fluency Admin 3.2 now available Finally go the new version to point where I could release it to the world — was more work than a normal update due to the significant changes to the default admin in WP3.2. You’ll notice I’ve bumped the version number up quite a bit, this has been done so that it corresponds with the version of WordPress that it relates too. I’ve also moved the project page over to my “Forty Seven Robots” portfolio site — something I hope to gradually do with each of the projects I currently maintain on this site. As always you can grab it from the WordPress Plugin Directory and also get more info on the new project page.

Link 17 Jul 2011

WWDC Keynote 2011 — My thoughts

I’m not nuts enough to get up at 3am my time to follow the keynote live, and I’m still waiting for the downloadable version to be posted (the streaming version just doesn’t do it for me), so this is all just based on what I’ve read on the Apple site, and heard via twitter. Please correct me if my assumptions are totally wrong or were elaborated on in the keynote itself.

I’m not nuts enough to get up at 3am my time to follow the keynote live, and I’m still waiting for the downloadable version to be posted (the streaming version just doesn’t do it for me), so this is all just based on what I’ve read on the Apple site, and heard via twitter. Please correct me if my assumptions are totally wrong or were elaborated on in the keynote itself.

iOS 5

First up, it looks like an awesome update, I look forward to playing with it — just need to convince myself that I *need* to upgrade my devices to the beta.


Possibly the most complained about aspect of iOS, its finally been given an overhaul — and its amazing just how similar it appear compared to some of the ‘fantasy’ and ‘jailbreak’ notification system that have appeared over the last couple of years.

The only bit I’m not entirely sold on, but will reserve full judgement until I’ve played with it myself, is the ‘swipe-down’ interaction to access the notifications screen. Now I’m not saying there is anything wrong with it, but I guess I just expected it to be in the form of another homescreen (or merged with the existing search screen) or as a standalone app. That said, showing the notifications on the lock-screen is great… now, can we get those widgets on there too?


Its the iChat you have without having iChat. Guess I will no longer need Textie or PingChat. Can anyone give me a good explanation why iMessage and FaceTime couldn’t be combined into one app? After all they are both forms of messaging, aren’t they? Maybe to Apple saying “we have iMessage and FaceTime apps” just sounds better that “we have the iMessage app that can do FaceTime”. Doesn’t really worry me though.


I don’t really do a whole lot of ‘proper’ reading of any sort on my iPhone or iPad, sure I’ve downloaded a bunch of sample magazines to try out but nothing has reached out, grabbed me and said “you must buy me every month or kittens will die”.

Again, why does ‘Newsstand’ need to be its own special folder? Couldn’t it have been added as a third ‘shelf’ in iBooks? Is it simply because the ‘subscriptions’ you manage in the newsstand are actually just apps, and launching one app (a magazine) from within another app (iBooks) would be silly?


I feel sorry for all the makers of good, simple to-do apps. There are several. There are also hundred of shit to-do apps, I don’t really feel sorry for them. Reminders looks nice and simple, which is all I’d want from a basic to-do app.

I saw a couple of people comment on Twitter saying that Reminders would ‘kill’ apps like Things, The Hit List etc. I don’t believe this for a second. Things and The Hit List are much more than just “to-do apps”. I can’t wait for The Hit List to come out. The location reminders that Apple has included in Reminders look kind of neat.

But Apple using the line “Say you need to remember to pick up milk during your next grocery trip.” on the iOS feature page is a fairly big kick in the guts for a certain, very popular, to-do app…

Twitter integration

I don’t really ‘share’ content from other places all that often — yet — maybe the deeper integration in iOS will change that, maybe it won’t. One question I do have though is whether or not the Twitter app is now installed as part of the core package. I suspect it isn’t based on the screenshots of the twitter settings page that show an ‘install’ button.

I wonder if this same level of Twitter integration will also come to the desktop in Lion?

Camera+, err, I mean Camera

The quick access to the camera from the lock screen is nice, but not overly secure is it? Can you accidentally hit the camera button and take pictures of the inside of your pocket? What about if you have a passcode set? Does it ask you for the code before you can take pictures? I’ll need to play with it before I can judge it appropriately.

The volume button as the shutter button. Gee, original idea there. Now lets hope they let other camera apps like Instagram and Camera+ to also make use of the button in this manner. Would be also super if we could specify our preferred ‘default’ camera app that would be activated by the lock screen button, at least until Apple steals the image filters (that make my crappy photos better) from Intagram.


Tabbed browsing on the iPad is welcome, but how many tabs can we have? Are we still limited to 9 like we were with the ‘old’ method?

Reader and Reading list aren’t really of much interest to me personally — I’ve had an instapaper account for months and I don’t think I’ve ever used it. Maybe the iCloud enabled Reading list will change that? But then again, Firefox is still my default desktop browser so I never see the Reading List when I’m sitting at my computer.

PC Free / Wi-fi sync

With iOS 5, you no longer need a computer to own an iPad, iPhone, or iPod touch.” While this is great, and over-the-air syncing will be fantastic, how many iDevice owners aren’t going to have a computer? More to the point, who is going to have a wi-fi network for their new iDevice to connect to if they don’t have a computer?

Everything else…

I hadn’t even noticed that the iOS Mail app didn’t have text formatting options until Apple pointed out that they are new features in iOS 5. This tells me that I don’t need them.

The multitasking gestures will probably feel ultra-futuristic when using them but will they actually be *needed*, I’m guessing I will still find myself hitting the home button more often that not — if only out of habit.

The split keyboard, another ‘fantasy’ idea that some clever person came up with at least a year ago that as been “adopted” by Apple, no doubt Microsoft will claim that Apple stole it from Windows 8…

OS X Lion

Having only upgraded to Snow Leopard about two months ago (yes, I slow) I don’t feel that I should be ready to upgrade again next month. But the truth is I am ready, and I want Lion now.


So Lion is only going to be available via the Mac App Store. Nothing surprising about it being available via the Mac App Store, but *only*, really? Since the Mac App Store is Snow Leopard only, how does someone using Leopard (or older) upgrade to Lion? Or is it just that they can’t? Presumably this means they will have to continue producing physical Snow Leopard discs at least for a while.

Multi-touch gestures

I knew there was a reason I ordered a magic trackpad with my new iMac, now I just need to fit it into my ‘working style’.

Full-screen apps

Yeah, Windows has kind of had full-screen apps “forever”, and when I switched to a Mac five years ago I missed that. For about a week.

There are still a few cases where I’d really like ‘proper’ full-screen app goodness, in things like Fireworks or Illustrator (the current full-screen modes blow), but given that they are both Adobe products I guess thats never going to happen.

Mission Control

Sounds cool, has an even cooler sounding name. I’m looking forward to playing with it once Lion is released, I suspect though that it will still take a while before I stop using command-tab to switch between my apps though.


iPadifying your applications folder. I have no problem with this, even though I really only ever launch apps from my dock or via spotlight search.


Apps closing and reopening right where you left off? Cool. But what apps are going to support this? Will it only be Apple apps, or those that are developed to support it? Again I’ll use the Adobe example, this resume feature would be awesome, but if its something we have to wait for Adobe to implement then it could be a long wait.

Don’t forget about online jewelry store.


Just a pretty new name (and a prettier new icon — that isn’t brushed metal), and simplified process for something we’ve been able to do for years, right?

Mail / Address Book / iCal

More iPadification, ok with me, although I actually (mostly) like the current version of Mail, and barely use Address Book or iCal.


FREE. For 5GB of storage. I couldn’t find anything about extra storage being available for a price, maybe that info will come at a later date. Kind in mind though that purchased music, apps and books, plus the last 1000 images in your photo stream don’t count towards that 5GB.

Looks like all the core iOS apps will be be iCloud-ready in iOS 5, and hopefully plenty of third-party developers are able to make use of it as well meaning we can get useful syncing capabilities in a whole bunch of apps without those individual developers needing to set up their own syncing services.

iTunes match

So *any and all* music that you have that wasn’t purchased via iTunes can be added to iCloud for just $25 a year? Really? Wow. They say the ‘matched’ music will also play at iTunes Plus quality even if your copy wasn’t… can we also download the iTune plus quality version? I suspect I know the answer to that.

One more thing.

Whats with all the brushed metal icons? Maybe if the radial gradient weren’t so ‘harsh’ it wouldn’t bother me as much. Maybe they just done it so Dribbble users have something to endlessly redesign for the next couple of weeks.

I’d much rather they made the desktop icons follow the same style as the iOS icons.

One more one more thing

Is it true that there was no “one more thing” at the end of the keynote? How odd. Also a little surprised that there were no hardware announcements at all, not even the rumoured iPhone 4S. Yes, I’m aware that WWDC is not about the hardware, but I’d just gotten used to some cool new device being shown off.

Article 7 Jun 2011

jQuery is to JavaScript as Sass is to CSS? Or is it?

Every developer has their preferred ways of working, they like to do things in a specific way or using a specific app. It might be something simple like whether they use 2-space tabs or 4-space tabs. It might be a greater thing like whether they prefer Ruby or PHP or Java. Or it might be to do with how they work with two of the building blocks of the web, JavaScript and CSS.

Every developer has their preferred ways of working, they like to do things in a specific way or using a specific app. It might be something simple like whether they use 2-space tabs or 4-space tabs. It might be a greater thing like whether they prefer Ruby or PHP or Java. Or it might be to do with how they work with two of the building blocks of the web, JavaScript and CSS.

Two tweets from @anthonyshort popped up in my timeline in the last hour, the contents got me thinking. The first tweet:

Learning that there was a lot I didn’t know about JavaScript thanks to jQuery. Starting to not like jQuery

The second tweet:

Ergh, normal CSS sucks balls after using Sass so much.

Anthony is a friend and good guy (which aside from the fact that he knows what he’s talking about is why I follow him), and I’ve definitely got nothing against the tweets above (even if they are basically the opposite of my current views), but I think the topic is something worth discussing, as both are more than valid points. Feel free to provide your own sensible views in the comments at the bottom of this article.

Raw” JavaScript vs. jQuery

I’m a jQuery lover, I make no attempt to hide this fact. I lover that it (for the most part) lives upto its “write less, do more” tag line. It’s not perfect, but no JavaScript framework is, and it gets better with each update. I’ve used many other JS frameworks in the past few years such as prototype, mootools, scriptaculous, YUI. While they all have their ‘good’ points, jQuery has (for me) more ‘good’ points than the rest.

Something like YUI (which I currently use at work, and am desperate to get rid of) is packed with “stuff”, 98% of it you’ll never need or use. Its heavy, somewhat bloated (you don’t have to include all the individual components in the framework, but even the components themselves are probably larger than they need to be). For the most part it has pretty good cross-browser compatibility, which was the primary reason for it being our ‘chosen’ framework at the time. But after working with it for close to 4 years the love/hate relationship with YUI is about 90% hate to 10% love.

An example why I prefer jQuery over YUI. Our current YUI-based menu scripts (which admittedly aren’t fantastic, but they get the job done) are long, the implementation of the YUI code is a couple of hundred lines, then you’ve got to include 4 or 5 separate YUI components just to get the thing working — the menu component alone is a 600 – 700 line js file. I recently replicated the functionality using jQuery, it was about 15 lines plus the jQuery framework, and it took me only about 15 minutes to create form scratch.

A couple of quick examples, the same thing in ‘raw’ JS, jQuery and YUI, first ‘raw’:






In a world where I build things in the browser, usually without planning or thinking them through fully first, being able to prototype these things ridiculously quickly using jQuery is awesome.

However. I still find that I return to just writing ‘raw’ JavaScript on occasion. I don’t necessarily see the point in including a framework if the ‘raw’ JavaScript itself is only going to be a handful of lines. Code for the scenario, jQuery when its needed, no jQuery when its not.

Knowing how JavaScript works, and being able to write it without the aid of something like jQuery will make your code better when you are using jQuery. If that makes sense. Its my view that if you have an understanding what that simple jQuery function (ie. the complex bit that you don’t need to write) is doing in the background, then you will get more out of jQuery (or whichever framework you are using).

Raw” CSS vs. Sass

Now I can’t really provide any great thoughts on Sass, because I don’t use it, have never even tried it, maybe I should? Maybe the enjoyment I get out of writing ‘raw’ CSS is unnatural and wrong? Maybe I’m weird because I prefer to code css properties by hand (not using auto-complete functions).

I can see why people like it though the idea of nested selectors, variables, inheritance, mixins etc are all nice. I guess the “issue”, whether rational or not you can decide for yourself, I have with things like Sass is that I don’t want to have to compile my stylesheet in order to use it. Yes, I understand that Sass will mointor the .scss file and update the compiled .css file as needed, but doesn’t that make debugging a bitch?

For example, you write a style with variables, nested bits, mixins etc using Sass, then you load the page which uses the compiled css file only to find that the style isn’t behaving quite right. the first thing I would do is open Firebug or Web Inspector and try and work out what has gone wrong. With ‘raw’ css, I’d see exactly what selector and/or property is wrong, go back to the file fix it, reload and done.

But with Sass is it more difficult to track down and fix issues this way because the selector/property that Firebug or Web Inspector report won’t actually exist in your Sass file, and instead you’ll need to track down which bit of Sass is actually the cause of the issue? I’m well aware that its probably a silly argument, but that’s how I see it, and its the reason I’ve never used Sass.

Some of the examples on the Sass site don’t do much to convince me that I *should* be using it, for example:

.fakeshadow {
  border: {
    style: solid;
    left: {
      width: 4px;
      color: #888;
    right: {
      width: 2px;
      color: #ccc;

why is the Sass style above any better or easier to write than this css style:

.fakeshadow {
  border-left: 4px solid #888;
  border-right: 2px solid #ccc;

Its a very basic example, and I know Sass does much, much more complex things, but in this specific case I don’t see the point in it.

I also see mixins, such as one that ‘simplifies’ the rounded-border syntax, as causing the same potential ‘knowledge’ issues for CSS that jQuery does for JavaScript. Especially if you didn’t write the mixin yourself. For example if you have a “round-corners” mixins that you use, but you didn’t write that mixin (so you don’t know what syntax it spits out the other side when compiled), and you just know that to make something round you use @include rounded(left, 8px);, the what happens when you get to a situation where you’re working on something that isn’t using Sass and needs rounded corners except you’re never learnt the correct syntax to be able to write it? Especially when the syntax is not the same across all browsers?

I’m not saying that these mixins are bad, or that people shouldn’t use them, but like I said about JavaScript above, if you’re going to use them you should have enough basic understanding of what they actually do so that, if need be, you can write the same styles without the aid of Sass.

Plenty of people have the view that Sass make css more awesome, powerful and easier — I’m not here to say they’re wrong — but for me, someone who several hours every day writing ‘raw’ css it just looks like it complicates things more than is necessary.


The more I think about this the weirder it seems. You would think that those those who like JavaScript frameworks like jQuery because they make life easier would be the same people who use things like Sass because they, apparently, also make life easier. And yes, it might very well be the case with a lot of people, what’s your preference?


Why Twitter must NOT expand beyond 140 characters.

This is a direct response to an article on ReadWriteWeb, just as I disagree with the RWW article not everyone is going to agree with my point of view either. I can live with that as long as you can.

This is a direct response to an article on ReadWriteWeb, just as I disagree with the RWW article not everyone is going to agree with my point of view either. I can live with that as long as you can.

I make no claims to have put a lot of thought into this, it was written in the second half of my lunch break. Again, I can live with that as long as you can.

A small side issue to start with

The RWW article makes it sound as though TweetDeck were the first to introduce “longer” tweets. They weren’t, there are numerous services that have been offering it for years, twitlonger.com for example. Perhaps TweetDeck do something different, don’t really care, that’s not the issue.

Reason 1: Twitter is twitter, twitter is not a blog

If you want to write more than 140 characters on a topic, and you want to do it on a semi-regular basis, then twitter is not your solution. Get a blog. It’s not difficult — if you managed to start a twitter account, then you can manage to set up a FREE blog on WordPress.com. And if you know what you’re doing you could even host your own — how revolutionary…

If you don’t want to set up a blog, you’ve probably already got a Facebook account — so go and post your “longer” piece over there in the ‘notes’ feature. You can then direct people to said post using a link in a tweet. Simple. You’re allowed to do it, it’s not evil.

Reason 2: How long is “longer”

140 characters is great. It’s a hard limit, it makes you think what you want to post. With no limit many existing tweets would probably be 3 or 4 times the length, just because people didn’t ‘need’ to squeeze it into the character limit.

I’m guessing TweetDeck’s “longer” feature has no upper limit on characters, or if it does its probably ridiculously high — again, if you feel the need to post something of excessive link directly to twitter then you’re doing it wrong. Sorry.

Reason 3: I want to read a stream of tweets, not a stream of shirt stories

Twitter is all about the short messages, small burst of info from people you’re interested in. When my twitter client refreshes I can skim over the incoming tweets in a matter of seconds and go back to whatever I was doing. Now, if all of a sudden just a handful of those updates unnecessarily turn into 500-word blurbs simply because there is no character limit, then those few seconds might turn into a few minutes. Twitter is distracting enough already.

Just to be clear, I’m not against 500 word posts, I’m against posts that are 500 words for no reason at all. If you can get your point across in 140 characters then that is fantastic — if you can’t find somewhere other than twitter to post them.

Reason 4: People (and bots) abuse what they are given.

You think tweet spam is bad now? Give the bots unlimited characters to play with and it will go off the richter scale. Hate when people fill their tweet with 10 hash tags for no reason other to be a complete fuckhead? Imagine those same people being able to post 100 hash tags at once.

Reason 5: Languages schmanguages

The RWW article claims that other languages can already send tweets that are longer than 140 characters. No. They can’t.

Characters != Letters

The translated tweet may contain more than 140 letters/words but its still going to be 140 characters. ie. Not polluting my, and everyone elses, timelines.

Go on, argue that its just semantics and that RWW is right and I’m wrong — you’re allowed to, I don’t care. Honest.

Reason 6: Tweetdeck users are not ‘typical’ twitter users

Tweetdeck is targeted at “power users” — I hate the term, but thats what they are. It’s for people who have some weird idea that they “need” to follow 15,000 people, and as a result they need to be able to group them and show them all on the screen at once so that the simple service can be turned into some maniacal global dashboard allowing them to feel like Batman at the helm of his control centre. It makes them feel important and powerful. God knows why.

For the same reason these are probably the people who think the world wants them to post 500 word pieces on why their lunch was great instead of a simple, sub 140 character message — “Today’s lunch was awesome. I love bacon. Om nom nom.”.

Your average twitter user doesn’t need this. And most probably won’t want to follow those that do.

Why twitter won’t do it

The RWW article closes with:

If Twitter wants to continue its expansion into the mainstream, it needs to lose the 140-character limitation and just market itself as the world’s leading ‘real-time messaging service’.

Couldn’t disagree more. For starters Twitter has seen a ridiculous growth in the last couple of years, I doubt it would have been any different if the 140-character limit had not existed. In fact, I’d go as far as saying that the growth wouldn’t have been as vast if the character limit never existed.

As far as marketing itself as a “real-time messaging service”… umm… don’t they already pretty much do that? And in my eyes, which can often be clouded with misdirected rage, the word “messaging” to me means “short”. If they wanted to blow past the 140-characters then they’d have to be marketing themselves as something like a “real-time content service”.

Twitter won’t change the limit, it has no need to. If it ain’t broke…

Less is more. Deal with it.

Now, lets pretend I was a TweetDeck user and I’d just dumped this 1000-word rant into your tweet stream. Would that piss you off? It’d piss me off.

Article 17 Feb 2011 3 comments