Reasons to Code
Reasons to Code
“Learn to code” has become a cliché. Unlike learning Spanish or the piano, where the benefits are obvious, coding often feels abstract. So before diving into why you should code, let’s clarify what coding is and your options for leveraging it.
What Is Coding?
At its core, technology is just a way of doing things - a technique. You can start a fire with sticks, light a grill with charcoal, or turn on a stove. All are forms of technology. Coding is no different; it’s a tool to achieve an outcome.
Start with the problem you’re trying to solve before worrying about which technology, if any, to use.
This applies to life beyond coding. Do you want a car or transportation? A mortgage for shelter or wealth? A degree or knowledge? Sometimes these overlap, but they often don’t. Don’t pay for a proxy - a piece of paper - without getting what you actually need.
So before investing six figures in a Computer Science degree, four figures in a coding bootcamp, or even the cost of a book, ask yourself: What am I really trying to accomplish?
Coding for Software Development
Software developers have a reputation for being insufferable, it’s often earned. The tech industry is known for bad communication, and the biggest barrier to entry isn’t technical; it’s social. Many people, especially women and people of color, avoid tech because they don’t want to work with tech bros.
But beyond toxic culture, there’s a practical reason developers struggle to communicate: Computers demand precision. Unlike humans, who can infer context and tolerate ambiguity, computers require strict and specific instructions. Over time, developers get so used to this rigidity that they become pedantic, obnoxious even, in human conversations.
When I say code is to make software, a human will accept that statement whereas a software developer can’t wait to tell me I’m wrong. Yes, code existed before software, even before Morse code. But let’s keep things simple - code is to make software, software requires hardware, a computer is hardware.
My coffee maker just has a button to make coffee so it is a kitchen appliance, a machine, nothing more. My doorbell has way more than just a button to make a sound, it has software in its hardware, it is a computer. Understanding this distinction - what is and isn’t a computer - shapes what you can build and the problems you can solve with code.
Types of Software Development
When most people think of software, they imagine apps. Whether it’s an iPhone app, Microsoft Word, or Gmail, these are graphical user interface (GUI) applications. GUIs are intuitive - click buttons, drag icons, and tap your screen. Behind the scenes, though, these apps run on lines of code.
But not all software is graphical. Some rely on command-line interfaces (CLI), where you type text-based commands. For example, you can crop a photo using Photoshop (a GUI) or with a few lines of code (CLI).
Another overlooked type of software development, my personal favorite, is automation. Automation focuses on making repetitive tasks more efficient. My first serious programming was automating price checks on Amazon. What started as a manual task became a fully automated system, it was life-changing.
Automation can unlock career opportunities, too. My first programming job and promotion came from automating ad campaigns on Facebook and Google. Later, my first startup was built on automating pricing recommendations for conference speakers. If you start with a real problem, solve it through automation, and then turn it into an application, you’ll have a valuable skill set for life.
Coding for Jobs, Business, or Yourself
Learning to code doesn’t mean the same thing for everyone. Coding for a corporate job is vastly different from coding for your own business or personal projects.
A local florist would never say, “I need the same John Deere tractor as industrial farmers.” A gas station attendant wouldn’t claim, “Give me the oil rig ExxonMobil has.” That would be absurd. Yet the smallest software developer will, with a straight face, insist they need to use the same tools as multi-trillion-dollar companies.
This mindset fuels endless flame wars. PHP works great for freelancers but is ill-suited for 20,000-person development teams. Netflix should use AWS, but a basic note-taking app could likely thrive on something far simpler.
So, are you coding for a job, your business, or yourself? Decide and act accordingly.
The Real Reason to Learn Coding
So, why should you learn to code? For the same reason you should learn to read, write, or sell: because learning is inherently valuable.
Coding sharpens your ability to think logically, break problems into manageable parts, and approach challenges systematically. It develops patience, emotional control, and an ability to handle complexity–skills that apply far beyond programming.
But here’s the thing: coding by itself isn’t revolutionary. The power of coding comes when you combine it with other skills like teaching, taxes, marketing, or anything else. When you can merge coding with domain expertise, you have the ability to solve any problem, and most importantly, free yourself from the constraints of traditional employment.