What exactly is coding ? What is programming? And are these things even related? I’ve heard it’s a big deal, but why?

For someone new to the world of computers and tech this can be a scary concept.

But it doesn’t have to be.

What is Code?

Think of code (computer code) as the language of computers.

A person will write some code, like a set of instructions, called a program (or software). A computer can then read and follow the instructions to do something as a result.

In other words, coding means someone writes code using a programming language to get a computer to do what they want.

Who writes code, exactly?

The people who write code (many refer to code as “source code”) are referred to as coders, programmers, developers or software engineers. They are the ones doing the coding 🙂

What does Computer Code actually look like?

Code that a computer reads is called “binary” code. Binary is represented as a bunch of 1s and 0s in a long sequence, like this:

Very few people actually write binary code anymore. But is fundamentally what computers are able to understand.

Instead, people today who write code use programming languages such as Python, C#, Javascript, PHP, etc. (there are many programming languages) to write programs (a.k.a. software).

And these modern day programming languages are much easier to read (and write) than binary. The “syntax” of these languages is much closer to plain English than binary.

But I thought computers can only read 1s and 0s?

Code written in modern day programming languages are converted to binary code so computers can understand and run them.

The conversion process is done by a compiler or interpreter. And those are also considered programs too.

Image credit: Medium.com

In the above picture, code is written on the left, it gets transformed by the compiler in the middle to binary code on the right.

Either way, binary or programming language, code is the thing that tells a computer how to behave.

So, what does modern day code look like?

Most code people write in today’s world can be just about as easy to read as plain English (or a funny looking version of English).

Here is an example in PHP code:

<?php 
print "Hello World!"; 
?>

In the above example I’m printing two words “Hello World” to the computer screen. If you are curious you can run the above or your own PHP code here. PHP is a popular programming language used in web development and it powers more websites on the internet than any other programming language.

What’s the most popular programming language in the world?

The answer is…

Javascript

Why? Because Javascript has many uses:

  • It it used on most websites and makes them interactive
  • It is used in web servers to run programs
  • Video games are built with it
  • It’s lightweight (runs fast)
  • It’s easy to learn
  • Has a huge library of code people have contributed to that can be re-used by anyone 

Let’s look at some Javascript code:

alert("Hello World!");

The above code will open a pop-up message saying “Hello World!” in your web browser. You can test that code here. In other words the alert part in the code is the thing that pops up a message and the words in quotes are the thing to be printed in the pop-up.

Why is Coding important?

Because the world we live in is run by code.

Think of the things you use often or even every day:

  • Your smartphone
  • Your laptop
  • Your TV (and most of the hit movies you may watch)
  • Your car
  • Smart home devices (lightbulbs, alarm clocks, heater/AC units, your fridge, Amazon Echo (got one of those yet?))
  • Video games / apps
  • Websites – like the one you’re reading right now!
  • you name it!

All run by software, by code.

Then, think of the things that sound futuristic but are now a reality:

  • Self driving cars
  • Curing diseases (by analyzing data for example)
  • Robots that go to mars or other planets
  • Artificial Intelligence

And those are all run by software, too.

Getting the picture yet?

Chances are if a product can plugged into an electrical outlet or runs on some type of battery it is already or someday will be run by software.

Coding is everywhere and it’s here to stay

Some people claim every company is now a software (tech) company. That’s a pretty bold statement!

In order to stay competitive in the digital economy we’re in, companies are forced to differentiate their products and services using software (and code).

In fact the top wall street stocks are, you guessed it, tech companies ( FAANG = Facebook, Apple, Amazon, Netflix, Google).

Image credit: Forbes 

Code runs the world we live in.

Don’t forget about the Internet

One big example is the internet itself (the word wide web). Hundreds of millions of websites exist . All are websites (services) people use everyday and are run by code. And people write the code that makes them run.

Image credit: Statista.com

And it’s not just websites or services. The infrastructure allowing the internet to run, such as web servers (computers), networking equipment, etc. are also controlled and run by code. 

Hundreds of programming languages exist

There are hundreds of different programming languages (wow!). Here are a few of the top languages according to GitHub (a popular service for developing software):

Image credit: github.com

Javascript, Python, Java, Typscript and C# round out the top five programming languages in 2020.

I can tell you after spending over 20 years coding in one form or another, I’m still learning new things related to coding. And it’s super fun!

Why are there so many programming languages?

