I was a big fan of ruby, and doing web development, so the pressure was on to learn javascript, which I really wasn't enjoying. Only partly the language, mainly the framework churn.
I was a math major and industrial engineering grad student and did a lot of analytical code in a previous life (numerical recipes in C kind of thing, as well as Java interfacing with ILOG/CPLEX). So I managed to get over to that side of life again.
Ruby isn't big in the scientific computing world, but python is pleasant to work with. The whole thing is a better match for me, kind of glad to be out of web development.
That said, it does limit employment options somewhat. There's enough activity in python/analytics/data science to provide some options, but it's also very popular (a lot of people really want to do ML/AI stuff, so the competition is high). If you really have the front end/full stack javascript thing nailed, my guess is that jobs are very easy to come by
Other than the above, my mentors have stressed the advantages of automating my tasks now rather than later. This was the main drive in getting on board with learning a scripting language quite quickly. I initially tried Ruby and it didn't seem like a language an embedded software engineer should be using "daily" over the alternative (the language I wanted to learn in first place) being python. I'm sure someone has an alternative opinion on that. Another main contributor at the time was the amount of time I spent scp'n files back and forth between two hosts. There's an awesome python library called paramiko that solved all the annoyances with doing this manually. Cheers~D
Note that I didn't have to "learn" Python. It brought nothing to the table other than a different syntax and concepts such as generators, iterators, metaclasses and list comprehensions were not new to me.
Fast forward a few years and while I admit that it probably has the best ecosystem a dynamic language has to offer, I still don't see the point of Python language-wise (disclaimer: I don't factor in implementations and ecosystems when talking about programming languages).
Glen joined the team and holy shit Glen was awesome. Was scripting in PERL with ObjectiveC bindings until Glen looked over my shoulder and told me that was crap. So he wrote Python bindings for ObjectiveC over the weekend and made me learn Python.
Can't remember the version, but the only support came from Guido Van Rossum via email so that was a magical time.
1. Significant whitespace!? Eeeew!
2. Pause, measured in a month or so.
3. Hm, code gets written quickly and usually works...
4. Finished problem solver that eluded me in C.
5. SOLD!
The official language for some Stanford/online courses, no choice.
Need to write some scripts that don’t need extra dependencies on Linux and Mac. And shell is too difficult.
Simplest way to work it and an SMS api was using Python.
The alt-text of the comic hints at project Euler, which is another extraordinary rabbit-hole xkcd got me into.