Path: csiph.com!usenet.pasdenom.info!aioe.org!news.stack.nl!newsfeed.xs4all.nl!newsfeed3.news.xs4all.nl!xs4all!post.news.xs4all.nl!not-for-mail Return-Path: X-Original-To: python-list@python.org Delivered-To: python-list@mail.python.org X-Spam-Status: OK 0.002 X-Spam-Evidence: '*H*': 1.00; '*S*': 0.00; 'python.': 0.02; 'languages.': 0.04; 'third-party': 0.04; 'cpython': 0.05; 'subject:Open': 0.05; 'duplicate': 0.07; 'http': 0.09; 'stackless': 0.09; 'subject:Source': 0.09; 'developer': 0.10; 'python': 0.11; 'changes': 0.15; 'windows': 0.15; '(there': 0.16; 'libraries.': 0.16; 'rarely': 0.16; 'silly': 0.16; 'slow,': 0.16; 'twisted': 0.16; 'wrote:': 0.18; 'library': 0.18; 'looked': 0.18; 'all,': 0.19; "python's": 0.19; 'programming': 0.22; 'header:User- Agent:1': 0.23; "i've": 0.25; 'developers': 0.25; 'header:In- Reply-To:1': 0.27; 'idea': 0.28; "doesn't": 0.30; '(which': 0.31; 'requests': 0.31; 'bunch': 0.31; 'libraries': 0.31; 'node': 0.31; 'says': 0.33; 'worked': 0.33; 'guess': 0.33; 'minimal': 0.33; 'plain': 0.33; 'core': 0.34; 'subject:the': 0.34; 'could': 0.34; 'knows': 0.35; 'tool': 0.35; 'something': 0.35; 'but': 0.35; 'received:google.com': 0.35; 'there': 0.35; 'really': 0.36; 'library.': 0.36; 'doing': 0.36; 'easily': 0.37; 'being': 0.38; 'message-id:@gmail.com': 0.38; 'version,': 0.38; 'to:addr:python- list': 0.38; 'anything': 0.39; 'itself': 0.39; 'to:addr:python.org': 0.39; 'enough': 0.39; 'how': 0.40; 'new': 0.61; 'matter': 0.61; 'simply': 0.61; 'subject:The': 0.64; 'management': 0.65; 'latest': 0.67; 'started.': 0.68; 'fact,': 0.69; 'article': 0.77; '3.4': 0.84; '9.1': 0.84; 'freebsd': 0.84; 'much,': 0.84; 'serious': 0.97 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=x-received:message-id:date:from:user-agent:mime-version:to:subject :references:in-reply-to:x-enigmail-version:content-type :content-transfer-encoding; bh=JUDOYT9mkZYYmkm8K/nxrSNrcW7HcN8z2RnyQ/mVrXY=; b=vaeaXKgsorxQFEB+M9R4ei0bWSgPJfv2xm6jz/zV4Ff8CIt4yGeLw37DrrfquLQqGk 3fB/VUbngf+9pmTu7bjrpbfusLm5tfqbuLgypHWYP6NOu3Z/ebRke+9sn9r98gBcjElE korXOWou2KmlCsJoNVqKzqedgZt6e3qIOfJ3qS3ACB/ZKWQIPjd8bP72xV4XhP15nPJ3 WwabhxW7gj7DdxKP9x3Qy7ksQwv9tAQNPTzZ19MsrrXcoXzLljlChg16C+e0Q0usNH7J MC1D4X+A6IPLeLKI9RiDFdFfBnkhputQvktHAI2ngU/0q8opJ2YILX88grgD7zNJnG8V 1HaQ== X-Received: by 10.43.12.66 with SMTP id ph2mr1572653icb.5.1366131036190; Tue, 16 Apr 2013 09:50:36 -0700 (PDT) Date: Tue, 16 Apr 2013 11:50:36 -0500 From: Andrew Berg User-Agent: Mozilla/5.0 (Windows NT 6.2; WOW64; rv:17.0) Gecko/20130107 Thunderbird/17.0.2 MIME-Version: 1.0 To: "comp.lang.python" Subject: Re: The node.js Community is Quietly Changing the Face of Open Source References: In-Reply-To: X-Enigmail-Version: 1.5.1 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-BeenThere: python-list@python.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: General discussion list for the Python programming language List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Newsgroups: comp.lang.python Message-ID: Lines: 20 NNTP-Posting-Host: 2001:888:2000:d::a6 X-Trace: 1366131044 news.xs4all.nl 2657 [2001:888:2000:d::a6]:57569 X-Complaints-To: abuse@xs4all.nl Xref: csiph.com comp.lang.python:43684 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