I mean if all programming languages are at some point converted to binary (1s and 0s) why do we need so many?

In short, because there are many different types of jobs or problems that need to be solved. And people prefer languages that let them do their job (especially the top coding languages).

One language might be better at solving problem type A while another language better at solving problem type B. And there is more than a whole alphabet of problem types to solve 🙂

If problem type C exists in the market and there isn’t a language that easily helps to solve that problem you can bet someone may be developing a new programming language to fill that gap.

To give a couple of examples:

  • Some languages are easier to read/write than others (we mean the “syntax” of the language is easier to read/write). So some folks might prefer this. I would put Javascript in this category.
  • Some languages are faster or have better capabilities than others. For example the C or C++ language. And some other folks definitely prefer this over easier to ready syntax.

To my knowledge there isn’t one language that is best suited to solve all types of problems. That’s why there are so many!

Is it hard to learn to code?

The short answer is no. The longer answer is, coding isn’t difficult, but it also is not extremely easy.

Think of it this way, you take one step at a time and at the top the view is fantastic!

Learning to code truly is empowering!

And each of those mountains you see in the picture above are like different languages and things related to coding you get to explore 🙂

After learning your first programming language the second is much easier

As it turns out, even though different programming languages have their differences, all of them follow the same basic principles.

For example they let you

  • Store information in things call “variables”
  • Gather behavior into things called “functions”
  • Work with things called “objects” that can connect and interact with other objects, functions and variables

Once you learn one programming language the next one is much easier to pick up and start using.

In fact many coders use more than one language on a regular basis. I know I do!

Image credit: dice.com

And you’ll fine coding is more about solving problems than writing code.

Along the way you’ll find coding itself is only the surface of what people who “code” actually do.

As a coder you might think about:

  • What problems need to be solved in the type of work I do? Types of work might be: websites, mobile apps, robotics, artificial intelligence, etc.
  • What programming languages, including its features, make it easier to solve the problem?
  • How should I design the solution to the problem so good code can be written? 
  • What coding tools are best suited to help write the actual code?

Lots to chew on!

But wait, isn’t coding boring?

No, it’s actually extremely fun to learn to code. And once you know what you’re doing it gets even better.

Writing code isn’t what it used to be decades ago. You might think of someone sitting in a basement or dark, backroom, staring at a screen (that’s no fun, right?).

And it’s OK for those who like to do that by the way 🙂

However, programming today is more about solving problems than it is about simply writing commands that a computer will follow.

And for me that’s what makes it fun.

In fact, for many people in the software engineering field, thinking about how to solve problems may take up more time during the day than time spent writing code on a keyboard.

Writing great code is better (and actually fun!) vs just writing code.

Do I need to be good at math to code?

No. Being good with numbers is never a bad thing. But being a math whizz isn’t at all required.

Instead of math or numbers, think of coding as a way of working with things conceptually (some call them objects) and figuring out how to put them together to solve problems.

There is even a way of coding call Object Oriented Programming or OOP that makes a coder’s job easier by allowing them to code in a way that gets more done while worrying less about low-level details.

Of course in the end, using OOP or not, you write some code 😉

Can I learn to code on my own?

Yes! There are many places to learn to code online and on your own time. And what is even cooler…

Coding jobs pay really well!

Yes they do! In fact pay for the top software engineering roles is well into the six figures. Wow! Not too bad.

Image credit: hired.com

And the median pay for software developers, that’s half earning more and half earning less, in 2019 was $107k/year according to the USA Bureau of Labor Statistics.

You don’t need a college degree to get a job coding.

A college degree in Computer Science never hurts. However many employees working in the tech industry do not have a four year college degree. See the below chart from StackOverflow, a popular resource for coders. 

69% responded they were at least partially self taught. And about 37% did not have any type of college degree (the folks without a B.A., B.S., or Masters Degree)!

Image credit: stackoverflow.blog

In fact, learning new technology is something that happens regularly in the tech industry. So, even if you received a four year degree, you’d still need to at least keep up with the industry as it moves pretty quickly.

So why don’t more people learn to code?

Good question!

Some people might think it’s too hard to learn.

Or think they don’t have time.

Or think the benefits of learning to code do not outweigh the time spent learning.

Or maybe they are just fine with what they are already doing.

If you are at all interested, you will never know unless you give it a shot!

And I’m glad I did. Because. Coding. Is. Awesome!