iPokédex and iOS 5

Thursday, October 13th, 2011

It still works.... kinda

(日本語版ならこちらです!)

TL;DR iPokédex has become slightly broken in iOS 5. No, I can’t fix it. If you want to help out, register your interest by signing this petition!

Hey guys! :)

iOS 5 is finally out! As I write this, I’m currently taking my iPad through the long backup and upgrade process. As excited as I am about iOS 5 (I can tell you, there’s some AWESOME new stuff in there :D), I’ve actually been dreading this day. Why exactly? Well I’ve known for some time that iOS breaks iPokédex in a pretty epic way. I probably could have mentioned it earlier, but I decided I should wait until the NDA is good and done with. ^_^;

Now, while the app itself is still stable, due to a bit of my dodgy coding and lack of foresight (this was my first major version upgrade as a developer!), an issue has arisen where if you press ‘Sort’, you’ll no longer be able to dismiss the sorting menu. While the ‘OK’ button and the ‘Cancel’ buttons are still being drawn, the code I’ve written that re-positions them to be placed under the scroller view has stopped working (so they’re appearing behind it right now, out of reach). At the moment, the only way to dismiss the dialog is to fully quit out of the app (ie, remove it from the multitasking bar) and start it up again. :(

As far as functionality and usability goes, this is a pretty bad thing, and if I had submitted the app to the App Store with a bug like this in it, it would have most certainly been rejected. ^_^;
I’ve already started receiving emails from users who have upgraded to iOS 5 and have found the error.

Code-wise, this is a VERY easy thing to fix (it’s like 1/3 of a line of code). I’ve already fixed it in the version I carry around on my iPhone. XD
Sadly, however, as I was requested by the Pokémon Company to take the app down, I am unable to distribute this fix to anyone else. :(

I’m really sorry about this guys. The user experience is going to start deteriorating and there’s nothing I can do about it. And I fear it’s going to become more frustrating to watch as time passes, and more emails from users start piling in. ^_^;

Either way, I’m not going to give up until the very end. The lawyer I talked to at TPCI was very kind to me and told me they might take iPokédex over to licensing to see if they might be interested in working something out. I haven’t heard back anything at all on that front in a while now, but as it’s most likely the final avenue, I’m more than happy to wait.

In the meantime, if you’d like to help out, there may be a way for you to do so. :) When Nolan Lawson’s app Pokédroid was pulled, a dedicated young lady named Amber set up a petition to try and convince TPCI otherwise. The petition goes on the record to state that since these kinds of apps are free, and that the information contained within is easily accessible on a multitude of sites, there shouldn’t really be a compelling reason for TPCI to want to shut these apps down. Now, while the lawyer from TPCI explained to me that it’s a pretty open and shut case in that TPCI has simply decided not to allow unauthorized apps, I think the petition is a good idea, if not to simply raise awareness on the amount of interest there is on having some kind of official Pokémon reference app.

At the moment, the petition only has a handful of signatures, so head on over there and sign it!

In any case guys, if you’re a heavy user of iPokédex, I’d recommend hanging off upgrading to iOS 5 as long as you can. ^_^;

SteamerCard.

Saturday, August 27th, 2011

SteamerCard circa 2008

For the majority of my blog posts in the previous couple of days, my good pal Dean keeps point out to me that the SteamerCard entry (on the right of the page) is currently down. :P

While I’m actively fixing it now, since I don’t think I’ve actually done this before, I thought I’d explain what SteamerCard is. :D

Back in the summer of 2008, before I succumbed to buying an Xbox, I was really jealous of all of my friends who had Xbox Live! GamerCards. The whole concept of being able to embed your current gamer status as a discrete, interactive card really appealed to me for some real reason, and I was feeling sad there wasn’t much of an equivalent on the PC. That being said, considering how much I loved Steam, I thought that would be an excellent platform to have one on. :D

So I decided to build SteamerCard as another service under the UberGames banner. :) Unlike most other third party GamerCard services though, I wanted it to be a fully interactive HTML <iframe> element, and given the design considerations, completely ad-free.

The SteamerCard webapp is written entirely in a PHP/MySQL solution and works on a system of parsing the information from the Steam website with regular expressions. In the interests of reducing the number of requests made to the Steam site, the system caches the user’s information in its own local store, and updates itself on an hourly basis.

