Re: Using Postgresql as application server

From: "David Johnston" <polobo(at)yahoo(dot)com>
To: "'Darren Duncan'" <darren(at)darrenduncan(dot)net>
Cc: <pgsql-general(at)postgresql(dot)org>
Subject: Re: Using Postgresql as application server
Date: 2011-08-16 00:14:18
Message-ID: 009701cc5ba9$72ee6b10$58cb4130$@yahoo.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-admin pgsql-general

-----Original Message-----
From: pgsql-general-owner(at)postgresql(dot)org [mailto:pgsql-general-owner(at)postgresql(dot)org] On Behalf Of Darren Duncan
Sent: Monday, August 15, 2011 6:48 PM
To: David Johnston
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: [GENERAL] Using Postgresql as application server

David Johnston wrote:
>>> I believe that it is ideal for Postgres to be computationally
>>> complete in that one *could* use it to implement a complete
>>> application. That isn't to say one should do this as a matter of
>>> course, good to use appropriate tools for a >>job, but that it
>>> should at least be possible if one wanted to. -- Darren Duncan
>
> So who wants to fund the effort to create the necessary infrastructure
> to display a programmer-defined user interface screen (think of the "Forms"
> module in Microsoft Access)? Or are you expecting the end-user to
> open up PgAdmin and type "SELECT hello_world();". I would argue that
> because PostgreSQL is able to talk with many languages that can create these "Forms"
> (or even - through extensions - a web-browser) that such functionality
> is NOT DESIREABLE and thus PostgreSQL would not ideally be
> "computationally complete" by that definition.

I mean computationally complete in that Postgres is an application-level virtual machine within which it is technically possible to write an emulator for any given computationally complete language using just stock Postgres and stock PLs, such that say you can just feed a self-contained script to psql and that this script is an application capable of doing anything. I'm not saying that it has to perform well but just be possible.

I certainly don't expect any interface-related higher level libraries from this effort, but the foundation should be there so users can create their own just by writing an installable Postgres extension consisting of PL procedures etc that don't need a C compiler.

I believe we basically have all the foundation already, with maybe procedures executable outside transactions being the last major part.

-- Darren Duncan

--------------------------------------------------------------------------------------------

This whole line is getting somewhat off-topic; we're not talking about a "computationally complete" application but simply one that can handle HTTP requests and dispatch calls to user-defined methods. This seems like a small-enough requirement and seems to already have a solution (though I haven't looked at the provided links); whether you call it PostgreSQL or not is a matter of semantics (as is much of this thead).

That said...

Please restate your request in terms of benefits as opposed to checklist of cool features that barely work but, because they are present, can be added to the marketing materials.

I rather cater to a user that is capable and willing to choose multiple, separate, best-of-breed applications as opposed to those that want "Microsoft Access" on steroids. Given limited resources even software obeys the axiom "Jack of All Trades; Master of None".

If PostgreSQL was actually getting money for each user then maybe a focus on adding additional "user experience" features would be warranted; as it is the effort should be in making the Free Core as good as possible and encourage and assist a community to build tools (core augments and developer). This is opposed to the "do everything ourselves" mentality that you seem to prescribe. While this community exists now my personal impression is that more efforts could be taken to make it more prominent and accessible to users. Think of it as giving new users the course outline and "required reading" documents and then saying that they can spend the time to teach themselves the fundamentals or direct them to capable teachers who can help guide them. Likely these teachers would be willing to provide the outline and other materials for the opportunity to gain new students. PostgreSQL could then serve as an unbiased moderator; attempting to make sure that there is a variety of philosophies represented as well as to review the accuracy/tone of the materials that they certify.

David J.

In response to

Responses

Browse pgsql-admin by date

  From Date Subject
Next Message Merlin Moncure 2011-08-16 01:23:20 Re: Using Postgresql as application server
Previous Message Craig Ringer 2011-08-16 00:06:22 Re: Using Postgresql as application server

Browse pgsql-general by date

  From Date Subject
Next Message Merlin Moncure 2011-08-16 01:23:20 Re: Using Postgresql as application server
Previous Message Craig Ringer 2011-08-16 00:06:22 Re: Using Postgresql as application server