There’s a new kind of money called Bitcoin. Maybe you’ve heard of it.
It’s based on computer code. As the poem goes:
The demand for coding
The boom in smart phone apps, games, and cryptocurrency ensures that programmers will have a big place in the economy for the foreseeable future.
Businesses and government institutions are clamoring to get more programmers. An Hour of Code is becoming part of the curriculum at many schools.
So, should your child learn to code?
Yes, but there is a big caveat here. A lot of coding has been outsourced.
Many U.S. companies still prefer to pay a premium for programmers in America. But for anyone without this bias, there are a lot of available options. The obvious solution is outsourcing the work to someone in a country where the cost of living is lower. They can afford to work for much less.
With the growth of sites such as UpWork, this has become easier than ever before. This is the main reason that the U.S. Bureau of Labor Statistics is predicting an 8% drop in programming jobs over the next eight years.
Instead, many smart parents are teaching their kids about finance, management, sales and marketing.The person who pays the programmer’s salary will always get richer than the programmer.
Does this mean you should completely rule out a study of programming?
Maybe not. Every entrepreneur should at least know what his engineers are up to. You don’t need to master a programming language to do this,but there is at least one important concept you should understand.
Thinking Like a Computer
What you need is to understand how a computer “thinks.” It’s easier than it sounds.
Think of an app as a skilled and loyal servant. Anything you ask him to do, if he’s capable of doing it, he’ll carry out your command in seconds.
But he needs specific, literal instructions.
If you hear a knock at the door and tell your servant to “get the door,” he will remove the door from its hinges and promptly carry it to you.
Programming languages tell the computer how to do a task. Tasks are divided into subtasks, and combined into longer, more complicated tasks.
“Get the door,” to a properly programmed servant, means something like this:
- Suspend the current task or activity
- Move to the location of the door
- Ascertain who is on the other side of the door and the nature of their visit
- Based on a number of other rules and protocol, either
- Deny access
- Inform the master (you) of the identity of the visitor and the nature of the visit
- Permit the visitor to enter, using the following process:
- Unlock the door
- Engage the doorknob and turn until the door is able to swing freely
- Open the door
Bonuses of a computer programming brain
It’s useful to think computationally, because it involves breaking any job, task, or project into tiny, simple, clear steps. Doing this can lead to all kinds of gains in your productivity.
- You can identify steps that are unnecessary, and remove them
- You can find steps that can be delegated to someone else
- You can find alternatives to certain steps--leading to new results, new ideas, speed, profitability, and…
In this way, thinking like a computer can make you more creative and productive. How can your child learn to do this?
First, just start breaking your regular chores and routines into steps.
Do the same with processes you are studying, like mitosis or the Bessemer process, for example.
Finally, read books about computational thinking. Here are two examples to get you started:
Code: The Hidden Language of Computer Hardware and Software by Charles Petzold
Goedel, Escher, Bach: An Eternal Golden Braid by Douglas Hofstadter.
And most of all, you can learn to think like a computer by learning to code.
But don’t insist on making a career out of it.