Quite often, non-technical executives have difficulties understanding what programming, on a very fundamental level, is all about. Because of that knowledge-gap, they tend to hire and overburden experienced data professionals with tasks which they are hopelessly overqualified for. Such as, for example, doing ad-hoc SQL queries on CRM data: “You’re the go-to-guy for all things data, and we need the results for the board meeting tomorrow.” That’s a quite humbling and frustrating experience for anyone who calls himself a Data Scientist, even for a freshman.
On the other hand, though, the non-technical staff is literally scared of programming. Writing code is often viewed as an esoteric occupation which only a few chosen people are qualified for. Because of that common misconception, companies miss out on opportunities to upskill their current employee base to solve data-related tasks that the previously mentioned Data Scientists should not be bothered with.
Programming = Automation
On a very fundamental level, programming is about automating repeatable tasks. Let’s say, you want to load boxes onto trucks, depending on characteristics such as their color. How would you go about this?
You can write a program that loops through a list of boxes. If a box is red, it will be loaded onto the red truck. Else, if it’s blue, like in this case, it should go into the blue truck. Obviously, computer programs are capable of solving by far more sophisticated tasks than this one here. However, even if you look at a complex machine learning model, you can understand a decent portion of what it does based on the many if-then-rules being applied to the underlying data.
Programming = Automation + Democratization
Let’s take the blue and red box example one step further. What if you have to sort your boxes by way more characteristics, such as the content of the boxes, its weight, value, destination, planned delivery date, etc. Do you need to write that code from scratch? What if someone else already solved the exact same problem?
Open-source programs such as Python are developed, maintained, and constantly enhanced by a large community of very thoughtful individuals. “Why should one reinvent the wheel each and every time?” many of them would reason. That’s why numerous solutions to complex programming problems are bundled into so-called libraries.
What if you want to analyze data using Python? Leverage on the Pandas library. You want to visualize data? Take Matplotlib. The amount of know-how bundled into libraries is just mind-blowing. Take TensorFlow, for example, a popular deep learning library for Python. If you want to train your very first object detection deep learning model, you can get the job done with as few as six lines of code. Yes, six!
Programming is not only about automation, but also about democratization. Why is this so important? Only a few tech-companies can afford to hire large data science teams and solve complex machine learning and deep learning problems. Luckily, many big tech-companies package a huge portion of their cumulative intellectual effort into libraries for popular programming languages such as Python. Virtually anyone can leverage on the brainpower of, for example, Google, the company that developed TensorFlow.
If you want to popularize the utilization of programming languages within your company: How do you get started? Let me draw another analogy. With programming languages like Python, it’s very much like with chess. You can learn the rules very quickly. How do you move the queen, rooks, bishops, knights, etc. on the chessboard? This is no rocket science, and you can immediately start playing. However, if you aim to become really good at this game, it will take you years of continuous practice. Nonetheless, you can leverage on the many strategies developed by grandmasters of chess, and apply them to your game.
Programming, like chess, is very simple on a very fundamental level and very complex at the top level of the game. It’s not only complex, and it’s not made only for a few highly-sophisticated players. It’s a game aimed at everyone willing to join.