An absolute no-brainer. Python is the new BASIC - very popular with people who have to program to do their work but aren't programmers. It's an excellent choice for a spreadsheet.

>aren't programmers

Also extremely popular with people who are programmers and need to do things.

Sorry, this is a frustration of mine lately. Python is a fantastic introductory language. It's also a fantastic general purpose language.

Newbies get turned off of it because it feels too easy, and they know that "real" programming is supposed to be hard.

I disagree.

Python is great for scripting and for small projects, but I believe strong, static typing is an essential feature for large scale projects. I wouldn't want to use Python for anything that's predicted to end up with more than a couple thousand lines of code.

Python is strongly typed, and Python 3 annotations with tools like MyPy brings static type checks.

Unfortunately, MyPy doesn't work well with libraries or third party packages and treats external objects as `ANY` type. You can work around this with stubs but it's not fun writing type annotations for third party objects / functions. typeshed exists for the standard library and various popular third party libraries[1] to solve this very problem.

[1] https://github.com/python/typeshed