May 09

I have moved to http://ishaqmalik.posterous.com

written by ishaq

May 27
Fishing Frenzy

Fishing Frenzy

Tintash (my workplace) released Fishing Frenzy (a small fishing game) for the iPhone in early May, It just made it to Top 10 Free apps in the US AppStore today, a big moral booster indeed!

A few things that I noticed in the reviews:

  • Thanks for all those 5 ratings (they were 500+ when I checked), it’s huge, we were not expecting such a big success! Thanks also for those reviews which pointed out things we missed, positive criticism is essential to improve.
  • and no, mscarim, Daisy99 and tayyba are not the developers, it’s us. Lets just say that they are some well wishers who want all our apps to succeed! ;-)
  • About the accelerometer controls, definitely calibration will be there in the up coming version. We had touch controls in mind too but had to cut them from this version since it was already going beyond its schedule. (are accelerometer controls really that bad? we had received some really positive feedback from the people we showed it to at GDC, may be we should be doing more R n’ D on input).
  • Is the game too difficult? this is perhaps related to the accelerometer issue, because once you get the hang of input controls, one finds it a breeze.
  • The game is short, we know, plans are there for a lot more levels and a lot more fish types. 

Have Fun!

PS: Just in case you can’t find it on AppStore, here’s the link: http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=314188925&mt=8

written by ishaq \\ tags:

May 16

subject says it all … :)


PS: Don’t ask me why I posted it.

written by ishaq \\ tags:

Jan 15

Recently I presented an introductory session on iPhone Unit Testing in Tintash Lunch Academy (it’s the name of informal lunch presentations tradition that we have set here at Tintash). I am sharing the slides and demo project here. But:

- Tintash Lunch Academy is very informal chit chat we have in our team (slides are some times used only to add the spice).
- I am a beginner in Unit Testing

so don’t expect the quality to be great (infact any quality at all) ;-)

Download here:

written by ishaq \\ tags: ,

Dec 25

Recently I was working on some code that kept throwing

‘NSInternalInconsistencyException’, reason: ‘*** -[NSCFArray removeObjectAtIndex:]: mutating method sent to immutable object’

and it made no sense to me because I was trying to modify an NSMutableArray. After some investigation I found that somewhere in the code, the NSMutableArray instance was being assigned an NSArray i.e. it was doing something similar to the simplified version below:

NSArray *array = [NSArray arrayWithObjects:@“one”, @“two”, @“three”, nil];
NSDictionary *dict = [NSDictionary dictionaryWithObject:array forKey:@“array”];
NSMutableArray *mutableArray;
mutableArray = [dict objectForKey:@“array”];
[mutableArray removeObjectAtIndex:0];

here, objectForKey method actually returns an NSArray which is being assigned to an NSMutableArray, thereby making it an NSArray itself. The issue here is that we are downcasting the pointer i.e. we are assigning a parent class pointer to a child class pointer, may be Apple should implement explicity casting like C++. To fix it, use:

[[dict objectForKey:@“array”] mutableCopy];

Hitting this error is fairly easy e.g. one may be loading user preferences from  NSUserDefaults or application data/settings from a plist.

written by ishaq \\ tags: ,