Programming languages for Supply Chain

We should talk more about coding languages in Supply Chain.

Companies like Amazon need skilled people, able to both understand Supply Chain concepts and develop algorithms and applications.


Within 5 to 10 years, programming skills will become a prerequisite for highly proficient profiles. I think those people will earn more than Supply Chain Managers/Directors if they can automate key processes of the company.

Here are the most used programming languages which will play a major role in automation and innovation for the following years.

Excel (VBA, PowerQuery, PowerPivot): Still very common

Excel Macros in VBA (Visual Basics for Application) enable controlling the User Interface of Microsoft Excel to automate manual tasks. They are still very used in companies, because of their simplicity and easiness of implementation.

I used VBA myself a lot during my career. I brought a lot of value to my respective companies, by automating their business processes.

Microsoft has also very useful Excel modules like Power Query and Power Pivot, which are taking the lead over VBA.

  • Power Query is used for importing and editing data tables in Excel.
  • Power Pivot is meant to manipulate data tables et conceptualize database models in Excel.

A lot of features are available directly through the interface. But as soon as we need more complex functionalities, coding in M (Power Query) and DAX (Power Pivot) is required.

Mastering Microsoft programming languages is a good starting point, most of all if you have never coded before.

DAX: BI Programmation language

Business intelligence Software is extremely popular across many industries.

Applications like Power BI enable visualizing and analyzing business data quickly and concisely, it is their big strength. I shared my thoughts about BI tools in my article Software and ERP to master in Supply Chain.

DAX language is more and more used, both in Excel and Power BI.

You can learn how to code in DAX on the Microsoft official website.

SQL: Database of Information Systems

SQL (Structured Query Language) is a database programming language. It enables to “call” data through queries. For someone performing data analysis, it is useful to master SQL: before analyzing we need to access and select the most relevant data.

I have learned SQL during my engineering course. Thanks to those skills, I could better understand Information Systems functioning. I think SQL and VBA are quite complementary and are the foundations of coding languages for data management.

There are a lot of online classes about this topic, you can find some interesting ones on platforms such as Coursera or Udemy through a quick search « SQL Class ».

Mastering VBA and/or SQL is a good option to start coding for Supply Chain. Then, you have different pathways depending on your aspirations.

Python: Machine Learning for forecasting

In my opinion, Python is a strategic language.

It is the coding language the most used in data science, especially for Machine Learning/Artificial Intelligence.

I am doing myself a lot of Machine Learning at the moment, and I can tell you that I see a (very) big potential in Supply Chain, for everything dealing with demand forecasting and inventory management. Python has a quick learning curve in comparison to other languages, and thanks to many opened-source packages, anyone can build a forecasting algorithm in only a few lines of code.

 This is why we have been witnessing a lot of enthusiasm for Python over the last 5 years:

Google Trends March 2021 – Python, SQL, R, VBA

If you want to specialize in data and become Supply Chain Analyst / Supply Chain Data Scientist, Python is a must-have skill.

There are a lot of free resources for beginners on YouTube. You can also check some good training websites such as RealPython.

R: A Data Science tool

Initially intended for statistical computing, R has established itself in the data science community and is now the second most popular language after Python. It benefits from an active community and, like Python, has a very large list of opened-source packages.

What are the differences between R and Python?

Here are what mainly separates the two coding languages :

  • Statistical analysis/data visualization approach
  • Local usage
  • Longer learning curve
  • Possibility to use models directly from free packages, large amount of models available.
  • More general approach
  • Large scale algorithm deployment
  • Faster learning curve, easy syntax
  • Possibility to use models from free packages AND to code models from scratch.

Knowing how to code in R is a singular skill. It can be a good option if you master the basics of statistics and you want to be an expert in Supply Chain Analytics.

C/C++ and Java: Warehouse mechanization

In the logistics field, warehouse automation/mechanization is a major area of innovation. A lot of solutions are being developed for anything dealing with truck unloading, palletization, shelves, and racks loading/unloading… In 2020, Amazon counted over 200 000 robots in its warehouses.

More and more specialists are in demand for R&D, maintenance, or operations of machines and robots fleets. C/C++ and Java are the most common languages used for robotics control.

It is worth getting trained in one of those programming languages if you want to work in mechanization or robotics in logistics.

ERP Programmation languages

ERP systems are another field of interest when it comes to coding for Supply Chain.

One of the most relevant languages is ABAP (Advanced Business Application Programming) owned by the SAP company.

ABAP enables the coder to build (among other things) :

  • Reports: There are programs in which the outputs have the form of lists. There are used to make automatic queries and data table modifications.
  • Module Pool Programming: Programs to build automatic custom screens.

If you use SAP daily, it can be meaningful to learn coding in ABAP, to automate time-consuming tasks.

There is also a high demand for experienced professionals in RPG (Report Program Generator), the IBM i programming language (better known as AS/400, its older name).

Knowing how to code in this language is a strategic skill as RPG developers are retiring and experienced IBM Systems users are becoming scarce. Even if it will not be the leading ERP system in terms of innovation for the next years, IBM i has been evolving and is still being used by some companies.

The No-Code trend

Lately, we have been witnessing the emerging « No-Code » movement. It consists of a Cloud development platform where the user develops applications only by the graphical interface, without the need of maintaining large coding scripts.

It is meant for business users, to bypass long IT development cycles, thus shortening application development timelines.

In a nutshell, Programmation will be more and more accessible.

Conclusion: Which programming language to learn for Supply Chain?

We saw that there is not any “best” coding language as such. My recommendation is the following:

  • Focus on one language that will be the most useful in your daily work and that better fits your ambitions.
  • Master the basics.
  • Practice with real business problems as soon as possible.

I have never considered myself a Programmation expert. But I have faced many practical cases where I built programs to solve problems. I have learned the fundamentals of algorithms logic and object-oriented programming. This had a dramatic impact on my productivity and my results.

Mark my words, coding is not an end in itself.

The ultimate goal is not to be an expert in IT development (unless it is part of your career plan), but it is rather to understand the underlying logic of computer programming. I see every day the difference between people having this coding culture and people who don’t. Those are not able to lead any technical meetings with IT teams. And it is a shame because programs help us to automate and optimize, to have more available time for analysis and decision making.

The No-Code platforms will make application building much easier. But it will still be essential to master the programming fundamentals to fully take advantage of those new tools.

This is why starting to learn computer programming is a way to boost your career in Supply Chain.

To go further

If you want to develop new skills and become more competitive on the job market, you can check my articles :

Scroll to Top