Re: pro- foreign key propaganda?

From: Marshall <>
Date: Fri, 16 May 2008 07:52:33 -0700 (PDT)
Message-ID: <>

On May 16, 6:04 am, "sinister" <sinis..._at_nospam.invalid> wrote:
> I have other duties (scientific,
> non-IT), so my boss didn't want me spending that much time on this in the
> long run. I warned him that if we hired someone new, he'd want to discard
> my work and do his own.

When I was a green programmer myself, I pretty much believed that there
was no problem so small nor codebase so large that it couldn't best be handled by throwing out the previous guy's work and building it fresh myself.

As a seasoned programmer, I now consider doing that to be a near-100% predictor of disaster.

> I've noticed that my attitude is pretty different from his, and
> from what I see on the web (e.g. learning about the CMS): mine is (a) "keep
> it simple, stupid," and (b) validity and efficiency of design are far more
> important than appearance (of the interface). Looking at his work and the
> stuff you see on the web, seems like a lot of programmers---well, at least
> web programmers---don't agree with that.

<heavy sigh.>


> The mere fact that so many web hosting companies provide MySQL rather than
> postgresql shows me that someone is wrong out there---if web designers using
> RDMS's really knew what they're doing, they'd demand access to postgres.
> They'd also never leave foreign keys out of their designs, too, I guess.

You know about "Worse is Better?"

> I think MySQL is nominally a lot better than it was before because now you
> have InnoDB. I wouldn't trust MySQL, however, because the people who
> started the project at the beginning clearly had no understanding about
> RDMS's.

If you stick to pure InnoDB, MySQL can be made to not suck very much at all. But yeah, it's no postgress no matter how much lipstick you put on the pig.

> I agree...that's why I do think the backend should be the primary focus.
> When I was doing the main coding, it amazed me that most of the labor (> 85%
> I estimate) went into the frontend (PHP coding), yet the backend provided so
> much power. And while naive users can't do much of anything using simple
> client access to the backend---I have a hard enough time teaching them
> simple Linux commands---I could do anything I wanted to, very easily

Ouch. This comes up a lot. (About once a year we have a big flamefest with comp.object, where many of the frontend coders get to have their say about this.) There's this problem that comes when the programmers who understand application code well and who don't understand data management at all are put in charge of overall application architecture.
Naturally they want to do everything in application code, because it's what they understand.

Marshall Received on Fri May 16 2008 - 16:52:33 CEST

Original text of this message