Who among us has covertly googled a question that we “should” know the answer to? When you’re learning to code, this happens a lot — whether you’re trying to remember what HTML stands for, spinning your wheels stuck on a specific coding problem, or having an existential crisis about what the internet actually is.
First of all, there’s no shame in having questions, no matter how far along you are in your learning journey. As scientist Carl Sagan put it: “Every question is a cry to understand the world. There is no such thing as a dumb question.”
So, in the spirit of fostering a “no dumb questions” world, we’re answering a handful of common coding questions that pretty much everyone has wondered about.
What’s the difference between coding and computer programming?
Lots of folks use “coding” and “computer programming” interchangeably, but it turns out there’s a slight difference between the terms.
“Programming is the creation of a solution that solves a problem,” and coding is just one step of that process, explains Nik Dolan-Stern, a Curriculum Developer at Codecademy. For example, programming a website involves planning the purpose of the site, translating the plan into code, testing and fixing the code, and reviewing the finished product. The actual coding only goes down in the second step, Nik says.
You might’ve heard the recipe analogy that’s often used to explain programming: Just like a chef writes a recipe for a cook to follow, a programmer writes code for the computer to implement.
Why are programming languages called “languages”?
Programming languages are the medium that humans can use to “talk to” a machine.
Computers “think” in binary, which basically means they only understand strung-together 1s and 0s — humans obviously have more complex ways of communicating. Enter programming languages: Humans use programming languages to write instructions that computers can then translate into 1s and 0s and follow.
Where do you actually write code?
Writing functional code is a little more complicated than opening a Word document and typing.
You need something called an “Integrated Development Environment” or IDE, which is essentially a place for programmers to write, edit, and tinker with code. Unlike your basic text editing app, IDEs have helpful coding-specific features, like syntax highlighting, which highlights terms so code is easier to read, and autocomplete, which saves you a few keystrokes as you type code.
If you’re a Pro learner, you can access your very own IDE called workspaces, which you can use to experiment and practice writing code outside of courses. Workspace currently supports a handful of common programming languages — HTML, CSS, JavaScript, and Python — and it’s shareable, so you can use it to display your portfolio or work on a project with another programmer.
How many programming languages should I know?
Most programmers learn multiple languages throughout the course of their career. The more you know, the more you can do — and there are hundreds of different programming languages with different use cases.
The best programming language for you completely depends on your goals. For example, someone who wants to build and manage a personal website might want to learn basic markup languages like HTML and CSS in addition to languages that will help make their site more dynamic, like JavaScript, Node.js, or React. Whereas someone who wants to make mobile apps would need to learn Swift, Java, Kotlin, or React Native.
Overwhelmed and don’t have a clue where to start? Take a deep breath, then head to our Sorting Quiz, which will suggest programming languages to learn and courses to take based on your personality and interests. Also, keep in mind that once you have a grasp on the basic foundations of coding, it becomes easier to pick up additional languages.
Do you have to be good at math to learn how to code?
It sounds counterintuitive, but you actually don’t need math skills to excel at coding. Problem-solving, collaboration, and creativity are far more valuable when you’re coding than being able to recall the algebra you learned in school.
Does coding require a lot of memorization?
There’s no need to stock up on index cards to make coding flashcards, because unlike spoken languages, you actually don’t need to memorize terms or concepts in order to learn code.
What’s more important than remembering specific code snippets is understanding how the concepts work in practice — even the most advanced programmers rely on Google to look up terms. Codecademy has a handy resource called Docs, an open-contribution collection of code documentation for popular programming languages. You can reference it when you need a concept explained in simple terms, and even write your own additions.
Hopefully, these answers will provide some clarity on burning questions you have. For more of a refresher, check out our Code Foundations Pro Skill Path to get a comprehensive introduction to coding concepts and the main applications: computer science, web development, and data science.
And remember: Having more questions isn’t a sign of weakness, it’s evidence of all the great world-expanding information you’re learning.