Unfortunately as of last month when the UberGames system was updated to PHP 5.3, the combination of deprecated code in its base classes caused the entire system to die. Given how heavily the base classes were integrated with the upper-level code, unfortunately it turned out that I couldn’t really resurrect the code without doing a near-complete rewrite.

So at the moment, I’ve pretty much decided to rewrite the majority of SteamerCard from scratch, whilst revamping as much of the old code in the process.

Looking back on the old design above, I’ve also decided to redo the visual look of SteamerCard while I’m at it:

SteamerCard 2011 Design Mockup

This time around, I’m building the whole thing in as much of an OOP fashion as possible, and I’m hoping to set up a system where other themes can be added as well. :)

Also, in a follow up to the blog I wrote last night, once it’s done, I’m considering open-sourcing SteamerCard when it’s finished. :D

Open Source! (Also GitHub)

Friday, August 26th, 2011
Open Sauce :D

Oh wait. Or was that the other 'open sauce'...

With a few websites, a few game mods, and even a few iOS apps under my belt, I think it’s safe to say that I’ve written a fair amount of programming code at this point. XD

As a result of being extremely lazy and hating having to reinvent the wheel, once I got the hang of OOP principles, I decided to always try and make my classes as low-level and as abstracted as possible, so I could always re-use them in later projects. :P

Over a period of developing, testing and refining, I’ve started coming up with a few common classes that I seem to be using a heck of a lot. For example, in PHP, I’ve ended up with a pretty decent MySQL manager class (which I then extended into SQLite), and in Objective-C, I’ve got a UITableViewController that automates loading content on separate threads. ^_^

Since I’ve been finding them so useful in my projects, and wondering if other people might find them useful too, I’ve been considering open-sourcing them.

In any case, I took the plunge this week. :D I’ve uploaded a pile of the PHP classes I use for client work and UberGames projects to my GitHub account.

That account’s been collecting digital dust for a while now, so I thought this would also be a good opportunity to start using it, as well as figuring out a bit more on how git actually works. ^_^;

I’ll be putting as much of my code up there as possible and improving it as I go. As I want to make sure it’s easy to use and understand, I’m also going to try and refine all of the formatting and internal documentation so they’re standard across the board (which it isn’t right now ^_^; ).

All of the code is released under the MIT license, so go nuts with it. :D

.EDIT: Feel free to contribute to the classes as well! (Thanks @nekodex lol)

iPokédex: Why??

Tuesday, June 14th, 2011

iPokédex's BW IconBlimey! It really is hard to find the time to write a blog. ^_^;

I covered this in my intro to iPokédex post a little bit, but I’d like to go into more detail about certain aspects of the app. In this case, I want to talk about how I got the idea of making a Pokédex app into my head. XD

My original motivation for building iPokédex came around at the end of 2009. At this point, I’d gotten mighty addicted to my import copy of Pokémon HeartGold, but I was finding it quite frustrating in certain points. With now over 493 Pokémon, I had no idea what half of them were, what their movesets were or how to evolve them. And not only that, but since the game was in Japanese, even the ones whose names I did know got me confused. XD Ultimately playing the game (even in Japanese ^_^; ) was doable, but it meant I needed to have a strategy guide on hand for those unexpected moments. My trusty iPhone 3G and an open browser window to Bulbapedia worked in a pinch, but since Bulbapedia wasn’t designed for Safari on a tiny smartphone screen, getting to the right info usually took a bit of time. At this point, I started thinking about a native iPhone equivalent Pokédex app…

At around that time, I discovered Pokedex on the iPhone App Store. At 2 bucks it looked to be a hefty investment (Well. As far as iPhone apps go XD ), but I took the plunge hoping it would be worth it.

(more…)

iPokédex: The First Week

Tuesday, April 12th, 2011

AppFigures report on which countries are downloading iPokédex. America is winning. XD

Well. iPokédex has been out for a week! And so far, I am VERY pleased with how it’s been received. ^_^

Using a combination of statistical data collated by both AppFigures and Google Analytics, I’ve managed to learn this about iPokédex’s usage:

(more…)