Path: csiph.com!usenet.pasdenom.info!aioe.org!news.stack.nl!newsfeed.xs4all.nl!newsfeed6.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.018 X-Spam-Evidence: '*H*': 0.96; '*S*': 0.00; 'explanation': 0.09; 'lookup': 0.09; 'rules.': 0.09; 'language': 0.14; '"python': 0.16; ':-p': 0.16; '[and': 0.16; 'dfs': 0.16; 'from:addr:rosuav': 0.16; 'from:name:chris angelico': 0.16; 'iterating': 0.16; 's/he': 0.16; 'saying.': 0.16; 'subject:Discussion': 0.16; 'sys.path': 0.16; 'mon,': 0.16; 'wrote:': 0.17; 'element': 0.17; 'module': 0.19; 'received:209.85.214.174': 0.21; 'subject:Code': 0.22; 'example': 0.23; 'elements': 0.23; 'header:In-Reply-To:1': 0.25; 'looks': 0.26; 'am,': 0.27; 'entries': 0.27; 'mind.': 0.27; 'message- id:@mail.gmail.com': 0.27; "doesn't": 0.28; 'actual': 0.28; 'chris': 0.28; 'attempting': 0.29; "d'aprano": 0.29; 'helpful.': 0.29; 'steven': 0.29; 'subject:some': 0.29; 'though.': 0.29; 'on,': 0.30; 'getting': 0.33; 'explains': 0.33; 'anyone': 0.33; 'to:addr:python-list': 0.33; 'agreed': 0.33; 'received:google.com': 0.34; 'text': 0.34; 'whatever': 0.35; 'received:209.85': 0.35; 'really': 0.36; 'ability': 0.36; 'explain': 0.36; 'but': 0.36; 'modules': 0.36; 'does': 0.37; 'option': 0.37; 'two': 0.37; 'uses': 0.37; 'why': 0.37; 'quite': 0.37; 'received:209': 0.37; 'far': 0.37; 'subject:: ': 0.38; 'fact': 0.38; 'instead': 0.39; 'to:addr:python.org': 0.39; 'received:209.85.214': 0.39; 'where': 0.40; 'header:Received:5': 0.40; 'your': 0.60; 'leaving': 0.62; 'card': 0.62; 'between': 0.63; 'perfect': 0.63; 'more': 0.63; 'hang': 0.65; 'jul': 0.65; 'unnecessary': 0.65; 'overall': 0.66; 'gathering': 0.71; 'thing,': 0.84; 'technically': 0.91 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type; bh=A/aXgCG4wtXzeZfAGpqb7aLN4beZ+vl4Ax1YJ6MHL7w=; b=Os0uk/S3K+jotcundpeeQkSl6kHAz4gOsyypZndi22nvgaZgwjTXUL4s0BVFvV0Jqi 5/Y5T9q/ww32AnISkaa7oK9YaiOJP/N4KJKm459aSlq8wBMOiSxLGB0X9EOnGIPdqb/B UI2jzEeUqeujJBbltqAdRYHmhp/5GVxkO24R4WRFK0Tamn+3bdrredUUO5mHKLg0Mctw /1cy86Z4Rr4zvp/FGgoULaoMogxDPuI5dAyjSgqFFGkzDcPXJJYmSmFQVgq8lfAJ/naS AlClMnH593dQgs9afMcOyYJgyEMXxu3vdIm7lecM1cqALihoSgJC9F8gBrdKt8lZJUdZ RYIw== MIME-Version: 1.0 In-Reply-To: <4ffa2c7b$0$29988$c3e8da3$5496439d@news.astraweb.com> References: <3c4e2ef9-bf7e-4fbc-bf12-6780fdc3e5d4@googlegroups.com> <09adb3cf-f3f2-4acc-b561-a36dcf15ecc7@googlegroups.com> <11832de7-a064-494e-b3e8-32a2f15a6902@googlegroups.com> <4ffa2c7b$0$29988$c3e8da3$5496439d@news.astraweb.com> Date: Mon, 9 Jul 2012 18:41:28 +1000 Subject: Re: Discussion on some Code Issues From: Chris Angelico To: python-list@python.org Content-Type: text/plain; charset=ISO-8859-1 X-BeenThere: python-list@python.org X-Mailman-Version: 2.1.12 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: 37 NNTP-Posting-Host: 2001:888:2000:d::a6 X-Trace: 1341823291 news.xs4all.nl 6841 [2001:888:2000:d::a6]:33943 X-Complaints-To: abuse@xs4all.nl Xref: csiph.com comp.lang.python:25072 On Mon, Jul 9, 2012 at 10:57 AM, Steven D'Aprano wrote: > On Mon, 09 Jul 2012 07:54:47 +1000, Chris Angelico wrote: > >> It's like >> the difference between reminder text on a Magic: The Gathering card and >> the actual entries in the Comprehensive Rules. Perfect example is the >> "Madness" ability - the reminder text explains the ability, but uses >> language that actually is quite incorrect. It's a better explanation, >> though. > > Hang on, you say that an explanation which is "quite incorrect" is > *better* than one which is correct? > > I can see why they call the card "Madness". > > :-P Agreed about the ability name :) The fact is, though, that when you're explaining something, it's often better to have a one-sentence explanation that's not quite technically accurate than two paragraphs explaining it in multiple steps and are opaque to anyone who doesn't have the rules-lawyer mind. (I happen to have such a mind. It's not always a good thing, but it makes me a better debugger.) Does it really hurt to anthropomorphize and say that "Python looks for modules in the directories in sys.path" instead of "Module lookup consists of iterating over the elements in sys.path [and that's leaving out the worst-case DFS where you explain THAT in detail], calling combine_path [or whatever it is] with the element and the module name, and attempting to stat/open the result"? While your listener's getting bogged down in unnecessary detail, s/he isn't grokking the overall purpose of what you're saying. One option is more accurate. The other is far more helpful. ChrisA