Understanding Programming vs Coding:
What is the difference between programming and coding and why is it actually kind of useful to know that? In this article, we’re not going to go into official definitions. There are a few important distinctions that can actually be pretty useful to know, and it can keep you out of trouble with using the wrong word, let’s say, because weirdly, people can get sort of offended if you call them a coder.
What is Programming?
Let’s start with programming, which is a set of instructions that define behavior. I could use real-life examples like how we’re programmed to get hungry and tired, check social media, talk about Pavlov’s dogs, and stuff like that, but I won’t. Programming is the manifestation of logic. Programming equals logic, and this is why many consider programming the close cousin of math. Math majors are equally sought after for the topmost complex software engineering jobs.
In colleges, you’ll find a subject called discrete math, which is often specifically math for programming. Don’t let that scare you though; you do not need a formal background in this stuff to become a great programmer, and you can figure a lot of it out as you go. These are a few reasons why people call programming applied math.
Logic in Programming
Ultimately, in the world of logic, you can think of math as the theoretical branch and programming as the practical branch. This logical basis is why, even though they look like code, you’ll hear people say that CSS and HTML are not real programming languages. So it’s not because they’re backend elitists, at least not in most cases.
Programming in Tech companies
Programming, and not coding skills, are what most of the biggest tech companies test for. That’s why they let you take your interview a lot of the time in any language that you want. These interviews are often done on a whiteboard with something called pseudocode, where you’re just writing out steps in plain English rather than specific coding syntax.
Coding: Implementing the Programmatic Solution
Now let’s talk about coding, which in some ways is broader and in others more specific. We could call coding the implementation or coding details of a logical programming solution, but as we know, that’s not necessarily the case because we can also code in something like HTML or CSS. For this reason, it’s harder to pin down a specific definition of coding, but one thing’s for sure: to be a good coder, you have to learn the syntax of different coding languages.
In many ways, the logical problem-solving of programming is on a higher level of abstraction than coding, which is more focused on technical details. Details like code quality, breaking things into functions and different files, and leveraging code libraries all come into play here. Interestingly, you can swap out different code solutions for the exact same programming outcome. This is part of the reason the first code we write in any new language is “Hello, World!”, which is completely the same in programming terms but different in every language in coding terms.
Coding vs Programming
One important thing to keep in mind is if you try to explain coding details to non-developers, they will quickly fall asleep. This is where some of the age-old conflicts between technical and non-technical people on a team emerge. Developers are pushing to refactor the codebase, while the project manager is asking, “What’s the benefit to the end-user?” and met with blank stares. To give a course example, for coding, if you see anything like “Basic JavaScript,” “Python 101,” “Advanced Python,” these are very focused on pure coding concepts.
In other words, the syntax and patterns of a specific language. Also, be a bit careful calling someone a coder; it’s a bit slanderous in the developer world. It kind of implies that you’re just a cog or a machine, and all you’re good for is writing code, and also that you’re easily replaceable by another coder, and that person could also be on the other side of the world.
Bonus point for Programming vs Coding
With both these definitions, it’s fair to say that once you know programming, coding is really easy. It’s why experienced developers can learn new languages so fast. Learning programming also helps you build mental models. Also you will hear a lot of people say, “Focus on programming when you’re starting out; don’t worry about coding language,” and people think this gives them permission to go learn five different languages just because they’re not focused on language. But the truth is, the faster you can master a single language, the sooner you can get beyond just the coding step, and you can only focus on the programming because you’re not constantly learning a new syntax.
Conclusion
While we do see coding jobs automated more and more, the principles of programming are here to stay. We could see the number of jobs requiring pure coding drop. Even if you move beyond the job of being a programmer and want to become the next Elon Musk, it can still help you a lot. Anyway, I hope this article illuminates some of the key differences between programming and development. I hope you learned something in this one. Anyway, guys, I will see you in the next one.
Also do read:-
JavaScript Concepts you Need to Know