Tuesday, August 4, 2015

Saturday, April 4, 2015

New versions of 'Cricket Updates', 'TimeZone Converter' and 'Convert My Units' Released

Over the Easter long weekend we've taken it upon ourselves to catch up on a few outstanding updates.  They are as follows:

Cricket Updates v1.1
I fixed a "loading screen of death bug" that was occurring sometimes when the live scores web service we use was having issues.  From now on; if any of the web requests fail this is detected more quickly, the progress bar is hidden and a nice error message is shown in the appropriate section of the app.

TimeZone Converter v1.4
The 2 major complaints I see in the comments about this app are:

1. Why can't the app just remember the 'from' timezone that I inputted last?  When I created and was alpha testing this app I was travelling a lot and found it annoying that the 'from' timezone always remembered my last choice.  I instead thought it would be much nicer if the 'from' timezone was automatically selected based on the phones location.  However judging by the comments and emails I've received; our users seem to disagree.  Therefore I have just updated the app to always remember the 'From' and 'To' timezones.  Note: In a future update I might make both options configurable.

2. Why do I have to look for cities with the timezone I want, I just want a list of generic timezones?  As some windows phone and windows RT devs may know the full .net timezone functionality is not included in the cutdown API we have to work with for mobile devices.  To get around this limitation we have downloaded the zoneinfo api and converted it for the compact framework.  For more info about how we did that check out this post from 2012.  Unfortunately all the generic timezones seemed to be wrong when I used this API.  At the time instead of fixing the problem I decided to just remove them from the app as I was on a tight schedule. This decisions has led to so many complaints from users who complain that their city is not in the list and they just want to select a generic timezone.  So finally yesterday I decided to start investigating the issue.  I was able to find a pattern in the problem and managed to write an adapter class that identified erroneous records and overrode them.  However on further inspection I discovered that the problem was not in the API but was related to some bad data in the etcetera.dat file that is included with the zoneinfo api.  After seeing that I just fixed the data up and threw my adapter class away.  So now we have a new section with the heading 'etc' which includes a list of generic timezones (see screenshot below).

I'm sure the Americans will still complain that I haven't included specific rows for Pacific Time, Central Time, and Mountain Time etc; but unfortunately those values are not 'out of the box' entries in the tz database.  At least this should be a step in the right direction and I plan on adding that functionality in my next update.

Convert My Units v1.3
As this unit converter also converts timezone in the same way as TimeZone Converter I have applied the above fix ( detailed in issue 2) to this app as well.