Monday, September 16, 2013

3 reasons why you need to learn to code

You don't need to have a degree in Computer Science to write a little bit of code.  Sure it may be daunting at first, but spend a weekend doing some research and working through hands-on examples, and you will be hooked!  Now I'm not talking about developing the next Angry Birds or some complex networking application.

Start small, start with "scripting", and after the initial hurdle, your momentum will keep you moving.

Why would you want to do this?  Well here are three reasons you need to learn to code:

1. Improve your processes

This is obvious.  If you can write some little bit of code to automate one of your processes that was previously done manually ... there is time saved.

For example, let's quickly talk about Greasemonkey.  Greasemonkey runs JavaScript in your Firefox browser and can modify the look of a webpage.  You go to a website, Greasemonkey looks at the URL you load, and if it has a script for that address, it will run a script.  Very useful for reworking the content of a webpage to be tailored to your own uses.

There are plenty of beginner tutorials on Greasemonkey, so I don't feel the need nor do I really feel this is the medium to go too much into that.  But think of a website that you rely on to do you work every single day.  Maybe it is internal to your work center, maybe it is on the open Internet.  But you constantly find yourself reworking numbers in a table into a way that makes sense to you or your customers.  You think that color coding cells in the table, based on the data, would help you analyze the content more efficiently.

Assuming you don't have access to the website developer (as is the case most of the time with sites on the open Internet) Greasemonkey is for you.

2. It is magic

It might sound a bit silly ... but if you have the ability to write simple scripts that make not only your life easier, but also the lives of your coworkers and those around you ... such wizardry does not go unnoticed.  If you can take out some of the mundane and automate processes, your talent will be well celebrated.  If you can write a macro in some Excel document that allows for quicker inputting of data for management, standby for a "job well done".

Many that do not know how to script view the output of those that can script, as some sort of magical black box that does great things.  They can not comprehend how content can be manipulated in such helpful ways and they get an addiction, in which you have the fix.

People will appreciate your talent.  Once they see what your talent is capable of, it will spur new ideas, better processes, help get things done, and hopefully give you an atta-boy worth the time you invested in learning.

3. Appreciate the code

When you learn to code, you have control over the content.  With Greasemonkey, you could rearrange an entire webpage to look completely different, tailored to you, your boss, and your customers.  With this power, you gain an appreciation for the code that generates the website.  This appreciation starts making you think differently.  When you visit a website and certain parts of the page look a little funky (a technical term) you start to think about the code behind the site and may understand why it isn't working as designed.

And beyond the code, you will gain an appreciation for other developers.  A cool bit of software may spark an interest in trying to learn the technical know-how behind it.  You will have added respect for that developer.  A website's user interface may not seem very intuitive, but because you've dabbled in HTML and JavaScript, you might be able to trek it and help others as well.

In the end, you will improve your technical knowledge to be able to help others and yourself and you will be a better steward of technology.  Not a bad way to go!

If you want any more information on getting started (Hello, World!), leave a comment below.  Will happily help out in whatever way I can.  Happy coding!



  1. Jason - this is a great post. One thing I'd add is for the folks who want to get more technical when it comes to coding. One of the best courses I ever took in college, as a CS major, was assembly language. It laid the foundation for helping me understand how code gets executed in the CPU, how memory is used/managed, etc. This then helped me be able to read C code, and other languages, and visualize what the code will do at the hardware level. I'm not saying ever developer needs to fully learn assembly language, but having a basic understanding can greatly help.

  2. 4. In case we ever have to go to the civilian workforce, it is a very marketable skill.