Path: csiph.com!v102.xanadu-bbs.net!xanadu-bbs.net!goblin1!goblin.stu.neva.ru!news2.euro.net!newsgate.cistron.nl!newsgate.news.xs4all.nl!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.006 X-Spam-Evidence: '*H*': 0.99; '*S*': 0.00; 'result,': 0.05; 'postgresql': 0.07; 'run,': 0.07; 'alters': 0.09; 'answering': 0.09; 'occasionally': 0.09; 'received:80.91': 0.09; 'received:80.91.229': 0.09; 'received:gmane.org': 0.09; 'received:list': 0.09; 'reports.': 0.09; 'bug': 0.10; 'programmer': 0.11; 'bonus': 0.13; 'contributors': 0.16; 'finney': 0.16; 'happily': 0.16; 'nick': 0.16; 'oracle.': 0.16; 'received:80.91.229.3': 0.16; 'received:plane.gmane.org': 0.16; 'wrote:': 0.17; 'certainly': 0.17; 'mechanism': 0.17; 'jan': 0.18; 'input': 0.18; 'requests': 0.18; 'community.': 0.20; 'error.': 0.21; 'fine,': 0.22; 'latter': 0.22; 'command': 0.24; 'header :User-Agent:1': 0.26; 'url:wiki': 0.26; 'question': 0.27; "doesn't": 0.28; 'header:X-Complaints-To:1': 0.28; 'writes:': 0.29; 'reporting': 0.29; 'fri,': 0.30; 'error': 0.30; 'figure': 0.30; 'point': 0.31; 'gets': 0.32; 'problem.': 0.32; 'addresses': 0.32; 'operate': 0.32; "who's": 0.32; 'asked': 0.33; 'science,': 0.33; 'to:addr:python-list': 0.33; 'wrong': 0.34; 'clear': 0.35; 'ben': 0.35; 'data,': 0.35; 'faster': 0.35; 'community': 0.35; 'open': 0.35; 'pm,': 0.35; 'received:org': 0.36; 'explain': 0.36; 'url:org': 0.36; 'resources': 0.37; 'far': 0.37; 'data': 0.37; 'subject:: ': 0.38; 'some': 0.38; 'nothing': 0.38; 'page': 0.38; 'to:addr:python.org': 0.39; 'little': 0.39; 'header:Received:5': 0.40; 'end': 0.40; 'your': 0.60; 'more.': 0.62; 'dead': 0.62; 'future.': 0.62; 'helping': 0.63; 'subject:...': 0.63; 'more': 0.63; 'gone': 0.64; 'making': 0.64; 'become': 0.65; 'explanations': 0.65; 'virtually': 0.65; 'skip:\xe2 10': 0.66; '8bit%:21': 0.69; 'integrity': 0.75; 'directly.': 0.78; 'valued': 0.78; '2013': 0.84; 'reporting,': 0.84; 'shop,': 0.84; 'tossing': 0.84; 'why?': 0.84 X-Injected-Via-Gmane: http://gmane.org/ To: python-list@python.org From: Ben Finney Subject: Re: Vote tallying... Date: Sat, 19 Jan 2013 07:24:40 +1100 References: <50F8906D.9040203@r3dsolutions.com> <846C3A8E860C4344B567D813B63AA51D64BC9424@BL2PRD0610MB349.namprd06.prod.outlook.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Gmane-NNTP-Posting-Host: rasputin.madmonks.org X-Public-Key-ID: 0xBD41714B X-Public-Key-Fingerprint: 9CFE 12B0 791A 4267 887F 520C B7AC 2E51 BD41 714B X-Public-Key-URL: http://www.benfinney.id.au/contact/bfinney-gpg.asc X-Post-From: Ben Finney User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.4 (gnu/linux) Cancel-Lock: sha1:+uBQxF5UMoL36V9DhWS290tltS8= 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: 48 NNTP-Posting-Host: 2001:888:2000:d::a6 X-Trace: 1358540698 news.xs4all.nl 6895 [2001:888:2000:d::a6]:47015 X-Complaints-To: abuse@xs4all.nl Xref: csiph.com comp.lang.python:37025 Kwpolska writes: > On Fri, Jan 18, 2013 at 4:19 PM, Nick Cash > wrote: > > MySQL would certainly be fine, although I always recommend > > PostgreSQL over it. > Bonus question, why? The PostgreSQL community gets asked this question so often that they have a page with resources answering in various ways depending on what the reader needs to know . For me, the reasons are many. Some important ones: * MySQL happily alters data on input to the database, if it feels the need, without regard for data integrity. PostgreSQL has always valued the integrity of your data, rejecting invalid data before it can become an integrity problem. * MySQL has atrocious error messages and opaque error reporting, making it very difficult to figure out what has actually gone wrong with a command it doesn't like. PostgreSQL's error reporting is far clearer, helping pinpoint the location of the error. It also has an exception-raising mechanism that the programmer can use. * MySQL's development has suffered under Sun, and become virtually moribund under Oracle. They operate as a closed shop, occasionally tossing GPL-licensed releases over the wall, with very little input accepted from the community. PostgreSQL development has for a long time now been faster than MySQL's, and their community is far more open to contributors and bug reports. As a result, the development is much more community-focussed and addresses requests more directly. That latter point is a big flag that Oracle's MySQL is a dead end while PostgreSQL has a vibrant future. If only from the perspective of who's going to support you better in the long run, the choice is clear to me. -- \ “Alternative explanations are always welcome in science, if | `\ they are better and explain more. Alternative explanations that | _o__) explain nothing are not welcome.” —Victor J. Stenger, 2001-11-05 | Ben Finney