Google+ Badge

Thursday, February 10, 2011

Android vs. iOS developer differences

I am working on an update to our mobile application. I will do the work first on the Android as I am more comfortable in Java then port it after the initial management and QA approval rounds to the iOS. Doing it in sync is a waste of time as you make constant changes to both instead of just getting one right then doing a much easier port.

This does not mean I ignore the iOS for the first chunk of development. I need to make sure anything I do fancy pantsy on the Android has a match on the iOS side. I end up doing a lot of web searches to see if I can do something on the iOS side.

It actually gets scary to see what you find in web forums on the iOS side of things. Maybe it is what I am looking up but I tend to find the questions asked by iOS developers to be programming 101 while on the Android side they tend to be medium to tough questions.

Examples you say? Sure, here are two that just made me cringe.

I need to use an Expandable List on both platforms. Found some nice sample code for each side and I have the Android piece running in a prototype. When I found some sample code on the iOS side it had just two groups so the code was really simple like the following (shown language agnostic):

if (group == 0)
   text = "Group 0"
else
  text = "Group 1"


Someone posted


I tried


if (group == 0)
   text = "Group 0"
else
  text = "Group 1"
else
   text = "Group 2"

and I get a compiler error about the else? Plz help, what am i dong wrong?

This is programming 101, how to use if / else if / else and you must love the grammar and spelling to go along with the lack of basic programming knowledge. I have not seen questions this basic in a long time of doing development in Java and C# but ran into it quickly for iOS.

Second example involves SQLite. I wanted to make sure it was available under iOS as we need to cache some data between application sessions that is rather sizable. Again I found reasonable samples on both sides but the comments on the iOS forums made me shudder.

OMG this is prefect! thx, but it only adds, how to delete, plz help me!

The blog author was very nice and posted a response on INSERT adding and DELETE removing with pretty much the exact syntax between the two. Really folks this is a simple Google search to find the results. Is this coder going to ask each SQLite question on this forum? How hard is it to be introduced to a concept then look for depth via web searching?

There are more examples out there, these are the quick ones I have found. I know this is not a good sampling and there are many all star iOS developers because I have seen many fantastic apps but there also appears to be a number of "how the hell did you get into this line of work" developers looking to make fast money on the iOS side of things.

C based languages are bad enough to learn without lacking basic programming knowledge or the willingness to look up very simple answers. SQLite on the Android side seems pretty straight forward. A little screwier on the Objective C side as it is C based and not NSString etc. based so I will have to write more code just to convert objects about.

Any of you come from the iOS side looking at Android programming and finding things just opposite of what I have found or do you also find iOS Q&A forums full of some really inane questions? Are people coding on the iOS just to try and make some quick cash?