Do I need programming, if so what language should I start with?

frozty97

Disciple
Hi,
My title might look confusing but let me clear it.
I work in M&A Financial due diligence (commerce field) but usually we do huge data manipulating/cutting etc.
I have narrowed down to Excel VBA, Python and R. But maybe these are not correct (Chat GPT answers :p)

What language do you guys think would be good for my carrier?
 
I would say it you're working in finance, from a long term perspective, having programming knowledge is going to be a big plus, even if it doesn't help you in the short run.

You might want to learn Python with a focus on data analytics (Pandas, Numpy). I would also recommend learning SQL.

However, before going into all that, if there are any immediate problems which need solving, I'd recommend checking out power query in MS excel and familiarising yourself with dynamic array functions. Excel is a lot more powerful than people in the tech circle give it credit for and you should definitely hone your Excel skills if you're to work in finance.
 
Well, English language for a start ..

Joke apart,
we do huge data manipulating/cutting etc.
How huge is this "huge" ? What tools are you currently using to do this ? If Excel is what suffices your requirement, then I would not call it huge. As a better alternative, look at Alteryx (paid).
What language do you guys think would be good
Why do you feel that you need to learn a programming language ? There are plenty of free and paid user friendly tools (see above for an example) available nowadays which allow you to slice and dice data without the knowledge of any programming language.
Being in M&A, I feel you are already in a niche field. If you are not looking to change your domain, then may I suggest focusing more on the "Valuation" side of "M&A" eg. this. It's really a lucrative area.
 
Last edited:
R (programming language) and Python may interest you.
btw, what are recommendations by ChatGPT ?
Thanks for your suggestion!
ChatGPT replied this:

"
If you're in the financial due diligence field, programming skills can provide you with a variety of benefits such as automating repetitive tasks, data manipulation, data analysis, and even making advanced financial models. The best programming language to learn can depend on your specific use-cases, but here are some popular options:

### Python

**Why it’s Good:**
- Widely used for data science and data analysis.
- Rich ecosystem for financial and statistical analysis, including libraries like NumPy, pandas, and scikit-learn.
- General-purpose, meaning you can extend its utility to automate tasks, web scraping, and more.

**Downsides:**
- Slower than compiled languages like C++.

**Best For:**
- Data analysis, machine learning, automation, web scraping.

### R

**Why it’s Good:**
- Built specifically for statistical analysis and plotting.
- Excellent for data visualization.
- Rich package ecosystem with a focus on finance and statistics.

**Downsides:**
- Less versatile than Python for non-data tasks.

**Best For:**
- Complex statistical and financial analysis.

### SQL

**Why it’s Good:**
- Almost a must-know for anyone who works extensively with databases.
- Allows you to query and manipulate large sets of data.

**Downsides:**
- Limited to data manipulation, not a general-purpose language.

**Best For:**
- Database management, querying.

### Excel VBA

**Why it’s Good:**
- If your office is heavily invested in Excel, learning VBA allows you to automate Excel tasks.
- Simple to learn if you’re already comfortable with Excel.

**Downsides:**
- Limited in scope and capabilities compared to Python and R.

**Best For:**
- Excel automation, simple financial modeling.

### MATLAB

**Why it’s Good:**
- Widely used in academia and engineering.
- Built-in functions for financial modeling and analysis.

**Downsides:**
- Expensive licensing.

**Best For:**
- Financial modeling, statistical analysis, especially in an academic or highly specialized industry context.

---

**Recommended Language:** Python is generally a safe bet given its versatility, active community, and range of financial and data analysis libraries. It's also fairly easy for beginners to pick up, and its syntax is quite readable and straightforward.

If your primary focus is statistical analysis and you are not as concerned with other general-purpose tasks, R might be the language for you.

Remember, there's often no "best" language, just the "most suitable" one for your specific needs."
 
Well, English language for a start ..

Joke apart,

How huge is this "huge" ? What tools are you currently using to do this ? If Excel is what suffices your requirement, then I would not call it huge. As a better alternative, look at Alteryx (paid).

Why do you feel that you need to learn a programming language ? There are plenty of free and paid user friendly tools (see above for an example) available nowadays which allow you to slice and dice data without the knowledge of any programming language.
Being in M&A, I feel you are already in a niche field. If you are not looking to change your domain, then may I suggest focusing more on the "Valuation" side of "M&A" eg. this. It's really a lucrative area.
Haha, my bad for the typo.
I am already thinking of pursuing CFA for the valuation side (and mostly international recognition), however, we don't do much valuation, which is done by the valuation team.
 
I would say it you're working in finance, from a long term perspective, having programming knowledge is going to be a big plus, even if it doesn't help you in the short run.

You might want to learn Python with a focus on data analytics (Pandas, Numpy). I would also recommend learning SQL.

However, before going into all that, if there are any immediate problems which need solving, I'd recommend checking out power query in MS excel and familiarising yourself with dynamic array functions. Excel is a lot more powerful than people in the tech circle give it credit for and you should definitely hone your Excel skills if you're to work in finance.
Yep, I already learned power query and yep Excel is good but gets super heavy and slow when huge data is loaded in.
Thanks for the Python and SQL suggestions will dig deeper into that.
 
R, Python & Matlab are first recommendation from ChatGPT too, which is correct.
SQL is anyway required for database operations, without which programming skill will not go anywhere :)
Meanwhile s/w like Alteryx, Qlik, PowerBI, etc. may also interest you, best wishes for your new adventures...
 
Last edited:
Language is just a tool, most popular these days is python. but I would suggest you learn a "modern" language. some of the other modern languages are c++20, swift, rust.

but again, they are just tools. since you want to learn programming to manipulate financial data which usually is large amounts of data, I suggest you learn data structures. using very efficient data structures and fast algorithms becomes very important when dealing with large amounts of data. learning data base concepts is good but databases abstract all the complexity with the internal datastructures they use.
 
If you don't know any programming language, start with python. Python Crash Course 3rd edition from No starch press is great to start. It also has small section on data packages in python.

Btw, recently Microsoft announced that they are bringing python scripting support to Excel.
 
From someone who's worked in M&A, I think you don't need to program.

You say "huge" but as per modern standards I can't see what huge data you could be processing in an M&A role - something like raw procurement spends data or transaction-level data for a large period, or even financial time series would be huge but I don't see an M&A person deep diving into the raw data on those, you'd be working with some analyst/team on summary data.

In junior M&A roles I have used small VBA scripts to optimize Excel tasks because Python was not allowed to be installed on my computer by my CFO. As a senior I never needed to do this myself as I always had analysts to do the numbers. But in the general case Python is the #1 suggestion, With just basic Python you will also want to pick up understanding of some libraries like Numpy & Pandas and some SQL.

R is very good but a bit niche. VBA is hardly a language, you can learn enough of it in one weekend to run scripts found online, if you know some programming concepts.
 
Hi,
My title might look confusing but let me clear it.
I work in M&A Financial due diligence (commerce field) but usually we do huge data manipulating/cutting etc.
I have narrowed down to Excel VBA, Python and R. But maybe these are not correct (Chat GPT answers :p)

What language do you guys think would be good for my carrier?
Python or R is what I would suggest.
 
Back
Top