Python is a dynamically typed, high-level and interpreted programming language. It focuses on readability and ease of use. Python is garbage collected and provides great scripting capabilities. Python is known for being a very malleable language. It is also known for delivering very poor performance, very limited concurrency capabilities and poor tooling.

Personally, I really like Python for the right use cases. For me those use cases are scripts, data collectors and aggregators or any sort of “glue code”. Since Python can reach very far in almost any possible direction because of its malleability and vast library ecosystem, its the perfect tool for automation and creating integration between different tools.

The moment I start disliking Python is when its used for the wrong use cases. If I had to write any kind of long lived server or high throughput system I would probably pick Go or Elixir over Python any day of the week.