Tag Archives: iPhone

Time Gentlemen Please

At one of my previous employers, in our part of IT you were always well advised to avoid being on out of hours support over the last weekend in March and especially over the last weekend in October, the reason being that these are the clock change weekends, and more often than not one system or other would not cope with the changeover particularly well. Indeed there was one system that we were usually advised to shut down overnight on the Saturday because it really didn’t cope very well with having 1am-2am twice.

Clock change problems are not a new issue, if the system hasn’t been properly coded and tested it’s quite easy to program the system against the local time and run into quite serious issues when the clocks change. The generally accepted technique is to code everything to work from UTC, which doesn’t change, and then present times in local time.

As a result, what happened today with iPhone’s all across the UK came as rather a surprise – especially as it’s not been a problem before.

I have a couple of recurring alarms. One is set for weekdays, but then I have one timed at 8:15am for church on a Sunday.

This morning it didn’t go off. The time on the phone was correct, as was the time in the clock application, but it just didn’t ring. An hour later whilst I was in the bathroom, at 9:15am it did finally go off.

Those people used to time change problems would probably be quite surprised by that – if the alarm hadn’t taken account of the change you’d expect it to go off an hour early rather than an hour late, but from testing recurring alarms are consistently going off an hour late.

What is even more interesting is how I’ve got the alarms to ring at the right time. I tried restarting the phone and changing the timezone to somewhere else and back, and also trying to change the time, none of them appear to work. The one thing that has is something that will work for people in the UK, and that is changing the timezone to Iceland.

The significant point about Iceland is that they don’t observe daylight savings – they are permanently on UTC/GMT, so in the winter their time is the same as the UK, and in the summer an hour different. Switching to that timezone and immediately all the recurring alarms start working at the correct time.

What is perhaps most surprising about the problem is that Apple have known about it for a while, as there were similar problems in Australia and New Zealand when their clocks changed. Apple however haven’t fixed it, and unless something appears in the next week are sailing headlong into a massive problem when the US and Canada change their clocks next week. Best get ready for the uproar as thousands of people who rely on their iPhones to wake them up are all an hour late…

Update Day two after the clock change, and one iPhone worked fine, the other still went off an hour late! The difference between the two is the one that worked had alarms that were recreated in the London timezone after the clocks had changed. Whilst they still rang an hour late whilst in the London zone, they work fine in Iceland. On the other the only change we made was to switch the timezone, so the alarms were created in BST.

Further comment online indicates that the problem doesn’t occur if the alarm is set to repeat every day, only if they repeat on some days in the week.

Alarms have been recreated on the second iPhone, so we’ll see what happens on day three.

Late to the Party – Windows Phone 7 Series

Yesterday afternoon the internet was buzzing with details of the launch of Microsoft Windows Phone 7 Series in Barcelona. Only it wasn’t really a launch, it was more a demonstration of a preview version of the platform. It’s predecessor was only launched last autumn, and this pretty well complete rewrite of the Microsoft mobile phone platform isn’t going to be available to buy until around the same time this year.

Whilst it certainly seems to have innovative features – a user interface that does things rather differently from the current favoured multiple pages of icon design that is almost ubiquitous, along with an XBox Live tie up to link your mobile and console gaming – it does seem a pretty brave move to show your rivals what you’ve got planned months and months before anything is going to be released. Even when you take into account that Microsoft are often much more open about showing preview releases of upcoming products than Apple for example, it still seems very early to be showing.

However, when you think about it, if Microsoft wants any part of the rapidly growing mobile applications market, it had to do something.

Microsoft, just like Nokia, Sony/Ericsson and all the rest were caught massively on the hop three years ago by the launch of the iPhone. Smart phones were very much of a niche market, and most regular consumers used a phone to make calls. It was possible to add applications onto smart phones, but again it wasn’t something that many people did.

Roll forward three years and the iPhone has really gone mainstream, it still surprises me how many people have them, and who they are. Many of them, even relatively non-technical are comfortable with the idea of adding applications, reading e-mail, browsing the web and playing games from a phone handset. On top of this Google has moved in on the market making waves with it’s Android operating system. Established players like Nokia have found their market share falling after years of failing to ignite the smart phone market.

Then we get to Microsoft.

