Data analysis has become one of the core processes in virtually any professional activity. The collection of data has become easier and less expensive, so we have easy access to it. The crucial aspect is that data analysis allows us to make better decisions cheaper and faster.
The need for data analysis has given rise to several new professions, among which a data scientist often comes to mind first. A data scientist is a person skilled at collecting data, analyzing it, and producing actionable insights. As with all craftsmen, data scientists need tools that will help them deliver their products efficiently and reliably.
Various software tools can help data scientists do their jobs. Some of those tools use a graphical interface and thus are easy to work with, but also usually have limitations on how they can be used. The vast array of tasks that data scientists need to do typically leads them to quickly conclude that they need to use a programming language to achieve the required flexibility and expressiveness.