Ever wonder why English has such a rich written tradition? Why Tolstoy was Russian? The expression of ideas depends upon culture and software is no different. This is what Adam Michael Wood is arguing in choosing between Python and Django vs. Ruby and Rails.
tl;dr – Python
…
I have a particular app I’m trying to build, and it is just the sort of content-driven, database-backed, CRUD app that both Ruby on Rails and Django are perfectly suited for. (And that WordPress idiots evangelists would claim would be just perfect as a custom plugin, except that’s a terrible idea.)So here is the definitive answer…
…
What matters in either case is the community of people who have gravitated to each language and (therefore) what kinds of tools are available for each. Also, the focus of the two disparate communities has impacted the design of Django and Rails in different ways.
…
So… bottom line: If you are learning to code because you want to be an entrepreneur, learn Ruby on Rails. If you are learning to code because you want to do unique and interesting things as a developer, learn Python.
Of course, YMMV (your mileage may vary) but the key is the “community of people” and that shows up everywhere things do or do not get done. A business is a community that chooses a certain culture. If it chooses wisely, it will grow and prosper. Governments – ditto. Notice, too, how the undergraduate culture of Dartmouth influenced BASIC in the documentary previously noted.
Wood provided a laundry list for his choice of Python. That helps to understand its popularity. The contrast and comparison he provides doesn’t help that much with the alternatives but that would tend towards all the technical comparisons that are divorced and distanced from the communities they reflect. It is also worth noting that communities are tribal collections and they can be very protective and defensive. What this means is that trying to figure out the best software development environment isn’t a simple or straightforward analysis.
Consider the Arduino IDE versus Eclipse and how the Arduino handles C microcontroller software development at a BASIC level. Eclipse includes the kitchen sink so developers can use any one of many programming languages and do nearly anything they want. The Arduino simplifies developer choices and provides a basic toolkit. Then there’s micropython which can be compared and contrasted to the Picaxe BASIC or similar simplified microcontroller platforms.
tl;dr = too long; don’t (or didn’t) read. Wood was referring to search results when he investigated his question. We live in an ocean trying to find Flotsam, jetsam, lagan, and derelict (wikipedia). It is wealth for all of us.