They had a niche in corporate markets, and certainly I’d come across techies from time to time using (and more often than not cursing) their Windows Mobile handsets. The ability to program applications in the same languages as desktop applications certainly helped adoption. However they largely dropped the ball. Whilst they have carried on releasing updated versions of their platform they’ve largely been left behind, giving the impression – intentionally or not – that they weren’t interested, that they were happy to relinquish their market share to Apple and Google. In the corporate space Blackberry has grown, certainly in our company those users who are issued with a smart phone are issued with a Blackberry, and many of the executives ask for one by name. Any mobile applications would have to be developed for Blackberry, not Windows Mobile now, and Blackberry provide the tools to do that.

As I’ve said, the iPhone seems to have really gone mainstream, introducing a growing range of people to a smart phone, and the techie space seems to be being filled by Google Android. The iPhone is selling by the million, and producing billions of application downloads.

What Microsoft were showing looks interesting, and if they can sort out the reliability and stability problems that established wisdom say plagued previous versions it would be a good platform, but it would be a good platform if the phones were on the market now. Between now and release Apple, Google and the rest will certainly be releasing updated and new versions of their phones and software. The Microsoft gamble is that having seen the show yesterday, people will be willing to wait, and that come the autumn they will be willing to put aside the previous reputation for being buggy, put down their iPhones, Blackberry and Android phones, write off the money they’ve spent on apps for those platforms – or in the corporate environment infrastructure, and switch over to a Microsoft phone. I’m sure there will be a good few techies who will do so, but the average consumer or the corporate user? It remains to be seen.

DDD8 – Apples, Boots and @blowdart

Major embarass @blowdart session!  #DDD8Today was the eighth annual(ish) gathering of four hundred of the Microsoft Development community for a day of free technical training. Once again it was spectacularly over subscribed – sold out faster than Glastonbury (all the places went within fifteen minutes) and with no Microsoft speakers had the usual mix of sessions, some of which perhaps you wouldn’t expect to see at Microsoft.

The day started off cold – although there was no snow it was definitely a case of scraping ice off the car, and if you were in any doubt, one look at Rachel Hawley’s footwear could tell you! Having said that, as has become traditional at these events, bacon butties to warm you up awaited those who got there early.

First off a couple of observations. For a Microsoft Developer Day, it was a very good advert for Apple! Of the five talks I attended, two were obviously running off Mac’s. One was about iPhone development, so using a Mac was a given, although the presentation was also given using Keynote (and all the more slick for it) and rather than messing around with font sizes as all the PC based presenters have to do Chris Hardy used the built-in OS X zoom gestures to quickly focus in on what he was showing. The other Mac based presentation given by Ian Cooper wasn’t anything related to Mac development at all, but was presented in MacOS X, using the Mac version of Powerpoint, with a windows development environment running in VMWare. It’s not so long ago that developers would buy a Mac, largely ditch MacOS X and stick Windows on it – it does seem that even with the advent of Windows 7 that isn’t always the case now… The other massive advert for Apple was not surprisingly the vast numbers of iPhones in evidence. I certainly think it would have been worth somebody doing the same as Scoble did at Le Web to get a ball park figure of how many there were. There were a good few Google Android phones around, but few if any Microsoft based phones in evidence. This was also reflected in the sessions – no talks on Windows Mobile development, but there was a talk on using MonoTouch to develop iPhone applications!

As is normal for these days, what I thought I would attend, and what I actually attended were slightly different. I initially thought I’d just take up residence in Chicago 1 for the day, but in the end I fancied a change of pace.

First up I attended a talk by Ian Cooper on Real World MVC Architectures. This in part was because I’ve just done my first ASP.Net MVC project, and I was half expecting to find I’d done it all wrong, as to a large extent I’ve put it together as felt right rather than following any explicit paradigm. To my relief it seems all the talk of proper architecture seems to be sinking in, and the way I’ve constructed it is pretty much as was suggested, even to the point that I’ve used particular techniques without having read about them as yet in my MVC book in that I understood why they were being used but didn’t recognise the idea by name! I suspect the session might have been pitched a bit too much towards the beginner end of things for experienced MVC programmers, but for me it was certainly a good reinforcement of the techniques.

