Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I've come across a situation at work where I have to justify why I need one (or more) mobile developers per platform.

Although I'm quite aware of the why (each platform is substantially different, has its own philosophy, etc.) I can't seem to come up with more than that.

Are there any articles I can read or even books that will give me hard data about the advantages?

share|improve this question
3  
Are you trying to convince someone else or yourself? If you can't come with obvious justifications, maybe this is not justifiable. –  user2567 Nov 13 '11 at 13:52
    
I'm trying to justify it to higher-ups that only see in numbers. I see user experience and a better attack plan. –  changelog Nov 13 '11 at 13:58
    
Ok then you must update your question to reflect that particular problem. –  user2567 Nov 13 '11 at 13:59
    
If all else fails, you should at least ask for a developer with PhoneGap or Titanium experience. But only if all else fails. –  Yannis Rizos Nov 13 '11 at 14:44
add comment

2 Answers

There are two things you need to consider:

1) Are there enough hours in the day for a single developer to do all that needs to be done - twice?

The 'default' dev environments for iOS and Android are substantially different, even down to the language (Objective-C on iOS, Java on Android), so it's not like you can write the code with a few macros and run it on both platforms. Essentially it's got to be written twice. That means you are going to have to either pick one for your dev to do first, OR you're going to have to wait twice (or more) as long for a simultaneous release.

2) Can you actually hire a dual-mode developer?

While lots of folks ARE qualified to do both, most are only up to date on one or the other. Can you actually find a good developer who has experience with both platforms in your area? My guess is that such people aren't nearly as common as good single mode developers.

If you can find such a person, you are going to have to pay more for them. If you have little enough work that they will have time for both sets of development, then they'll still probably cost less than two developers, but the minute that person runs out of bandwidth for multiple projects, you'll end up adding another person anyway.

share|improve this answer
3  
+1, the finding qualified people angle is the hard part here . . . –  Wyatt Barnett Nov 13 '11 at 15:08
add comment

You don't need more justification than the truth. You just need to make it understandable for the decision-makers. They probably have some idea that different programming languages exist. Different platforms usually use different languages, and many programmers only specialize in a handful of them (usually for one platform). Tell them that an iOS programmer is not qualified for Android and vice versa. If needed, illustrate with non-IT examples that they can relate to: e.g. asking an iOS developer to develop for Android is like asking a bridge engineer to engineer a house. Sure, there are common skills between the two, but they are vastly different. If the company develops for both desktop and web, you can also cite that as an example: the two platform needs different programmers.

share|improve this answer
    
I'll play the devil advocate here OK? Why is a iOS programmer not qualified to develop for Android? I know many of them that do both successfully. In fact, most mobile developers I know work on both. –  user2567 Nov 13 '11 at 14:15
1  
A person who has experience on both platforms is both an iOS and Android developer. For anecdotal proof I can say that I never met such a person. This doesn't mean anything in general (certainly not that they don't exist), just as you knowing developers with both skillsets doesn't mean anything. –  Tamás Szelei Nov 13 '11 at 14:34
1  
What an interesting demonstration the power the confirmation bias ;) –  user2567 Nov 13 '11 at 14:36
1  
The other thing is that these people will be developing projects in parallel. So if you're releasing feature X you'll want to release it on both ends at the same time. Having one developer per platform will enable you to release them faster. –  changelog Nov 13 '11 at 14:37
    
I agree (with both). Also, developing two projects in paralell does not only split the developer's performance in two because there is an (objective) cognitive overhead when switching between the two projects. –  Tamás Szelei Nov 13 '11 at 15:37
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.