C++ is always good, even if they don’t use it (goldman sachs) they assume that if you know C++ very well, you can pick up their inhouse language. I’ve always been asked C++ questions. but these are for quant roles. if you are going to be a financial analyst, Excel VBA and Access are most useful.
Dude I know it is frustrating being unemployed but what are your goals in learning a programming language? You have said you know little.
C++ is a great language to learn as a bridge to other languages. As an example I took 4 courses in CS at BU that were in C++. It allowed me to pick up R and be able to really build tools with it and go from quant/risk into engineering in the tech industry. But I sat in a classroom 3 hrs once a week and completed assigments. I don’t see someone with zero CS skills picing up a book and learning C++.
Also, you aren’t going to learn a programming language in a book and switch over to tech roles. Not going to happen. You need actual experience.
So what are your goals in learning a language? For fun or are you trying to get an actual job out of it.
As Blake said, we need to know why you want to learn to program.
Unless there is something very specific you want to do with it, I would say Excel/VBA is the most useful environment/language to know.
Also, be aware that unless you are intent on getting a job that specifically requires you to develop in C++/R/Python/C#/etc it is very likely that the company you eventually work at will have strict policies preventing you from developing and deploying solutions written in these languages. With VBA however, you won’t have these restrictions, or least nobody needs to know what you are up to for you to develop solutions.
I am relatively proficient in VBA, but I have thought about learning C++, but I am not quite sure how I would use C++ in a way that I wouldn’t be able to more easily leverage VBA in excel. Would anybody mind shedding some light on this?
In general, jobs that require you to use C++ will have some non-trivial programming responsibilities. Unless you already have a relatively strong programming background, learning basic syntax in C++ will not help you make the jump to these jobs.
VBA, on the other hand, is commonly used by end users to enhance their basic functionality. Unless you are a quant or developer, you are much more likely to use VBA in your job.
HFT isn’t the only application (as I’m sure you know). Anything that requires significant speed can be improved by using C++. Historical backtesting of a variety of portfolio optimization strategies would be faster in C++ than any other. However, the downside of C++ is that it takes longer to develop. R and Matlab are both faster to develop, but slower to run the code (I believe they both can call C code). So there’s a trade-off.
To be honest, I haven’t used VBA at all in my current position. I don’t particularly care for it as a language and would rather program in other languages (R/Matlab, mainly) when doing work that no one else needs to see. If it’s work that others will see, a big problem is that if there needs to be changes to something in VBA and I’m not around to fix it, then there’s a fear that the spreadsheet will become worthless.
I was just giving an example. People who complain that I write replies so long that no one can be bothered to read them might appreciate that particular response. It takes longer to write TL;DR.
Anyway, I didn’t take offense at the above; I just wanted to point out that not everything I write is tome-like.
For me, the main advantage of VBA is that it can extend the functionality of Excel. Possibly there is the advantage that it is relatively simple to learn, but so is python. I don’t think I would ever choose VBA outside of an excel-oriented context.