Next I slipped next door for a change of gear, and a non-technical talk by Liam Westley who was talking about how to be a small software development outfit and not go bust. To be honest, the principles Liam outlined can apply equally well to large software houses, a number of which I’ve come across who don’t get this stuff right, and even to people in a corporate environment like me as getting these sorts of things wrong will at the very least have your internal customers looking elsewhere for their software, or at the worst put you out of a job. Liam gave us a set of broad principles that any software developer should be doing as a matter of course – things like delivering properly tested software, applying proper logging (even in a corporate environment fixing a problem before the users have got round to reporting it scores serious brownie points), and understanding your users, all go to making people happy to give you their software work, and not go elsewhere.

For session number three it was a first for me, in that it was the first time that I have heard Jon Skeet speak. His name will be familiar to anyone who frequents Stack Overflow – and as his reputation is testament to he sometimes seems to answer C# questions within seconds of them being asked. What is slightly more surprising is that his day job is at Google as a Java developer. Even more surprising he fits all of that in with being a Methodist Local Preacher too – but I suspect that stands him in good stead for being able to deliver material well, as from the experience today his reputation is well deserved. The latest version of C# brings in some interesting, but quite complex new ideas, and he did manage to put them over in a way that even with the early start on a Saturday I pretty well followed them. Having said that whilst I liked the presentation, and many of the new features, I was less than impressed by the return of the ubiquitous VB variant data type, in the guise of the dynamic type. Whilst I am well aware that the way the variant and the dynamic work are rather different, it’s much more about how it will end up being used, or more likely abused. I’m with Jon Skeet on this in that I much prefer a situation where the types can be validated at compile time. Whilst there are legitimate reasons for adding dynamic, and as an exercise in language design the implementation is very impressive, as with the variant I am quite sure it will end up being thoroughly misused, and will lead to many a difficult to nail down bug.

Next up was lunch, and was the traditional scramble for a lunch bag. Unfortunately it seems that the entire occupants of the Chicago 1 side went the same way and got all the non veggie and non seafood sandwiches (I have to watch having too much of certain types of seafood with my gout) and as always it was a bit of a lucky dip as to what else you got, so I ended up with a sandwich, crisps and an apple that I wanted, and a can of diet coke and a snickers bar that I didn’t want. I know they’ve tried various things over the years, but I still think there has to be a better way than this, as it was pretty obvious looking around that not everybody wanted what was in their lunch and there was a lot going to waste.

The lunch time Grok Talks had relocated this year, and were in the atrium in building four. This certainly gave a bit more space, but did seem to make the security guards mighty jumpy – I got a stern “I’ve just seen you behaving strangely” from one for taking this picture – I just liked the look of the clear blue against the white of the building structure and was going to make some comment about the weather! The Grok Talks were marred rather by problems with the technology. For a start the speakers were badly positioned in relation to where the presenters were standing leading to endless feedback problems. The talks also took an absolute age to get started, and when they did people seemed to overrun, which as a result led to people who were further down the running order being disappointed. There were a couple of interesting talks though, and it was especially interesting watching Gary Short intensely watching somebody else demonstrate Code Rush! Looking at the response hopefully there will be a few more converts from Resharper, a jump I made many years ago!

After lunch was one of my personal interest talks. As an iPhone owner and software engineer I’ve always quite fancied giving an bit of iPhone development a go. The problem is that as well as learning a new platform and new environment, developing for the iPhone requires learning a new language, Objective-C. However Chris Hardy was demonstrating a way that I could leverage my existing C# skills using the Mono environment and an add on to it called MonoTouch. Whilst developers still need to be able to read Objective-C to understand what is going on, and still need to learn their way around the Apple API’s, it allows them to develop entirely in familiar C#, and even brings advantages in terms of some of the extra type safety that C# brings. I have to say I was pretty impressed at the environment and what it can do. I was less impressed by the price – $399 for a personal license, which only covers you for a year of updates, with even more for a corporate license – far too much for your average hobbyist programmer to even consider. I can’t help thinking that they are missing a trick here, and providing a low cost or free license for developers in return for a share of the revenues, maybe using some sort of phone home code to keep track would certainly broaden the base of programmers using it.

