Learn to Code (And Other Things)

Image of web page code

I’m a firm believer in the idea that it’s better to know a little about a lot than to know a lot about a little. Specialization is fine, but the result can be a person who has a very narrow skill set, cannot adapt very well, and often bemoans “That’s all I know how to do!” when faced with major change. Fortunately, humans aren’t trees or vegetation. They all come standard with this thing called a “brain” which enables them to, borrowing the US Marines’ mantra, “Improvise, Adapt, and Overcome.”

Recently, in response to being let go en masse at various news sites, many journalists (and I use the term loosely) were told by critics to “Learn to code!” While the sentiment behind the phrase was anything but benevolent, the phrase does have a grain of truth. I realize that it’s lot to ask of a person educated in the humanities to abruptly start over and acquire a radically different skill set and mindset (switching from writing about scandals to coding a login page in JavaScript is a herculean leap). But it can be done. There are many anecdotes of people who never had any previous skill in programming, learned how to code on their own, and moved into more rewarding career paths.

Let me be clear: I am NOT advocating making a massive career change to learn how to code and embark on a new career in software development, web site design, or network engineering. What I am suggesting is that learning the basics of computer science and coding (or other valued skill) can be a good addition to one’s talent stack and serve to differentiate yourself. The great thing about building your talent stack is that you don’t have to master each skill. Be really good at one or two skills and then have multiple “good enough” skills to have a sufficiently powerful talent stack.

As for me, there was a situation where my knowing the basics of how to code helped me on the job, even when programming was not part of my position’s job description. First, some background info. I’ve always enjoyed working with computers since I took my first BASIC programming class in seventh grade. I later learned COMAL and FORTH programming when in high school, and later in college I took 101 level courses in C and Fortran. After college, on my own, I learned a bit of C++ and Visual Basic for Windows. When the Web grew in popularity, I learned HTML, basic CSS, and a smattering of JavaScript. I also learned that, while I enjoyed working with computers, I didn’t enjoy programming enough to pursue a career in software development.

Fast forward to the early 2000s. As a documentation specialist at Fred Meyer, I was tasked with maintaining my department’s little corner of the corporate intranet. We started receiving 2-3 mystery shopper reports from each of our 130+ stores every week. This meant I had to post approximately 260-290 PDF files every week. Posting each file one at a time using Microsoft Front Page was quite laborious (nearly a full day’s work), so it was a situation that needed to be automated ASAP. Given my level of coding skill, I believed that I could solve this problem so I took it on myself.

I decided to code it up using a combination of batch files and QBasic for the main body of code. The only area I knew I was weak in was file reading/writing in QBasic, so I did some research online to find code examples to learn and apply to the problem. After a week or two of development on my own time, I created an automated system to read a list of PDF files and output an HTML file that listed the PDFs with hyperlinks to the PDF files. The PDF files would be bulk uploaded to the server and the generated HTML code copied and pasted into Front Page. What would take hours to do manually could be done in 15-20 minutes. Needless to say, my supervisor was impressed.

Was my code elegant? Nope. But I did insert comments liberally throughout my code, ensuring it would be understandable. My coding was simple and crude, but it got the job done. For example, it didn’t have the nicety of letting the user select the folder where the PDF files were kept. Instead the location of the PDF files was hard-coded into the program, so it expected the PDF files to be in a specific folder on the hard drive.

Because I drew upon what I had previously learned back in high school and college, “coding” was already a part of my talent stack. Sometimes minor skills can lie dormant for years until a situation arises where they need to be applied, which is what happened to me.

Coding is just one of many skills one can cultivate, so don’t think you need to immediately take a course in Python or JavaScript programming. Depending on your career and field, you may never need to write code. However, because knowing how to use a computer is an essential part of modern work, one should learn more about computers than just how to write a memo in Word or modify basic Excel spreadsheets. Learning how to bend an application, operating system, or computer network to your will can certainly put you above the average computer user and bring greater value to your current skills.

If technology isn’t your thing, then here are some suggested skills that would benefit anybody’s talent stack:

  • Writing (especially copywriting, which is writing to sell).
  • Graphic design (because making something visually interesting can enhance one’s communication skill).
  • Sales and marketing (especially online and SEO).
  • Public speaking (your local Toastmasters is a great resource).
  • Business accounting and leadership.
  • Video production (knowing how to shoot and edit video is of growing importance to business communications).
  • Any other skill that you are passionate about AND is of value to business.

As for where to learn new skills, the world is awash in information, so there are many ways to pick up the basics of whatever skill you want to learn. For low cost education, here are my recommendations:

  • Your local public library. In addition to providing a vast variety of books, you can learn from audio books and videos. For free!
  • Your local bookstore. Why pay serious money for a single college course when you can just buy a $20-$30 book instead.
  • Khan Academy (khanacademy.org). Completely free. Courses cover math (basic arithmetic to differential equations), science, engineering, computing, arts & humanities, test prep, and more.
  • edX (edx.org). Another free online school, edX partners with MIT, Harvard, Berkeley, and other major universities from around the world.
  • Code Academy (codecademy.com). Free coding courses in HTML,CSS, JavaScript, SQL, Python, Ruby, C++, and more. Pro level education is subscription based.
  • Udemy (udemy.com). Because anybody can create a Udemy course, quality varies widely. Prices can be high, but fortunately Udemy has monthly sales with many courses priced as low as $10. Any course you buy is yours forever, so there’s no subscription to maintain if you want to revisit a course in the future.
  • Lynda (lynda.com). Courses are of higher caliber than Udemy, but Lynda uses a subscription business model so one pays a monthly fee for access to Lynda’s course library.

The old adage about the “whole being greater than the sum of its parts” certainly applies to one’s talent stack. By developing new skills and adding to your talent stack, you will have a unique combination of skills that differentiates yourself from others and enhances your value.

Image Credit: Pixabay.com

Leave a Reply

Your email address will not be published.

Solve : *
17 × 2 =