In the beginning, most of us learn to code by writing a simple program that greets the world. Some do it in an older programming language like Lisp or C, others in a more modern language like Python, Javascript, or Swift. Much is said as to which is the best language to learn, but they’re not actually all that different.

Programming isn't really about the language you do it in.

Computers—people who spent their day literally counting for the fields of mathematics, engineering, and navigation—emerged first in the 1600s as a job title. As calculations grew larger, machines were invented to do the job faster and with less mistakes.

A notable example of this was the tabulating machine, invented in response to the US Government's need to develop a more efficient way to count the Census of 1890. Counting the Census was estimated to take more than a decade to complete, but with this new technology, it was completed in just over two; this was huge at the time.

Eventually, the modern computer was born. A more general-purpose device that a programmer would use to input a set of values and instructions, to output a result. With time, these modern computers grew in sophistication. We invented ways to represent more facets of our daily lives—the alphabet, words, floating-point numbers (like 3.45), images, videos, all the way to modern day 3D games, and voice interfaces like Siri—all with a simple zero and a one.

One after another, these inventions led to the computers we use today, and even though our phones and laptops are a lot more sophisticated than their predecessors, their essence remains the same: Input data, process it, output the result.

Type in an email, hit send, output an email in the recipient's inbox. Type in an essay, hit export, output a PDF document. Upload a photo, hit post, output an Instagram post.

Programming is about the process that takes place between input and output. Just like we use common language to express thought, and mathematics to deal with quantities and measurements, we use code to describe how to do something.

Do programming languages play a role? Absolutely. Different languages have been created over the years that focus on different aspects of a computer, but the essential building blocks of programming exist in all of them.

Programming is the art of taking a complex challenge, thinking creatively about how to break down, and ultimately building a process back up that solves it. What we can do with this creative thinking extends as far and wide as the frontiers of our knowledge and imagination.