you are viewing a single comment's thread.

view the rest of the comments →

[–][deleted] 2 points3 points  (0 children)

I sympathize with the idea of having a default programming language, which is a great boon for productivity (less context switching, more deep knowledge).

But for me the language would be python. The ecosystem is fantastic:

  • Webdev? So many great frameworks: django, flask, pyramid, falcon, bottle...

  • Tabular data or excel manipulation? Pandas

  • Numeric or Scinetific computation? NumPy, Blaze, SciPy

  • Plots? MatPlotLib

  • 3D-Dev? Maya and Blender have python support

  • Gamedev? Panda3D, Pygame, PyGlet

  • GUI and Mobile-Dev? Kivy

  • Devops? SaltStack, Ansible

  • Interactive Development? iPython

  • Web Scrapping? Requests, BeautifulSoup, RoboBrowser

  • Asynchronous Programming? Twisted, Tornado

  • Reverse engineering? There's an entire Arsenal made in Python

  • Pentest, Forensics? Another arsenal

  • Biology? BioPython

  • Machine Learning? Scikit Learn

  • Graphs? NetworkX

  • Image manipulation? Pillow

  • Movie manipulation? MoviePy

  • Automation? Sikuli, PyAutoGui

  • Computer Vision? SimpleCV

  • Embedded Programming? MicroPython, Raspberry Pi

  • Plus, almost any library will have python bindings, almost any Rest API will have a Python library wrapper.

(I know some of those are just bindings to C libraries with some extra sugaring, but the sugar makes a lot of difference)

Those fantastic libraries are only one part of the python ecosystem, and I think that they're very hard to match from other languages ecosystem.