Path: csiph.com!newsfeed.hal-mli.net!feeder3.hal-mli.net!newsfeed.hal-mli.net!feeder1.hal-mli.net!newsfeed.xs4all.nl!newsfeed1.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.009 X-Spam-Evidence: '*H*': 0.98; '*S*': 0.00; 'debugging': 0.05; 'bash': 0.07; 'continuation': 0.07; 'python': 0.09; 'coding,': 0.09; 'cursor': 0.09; 'highlighting': 0.09; 'occurrences': 0.09; 'php,': 0.09; 'spelling': 0.09; 'subject:still': 0.09; 'subject:python': 0.11; 'language': 0.14; 'dec': 0.15; "hasn't": 0.15; 'bracket': 0.16; 'compiling,': 0.16; 'definition.': 0.16; 'detects': 0.16; 'examples:': 0.16; 'from:addr:rosuav': 0.16; 'from:name:chris angelico': 0.16; 'hobbyist': 0.16; 'in...': 0.16; 'seconds.': 0.16; 'stage"': 0.16; 'varies': 0.16; 'wrote:': 0.17; 'instance,': 0.17; 'subject:need': 0.17; 'typing': 0.17; 'code.': 0.20; 'error.': 0.21; 'fairly': 0.21; 'errors': 0.23; 'matching': 0.23; 'header:In-Reply-To:1': 0.25; 'am,': 0.27; 'rules': 0.27; 'errors.': 0.27; 'message-id:@mail.gmail.com': 0.27; 'lines': 0.28; 'received:209.85.212': 0.28; 'run': 0.28; '(maybe': 0.29; 'editors': 0.29; 'staying': 0.29; 'strings,': 0.29; 'thinks': 0.29; 'points': 0.29; "i'm": 0.29; 'maybe': 0.29; 'function': 0.30; 'feedback': 0.30; 'helpful': 0.30; 'seconds': 0.30; 'comments': 0.33; 'strict': 0.33; 'problem': 0.33; 'to:addr :python-list': 0.33; 'received:google.com': 0.34; 'text': 0.34; 'said,': 0.35; 'especially': 0.35; 'doing': 0.35; 'subject:?': 0.35; 'received:209.85': 0.35; 'there': 0.35; 'but': 0.36; "didn't": 0.36; 'editor': 0.37; 'uses': 0.37; 'why': 0.37; 'subject:New': 0.37; 'received:209': 0.37; 'far': 0.37; 'subject:: ': 0.38; 'things': 0.38; 'sure': 0.38; 'several': 0.39; 'to:addr:python.org': 0.39; 'header:Received:5': 0.40; 'your': 0.60; 'red': 0.60; 'matter': 0.61; 'subject:, ': 0.61; 'first': 0.61; '(that': 0.62; '30,': 0.62; 'policy': 0.62; 'between': 0.63; 'helps': 0.63; 'more': 0.63; 'show': 0.63; 'gone': 0.64; 'making': 0.64; 'here': 0.65; 'difficulty': 0.65; 'published': 0.71; 'saving': 0.72; '(better': 0.84; 'ever.': 0.84; 'feedback,': 0.84; 'monte': 0.84; 'running,': 0.84; 'subject:good': 0.84; 'underneath': 0.84; '4:44': 0.91; 'discovering': 0.91; 'not:': 0.93; 'instant': 0.98 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=LZmcZzeDNz7vfTwZDzHmY5/znM2k+07SePO4JmbZul4=; b=rMJF5gOQ555XeTJT/uD8JNzTgZdFpPNu7cNMST0gJwj0/qQo+yXvQE0Je6bf0hhBGz Lx/l1ci3XUguyq8lLc7BwxcKPE/9s+Mb+l+oq3Rvaswb+gQYRR1SYvBhp6l+nn8TIrr2 aySkyX6fC3xm82Xz+qdWh5IL4mugnSKMF6nvr+3zph+o7lHOoJGM29p1gvdjJsRuLNg0 7W8TesFd0Ei6MbAyXS3+TSQbJz0DPR2OFZWF3iAlF2tYoXmFehikNz8dDFgecai47nPa fLiU6t66ihYQkfWHUfUWQVnY31CmQyCQRd0vE6g4zQm+7U6Ncln9GiT6e9RyFxRPEbYL OxcA== MIME-Version: 1.0 In-Reply-To: References: Date: Sun, 30 Dec 2012 05:07:23 +1100 Subject: Re: New to python, do I need an IDE or is vim still good enough? 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.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: 45 NNTP-Posting-Host: 2001:888:2000:d::a6 X-Trace: 1356804451 news.xs4all.nl 6920 [2001:888:2000:d::a6]:40624 X-Complaints-To: abuse@xs4all.nl Xref: csiph.com comp.lang.python:35761 On Sun, Dec 30, 2012 at 4:44 AM, Monte Milanuk wrote: > Maybe its because I'm still just a hobbyist when it comes to coding, but I > spend far more time 'thinking' about what I'm doing than typing things in... > so shaving a few seconds here and there are less important to me. The value of a good editor isn't just in saving seconds. A couple of examples: * Bracket matching helps to catch errors. Especially helpful when combined with... * Language-sensitive auto-indentation. If the editor detects that the last line isn't complete (maybe you opened a parenthesis that you didn't close... ... like that...) and automatically indents, then you have instant feedback, before you even run the program. * Rapid location of relevant code. In SciTE, I can put the cursor on a word and hit Ctrl-F3 to search for other occurrences of it - for instance, put the cursor on a function name and find its definition. (A strict declare-before-use policy helps here, as you can be fairly sure that the first occurrence of that word will be the one you want.) * Highlighting of comments and quoted strings, including all the esoteric rules about line continuation and nesting. Several of these points are more important to the polyglot than to someone who uses only one language ever. For instance, in Python and C, this would show an error, but in bash and PHP, it's not: "asdf qwer" The difficulty of debugging varies directly with the time between making and discovering the error. Finding a problem by compiling, running, and using a program is good (better than it staying till production); finding that same problem while you're in the "compilation stage" is better; finding it right at that instant while you're typing makes the correction trivial. That's why spell-checkers have migrated from "press Ctrl-Q to check this document" to "red squiggly lines underneath your text if the computer thinks it's wrong". (That said, the number of spelling errors in published documents hasn't gone down since red squigglies were invented, so instant feedback isn't a panacea!) Of course, editors are as much a matter of taste as they are science... ChrisA