No, seriously. Hear me out.
First, let me talk you away from that ledge. When I say “learn to code,” I do not mean “be a developer.” Even though the tech sector is suffering from a lack of engineers, mathematicians, and developers (much to the chagrin of the rest of the economy), I am not saying that you should drop what you’re doing and become a programmer.
I’m suggesting that you go through Programming 101 and learn the basics, just like you learned the basics of math, chemistry, physics, history, maybe even woodworking and Spanish. You might be thinking, “But I haven’t used trigonometry since high school!” And you don’t have to feel compelled to be a software engineer once you learn to code, just like you very likely didn’t feel compelled to become a mathematician after your first trig class. Hopefully, you can agree that learning the basics of math was still very useful to you; I want to argue that learning the basics of programming is also useful.
NPR’s Planet Money recently asked its Twitter followers, “What’s your job, really?” As a programmer, my answer would simply be “problem-solver.” The heart of programming is solving problems, but we don’t just stop there. The best code is simple, efficient, and secure. There’s something of an art to it, and that’s what sets a developer apart from a marketing guy that knows a bit of HTML.
Why should that marketing guy learn a bit of HTML? Programming teaches you to take a complex problem, break it down into its component parts, and come up with a (hopefully elegant) solution. It teaches you to think logically. And it also prepares you to have a basic understanding of how our world increasingly operates.
Think about it: you probably have a cell phone; if you have a cell phone, you more than likely have at least one computer; if you have a computer, you probably use it at least once a day, including to use the Internet; your business may function on or using the Internet at some level – I’ll bet you use email at a minimum; the car you drive may rely on a computer; you may rely on GPS to get to your destination while in that car; the music you listen to could be stored on a digital medium of some kind or streamed over the Internet; is your phone service digital?; how about your cable? You get the idea: you’re thoroughly steeped in information technology, but you (and the vast majority of the planet) don’t have any idea how any of it works. And the gap is widening exponentially.
There are more practical, immediate reasons for a business owner or freelancer to learn to code too. If you’re interested in building a website for your business or already have one, then being able to hold a basic conversation with your developer or project manager will help you communicate better, build trust, and weed out problems far better than if you were clueless. You’ll make better-informed decisions about your website and business, and I hate to say it, but you’ll guard yourself better against scams and big, empty promises too. It also doesn’t hurt to have some sense of how to judge the quality of your developer’s work and the depth of his or her knowledge.
Remember: any sufficiently advanced technology (which is to say, any technology not understood on a basic level by the observer) is indistinguishable from magic. If your contractor can tell you think the Internet is magic, then he can safely assume that you don’t know what his time is worth. That means an unscrupulous contractor might try to take advantage of you, but it could also mean that a quality developer will choose to invest her time and talent into clients that more accurately value her skills.
Finally, I’ll leave you with some inspiration: