9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: Uriel <uriel99@gmail.com>
To: Fans of the OS Plan 9 from Bell Labs <9fans@9fans.net>
Subject: Re: [9fans] web server
Date: Sun, 19 Apr 2009 00:13:09 +0200	[thread overview]
Message-ID: <5d375e920904181513v680abdd0x15991abd87e89843@mail.gmail.com> (raw)
In-Reply-To: <0f1e54b186151c0eecc0003c812124f7@quanstro.net>

While I think SQL  *really* sucks (besides smelling too much of COBOL,
it pretends to be relational when it is not), that was not my point,
and I agree with you that relational databases don't store objects,
and that relational databases do have valid uses that are sadly often
overlooked (maybe this wouldn't be the case if they didn't keep adding
'features' to store XML 'objects' in them and other such
abominations).

My criticism was directed at how they are actually used in pretty much
every web 'framework' under the sun: with some hideously messy ORM
layer, they plug round Objects down the square db tables, and all of
it to write applications which really are representing files (accessed
over HTTP).

It is not uncommon to see people modeling with Objects file
hierarchies that then they go and store into a relational database.

So by using files to store and model data not only avoids having to
map a fs-like interface to a table oriented one, but the object
oriented convolution in between.

And that is short is what allows you to write a blog engine in three
lines of rc, because rc and the rest of the toolkit that comes with it
are designed to work on and with files and file paths.

uriel

On Fri, Apr 17, 2009 at 3:22 PM, erik quanstrom <quanstro@quanstro.net> wrote:
> On Fri Apr 17 08:33:12 EDT 2009, uriel99@gmail.com wrote:
>> And then you would need some hideous SQL database.
>>
>> As ken said: we have persistent objects, they are called files; and
>> that is what werc uses.
>
> i feel compelled to defend one of my favorite quotes
> of all time from misapplication.  i'm sure that werc is
> well-engineered for its domain, but the mistake i see
> is generalizing this into sql sucks.
>
> just as a point of pedantry, in a standard sql database,
> there are no objects.
>
> sql does not suck.  here's why.  sql databases are really
> good at keeping relationships between rows (here's the
> important part) with no locking visible to the client.
> even better in the face of non-static requirements,
> more relationships can be added on the fly.  it's hard
> to do this with flat files, and file-based locking (like
> upas does for mbox files) is pretty tricky.
>
> - erik
>
>



  reply	other threads:[~2009-04-18 22:13 UTC|newest]

Thread overview: 52+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-04-16 16:10 Rudolf Sykora
2009-04-16 16:16 ` erik quanstrom
2009-04-18 17:19   ` Enrico Weigelt
2009-04-26 21:43     ` Roman V. Shaposhnik
2009-04-16 16:18 ` Devon H. O'Dell
2009-04-16 16:22   ` Rudolf Sykora
2009-04-16 16:26     ` erik quanstrom
2009-04-16 17:22       ` [9fans] Rails? (was Re: web server) Pietro Gagliardi
2009-04-16 17:41         ` hiro
2009-04-16 17:50           ` Devon H. O'Dell
2009-04-16 18:19             ` Pietro Gagliardi
2009-04-16 18:51             ` erik quanstrom
2009-04-17 19:46               ` Tom Lieber
2009-04-16 17:58         ` Jack Johnson
2009-04-17 11:54     ` [9fans] web server maht
2009-04-17 12:02       ` Rudolf Sykora
2009-04-26 21:59       ` Roman V. Shaposhnik
2009-04-27 11:16         ` Uriel
2009-04-27 17:35         ` maht
2009-04-27 17:53           ` erik quanstrom
2009-04-28 18:36             ` maht
2009-04-17 12:31   ` Uriel
2009-04-17 12:45     ` Rudolf Sykora
2009-04-17 12:51       ` Devon H. O'Dell
2009-04-17 13:53       ` maht
2009-04-17 14:07         ` Rudolf Sykora
2009-04-18 22:16       ` Uriel
2009-04-18 22:31         ` john
2009-04-18 23:00           ` Uriel
2009-04-19  0:59             ` john
2009-04-19  6:57               ` Steve Simon
2009-04-19 11:52                 ` erik quanstrom
2009-04-19 13:10                   ` john
2009-04-19 13:38                     ` erik quanstrom
2009-04-19 16:02                     ` Skip Tavakkolian
2009-04-19 17:05                       ` erik quanstrom
2009-04-19 22:02                         ` Federico G. Benavento
2009-04-19 23:21                           ` erik quanstrom
2009-04-20  0:05                             ` Federico G. Benavento
2009-04-20  1:42                             ` Skip Tavakkolian
2009-04-20  2:04                               ` erik quanstrom
2009-04-20 16:17                           ` maht
2009-04-17 13:22     ` erik quanstrom
2009-04-18 22:13       ` Uriel [this message]
2009-04-18 22:27         ` erik quanstrom
2009-04-18 22:56           ` Uriel
2009-04-19  0:45             ` erik quanstrom
2009-04-26 22:08         ` Roman V. Shaposhnik
2009-04-26 22:34           ` hiro
2009-04-27 12:03           ` erik quanstrom
  -- strict thread matches above, loose matches on Subject: below --
2000-12-18 12:08 [9fans] Web Server forsyth
2000-12-18 10:02 thedesertfox95

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5d375e920904181513v680abdd0x15991abd87e89843@mail.gmail.com \
    --to=uriel99@gmail.com \
    --cc=9fans@9fans.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).