Path: csiph.com!usenet.pasdenom.info!weretis.net!feeder4.news.weretis.net!rt.uk.eu.org!newsfeed.xs4all.nl!newsfeed4.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.007 X-Spam-Evidence: '*H*': 0.99; '*S*': 0.00; 'programmer': 0.03; 'anyway.': 0.05; '*not*': 0.07; 'compiler': 0.07; 'attachment.': 0.09; 'lines.': 0.09; 'pretend': 0.09; 'cc:addr:python-list': 0.11; 'python': 0.11; 'gui': 0.12; 'wrote': 0.14; 'language.': 0.14; '(just': 0.16; '*i*': 0.16; 'attached,': 0.16; 'easier.': 0.16; 'guessing': 0.16; 'html/css,': 0.16; 'inspiration': 0.16; 'job!': 0.16; 'scripts.': 0.16; 'silly': 0.16; 'do,': 0.16; 'language': 0.16; 'wrote:': 0.18; 'code.': 0.18; 'examples': 0.20; 'written': 0.21; 'cc:addr:gmail.com': 0.22; 'python?': 0.22; 'rules': 0.22; 'cc:addr:python.org': 0.22; 'cc:2**1': 0.23; 'jquery': 0.24; 'header:In-Reply-To:1': 0.27; 'point': 0.28; 'received:209.85.217': 0.29; "doesn't": 0.30; 'message- id:@mail.gmail.com': 0.30; 'program,': 0.31; 'code': 0.31; 'lines': 0.31; 'too.': 0.31; 'you?': 0.31; 'libraries': 0.31; 'python"': 0.31; 'anyone': 0.31; 'probably': 0.32; 'skip:c 30': 0.32; 'interface': 0.32; 'run': 0.32; "i'd": 0.34; 'received:209.85': 0.35; 'no,': 0.35; 'but': 0.35; 'received:google.com': 0.35; 'really': 0.36; 'html,': 0.36; 'licensed': 0.36; 'done': 0.36; "didn't": 0.36; 'half': 0.37; 'too': 0.37; 'two': 0.37; 'received:209': 0.37; 'little': 0.38; 'anything': 0.39; 'bad': 0.39; 'how': 0.40; 'even': 0.60; 'easy': 0.60; 'games,': 0.60; 'new': 0.61; 'numbers': 0.61; 'browser': 0.61; 'times': 0.62; "you'll": 0.62; "you've": 0.63; 'show': 0.63; 'total': 0.65; 'to:addr:gmail.com': 0.65; 'bothered': 0.68; 'of:': 0.68; 'subject': 0.69; 'examples.': 0.84; 'yours': 0.88; 'careful': 0.91; 'joel': 0.91; 'mistake': 0.91; 'hundred': 0.95; '2013': 0.98 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-type; bh=teo4EB2XY1tkuyG4FATBwcoc47dwlq2S1VCrgS5ABVI=; b=FbJUjchnPi+NooJI2m+1GKRx+ZqEze9miprSRHxqQuQPx0L4WOH4xwVFxtM2jSsn1+ Aj8l8xp9X5+fp7V0pP9Xfvh8XFUH5Q2LANnXneFYX74VABI9/AJ66yO1vB5A+LgGaY2k 2ru5dkd3Yge2hsyuDk/6ayw2Cdwgpbh6SjmsZUWTLUut5PkdbOzvM/Kp31YtW3Pxm+Cb +MSVEM1Zvc2yE3FMhCLnjD9/mnoNKlJC7Xlt94gDjUTEQzMzaVO+a2ullxOs0rDKP6hW ZI/v/4M55RoCPi1xGfv4m3lGhcJ+l4OAzm7wia8p3o17Zcc4B8+/AOerapkUTRClPiSy 0bbA== X-Received: by 10.112.52.97 with SMTP id s1mr3893361lbo.8.1371666892555; Wed, 19 Jun 2013 11:34:52 -0700 (PDT) MIME-Version: 1.0 In-Reply-To: References: <8a4fced2-7d6c-455e-a482-b6f95b806ab5@googlegroups.com> <42499468-5e16-4ee0-9820-d1069a6af1b6@googlegroups.com> From: Joshua Landau Date: Wed, 19 Jun 2013 19:34:12 +0100 Subject: Re: A Beginner's Doubt To: Joel Goldstick Content-Type: multipart/mixed; boundary=001a11c3ecdee18a9004df86151f Cc: "python-list@python.org" , Rick Johnson 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: 157 NNTP-Posting-Host: 2001:888:2000:d::a6 X-Trace: 1371666900 news.xs4all.nl 15936 [2001:888:2000:d::a6]:43249 X-Complaints-To: abuse@xs4all.nl Xref: csiph.com comp.lang.python:48740 --001a11c3ecdee18a9004df86151f Content-Type: text/plain; charset=UTF-8 On 19 June 2013 17:39, Joel Goldstick wrote: > What is the subject that this teacher of yours teaches? > Do you know anyone who has every done any programming? > Why python? One of those questions is too easy :P. But, no, I'd actually point out that Python might *not* be the best language for the job! *GASP!* *HERETIC* *I'M TELLING!* If you just want a GUI interface program, I'd recommend JavaScript. Heck, if you don't mind the compiler troubles I'd use CoffeeScript. "Why?!" You scream! Well, it's definitely not the language. The GUI toolkit, HTML, however, is ace for really small compatibility-don't-really-matter scripts. A couple old examples from before I "went Python" are attached, not to show off the somewhat lame code but just to point out that even as a new programmer these things were *concise*. That made them so many billions of times easier. Be careful not to mistake the libraries I used for the code I wrote, too. The amount of code *I* wrote for each numbers very few lines (just the main two html files). About half in total was HTML/CSS, so doesn't even count as code. I wrote these for me, so pretend they're licensed strictly. Anything I can give away I do, but it's best to check the licences anyway. Please note that if you don't run these in a modern Chrome/Chromium browser you'll have a bad time - I never bothered with compatibility. Also, apologies for snatching the coffeescript.org coffeescript - but I didn't want to mail a 60KB attachment. Instructions: Guessing the rules is part of the game. They're both thinking games, by the way. For Z-Rox clone, the inspiration is from http://www.kongregate.com/games/evildog/z-rox. How is this relevant to you? Well, JQuery will make what you've written probably just couple of hundred lines. Forget about 2000! This isn't relevant if any of: 1) You have to use python 2) You don't want a silly web interface 3) Any other good reason See http://jqueryui.com/draggable/ for little examples. --001a11c3ecdee18a9004df86151f Content-Type: application/x-gzip; name="Examples.tar.gz" Content-Disposition: attachment; filename="Examples.tar.gz" Content-Transfer-Encoding: base64 X-Attachment-Id: f_hi4uaatd0 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 --001a11c3ecdee18a9004df86151f--