Everyone’s heard about the impact algorithms have on the success of online ventures. Algorithms determine how much money YouTubers make, for example. Google’s algorithm is responsible for the order of search results. All of these applications for algorithms have real impacts on people’s incomes. Clearly, it’s becoming more important for people to understand what an algorithm does, even if they don’t work as developers.
Algorithms are basically a set of instructions. In traditional math, an algorithm is a roadmap for solving a problem in a number of well-defined steps. The way people multiply, following one place value after another, is a simple example of a traditional algorithm in action.
When it comes to computers, algorithms operate in much the same way. The algorithm is a set of instructions that must be followed in a specific order. It’s applied, over and over again, to a data set. Algorithms are transformative. They take raw data and process it into a solution, statistic, predictive text, or a search engine result.
Understanding how algorithms work is key to being successful online. Thinking like an algorithm is counter-intuitive, though. People don’t necessarily notice all the shortcuts and quirks they use in their thinking, but they’re definitely present. And those pathways seem, on the face of it, unlike what an algorithm does.
That’s not exactly true, though. Imagine solving a simple problem, maybe finding the definition for a word. Traditionally, people would grab a dictionary and search for it. If the word starts with the letter T, they’d know to open the dictionary near the end of the pages, not the beginning. This is an algorithmic action. It’s following a set of rules and applying the process to a data set, namely, the words in the dictionary.
Stopping to really think through actions like these uncovers the processes and formulae at work. With a little self-awareness and lots of application, it’s possible to break a problem down and reconstruct the process of solving it. That’s great training for developing algorithms.
The algorithm hasn’t always been the buzzword it is today. Older developers may have only limited training when it comes to algorithms. But learning to build effective, efficient algorithms is possible for anyone who’s willing to apply themselves.