Python 3 in 2016
I&#x27;ve done a lot of Python for many years and its all been Python 2. Python 3 seems to be a decent improvement, and if I was working on a Python 3 project, that would be fine. But when it comes to <i>new</i> projects, I struggle to find a compelling reason to use Python at all, when there are so many amazing languages now to choose from. With a new project you could choose Scala, Haskell, Clojure, Erlang (or Elixir) or Go. And there&#x27;s also the less popular ones like Haxe and Dart. I&#x27;ve even been playing around with Elm. And I&#x27;m sure I&#x27;ve missed a bunch of others too.<p>So the question for me, for <i>new</i> projects is: why choose Python 3 (over all the other non python options) at all? Not what&#x27;s better about Python 3 than Python 2, but what&#x27;s better about Python 3 than those other choices. These other choices all have certain areas where they have great strengths. What is Python 3&#x27;s strength when compared to these other languages? It&#x27;s a mutable, imperative, single CPU bound language that can&#x27;t target the browser and is extremely difficult to distribute and deploy. Or have these issues been fixed?<p>I don&#x27;t mean to troll any Python fanboys. I use Python 2 every single day at work and I&#x27;m very happy with it. But what does Python 3 offer that other new languages don&#x27;t? Because when you are starting a new project you can choose <i>anything</i>. Why should I choose Python 3 for my new projects?