Thread: Re: [COMMITTERS] pgsql: Proofreading adjustments for first two parts of documentation

On Mon, Apr 27, 2009 at 04:27:36PM +0000, Bruce Momjian wrote:
> Log Message:
> -----------
> Proofreading adjustments for first two parts of documentation (Tutorial
> and SQL).
>
> Modified Files:
> --------------
>     pgsql/doc/src/sgml:
>         advanced.sgml (r1.57 -> r1.58)
>         (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/advanced.sgml?r1=1.57&r2=1.58)

While we're at it, can we see about moving foreign keys out of the
"advanced" section?  They've been standard for many years.  Heck, even
MySQL has had them, at least in some of their engines, for many years.

Cheers,
David.
--
David Fetter <david@fetter.org> http://fetter.org/
Phone: +1 415 235 3778  AIM: dfetter666  Yahoo!: dfetter
Skype: davidfetter      XMPP: david.fetter@gmail.com

Remember to vote!
Consider donating to Postgres: http://www.postgresql.org/about/donate

On Monday 27 April 2009 20:10:27 David Fetter wrote:
> While we're at it, can we see about moving foreign keys out of the
> "advanced" section?  They've been standard for many years.  Heck, even
> MySQL has had them, at least in some of their engines, for many years.

Advanced doesn't have to mean nonstandard, and standard doesn't have to mean
basic.

On Mon, Apr 27, 2009 at 09:50:13PM +0300, Peter Eisentraut wrote:
> On Monday 27 April 2009 20:10:27 David Fetter wrote:
> > While we're at it, can we see about moving foreign keys out of the
> > "advanced" section?  They've been standard for many years.  Heck,
> > even MySQL has had them, at least in some of their engines, for
> > many years.
>
> Advanced doesn't have to mean nonstandard, and standard doesn't have
> to mean basic.

Are you seriously arguing that foreign keys aren't basic?  Seriously?

Cheers,
David.
--
David Fetter <david@fetter.org> http://fetter.org/
Phone: +1 415 235 3778  AIM: dfetter666  Yahoo!: dfetter
Skype: davidfetter      XMPP: david.fetter@gmail.com

Remember to vote!
Consider donating to Postgres: http://www.postgresql.org/about/donate

David Fetter wrote:
> On Mon, Apr 27, 2009 at 09:50:13PM +0300, Peter Eisentraut wrote:
> > On Monday 27 April 2009 20:10:27 David Fetter wrote:
> > > While we're at it, can we see about moving foreign keys out of the
> > > "advanced" section?  They've been standard for many years.  Heck,
> > > even MySQL has had them, at least in some of their engines, for
> > > many years.
> >
> > Advanced doesn't have to mean nonstandard, and standard doesn't have
> > to mean basic.
>
> Are you seriously arguing that foreign keys aren't basic?  Seriously?

Five years from now, are we going to move "recursive queries" to the
basic section?

--
Alvaro Herrera                                http://www.CommandPrompt.com/
PostgreSQL Replication, Consulting, Custom Development, 24x7 support

On Monday 27 April 2009 21:54:12 David Fetter wrote:
> On Mon, Apr 27, 2009 at 09:50:13PM +0300, Peter Eisentraut wrote:
> > On Monday 27 April 2009 20:10:27 David Fetter wrote:
> > > While we're at it, can we see about moving foreign keys out of the
> > > "advanced" section?  They've been standard for many years.  Heck,
> > > even MySQL has had them, at least in some of their engines, for
> > > many years.
> >
> > Advanced doesn't have to mean nonstandard, and standard doesn't have
> > to mean basic.
>
> Are you seriously arguing that foreign keys aren't basic?  Seriously?

In your words: yes.

But it's all relative.  Among all the topics that are covered in the tutorial,
foreign keys have certain prerequisite topics, such as logging into the
database, creating tables, and putting data in.  Certain things have to come
before others, and sections are used to organize the information.  You can
relabel the sections to "Really Basic" and "Somewhat Basic", if it helps you.

In some way, everything that is covered in the tutorial ought to be "basic".
But some things are more basic than others.  You could equally make the
argument that views and transactions are basic, but then there would be hardly
anything interesting left in the "advanced" section, especially if you add the
argument that inheritance and window functions could be considered by some as
very esoteric features that shouldn't be in the tutorial at all.

On Mon, Apr 27, 2009 at 10:56:28PM +0300, Peter Eisentraut wrote:
> On Monday 27 April 2009 21:54:12 David Fetter wrote:
> > On Mon, Apr 27, 2009 at 09:50:13PM +0300, Peter Eisentraut wrote:
> > > On Monday 27 April 2009 20:10:27 David Fetter wrote:
> > > > While we're at it, can we see about moving foreign keys out of
> > > > the "advanced" section?  They've been standard for many years.
> > > > Heck, even MySQL has had them, at least in some of their
> > > > engines, for many years.
> > >
> > > Advanced doesn't have to mean nonstandard, and standard doesn't
> > > have to mean basic.
> >
> > Are you seriously arguing that foreign keys aren't basic?
> > Seriously?
>
> In your words: yes.
>
> But it's all relative.  Among all the topics that are covered in the
> tutorial, foreign keys have certain prerequisite topics, such as
> logging into the database, creating tables, and putting data in.
> Certain things have to come before others, and sections are used to
> organize the information.  You can relabel the sections to "Really
> Basic" and "Somewhat Basic", if it helps you.

How about "setting up," and "usage," which opens the door to more
advanced features.  In later revs, we could have sections with "Good
Practices" in the title.

> In some way, everything that is covered in the tutorial ought to be
> "basic".  But some things are more basic than others.  You could
> equally make the argument that views and transactions are basic, but
> then there would be hardly anything interesting left in the
> "advanced" section,

Actually, there's plenty.

> especially if you add the argument

*I* certainly wouldn't add that argument.

> that inheritance and window functions could be considered by some as
> very esoteric features that shouldn't be in the tutorial at all.

Partitioning isn't exactly an esoteric feature.  More of an advanced
topic, as windowing and OLAP functions are, at least this year.

SQL/MED might qualify as esoteric, at least this year.  Five years
hence, SQL/MED might be pretty basic, as most of the heavy lifting
will likely be in the back-end, at least for the common scenarios.  By
then, the optimizer will have what it needs to do what it does fairly
transparently. :)

My point in all this is that, "advanced" isn't frozen forever in time,
and neither is, "basic."

Cheers,
David.
--
David Fetter <david@fetter.org> http://fetter.org/
Phone: +1 415 235 3778  AIM: dfetter666  Yahoo!: dfetter
Skype: davidfetter      XMPP: david.fetter@gmail.com

Remember to vote!
Consider donating to Postgres: http://www.postgresql.org/about/donate

David Fetter <david@fetter.org> writes:
> My point in all this is that, "advanced" isn't frozen forever in time,
> and neither is, "basic."

No, but the "basic" chapter is trying to teach people what tables and
indexes are.  I think it's reasonable to categorize FKs as a level
beyond that.

It would probably be fair to complain that window functions don't belong
in the same difficulty category as FKs.  I stuck a chapter about them in
there because I didn't see any other good place for the material --- but
maybe we should consider breaking down the tutorial into
beginner/intermediate/"advanced" chapters?

            regards, tom lane