Developing new skills: Why should you learn to code?

Perhaps that time you think you don't have can be recovered...

We all already know a lot of different codes from languages to street signs to morse code, however what I want to focus on is programming code like Python/VBA/C+ etc… but why should you learn to code?

Why? Well again the one finite resource we all have is time, so why waste it? So many of us have technology from washing machines / hoovers / Google home / light bulbs / dish washers & mobiles that already save us time today (try washing your clothes like they did in the 19th century).

Coding

So, we’re using (both willing & unknowingly) tech to save time, companies like banks, hospitals and restaurants use it to which saves costs that then gets passed onto the customer (hopefully). So why are you not taking advantage of tech to make your work and hoe life easier?

I have said we use tech at home so it does count to our personal life, but I’m also interested in developing ourselves so that we can get as much from our time as possible. Children today in Primary schools are being taught how to program using a language called Scratch (basic coding) whereas 35ish years ago we never touch a PC till secondary school and there was little in the curriculum to teach programming.

What are the benefits? Well, I place them into three categories: –

  1. Personal & Development
  2. Education & Future
  3. Business & Career

Personal & Development

I’ve spoken about uncertainty before and the reason why we need to develop our skills to assess and quantify new information to act on or to reject.

Logical thinking is one of these tools and using it effectively saves us time / effort and cost. This is where being able to program can teach/ train & re-affirm logical thought, since that is what programming is at its core (this doesn’t have to be VBA or Python, using formulas in Excel gives the basic effect) is a series of logical arguments and statements.

This is one of the reasons why schools have introduced programming, so the child can start reasoning at early stages and build upon it (There’s a great explanation on the CBBC site https://www.bbc.co.uk/cbeebies/grownups/coding). In today’s world where technology is very user friendly (iPads) it seems ideal to sit down for 15 mins each day and learn a programming language where resources from YouTube to forums to blogs to dedicated sites like https://www.wiseowl.co.uk/ can help.

Some other benefits

  1. Allows you to iterate quicker & improve on what you create.
  2. Allows you to work with robotics & machines
  3. Allows you to work with big data
  4. Complements creativity
  5. Enchances problem solving skills
  6. Brings new ideas Develop persistence via iteration & debugging
  7. Develop communication skills
  8. Improves your maths
  9. Improves cognitive learning

Education & The future

There’s no argument that we are in the information age and possibly the era of big data, which is why most jobs today may not exist in the future or at least they will but will be very machine/technology based.

We have over the last 100 years allowed technology to enhance us (meaning 1 person now can do the job of 10 ish) where the tech/software carries out the more mundane tasks (like computing the stress within a model under load in CAD, with AI taking on more complex mundane tasks), this has freed up human IQ to work on the next challenges where tech/software cannot go and probably never will (this is questioning and judging aspects of life).

So why is it important learning to program? Well with Moore’s law where tech exponentially grows with software following behind it, the limit of what they are capable of keeps going up (Think of orbital boosters landing themselves) so with programming we can link software/tech together to do things they originally didn’t do, on the flip side you can solve complex equations/problems you’re working on processors that takes minutes (as opposed to days from older tech). This is where we need to learn to translate that problem into a code that the software/tech can run to do our analysis, this is the power of programming yes, we could work it out ourselves but we can program simulations with constraints and allow the tech to add in all the right physics, this allows us to check the information in and results coming out are correct thus pushing what can be accomplished.

In engineering we perform simulations all the time, it has saved time and costs of a large magnitude to having to create actual models (yes there are draw back as the simulations are only as good as the programmers, this is when you need to take what you’ve learnt and conduct the real-world test to see if your predictions on PC are true, again you only do the test when ready or only once to confirm).

While this is today’s world being able to program can improve our understanding of tech and what it can do for us given its current limitations, with that free IQ from enhancing our productivity we can put it towards solving greater problems.

Some other benefits

  1. Gives you skills that fit many industries allowing you to move freely between them
  2. Is probably going to be the main/core of jobs in the next 20 years
  3. Opens a path to AI
  4. Allows new perspectives / structured thinking and analytical skills

Business and Career

Just from reading the last two sections I’m sure you would have an idea how learning to program would benefit businesses and your career. If not let’s re-visit the big data claim, since we produce so much data every day (enough to circle the globe 2-3 times) there’s plenty of problems/issues/thoughts we can analyse statistically.

Take for example the fight against covid, here we saw a global effort to sequence the genetic code, what it required was an application that could share out data sets for millions if idle personal PC’s to process. This program has been around for awhile as it’s also been used for SETI.

My point here was when there was / is a need for something new programmers could quickly put a working prototype together then iterate to perfection.

You can do this as well for companies & businesses after learning to program, this is a transferable skill. Businesses would be wise to educate staff in basic macro building in MS to start them off enjoying the benefits.

Some other benefits

  1. Saves time, getting programs to do the mundane work.
  2. Opens up the full use of MS applications.
  3. Allows you to work remotely.
  4. Opens up data visualisation
    1. Analysing
    2. Thinking differently
    3. Structural thinking
    4. New perspectives

Summary

In the last couple of thousand years, we have developed technology to aid us and improve our lives (think Space 2001 beginning) and in the last 100 years the jump has been significant, where we live symbiosis with technology to solve problems and improve so that we can work on the next difficult tasks.

This gives what I would say fulfilment and satisfaction that we can achieve so much, let alone there’s 7.5 billion of us and each doing the work of 10 before them. But if there’s one point you take away from this piece then let’s say being able to program improves both you mentally, your skills and develops a better more productive way of working (both at home and work), so go pick a programming language!

 

References used:

  1. Pete Thiel – “Zero to one”
  2. Bill Gates – “The road ahead”
  3. The Cognitive Benefits of Learning Computer Programming: A Meta-Analysis of Transfer Effects – Ronny Schere et al 2018
  4. https://www.quora.com/What-are-the-main-advantages-of-learning-to-code-and-why – My question to professionals on Quora
  5. 5. Learning to Program is Easy – Andrew Luxton-Reilly 2016
  6. https://www.fdmgroup.com/7-benefits-of-learning-to-code/
  7. 7. Learning to code or coding to learn? A systematic review – Shahira Popat, Louise Starkey – 2019
  8. Steve Jobs Biography – Walter Isaacson

The books in this piece are some of the many I have read to enrich and develop myself, check out my current reading list and recommendations at:

My book recommendations.

What are your thoughts? Have I covered everything or is there more you know and would like to share?

I’m always learning and improving this site and my blogs, so please feel free to get in touch with me via LinkedIn or this site to discuss any topics I have covered.

If you’re having trouble finding ways to progress check out this site filled with free learning tools:

https://freelearninglist.org/