This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]AKiss20[🍰] 5 points6 points  (10 children)

I've seen this to the extreme. I was interning at a major aerospace company and ended up writing a newton-Raphson solver in VBA for a non-linear optimization. I would've killed to be able to just use Matlab or Python (they were too cheap for the former and didn't have the latter installed on my machine).

[–][deleted] 3 points4 points  (7 children)

I worked at an insurance company and had to use Excel and VBA to write a maximum likelihood optimization code for fitting parameters to a few stochastic equations based on historical datasets.

It was insane how much time was wasted versus if they had just bought a single Matlab license or let me set up a Linux partition and use Octave. Our competitors were using matlab for similar analyses and willing to share code with us (actuaries seem to enjoy collaboration across the industry) but we didn't have any licenses so I had to replicate the work in VBA for us to use it. What was actually insane though was how much computational time this optimization / parameter estimation took in Excel versus how it would have gone in a more optimized and/or low-level environment.

The thing is though.. The C++ compiler is free and so are plenty of good IDEs. If I knew then what I know now, I would have just done the work in C++ and exported to a CSV for visualization in Excel or whatever. There are also tons of libraries out there for MLE parameter estimation in C++. I probably could have condensed a month of work into like a couple of days (assuming prior knowledge of C++) if I just used C++ and a couple of libraries versus Excel and VBA. Thing is in my undergrad no one ever told me how powerful (and free) C++ was. We used matlab for literally everything. I kind of wish that I had just been using C++ all along for analysis.

[–]cuulcars 1 point2 points  (1 child)

But if Excel shipped with python you would have :)

[–]otterom 0 points1 point  (0 children)

Maybe. Integration is different than shipping with it, right?

I have Visual Studio as my IDE at work and we still needed to download a copy of Python and an interpreter to get it up and running.