Are you aware of the millions of lines of code behind the applications and devices you use every day?
Coding is used for many different purposes - more than you may realize.
In this article, I will first go over what the term 'coding' actually means. Then, I will briefly explain how it all works underneath the hood.
I will also explain why you should consider learning to code and show you some areas where you can see the effects of coding in your day-to-day activities.
Here is an overview of what we will cover:
- Computer coding definition
- Why learn coding?
- How coding is used in the read world
Coding is how humans are able to communicate with computers and other machines.
Coding refers to the process of humans giving highly detailed, logical, and descriptive step-by-step sets of instructions / commands to computers and machines.
Essentially, it is the art of telling a computer what to do, what particular actions you want it to perform, or even what actions you don’t want it to perform.
The instructions are written and organized in a text file, known as a computer program.
Computers and machines read, process, interpret and then carry out the instructions they receive, and in that way, they can solve a specific problem.
Computers and machines can process data and read and execution instructions at an extremely high speed - much faster than any human would ever be able to.
Electricity is what powers computers and machines. Electricity has only two possible states – either on or off.
Inside computers and machines, there are tens of thousands of microscopic switches called transistors that control the ebb and flow of electricity. They either switch electricity on or switch it off.
Transistors receive instructions on whether they should switch electricity on or off. Those instructions are in the form of binary code, which is the native language of all machines.
Binary is a base two numerical system made up of only two numbers –
1. This ties in nicely with the fact that electricity has only two states.
So, binary code is a machine language that consists of different combinations of multiple
0s (which represent
off switches) and
1s. (which represent
In the early days of computing, computer scientists wrote binary code, but it was a confusing, tiring, time-consuming, and error-prone process.
Although binary is still used today in electronic devices, computer hardware, and operating system design, programmers now write code using high-level programming languages.
A programming language falls into one of two categories. It is either:
- a low level programming language,
- or a high-level programming language.
Writing code in a low-level programming language involves creating instructions specific to the individual processor inside a machine. The instructions are machine-specific, machine-oriented, and machine-dependent and address each individual transistor.
Machine language (another name for binary) and assembly language are low-level programming languages.
High-level programming languages offer higher levels of abstraction from the machine-level details, specifics, and instructions.
They are machine-independent, meaning they are far removed and not concerned with the inner workings of machines or what is going on underneath the hood.
High-level languages are more human-friendly since they are closer to natural languages.
Their syntax is very similar to the English language, making them easier to read, write, understand, debug, and learn.
All of the above makes them a good intermediary between humans and computers since they make communication between the two more accessible and approachable.
There are many high-level languages.
Although each language serves a different purpose and has a unique use case, they all have commonly shared logic and a shared way of doing things, also known as programming paradigms.
Some popular high-level languages and their use cases are:
- Python is a language for handling, manipulating, and analyzing large and complex data. It is also the language of choice for performing web scraping. Web scraping is a technique used for collecting raw user data from the web.
- Ruby is a language for creating automation tools and scripts. With the help of the Rails framework, a web framework built on top of Ruby, you can create dynamic web applications.
- Swift is for creating iOS mobile web applications.
- C# is for desktop applications, enterprise software, and game development.
At this point, it is also important to mention that high-level languages fall into two categories:
- Front end (or client-side) languages. These are responsible for creating all of the parts a user interacts with.
- Back end (or server-side) languages. These are in charge of the logic and all of the behind-the-scenes processes. They are responsible for creating the parts a user doesn’t directly interact with and is probably unaware of. They are responsible for storing user data in a database and ensuring a user can log in / log out successfully. All in all, they power the front end, making sure that all processes are running smoothly.
Even if you don’t intend to write code professionally, you can still learn to code. This can help you optimize, improve, and automate the repetitive and time-consuming aspects of your current job and the industry you are working in.
And if you want to write code professionally, having this technical skill will put you in a position to be able to help solve some of the problems that humanity faces.
Below, I’ve listed some of the reasons why learning to code now is a good idea and something you might want to consider doing.
Steve Jobs, who was the co-founder, chairman, and CEO of Apple said:
"I think everybody in this country (United States of America) should learn how to program a computer, should learn a computer language because it teaches you how to think. It's like going to law school - I don't think anyone should be a lawyer, but I think going to law school would actually be useful because it teaches you how to think in a certain way. So, I view computer science as a liberal art. It should be something that everybody learns."
Coding teaches you to break down big, complex problems into smaller pieces.
It teaches you how to recognize reoccurring patterns and identify what is not working in a system or a process so you can improve it.
You can tap into and take full advantage of the capabilities and potential of the computer to amplify your already existing skills to solve problems.
So, you can think of coding as a mental tool for troubleshooting issues and finding solutions to problems.
Coding also fosters and enhances imagination, creativity, and innovation – there is an art to it.
The fact that you need to solve a problem forces you to think outside the box and come up with new ideas and ways of doing things. It makes you see and visualize a problem from a different perspective and angle.
Do you have a specific idea or a plan in mind that you would like to bring to life?
You may want to set up a startup business, a non-profit organization, or a charity.
You can use coding to provide help, tools, and resources to people in your community.
In that case, having a website is necessary. You will then be able to promote and let others know about your services or products.
Instead of hiring someone else to build that idea for you, you could do it yourself and save costs.
However, if you decide to hire someone else, understanding the building process of the software will allow you to make better choices when hiring and help you communicate more effectively with technical folks.
There has never been a better time to learn to code.
Learning, and searching for information, have become more accessible and available with the rise in popularity and continuous advancements of the Internet. It is now only one click away.
The barriers to accessing high-quality education materials have lowered compared to previous generations.
More people can learn the skills necessary to get better, higher-paying tech jobs, which will improve their quality of life, no matter where they are in the world.
freeCodeCamp’s mission is to help people learn to code completely for free.
freeCodeCamp has a well-thought-out and well-structured interactive curriculum, with topics ranging from responsive web design to relational databases, SQL, and Python, to name a few.
There is also freeCodeCamp's YouTube channel, with thousands of hours of content. You can browse and find multiple full-length courses on different technology topics.
When you want to dive deeper into a topic, you can turn to freeCodeCamp's publication. There are over 8000 articles and full-length books on coding and technology topics.
We search for information, and we communicate and collaborate with others digitally.
Knowing how to code will give you a better understanding, and even maybe a greater appreciation, of how technology works and of how the digital gadgets and applications you use daily operate.
With the critical thinking and problem-solving skills you will develop through coding, you will be able to research, locate, navigate, evaluate, assess, filter, and store information more effectively and confidently in digital environments.
We live in a digital world, which means that coding is present in most, if not every aspect of our life and our everyday activities.
For most of the things you use and interact with, someone has written code to make it function properly.
The presence of coding and technology in our lives doesn’t seem to be going anywhere anytime soon. If anything, it will increase.
Coding has replaced outdated technologies.
On the one hand, it has made some jobs safer, reduced intense manual labor, and lowered accidents and injury rates.
However, on the other hand, whole industries have been replaced or automated.
Below, I’ve listed some of the areas where coding is present in our day-to-day activities.
Code powers all the electronic devices you use for work and entertainment.
Some examples of electronic devices that have code behind them are:
- Mobile phones
- Desktop computers
- Smart TVs
- MP3 players and iPods,
- Smart wristwatches and pacemakers for tracking and monitoring your heart rate and running time. You can even connect your mobile phone to them to receive notifications. You can also connect your MP3 player to listen to music.
- Digital cameras
- Digital signature pads are increasingly replacing paper documents when a signature is required.
All of your favorite websites and web and mobile applications use code.
Some examples are of those are:
- Social media sites
- Personal blogs
- Instant messaging platforms
- Video conferencing platforms
- Communication tools you use daily to keep in touch with family members, friends, or colleagues over a long distance.
- Music streaming platforms you use to listen to music or podcasts.
- E-banking and digital services for paying bills online, checking credit card balance, or moving money.
- Word processors for writing documents.
- Spreadsheet programs
- Applications for note-taking, productivity, making to-do lists, tracking the progress of a project, or the progress of your goal-setting.
There is code behind the different means of transportation, such as:
- For driving, cars have systems for controlling fuel efficiency, regulating power, and air-conditioning.
- Traffic lights contain built-in microprocessors which are in charge of changing signals according to the amount of traffic on the road.
- Electronic parking meters and parking lot ticket machines.
- Ticket machines and barcode scanners in subways and train stations. They read the barcode on your ticket, and from that, they can tell where you traveled from and how long you've been on the train. They also calculate how much time you have left on the ticket and if it is expired.
- GPS systems ensure you don't get lost in an area you are not familiar with since they provide navigational directions.
- There are CCTV (Closed-Circuit Television) cameras in public places, major roads, and shopping centers for surveillance and security.
- Elevators contain microprocessors that enable them to go to the correct floor that you specify when you press one of the buttons. And they have sensors that detect when something is blocking the door.
There are many household items and kitchen appliances that rely on code to work, some of which are:
- Digital alarm clocks
- The shower heater whose water temperature can be regulated, controlled, and programmed from afar with the help of microprocessors.
- Vacuum cleaners
- Smart tea and coffee machines that control how many cups of coffee you want to have.
- Washing machines and dishwashers that regulate how many spins they will perform and at what speed.
- Air conditioning systems
- Refrigerators and freezers
- You may also have virtual digital assistants or voice-activated software and voice recognition devices. They wait for voice commands such as you asking a question or telling them to send an email to someone on your contacts list. They carry out a task you set them.
- And WiFi routers that connect all of your devices to the Internet.
Hopefully, now you have a high-level understanding of what coding is and for what reasons you use code in everyday life.
To take your first steps in learning to code, use freeCodeCamp's curriculum.
Start with the first certification, Responsive Web Design, and then work your way down the page.
Thanks for reading!