Re: About the psycopg2 name - Mailing list psycopg

From Mike Bayer
Subject Re: About the psycopg2 name
Date
Msg-id CA+RjkXFL6Jy7actUy+S=dGfjpuD_jpUYYofGpON+1Nq9S2Y75w@mail.gmail.com
Whole thread Raw
In response to Re: About the psycopg2 name  (Federico Di Gregorio <fog@dndg.it>)
List psycopg
On Tue, Feb 27, 2018 at 8:44 AM, Federico Di Gregorio <fog@dndg.it> wrote:
> On 24/02/18 18:20, Joe Abbate wrote:
>>
>> On 24/02/18 11:29, Karsten Hilbert wrote:
>>>
>>> On Sat, Feb 24, 2018 at 11:27:22AM -0500, Reuben Rissler wrote:
>>>
>>>> Does anybody know the history behind the psycopg2 name?
>>>
>>>
>>> The 2 was added after a major rewrite, for what that's worth :-)
>>
>>
>> IIRC Federico Di Gregorio (who should know the story behind the name) was
>> a psychology major (just kidding :-).
>
>
> Ah ah, no. At the time I was just fresh out of university (biophysics) and
> working for a "free software" company during the dot.com bubble.
>
> Like always, the name was a joke, and a badly worded one. At the time, all
> PostgreSQL Python drivers were pure s**t and my company gave to two interns
> the job to write a new driver. They produced s**t^2 by writing first a
> server that connected to PostgreSQL using libpq and then a Python client
> that was supposed to connect to the server and pass through it all the SQL
> for the backend. After a couple of month the whole thing still didn't work:
> the worse bug was that for apparently no reason it opened connections to the
> backend like _crazy_.

today we call this PGBouncer :)


>
> So, in about a weekend I wrote the core of psycopg 1, just to demonstrate
> that you can write something that works without over-engineering it. I
> wanted to call it psychopg (a reference to their psychotic driver) but I
> typed the name wrong.

I always thought it was related to Psyco
(http://psyco.sourceforge.net/), like you tried using that at first or
something like that.


>
> Fast forward a couple of week: psycopg 1 is much better than anything else
> (that says a lot about the state of the other drivers) and we have our first
> adopter outside the company[1] :)
>
> And the name just stuck.
>
> To be honest, we later decided that the name was ok, given that, at the
> time, psycopg was the only driver able to support multi-threaded Python
> applications without dying an horrible death. Something along the lines that
> the driver should be a bit "psycho" to manage all the threads. Or something
> like that.
>
> federico
>
> [1] If you're curious about that, just have a look at the docs/SUCCESS file
> in the source distribution. Is a gathering of the email we received after
> checking with the users if a particularly nasty bug was gone and asking for
> success stories while preparing the 1.0 release back in 2001.
>
> --
> Federico Di Gregorio                         federico.digregorio@dndg.it
> DNDG srl                                                  http://dndg.it
>  I porcellini di terra sono davvero Crostacei! Non lo sapevo!
>   Certo che sono crostacei, hanno la crosta!
>   Allora la pizza è un crostaceo?!               -- discorso all'ESC2k07
>


psycopg by date:

Previous
From: Federico Di Gregorio
Date:
Subject: Re: About the psycopg2 name
Next
From: Joe Abbate
Date:
Subject: BC date getting misinterpreted?