Path: csiph.com!x330-a1.tempe.blueboxinc.net!usenet.pasdenom.info!goblin3!goblin2!goblin.stu.neva.ru!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.000 X-Spam-Evidence: '*H*': 1.00; '*S*': 0.00; 'python,': 0.01; '(at': 0.03; 'languages,': 0.03; 'python.': 0.04; 'perl,': 0.05; 'scripting': 0.05; 'subject:Python': 0.06; 'agree,': 0.07; 'interpreter': 0.07; 'seemed': 0.07; 'python': 0.08; 'apps,': 0.09; 'fewer': 0.09; 'libs': 0.09; 'settled': 0.09; 'api': 0.11; 'win32': 0.12; 'gui': 0.14; 'library': 0.15; '(cd': 0.16; 'apps.': 0.16; 'background,': 0.16; 'bindings': 0.16; 'compact': 0.16; 'development?': 0.16; 'expected,': 0.16; 'guis': 0.16; 'guis,': 0.16; 'instances,': 0.16; 'open-source,': 0.16; 'py2app': 0.16; 'sequential': 0.16; 'simplest': 0.16; 'productive': 0.16; 'language,': 0.17; 'language': 0.18; 'accessible': 0.19; 'perl': 0.19; 'shell': 0.19; 'simpler': 0.19; 'wrap': 0.19; 'programming': 0.19; 'java': 0.21; "haven't": 0.22; 'trying': 0.23; 'deployment': 0.23; 'taste': 0.23; 'received:209.85.161.46': 0.23; 'received :mail-fx0-f46.google.com': 0.23; 'creating': 0.24; 'code': 0.24; "doesn't": 0.25; 'somebody': 0.25; 'libraries': 0.25; 'modules': 0.26; 'received:209.85.161': 0.26; 'tried': 0.27; "i'm": 0.27; 'work.': 0.28; 'thanks': 0.28; 'helpful': 0.28; 'subject:?': 0.29; '(even': 0.29; "python's": 0.29; 'subject:': 0.30; 'module': 0.30; 'turned': 0.30; 'binding': 0.30; 'os,': 0.30; 'time)': 0.30; 'toolkit': 0.30; 'x-mailer:microsoft outlook express 6.00.2900.5931': 0.30; 'programmers': 0.31; 'seem': 0.32; 'community': 0.32; 'agree': 0.32; 'app': 0.32; 'to:addr:python- list': 0.33; 'familiar': 0.33; "isn't": 0.33; 'too': 0.33; "i've": 0.33; 'however,': 0.34; 'core': 0.35; 'there': 0.35; 'hacking': 0.35; 'languages.': 0.35; 'couple': 0.35; 'message.': 0.35; 'using': 0.35; 'quite': 0.36; 'translate': 0.36; 'certain': 0.36; 'primary': 0.37; 'program,': 0.37; 'received:google.com': 0.37; 'useful': 0.37; 'received:209.85': 0.37; 'third-party': 0.37; 'another': 0.37; 'brief': 0.37; 'reasons': 0.37; 'tool': 0.38; 'could': 0.38; 'screen': 0.38; 'anything': 0.38; 'but': 0.38; 'though': 0.38; 'cases,': 0.38; 'smaller': 0.38; 'subject:: ': 0.38; 'some': 0.38; 'user': 0.39; 'received:209': 0.39; 'got': 0.39; 'either': 0.39; 'list,': 0.39; 'to:addr:python.org': 0.39; 'allows': 0.40; 'basic': 0.40; 'under': 0.40; 'extend': 0.40; 'unix': 0.40; 'more': 0.60; 'kind': 0.60; 'your': 0.60; 'address': 0.62; 'love': 0.62; 'released': 0.63; 'apps': 0.63; 'respect': 0.65; 'interest': 0.65; 'series': 0.66; 'here': 0.66; 'respect.': 0.67; 'readers': 0.68; 'here.': 0.69; 'capabilities': 0.72; 'learned': 0.73; 'promote': 0.78; 'strategies': 0.78; 'bundling': 0.84; 'developed.': 0.84; 'excels': 0.84; 'lightweight': 0.84; 'newbie,': 0.84; 'subject:Why': 0.84; 'subject:choose': 0.84; 'subject:its': 0.84; 'comparable': 0.91 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:message-id:from:to:references:subject:date :mime-version:content-type:content-transfer-encoding:x-priority :x-msmail-priority:x-mailer:x-mimeole; bh=xisWGiHz0n4m/MxeR+YhkGK59NckqGBNZIACg+QBlC4=; b=P8Z8QHBn/CXjbsyjNqUZ9B/vRBSzEKFhTQ6Ak3696R17TfpPpuJobBKu6VNiXDVDly AcrAw2LHrLYWF8e0Ty6Ids6e7hDVtta9+wenlk6jo7KwLN42yG9lld7h/wH8StBQvhL+ Vy8MDqW6tGvDuf5dRTvMkxs/oVAtySzq/ViaU= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:from:to:references:subject:date:mime-version :content-type:content-transfer-encoding:x-priority:x-msmail-priority :x-mailer:x-mimeole; b=Y4Ud2ey5NBb+ML0k2ylE1Zmxnhd5g3gE43wd4TdWUN1RssAcUArm7lV8t6my0hzdgO xc8IXzmy3nGJlVfo5nO/UILGUWS9sb5Lig5mfVWcStgGWuwQGpYfyWnHI+R5/DCPl0CI Vr9kzp2xRMfy/tMN2mpLDI45TK0ZVzRleaDhc= From: "Octavian Rasnita" To: References: <80d59383-36a3-4744-85c4-1a0577f1d3a6@dr5g2000vbb.googlegroups.com> <4e51c$4ddbc676$4275d90a$30907@FUSE.NET> Subject: Re: Why did Quora choose Python for its development? Date: Tue, 24 May 2011 19:18:38 +0300 MIME-Version: 1.0 Content-Type: text/plain; charset="ISO-8859-1" Content-Transfer-Encoding: quoted-printable X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2900.5931 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.6090 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: 101 NNTP-Posting-Host: 82.94.164.166 X-Trace: 1306253946 news.xs4all.nl 49038 [::ffff:82.94.164.166]:37737 X-Complaints-To: abuse@xs4all.nl Xref: x330-a1.tempe.blueboxinc.net comp.lang.python:6156 Subject: Re: Why did Quora choose Python for its development? > I've been programming for about seven years, and am basically=20 > self-taught. I got my first taste of writing code when trying do to = some=20 > basic hacking on my (then) shiny new G3 iBook. (Even though it was a=20 > Mac, I was enthralled by its Unix underpinnings.) C was too hard for a = > programming newbie, and (at the time) I only understood shell to be a=20 > sequential series of commands. (cd ~/.Trash; ls; rm *) >=20 > My goal was to write desktop GUI apps, and looking around at the=20 > available languages, libraries, and toolkits for Unix and the Mac, I=20 > settled on Tk as the UI toolkit, since it seemed to be the simplest = one=20 > out there, and on Tcl and Python as the programming languages. (A = brief=20 > detour with AppleScript convinced me that it is a useful scripting=20 > language for hooking into various parts of OS X, but it is not very=20 > powerful.) >=20 > While Tcl doesn't get a lot of love or respect on this list, it is = quite=20 > powerful in its way, and an understanding of Tcl is quite useful in=20 > particular for understanding Tk and its Python wrapper, Tkinter. After = > becoming productive with Tcl and writing a couple of applications in = it,=20 > I turned to Python in earnest and set about learning its capabilities = as=20 > well, and have since released a couple of Python desktop apps on the = Mac=20 > (commercial apps, using Tk as the toolkit). >=20 > With that background, here are my reasons for keeping Python in my = toolbox: >=20 > 1. Its core libraries and third-party packages address nearly every=20 > imaginable need. The size of its community is a real asset here. Tcl = is=20 > a more compact language, with a smaller core library and fewer=20 > third-party packages (no library comparable to Mark Pilgrim's=20 > feedparser, for instance), which means that for some use cases, using=20 > Tcl would mean more work. >=20 > 2. Python has excellent tools for deployment of desktop apps. Since I=20 > only work on the Mac, I'm not that familiar with py2exe, but py2app = and=20 > bundlebuilder have always allowed me to wrap up my apps with an = embedded=20 > Python interpreter with a minimum of fuss. Tcl also excels in = deployment=20 > of desktop apps; other languages, such as Perl and Ruby, seem to lag=20 > behind in this respect. (I could find no actively-maintained,=20 > open-source, Mac-viable desktop app bundling tools for either Ruby or=20 > Perl, which cooled my interest in them considerably.) >=20 > 3. Python's binding to Tk makes writing GUI apps a straightforward=20 > process. Since I already knew Tk quite well, learning its Python=20 > bindings was much simpler than learning another GUI toolkit such as = PyQt=20 > or wxPython. The strategies I learned from Tcl to develop = sophisticated=20 > Tk-based UI's translate quite well to Python. >=20 > Python isn't perfect; for some instances, I find Tcl a more = lightweight=20 > and accessible tool to use. I also spend a lot of time digging into = Tcl=20 > and Tk's C API to extend their capabilities in certain ways; this also = > allows my Python apps to access such enhancements, via Tkinter. But = all=20 > in all I'm a happy user of Python, and it will continue to have a=20 > primary place in my toolbox. >=20 > --Kevin Hi Kevin, Thanks for your message. It is helpful to know why some programmers = prefer a certain OS, programming language, module or program, because = this way the newbies can find its benefits rapidly. Yes there are packiging solutions for Perl under Mac, but I haven't = tried them because I never used a Mac, however, I agree that python is = better than Perl for creating desktop apps, because the modules which = are used for creating GUIs are better developed. Too bad that you prefer Tk-based GUIs, because they are simple to use, I = agree, but they create and promote discrimination because they are not = accessible at all for the screen readers used by the blind. The standard Win32 GUIS/MFC or the libs that use those GUIs like Java = SWT and wxWIDGETS used by WxPerl, WxPython... are much better = accessible. Somebody told that he will try to make Tk accessible, but = just as I expected, I haven't heard anything until now about any kind of = success of that project. Octavian