My last session of the day, to be honest I would have gone to even if Barry was just reading the phone book, as this was potentially his last appearance at a Developer Day before he loses the essential qualification for being allowed to speak of not working for Microsoft, as in a scant few days he will be starting a new job working for Microsoft at one of their offices in Redmond. As always there was the classic banter with people he knew in the audience, in particular Jon Skeet who was attempting to pose increasingly difficult questions it seemed. Barry also started off by hijacking the session next door as Ben Hall, the speaker had a birthday and was foolish enough to tell somebody! What I was also expecting, and got in spades were interruptions marking his departure from the UK development scene. His book Beginning ASP.NET Security featured in several. In the first Liam Westley gave a touching and heartfelt tribute, and said how much he had been looking forward to the arrival of the book – as it was just the right size to prop up his wobbly table. In another they spoofed the winter cold adverts, suggesting that the book was good fuel to keep the elderly warm. The session finished off with a clip from his appearance many years ago on The Crystal Maze, and several of the organising team appearing in T-shirts especially prepared for the occasion. All in all it was a memorable way to finish off the day, and hopefully a memorable occasion for Barry as he heads across the Atlantic. The one question that remains is whether all the spelling mistakes in the presentation were down to Barry, or whether somebody did get at his presentation before he went on…

All in all it was an excellent day, and although I know there were a couple of sessions that had problems, the ones I attended were all excellent, and well worth the spare time given up. It was great to catch up with friends from the community, previous developer days and previous jobs. Whilst it does appear that the day is very much a victim of it’s own success (even with local developer days around the country people still travel from far and wide to attend this one in addition to their local days) hopefully a way can be found to allow it to keep running in future years, and all credit to the organising team, and the staff at Microsoft for keeping the whole day running smoothly.

The Problem for Nokia

This morning, Robert Scoble, who is currently at LeWeb in Paris published this picture to his Flickr stream.

It is a shot taken by him of the audience, and is the answer to a simple request, for people to hold up their iPhone – just take a look at the full sized shot and count quite how many there are.

Back before the iPhone launched, Nokia and the other big players in the market were bullish. The mobile phone market largely consisted of largely similar devices, and Apple coming in with something that didn’t conform to what everybody else was doing wasn’t going to make an impact was it? They seemed to think that doing it different meant that the iPhone wouldn’t sell – everybody had been doing the same thing for years and the consumer would stick with them.

From a personal point of view, I had spent years being largely dissatisfied with what the established players had been producing. I’d bounced back and forth between Nokia handsets, Sony Ericsson, and even a Motorola handset at one point, my general feeling is that despite promising much, they’d generally failed to deliver, with annoyingly quirky user interfaces, buggy firmware, and a generally frustrating experience all round, hence why I’d ended up changing phones pretty frequently. The best mobile device I’d owned was still the venerable Psion 5mx

When I eventually got my hands on an iPhone, it proved to be a game changer – finally someone had actually managed to produce a mobile phone that was nice to use, and one that was a reasonable substitute for a desktop web browser. With the later addition of applications it became even more of a useful device.

The impression I get in tech circles is that I am not alone. At a couple of tech events I’ve attended recently by far the largest number of people had an iPhone – people who had been die hard Nokia fans, or had developed Windows Mobile apps for years had bought one, and weren’t planning on switching back. Now the numbers being used by non-techie friends is impressive, and the competition is struggling.

Check out this article in the Independent about the effect on Nokia, or this article about the recent Sony Ericsson Saito problems, with both the rise and rise of the iPhone, and the other new kid on the block Google Android it’s going to be very interesting to see what the second decade of the twenty-first century will bring for the old market leaders like Nokia

The iPhone users at LeWeb originally uploaded by Robert Scoble.

iPod/iPhone Cannot Be Synced, Required File Not found

This one is definitely a post in the category of primarily being a reminder for future me in case an annoying problem reoccurs, but I guess it may be useful for anyone else struggling with a similar issue.

A couple of days ago I plugged my iPhone into the Mac to synchronise it using iTunes, and after what seemed like a normal process, the process came to a sudden halt during the photo synchronisation stage with a pretty useless error stating that the iPhone could not be synced because a “required file” was not found. Needless to say it didn’t actually tell me what the required file was, nor where it was looking.

My first port of call was to have a trawl through the log files, which is where I made another annoying discovery, iTunes doesn’t seem to log details of it’s synchronisation operations anywhere.

