It’s a good time to get into coding, as evidenced by all the people who’re fleeing other lines of work to learn programming languages. A recent article in the New York Times described thousands of job openings for all sorts of tech pros, from software engineers to data scientists; quarterly data from the U.S. Bureau of Labor Statistics, meanwhile, suggests that the unemployment rate for programmers and developers is 1.8 percent and 1.3 percent, respectively.
That’s wonderful news for those with the right skills. But for those who’re just entering the tech space, how do you know which programming languages will ensure the most opportunities (and paychecks)? Here’s a basic guide to the languages in wide use on both the Web and mobile.
If you’re interested in building apps and games for the iPhone and iPad, you’ll want to learn Objective-C and Swift. Objective-C is Apple’s longtime language for building mobile apps for iOS, the company’s mobile operating system; Swift is its much newer, user-friendly replacement. Although Swift hasn’t yet totally eclipsed Objective-C as the iOS language of choice, it’s become the focus of many programming classes: If you want to build for the iPhone, you’re going to need to know it.
Android apps, on the other hand, rely on the Java programming language. If you want to learn how to build Android apps, you’ll need to become familiar with Android Studio and Eclipse, which are the integrated development environments that developers use to build apps for the platform.
Although Android is pretty ubiquitous, with a commanding market-share of the world’s smartphones and tablets, popular wisdom suggests that app developers who concentrate their efforts on iOS tend to make more money.
In past years, developers also had a choice of building for BlackBerry and Windows Phone; the former held a not-insignificant portion of the smartphone market, while the latter was a well-funded up-and-comer. Today, though, BlackBerry has been reduced to a niche product, while Windows Phone is effectively dead—replaced by the new Windows 10, which is supposed to work across a variety of form-factors.
If you decide to embark on a career building for the Web, you’ll encounter a variety of other languages, as well, including C#, SQL, Python, and Ruby. Python, a general-purpose language used for far more than just Web development, is especially worth your attention; its syntax has inspired a bevvy of modern languages, including Swift, CoffeeScript, and Groovy.
Learning for Learning’s Sake
Whatever languages you choose to learn, becoming a good developer is about more than just the skill sets—it’s also a question of having the right attitude. The tech professionals who succeed in their careers tend to be relentlessly curious about every aspect of their work. They pick up new languages for fun, do their best to answer questions and tackle challenges on their own, and don’t let setbacks dissuade them from their chosen field.