Welcome to the Treehouse Community
Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.
Looking to learn something new?
Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.
Start your free trial

Timothy Boland
18,237 PointsHow to Become a Polyglot IOS/Android developer
This is actually a post aimed at Ben Jakuben
I am almost done with the Android Track and I hope to continue on to the IOS Track, but when i ask friends and colleagues, they recommend not attempting to become a Polyglot IOS/Android developer...but I do see that Ben has been able to do it successfully since he teaches both IOS and Android here.
Im curious if Ben, could tell his story as to what steps he took to become proficient at both?. Do you no longer do Android Development since you are doing IOS now? Or do you have any techniques for being able to pull off both?
Your feedback would be really appreciated
4 Answers

Stone Preston
42,016 PointsIm not really sure why your friends think its a bad idea. What disadvantage could it possibly have? Being able to learn and use multiple languages is a key skill necessary for any developer, and limiting yourself to one area of development doesnt seem like a good idea at all. I would definitely learn both. In order to become proficient in anything, you must practice practice practice. I would ask your friends to explain themselves. Being reluctant to learn something new just doesnt seem right.

rayorke
27,709 PointsBoth Michael and Stone are absolutely correct. As a programmer today, you really can't get away very easily with knowing only one language, and to do so, you are doing yourself a great disservice. Knowing multiple languages will open your mind up to new ways of approaching problems, and this will strengthen your overall programming skill.
That being said, I also believe that it's important, to focus on a single language first when learning your first programming language. You should understand it thoroughly before moving on to tackle another language. The reason for this is that you will be able to address intermediate and advanced topics more quickly by focusing on your chosen language than if you split your learning ability between two or three languages at a time. Once you have reached a level of comfort with your chosen language, you can quite easily pick up your second, third and fourth languages.
I first learned C along with BASIC, and then I went on to learn Turing, then LISP, followed by C++, C#, Java, Objective-C, Python, and now most recently Ruby and Clojure. You have to keep up and constantly learn different methodologies and languages.
Okay, now I feel old...hehe.

Michael Lyons
11,031 PointsI believe this argument draws back to the contrast between Specialization and Generalization of skills. I can describe it analogously: If you were a professional baseball player, would you rather good at every position and able to play everywhere OR the best at a particular position, say, second base.
I'm not declaring that everyone who undertakes both iOS and Android programming is necessarily less skilled than a platform-focused programmer. More time can be dedicated to one language, one set of frameworks, and not to mention the updates to each of these aspects. Programming is so vast a knowledge pool that it's impractical to learn everything.
This is of course, only my opinion.

Timothy Boland
18,237 PointsI was hoping Ben Jakuben would chime in on this since he actually has actually become a Polyglot IOS/Android Developer here on Treehouse....Could you share youre thoughts Ben?
Thank You to everyone else that has chipped in.
Michael Lyons
11,031 PointsMichael Lyons
11,031 PointsStone makes a good point, learning an array of languages for different platforms would support your understanding and comprehension across all of your known languages because you obtain perspective from both positions. This perspective would support your problem solving thought-streams, possibly.
Zak Erving
22,832 PointsZak Erving
22,832 PointsStone, you're spot-on. I have to admit, I've been a victim of my own naivety as a print designerโฆfor years I felt that in order to truly excel, one had to specialize. For me, this meant working exclusively as a print designer and never touching screen elements unless they were just collateral from making print media first. But the more I came across the stellar portfolios at Behance and Dribbble, I found that those who were mixing and matching across mediums were the ones who were having the most successโand not just in their native fields!
All that to say, we'd do well to think likewise. The boundaries between schools of design (and programming) are getting blurrier and blurrier, and we're only setting ourselves up for future failure if we don't embrace it.