The Mac has for a while had a nice suite of synchronisation technologies based around an application called iSync. Certainly the iPhone synchronisation uses at least part of this as if you have iSync set up it will activate during an iPhone or iPod synchronisation with iTunes. If you ran into any problems with iSync there was always a handy menu option to take a look at the log file and try and track down where it went wrong. No such luck with an iPhone as according to that log file the last time I synchronised anything was the last time I did my old phone.

Okay, what about the main system log? Although this has some messages from iTunes, there is nothing to even indicate that a synchronisation operation has taken place.

Having not come up with anything I then reverted to the usual source of information for weird errors, and googled the error message. That produced plenty of people with the problem, but nobody with much of a clue as to how to solve it.

I figured that since iTunes was drawing the pictures from iPhoto, that might be the source of the problem. Certainly that had changed in between the last successful synchronisation and this attempt in that Beth had loaded all of her pictures from our recent trip into the application, but looking through those there wasn’t anything out of the ordinary amongst those. I used the iPhoto maintenance mode (hold down the command and option keys when you start the application) to rebuild the iPhoto database, but again that produced the same problem. A friend suggested that the presence of movie files in the albums being transferred might be an issue, so I tried removing those, but again no joy. The only way I could get anything to properly transfer was to remove the albums that contained Beth’s newly uploaded pictures.

Last night I finally got to a solution. In all my removing and replacing pictures, and even after I had rebuilt the iPhoto database iTunes had never been through the long and rather tedious “Optimizing pictures” stage. Digging around I found that these were stored in a folder within the iPhoto database called iPod Photo Cache – the key thing being that the contents of this folder are not regenerated by an iPhoto database rebuild. So last night I tried deleting the folder as advised in this Apple Support Document (which incidentally is nowhere to be seen when you search for the actual error), and then left the iPhone synchronising overnight. Based on the speed it was going the optimisation phase would have taken about five hours – certainly the computer had not yet reached it’s inactivity timeout, however all the photographs had successfully transferred.

So for future reference, if iTunes starts throwing useless error messages whilst synchronising photographs, take a look at the iPod Photo Cache, and if necessary delete it. One last thing, can Apple Inc please consider adding some sort of logging functionality to the iTunes synchronisation function as we have for regular iSync, then at least we have a vague hope of tracking down errors rather than playing vague guessing games!

If you have found this post useful, please consider leaving a tip in the tip jar over on the sidebar to help keep the site up and running.

A Week of iPhone 3G

I’m just coming to the end of my first week with an iPhone 3G. Unlike some I didn’t sample the whole queuing and activation chaos last Friday. I managed to get one of the limited stocks that O2 had available online last Monday by getting in within the first hour before they had all sold out. That’s not to say that getting the phone out of DHL, the courier O2 used, was without incident. Beth was in Reading anyway, so said she would pick it up on the way home, the key thing being that she didn’t have the card as she wasn’t going home first. No problem, all she needed was the parcel number which we could get off the tracking site, and then we looked up on the DHL site and got the address of their depot over in an industrial estate near the Madejski Stadium, and looking at their opening times they were open until 7pm. So Beth went in on the way home, and handed over the parcel number – “Not this depotâ€? came the response, all the inland deliveries go through a separate depot on the Basingstoke Road, and that one closed at 6pm. Beth had just enough time to nip across and pick it up, and brought it home.

If you’ve been reading the computing sites you’ll I’m sure realise that activation was a bit of a problem, and it was much the same here. Although I could connect to the regular iTunes store the special activation service was totally snowed under, as a result activation had to wait until Sunday when we were back from our weekend away, where it connected first time. The one final part of the jigsaw, porting my number across from 3 was pretty painless too, although there was the inevitable attempt to try to tempt me to stay despite me repeatedly saying that I was moving for the iPhone 3G, not because of their prices. The number swapped over smoothly on Wednesday, and seems to work fine for incoming and outgoing calls.

