Uncategorized

Where is my iPhone Mini?

I’ve been an iPhone user and fan ever since the original iPhone came out and I’ve used one for the past four and a half years. I had the original iPhone, the 3G, the 3GS and then I skipped a couple of models and now have an iPhone 5. I’ve smashed the screen, obviously, by dropping a dumbbell onto it, but it seems unfashionable to have an iPhone with an intact screen these days and the dumbbell thing* gives me man points.

Smashed screen aside, the iPhone 5 is a very capable smartphone. However, I’m at the point with it where I believe it is in fact too capable I’m struggling to justify ownership of it. I find that I actually use very little of what it has to offer. I use the phone, obviously, text messages, e-mail, Facebook, Twitter, Foursquare, Maps, Camera, iPod occasionally*, National Rail enquiries and a handful of other apps on an occasional basis. Although my old 3GS was slow, there was none of this that it couldn’t do and there is nothing I use my iPhone 5 for now that I didn’t use to use my 3GS for (with the exception of the camera, I didn’t used to use that on the 3GS because it was properly awful). I use mobile apps on my iPad much, much more than I do on my smartphone; my iPad is where I need the mobile computing power and features.

My point is that I’m paying for (£45 per month on a lease) and carrying around this massive overpowered pocket computer with me everywhere I go, with its fragile screen, poor battery life and a relatively high chance that I’ll get mugged for it one day, when I barely use its capabilities. When Apple launched the iPad Mini earlier this year I had very high hopes that they would follow suit with a smaller iPhone, the iPhone Mini, or whatever; a device which isn’t as powerful as a full-blown iPhone but is smaller, has a better battery life and can do the basics like make phone calls, text messages, basic social media apps, iPod, a reasonable (if not overly fancy) camera, etc.

My hope was that they would base it on the iPod Nano:

ipod-nano

This device has a small colour multitouch screen with an iOS-like interface which is clearly capable of handling a form of application selection. I cannot imagine how it would be hard to include the necessary electronics for a mobile phone and wifi into a package this size, even if it had to be slightly thicker perhaps than a plain iPod Nano (in the same way that the iPod Touch is thinner than the iPhone). It would have been perfect for me, so I got quite excited when I saw the rumours about the iPhone 5C – perhaps the “C” stands for “compact”?

But no.

The iPhone 5C is nothing more than a re-packaged iPhone 5, except they’re making it out plastic, which will arguably be more robust, but is actually a decision that has mainly been made for cost-reduction purposes. Despite this, the 5C is by no means a bargain, offering a saving of just £80 over the even more powerful and even more expensive flagship iPhone 5S, which they have introduced to replace the iPhone 5. The top of the range 64Gb model costs more than an eye-watering £700.

They’ve missed a beat here. I’m not normally underwhelmed by Apple launches (although I am by no means a frothing fanboy before, during or after them), but this one may as well have never happened.

* I have, incidentally, eliminated the possibility of future dumbbell related screen smashes with the purchase of an iPod Shuffle for use in the gym. It’s not possible to smash the screen on this because it does not have one.

Uncategorized

A very Angular learning curve

Recently my team at work have been working with Angular JS, a Javascript framework created, used and published by Google. We’ve used it extensively in our new website, which is created from static HTML and Javascript files with no server-side page generation. All the work is done by the browser and user interaction is processed using a REST API.

AngularJS-large

I didn’t actually do any of the coding on the website and so I did not have the opportunity to learn how to use Angular JS during the project as the rest of my team did, so in order that I did not fall behind on the skill I decided to learn it myself in my own time by creating a web-based tool which creates DHCPd configuration files. The application is boring (although actually useful if you run such a server), but that’s not the point, it was a learning exercise.

Angular JS has a bit of a learning curve. It works in different ways to other Javascript libraries and frameworks and it takes a while when you’ve started from scratch to “think Angular”, rather than in ways in which you may have become accustomed with things like jQuery, itself revolutionary in the world of Javascript, but Angular takes it to a whole new level. Once you are “thinking Angular” things become much clearer and easier and you find yourself in a very natural-feeling flow.

I’ve made the exercise available on Github. You may find the tool itself useful if you’re a system administrator, but if you’re a developer it’s more likely the demonstration of a simple Angular application that you will probably see more value in.

I have some larger extra-curricular projects around the corner which I intend to base on Angular JS and expand my knowledge. We’ll also continue to use it at work and will almost certainly use it when it comes to re-implementing the user interface of the company’s internal browser-based management system.

Uncategorized

MRTG Dashboard

I’m one of those die-hards whose been using MRTG for almost as long as I’ve had a computer with a network connection. It’s an old tool for monitoring network traffic and its not pretty by modern standards but it does still do that job very well. However, its blocky output does rather leave much to be desired in this day and age of interactivity and so I’ve knocked together an MRTG Dashboard.

It’s a single PHP script which you just pop in your MRTG output directory (workdir) on your PHP-enabled web server. That’s all you need, all the required libraries are loaded from CDNs. It’s not perfect, but it is an improvement.

MRTG Dashboard screenshot

MRTG Dashboard screenshot

You will find that the timescales on the interactive graphs can be a little hit-and-miss. This is because while Highcharts demands data at consistent intervals when creating time-based graphs MRTG’s data is anything but consistently intervalled. I will try to improve this at some point in the future.

You can get MRTG Dashboard from Github.