Making the computer work for you
Being able to unleash the power of the computer to automate repitive tasks is a skill that should be mandatory for every profession that works in front of a computer for large parts of their workday. The amount of time it saves you from doing simple gruntwork is larger than you think. And it’s time better spent on the actual tasks you have to do in your job.
Today most people have to work with or in front of the computer for major parts of their working day, but still only a minority of those people does know how to write even simple code. This is mind boggling. In my line of work I sit in front of the computer more hours than I would like to. But for me the computer is a tool. I view it as a means to an end and try to minimize time in front of it as much as possible. And one day it occured to me that it probably is no coincidence that this machine under my desk is called a computer. Turns out it was intended to compute things. And whoa, it does it frickin’ fast. So why not take advantage of that? Computers should not just calculate random Excel Spreadsheets. They should even fill them and turn the results in a fancy infographic to be shared across all social media outlets our company has to offer. We really had to wait until someone came along and slapped the acronym “a.i.”” on it until we grasped what this tool is really capable of.
But joking aside. We live in a time where the words Artificial Intellicence and Machine Learning are thrown around a bit too liberal and major parts of our workforce not only have a small computer in their pockets, but even one atop their desks that is magnitudes more powerful than necessary for displaying Google mail and Trello. Heck, even the coiffeur I go to has a fancy iMac just for managing their appointments.
Yet for most people the computer still is a Buch mit sieben Siegeln. But why? Why are people so afraid to dive a little bit deeper into how those machines work? Even if it can shave hours off those repititive and boring tasks? It is not even a question of age. For most of the people I talk to about this topic the computer is still like Pandora’s Box and many are either too afraid to open it or it is just too complex for them.
But this is not only naive, but right down dangerous. The time when a PC was just sitting there on a desk waiting for inputs are long gone. Today computers are everywhere, the internet is always on and the Floodgates to generative A.I. tools have been opened. For many businesses the internet is the primary way they do business, aquire new customers and sell their good and services. And for many, search engines have repclaced indepth research. We just type in what we are looking for and our machine and it’s colleagues at the other side of the cable are retrieving the answer with a speed that is beyond comprehension.
But why not go a little further than that? Imagine you have to do a short preliminary research for a project that is coming up? Nothing too detailed, just a few keywords you need to categorise and sort. If possible with a few accompanying images. Instead of typing in those ten words, looking at the search results, categorising them in a spreadsheet and adding a few images from Google, why not write a short script that does that for you? Well for one time this is probably not a better solution. But imagine you make two, three, four, five, or ten projects with such a preliminary research per year. Several years in a row. Well, for some 10-20 Keywords this would be a time saver, but not enough to convince middle management. But what if you are working on a bigger international branding job where you have to do that for 150 Keywords in several languages? Well, it seems the little script you have written saves you several days of manual labour now. And now imagine yourself expanding your little code snippet and plugging in some fancy ChatGPT API calls in there…
This is just one example that’s broad enough to apply to a wide range of industries, but I think you get the idea. Coding is a useful tool in our arsenal. And by coding I am not talking about writing complex, standalone software (which is programming and gets often confused with coding). With coding I am just talking about writing small scripts that connect a few computer programs together to perform a task. Quick and dirty if you will. The nitty gritty logic of the “how” is thus still performed by the professionally written software installed on your machine, but the “what” can just be a few arguments strung together by you the user.
Apple is, again, one step ahead in this one
On the Mac Platform there is the automator, a small visual scripting tool that lowers the bar for writing code by giving you the ability to visually conncect simple “one function only” nodes together to automate repititive tasks. These can range from very simple actions like compressing PDFs to more complex tasks like moving and renaming loads of images and then calling Photoshop to resize and convert them for Web use while producing a contact sheet to send via Mail. But still I see only few people using this tool to let the computer do those repititive tasks. Windows does not even bother with such a tool. Either you know what you are doing or not.
Game Engines are becoming more non-coder friendly, too
Visual computing is a very valid and useful tool. Just look at the mayor game engines Unreal Engine and Unity. Both are very powerful tools that rely on scripted behaviours for events to happen otherwise the game world would be rather boring. To enable artists to prototype interactive behaviour both engines employ visual scripting. Unreal Engine integrates this natively with it’s blueprint system where you can plug in almost any parameter the game has to offer. And for people who know how to code it even lets you integrate your own written code into the blueprint system. And even with complex setups the performance is still very good. Unity’s Playmaker is an external plugin and not as powerful compared to Unreal Engine’s blueprint system but nonetheless it is one of the most sold and used Unity Plugins for a reason.
To me this begs the question: Why are there no powerful visual scripting tools for our regular operating systems that allow users who cannot script an easier way to get into it? I can only imagine this has to do with the easyfication of software for the average consumer in general. The iPhone and iPad are so easy to use by design that for those scenarios a visual scripting solution would be overkill. Then there is the whole story of making a tool like the MacOs Automator more widely accessible to other programs running on your computer. Or connecting it with other programs.
Just use Python then…
Yeah, you are right. With all those barriers it is just the easiest to start coding with Python. If only I would not have to wade through hundreds of pages on StackOverflow trying to install a runtime that works with my Operating System.
Oh well, now I know why so few people don’t even bother to get into coding…
Coding can be messy
The way I am coding is really all about getting things done. When I use code in may day to day work on the computer it is not about writing robust, polished high quality production code, but more about hacking together a command line tool that does a few things for me instead of me doing them by myself.
The main reason is that those things I am automating would take me significantly more time than just writing a small snippet of code to let the computer do it for me. This way of coding is not intended to be shared as software with other people. Thos small command line tools are just for myself. More often than not they are even for one time use cases. Throwaway code if you will. But a few others come in handy from time to time and then they are made more useful and more robust as I go, because every once in a while something breaks, some path can’t be found or you have made an update somehere.
More often than not those snippets of code contain my own ideas as rough outlines with a heavy dose of copypasta from StackOverflow and GitHub. But over the years, you learn what works and which approach is the right for you.
, Now is the best time to get started
It is not that hard. Coding is not math. You can get started very simple and go deeper as you progress. Now is the perfect time to get started, because the advent of ChatGPT and it’s ilk have made it easy like never before to start coding. They even help you with debugging or show you the way to interesting new ideas and approaches.