While I hate actually using it for production tasks, I have to admit that Python is the best language ever to learn. Its syntax doesn't really get in the way at all and it is extremely understandable. It's also widespread.
def convert_to_int(val):
....
What type should val be? Do you pass the object, or a string representation of the object, or...?The problem with Python - and non-statically-typed languages in general - is that function signatures don't need to be defined upfront, which leaves it up to the programmer to figure out the inner workings of the functions. This is a huge pain point when working with other people's code.
Python 3 introduced function annotations, which is great. But again, the problem here is that function annotations are opt-in. It's still up to the developer to add the annotations.
I know I'm going to get some crap for this, but for big prod systems I prefer C++.