So what is the iPhone 3G like in general use? I can’t really compare it with the original iPhone as I’ve never used one, my primary comparison is with my old Nokia N73. The expectation was that the iPhone 3G would be a similar experience to browsing on my iPod Touch, which it is as long as you can get good reception or a Wi-Fi hotspot. The internet experience is streaks ahead of what was possible on Nokia N73, and is actually usable for more than just simple page browsing. For example I ran through the Royal Mail parcel redelivery site on the iPhone 3G this afternoon and everything worked fine – I doubt you’d be able to do the same on the Nokia N73! Phone call wise the iPhone 3G is fine, although if you were making a lot of calls I suspect some sort of proper headset would be essential. Text message wise it is pretty good too, giving you an iChat style conversation screen. Although the touch screen puts some people off, having got used to it with the iPod Touch, I haven’t had any problems and certainly have no issues doing what I need. If anything the lack of the keypad gives the screens much more space to use making them much more straightforward than the usual nested menus that have to be navigated with up/down cursor keys on a more traditional phone.

Stability wise the iPhone 3G is way better than the old Nokia N73, which even after a couple of firmware updates still crashed or locked up with depressing regularity. So far with the iPhone 3G the only problem I have seen is one which the iPod Touch exhibits from time to time whereby the browser crashes.

But what about the new features? The App Store and the GPS? Taking them in reverse order, it is important to note that this is an Assisted GPS – as such it’s not going to replace a proper specialist device like a Garmin eTrex – it occasionally has problems getting a fix, and there is precious little feedback compared to a specialist device. Accuracy wise on some informal testing it managed to place me pretty accurately in our back garden, although not exactly. Trying it out at the church it was also in about the right ball park, but not spot on. Having said that, it does what it is intended to do, and allows location based apps such as Vicinity to come up with it’s local information – great if you’re in a strange town and need to find a convenience store. I’d be intrigued to see how a full blown navigation system works in a car – my thought is that the reception isn’t good enough to work accurately enough.

This brings me quite neatly to the applications, and certainly from what I’ve seen there are some good little applications around. The aforementioned Vicinity is certainly recommended, especially if you’re often on the move and need to find your way around a strange town. Another fabulous little app that makes use of the Assisted GPS is Exposure Premium (also available in an advert supported version) which provides a nice interface to access Flickr pictures, but it’s real party piece is the way it uses Assisted GPS to pull back pictures taken close by.

Various established services have provided free applications to access their services, so we have a nice little Facebook application, versions of Shozu and Shazam, and a version of the fantastic Evernote that will quite happily allow you to photograph documents with the camera on the phone and then search the text in it – handwriting included!

There are one or two novelty applications amongst the freebies too. Check out iPint which uses the accelerometers in the phone to simulate a pint glass. Another novelty is one for all the budding JediPhone Saber – which turns your phone into a light saber. Both are pointless but fun, and do show what can be done with the accelerometers in the device.

Not all the freebies are novelty applications. Apple themselves have produced a little tool called Remote that gives you remote control over either your copy of iTunes or your Apple TV. There are also some free games, Tap Tap Revenge for example will be familiar to fans of Guitar Hero

Gaming wise, the accelerometers are seeing a lot of use. Some, like Cro-Mag Rally use them a simple game controllers. In others, such as Motion-X Poker they are being used to simulate a real experience, in this case throwing dice. Finally you have games like Trism which takes a familiar puzzle game concept, and turns it on it’s head – literally – by the addition of monitoring which way up the phone is being held.

So was it a good upgrade? Definitely. As a phone and mobile internet device it is fantastic, streaks ahead of anything else in usability, especially for mobile internet. The addition of the App Store really opens things up and shows what can be done with the platform – certainly putting it up there as one of the best mobile application platforms around.

Rip-Off Britain? Not With The iPhone 3G

One of the favourite descriptions of the UK, especially amongst it’s inhabitants, is Rip-Off Britain, indeed there is even an entire website devoted to the subject. Whilst there are loads of things that cost more in this country, hence why we quite often go shopping when we visit Canada, it is not everything that is cheaper abroad.

Thanks to the massive competition in our domestic mobile phone market, the deal we are being offered on the 3G iPhone seems to be one of the best around, indeed it seems positively generous compared to the deals in in Canada where there is no competition at all in the market, and New Zealand where there are only two players.

In the UK, on the higher cost plans we’re getting the phone for free, down in New Zealand users of every plan have to cough up for the phone. Both the operators in Canada and New Zealand are applying hard limits to data – over here we have unlimited data usage.

Not surprisingly it doesn’t take much to find potential purchasers in the two countries who are less than happy. About the only complaint I’ve heard over here is that users are tied to O2