Crash Course in Programming with A.I.

Though we’re still a ways out from building machines that will take over the world with artificial superintelligence, A.I. programming has come a long way. It has found its way into a myriad of applications and is quickly becoming a requirement to stay competitive as a business.

This includes building programs to understand and help us humans in our day-to-day lives, like Siri, Echo, and countless chatbots. It can make operations networks, like Amazon’s, hyper-efficient by predicting who will want what, when, and where. It can also focus on research, with programmed learning able to evaluate results against hypothesis, and adjust and retest to advance our understanding of the world.

If nothing else, having some familiarity with A.I. could give you some Thanksgiving dinner fodder to blow your grandparents’ minds. But it also could lead to promising new career opportunities.

Why A.I.?

If you’re looking to add to your repertoire to boost your marketability as a software engineer, artificial intelligence is a safe bet. According to Hired’s State of Software Engineers report, demand for machine learning engineers has increased by 27% year-over-year and demand for data engineers has increased even more (38%). This means that a talent vacuum is forming that will make these jobs easier to get and quality A.I. programmers that much more valuable.

As you may suspect, salaries for engineers well-versed in A.I. are also competitive. According to Hired, the average annual salary for a machine learning engineer is $122k and data engineers earn an average of $132k per year.

Here are a few lucrative roles for which A.I. programming can get you noticed:

  1. Data Architect
  2. Data Scientist
  3. Machine Learning Engineer
  4. Business Intelligence Developer

The other reason for picking this up is pretty simple: it’s cool as hell!

The field of artificial intelligence is an exercise in replicating the very thing that (most of us would consider) makes us human. The emergent property of our trillions of synapses firing in a symphony that gives me the sense that I am “me,” and each of you the sense that you are “you.”

Though most applications facilitate learning focused, singular tasks or making predictions based on massive data sets, there is still something special about working to bring machines to recreate biological capabilities. And even in weak A.I., the possibilities are endless to help the world become a better place with creative, elegant software. And isn’t that what we all want?

How to Start Using A.I.

When it comes to picking the right language to get your career on an A.I. track, you need to decide what type of work you want to be doing and evaluate that against the support and pre-built libraries that can assist you along the way.

  1. Start with a general language that works well with data processing and analysis. The most prominent and in demand at tech companies are Python, Java (or Scala), or R (if you exclusively want to be a data scientist). Choose just one.
  2. Learn a language for interacting with database management system (DBMS) that will help you access and organize the data you'll use in your algorithms. Knowing SQL and understanding basic NoSQL is highly recommended. If entering a larger company, Hadoop, Spark, or similar will also be helpful.
  3. Understand the key frameworks and libraries for building AI solutions. Some that are important for common AI problems are:
  • TensorFlow (a must!): used for high volume, complex numerical computations
  • Accord.net: used for things like classification, regression, and clustering
  • Caffe: used for image recognition
  • Scikit-learn: used for common AI problems and data mining
  • NLTK: used for natural language processing

It's also helpful to experiment with the growing AI packages provided by cloud computing platforms like Amazon, Google, and Microsoft.

For a compilation of educational links, credit goes out to Shashank Chaudhary with hackerearth.

Like any new skill, it will take discipline to master this one. But from the practical to the theoretical, from the present to the future: programming with artificial intelligence is a worthy practice to add to your tool belt.

About the Author

Mike Parker

Mike Parker is a freelance UX designer based out of Los Angeles. Mike is a passionate digital nomad with experience in product management and interaction design. In 2019, he will be launching a new product of his own focused on the restaurant industry.