Advertising

Infographic: How to Choose Your First Programming Language (Based on the Life You Want)

Infographic: How to Choose Your First Programming Language (Based on the Life You Want)
Advertising

Programmers have an easy life. There’re tons of jobs, and the jobs pay well.

Even if you don’t want to pursue programming as a career, it still makes sense to learn to code. Especially for jobs in web design, digital marketing, business and IT.

But what language should you learn?

Udacity.com made a pretty cool infographic (shown below) that helps you choose. But I want to go a little deeper.

Building on their awesome chart (found at the bottom of this post), I’m going to break recommendations down into specific categories based on what you want to do. For example, recommendations for travel lovers, designers, IT people or those in other career paths.

I have interviewed many candidates over the past 24 months for various roles and often compared notes with other tech companies who are hiring. This gives me a good idea of where technology is heading in the long term. (Quick disclosure that I now work for IBM.)

Advertising

How to work from anywhere

Do you love to travel? You should choose web languages like Python and invest less time in learning C.

Cloud platforms to learn: Think high-level: Heroku, BlueMix, Azure. Amazon AWS is good to know, but has a big learning curve in comparison to the other options. As a newbie, you will want to focus on programming concepts, not configurations.

You can find remote work opportunities in Stack Overflow Careers and Angel.co.

How to make cool hardware

If you plan on making physical things, there are 2 great hobbyist prototyping boards: Raspberry Pi and Arduino. Here’s a comparison.

In my opinion, Raspberry Pi is a better starting point, since Python is easier to learn than C. But if you want to do hardware, C (and C++) is ultimately unavoidable.

Advertising

bluemix_iot2

    However, for personal “Internet of Things” projects, sometimes it’s easier to buy a cheap iPhone or Android with a broken screen.

    You can instantly track your smartphone’s 3D position and vibration with no programming using IBM’s BlueMix IoT demo. You can then modify their Python demo code and do cool things. (Like hiding the iPhone under your ex’s mattress and finding patterns.)

    How can I increase my pay as a programmer?

    Aside from learning a new language, one strategy is to learn more niche enterprise systems. For example, you can learn about big data systems such as Hadoop and Spark. (There are many places to learn these technologies for free, like IBM’s Big Data University or EdX.org.)

    What if my chosen career isn’t programming?

    For IT and web design, I have recommendations below. But what about other industries, where having some programming knowledge can help? First, if you don’t know what sumif() is, you should probably invest in a course in Excel. Spreadsheets are a lot more powerful than people think. Most programmers will try to use a spreadsheet to calculate something (if possible) before diving into code. For example, to make a cool graphical chart out of data, it would take minutes in Excel but many hours (or even days) of raw programming time.

    Advertising

    After that, you should learn:

    1. HTML: Every website is written in HTML. (And, many apps now are as well.) Whether you’re trying to go beyond the basics in WordPress, or need to set up digital marketing tools, some HTML is good to know.
    2. CSS: CSS, or “cascading stylesheets”, are a special formatting code used by websites to choose the fonts and colours used on a webpage.
    3. Basic JavaScript: A little bit of JavaScript will help if you need to fiddle with a website plug-in for your boss.
    4. Either PHP, Visual Basic and/or ASP.net: Those are very easy languages to learn independently that will let you make something useful quickly.

    Again, these are languages used in everyday scripting and website work. For example, WordPress is written in PHP. Visual Basic lets you make custom Windows apps quickly (but not websites). Knowing languages like Python or Java isn’t going to help much with “average Joe workday” programming problems. (Those are mainly used for larger-scale computer server programming, app development or systems scripting.) Worth noting, it’s pretty easy to move from JavaScript or PHP to Python later on. The basic concepts are the same.

    What programming language should I learn for an IT career?

    If you’re a Windows guy, then learn HTML and PowerShell. If you’re a Linux guy, then it’s HTML and bash scripting.

    You don’t need to learn to program to make big money in IT: IT people with certifications or specialization in enterprise technologies make about as much as programmers, occasionally more. But knowing how to script is an edge.

    What programming language should a web designer learn?

    Learning CSS-based languages like SASS is a great first step. Then, focus on JavaScript. Finally, learn Node.js, which is just JavaScript that runs on a server. The Node.js market is hot, and will be for a long time. Do not leave JavaScript. Instead, specialize in it with Node.js and learn it in depth. (Note that over time, io.js may replace Node.js. You’ll need to keep up with the JavaScript community.)

    Advertising

    Final note about the chart

    When Udacity charted the trend for JavaScript, I do not think they factored in that Node.js is simply JavaScript that runs outside of a web browser. The demand for Node.js in 2015 has been insanely high. To hire someone with solid Node.js experience would be hard without a six-figure offer (as of October 2015). As more people learn Node.js, the market might cool off a little. Fair warning: Node.js gets a lot more hairy than traditional JavaScript. So, if you’re a beginner, start with traditional JavaScript and move to Node.js later.

    How-to-Choose-Your-First-Programming-Language–Udacity

      Featured photo credit: Riona Fitzpatrick at CoderDojo, by connor2nz (Flickr) via flickr.com

      More by this author

      Why Grilled Cheese Lovers Are Better At Life Mark Zuckerberg at a marketing event 8 Ways To Grow Your Startup Much Faster Than Your Competitors Learn to Program Infographic: How to Choose Your First Programming Language (Based on the Life You Want) Ken doll with money in his pocket 12 Money Hacks You Must Learn Now To Avoid Regret In 20 Years

      Trending in Technology

      1 Can Technology have Biases Like Humans? 2 15 Great Macbook Accessories To Improve Productivity 3 7 Best Outdoor Security Cameras For Better Home Security 4 10 Best VPNs to Browse the Internet More Securely 5 10 Best Monitors for Your PC Under $100

      Read Next

      Advertising
      Advertising

      Last Updated on December 18, 2020

      Can Technology have Biases Like Humans?

      Can Technology have Biases Like Humans?
      Advertising

      Technology has taken a vantage leap in providing solutions for man. Before now, technology used to appear complex and would require a great deal of expertise to handle solutions available. Today, we have technology applicable in the simplest human activities as smart products with intelligent algorithms powering them as they make error-free judgments and provide intelligent and analytic solutions.

      Does technology have all the answers?

      This article from Credit Suisse, tells us that technology does not have all the answers because it has been found to exhibit “similar biases,” as humans. No one can discredit the impact of technology, but it is not totally free of human input and this is the reason we experience these biases in many areas we have technology holding foot.

      Advertising

      Creating technological solutions transparently

      This article suggests that the process of creating technological solutions be made transparent and subject to contribution from many people who would end up as users of the product – male, female, young, old, learned, unlearned and all other preferences as we have them. It also underscores the importance of having women on product development teams. This approach is not sure to eliminate all forms of bias, but it is a good way to start in order to appraise the full benefits of technology.

      Advertising

      Technology as the connecting tool

      Technology so far has been a major connecting tool amongst us humans. It is used and appreciated by all regardless of race, language and sex. In order to keep it less subjective to these arguments about human biases. I believe we should gather opinions on products and solutions before making them available to the public. This could be done by gathering input from intended target users and receiving feedback across the stages of production.

      Advertising

      “Recognizing the problem is a start…success will depend on inclusive technologies that meet this vast untapped market.” This cannot be more apt especially at a time when we look up to technology for solutions. We should not muzzle our progress with technology by battling algorithm bias. The first way to avoid this battle is by reading this article here.

      Advertising

      Advertising

      Read Next