Why Should I Learn a Scripting Language?

Scripting allows you to automate tasks, which can require and initial investment, but pays off in the long run.

People of a certain generation will remember the moderately popular television show Mr. Belvedere which told the story of British butler coming to live with an upper middle class American family. While the program indulged in several American-centric fantasies—including the inherent superiority of gentry life—Mr. Belevedere’s core appeal was the idea of a servant. I don’t remember what the reason was a sportscaster and a law student turned lawyer could afford a butler, but for most people in the developed world, a household servant is too expensive.

The appeal of a servant is, of course, that things automatically happen without you having to do them. If you have a gardener, every week or so you return home and your lawn it just shorter than it was when you left. If you have a cook, when you sit down to eat, food is there and no one in your family prepared it. A full time drive will take you where you need to go, while you work, and will make sure the car is always full of gas and regular maintenance. If you pay an accountant, they make sure your money is where you need it to be and your taxes get files on time. With a servant, in other words you trade money for time.

Scripting languages make place time saving measures within reach for most people. Possibly the first “script” people used was an automatic deposit or overdraft protection, which—if you set one up—could save you money. Once computers controlled most banking transactions, it was possible to set us a “script” where, on the first of each month after your work deposited your paycheck, set amounts would transfer to other accounts in your bank. It was no longer necessary to go to a bank to move money around as it once had been; the money moved all by itself.

A time saving banking “script” was a literal script in the banks computer, but followed a pattern most people are now familiar with, and seldom think about. In our life there are little efficiencies that, while not inherently problematic on their own, add up very quickly to make processes that once took substantial time, take less time. Individuals, therefore, “outsource” tasks to machines to do things automatically. When tasks are automated, there is also much less risk the task will go undone. Even when transferring money manually only takes a few seconds, having an automatic transfer ensures the transfer always happens, whether you remember to or not, ultimately saving more money.

Scripting languages allow anyone who works with computers to take advantage of automation in their daily lives, and what kind of automation you want to do will determine what kind of scripting you need to learn. JavaScript is great for interaction with the web (and forms the basis of most browser plugins). Python has emerged as a common tool for machine learning and “big data.” There are many other types of “scripting” tools, like “AutoHot Key” for automating tasks in Windows, or VimScript which allows users to automate text editing tools in Vim.

Even if not “scripting” in the strictest sense, many tools use the logic of scripts to automate. A great place to start using scripting in your daily life is IFTTT and Zapier which create a web interface for interacting with a variety of services using a Graphical User Interface, rather than a strict script. On Android phones Tasker allows users to automate just about everything on their phone, without root access. In each case, a clear understanding of scripting’s logic will assist users in appropriately applying automation in their daily lives, even as automation moves into the real world with the so-called “internet of things.”

Scripting itself may not be an issue of “global politics” but scripting’s effects create two issues that can affect global politics quite profoundly. First, economies grow primarily by increasing efficiency, not by growing the labor force. Industrialized economies outpaced agrarian economies because industrial capital made labor much more efficient. Likewise the ongoing improvements in efficiency made possible by computers continues to diffuse into daily life, continuously increasing efficiency in information economies.

Personal ability circumscribes individual’s ability to avail themselves of increased efficiency from scripting, just as mechanical know-how circumscribed the ability to take advantage of industrial technological diffusion. For example, people able to fix internal combustion engines on their own could drive cars before cars were extremely reliable. (Early cars were often sold with a full set of replacement parts, because the manufacturer didn’t know what would break first.) Just like with industrial age technologies a combination of improved engineering and diffuse education will help push informational efficiency further into society. Nearly everyone knows how to drive, today, and cars are much more reliable. Nevertheless, while the engineering will probably diffuse relatively evenly, education may diffuse unevenly. The states where people inherently increase efficiency may find themselves at an advantage, economically.

Efficiency increases can also create vulnerabilities. It takes a lot longer to walk from place to place than to drive, but—barring health issues that can affect anyone—if you can walk from one place to another today, you will likely be able to do the same tomorrow. By contrast, if you need a car to drive that distance, then your ability to travel relies on both you and the car. When most people walked to work, snow only interrupted work during blizzards, because people’s ability to walk to work did not change until heroic amounts of snow fell. In contrast, even a few inches of snow can disrupt automobile-reliant travel without interventions, like snow plows. Industrial societies deriving increased efficiency from internal combustion powered travel are, therefore, increasingly vulnerable to disruption and OPEC exploited that vulnerability in the 1970s.

Similarly, information automation creates vulnerabilities which malicious actors can exploit. Hacking is, essentially, exploiting information automation and it is important to understand that, if we have set our bank account to automatically transfer money from our checking account to our savings account, it could be equally possible for someone to set that same account to automatically transfer money from our account to their account. The ability to exploit information automation for malicious ends is not unlimited, and proper security measures can reduce vulnerability. Automation using scripting is a balance between the efficiencies and the vulnerabilities it creates.

While not everyone will need a scripting language written in a text editor to take advantage of the information revolution, it will likely remain the cutting edge in the near future. Just as a better understanding of industrial production and mechanical engineering helped people prosper in the industrial age (think of the pride people took in the ability to change a tire or their own oil) so too will a better understanding of automation benefit individuals in the information age. While improved engineering will help diffuse automation’s benefits to the less technically savvy, education on information automation will remain an important part of the global political-economic power balance for the foreseeable future.