On 2013.04.16 11:02, Rodrick Brown wrote: > I came across this article which sums up some of the issues I have with > modern programming languages. I've never really looked at Javascript > for anything serious or Node itself but I found this article really > informational.
I don't think the author really knows Python. I am not familiar with node.js, but I do know that it is not Python. Python's package management is suboptimal (though it is being worked on), but the main reason to have "no dependencies" is that Python changes. Guess how many people are using Python 3 (which was released over 4 years ago) and how many people are still using Python 2. The standard library just works on the latest version, no matter how much changes - it /has/ to. I find it somewhat amusing that he says that the standard library discourages better tools to compete with the standard library right after mentioning requests, which is... a better tool to compete with the standard library. The idea that developers will rarely ever compete against the standard library is absurd - we have not only requests to compete with the HTTP libraries, but also Twisted and greenlet and Stackless to compete with the async libraries. It's also just plain dumb to have a bunch of libraries doing the same thing. If the standard library isn't doing a good job, something will compete with it. If it is doing a good job, there is no reason to write a library to do the same thing. With third-party libraries everywhere, there can easily be duplicate functionality where there doesn't need to be (there could be silly bikeshed issues or perhaps one developer simply doesn't know about the other project). While the process can be slow, the standard library will change. In fact, 3.4 is going to have a new async I/O library because asyncore and asynchat are just not good enough - after all, that's why projects like Twisted started. Perhaps having a minimal core works well for node.js, but Python is much, much better off having its batteries included. -- CPython 3.3.0 | Windows NT 6.2.9200 / FreeBSD 9.1 -- http://mail.python.org/mailman/listinfo/python-list