[ic] Re: [mv] *** Interchange 4.6 & PgSQL Difficulties ***

Mike Heins mikeh@minivend.com
Sat, 2 Dec 2000 18:14:21 -0500

(I haven't pontificated for a while, and this seems like a good opportunity. )

Quoting Dan (db@list.dnsalias.net):
> Mike, if Enhydra/Zope were already mature when minivend started (another
> alternate universe question), would you have gone with a app framework or
> would you still have started your own framework, tag language, and parser?

Possibly, but still unlikely. At one point early on I looked at PHP,
which sort of fits in that realm, but it became obvious that building
modules for it was too difficult to do. It was easy with Perl. And PHP
seemed to require SQL for anything resembling a large catalog, which
would mean tying the program to one particular database. Also, I was
a novice programmer at the time and could barely write Perl code that
passed syntax checks. 8-)

The environment 5 years ago:  Msql.pm was the state of the
art in database modules for Perl, most Oracle shops still used Perl 4
and oraperl,  no one had heard of MySQL, Postgres was so slow and buggy
as to be unusable, and DBI was in a pre-alpha state.

The environment today is different, and there are some advantages to
the web environments. I am jealous of the tree-structed file-system-like
object manager of Zope, for instance. But can you do the things you need
to do and still get at the speed? Most anything hangs together with a
few hundred items. I will check Zope out a bit better, because it seems
to be about as fast as Interchange and even a bit more ambitious. I notice
it doesn't hit the CPU any less than Interchange as I run it on my
workstation. 8-)

I don't know the answer as to whether it would make sense to base things
on Zope or Enhydra, but I do know this; if you could do it easily with
web application environments then there would be some top-class shops out
there based on them by now. The ones for Zope seem to be little better
than writing your own. I hear PHPshop and FishCart are doing a good job,
but I am not sure they are in the same problem space as Interchange. Both
are tied to one or two particular databases, which fits some people but
certainly not everyone.

On another note, I still have yet to find anything which handles flat
file databases with anywhere near the speed of Interchange -- they all
pull the file apart and put it back together every time. If anyone has
any pointers to something which does this well and handles 50,000 records
or more *fast*, I would like to see them.

Nothing sells like speed, IMHO. If your shoppers are waiting perceptibly
at every click, you are losing business.

The other problem with any of web development environments is getting
access at a low enough level. When you start to *really* look under
the hood of some of those things, you will find an awful lot of gotchas
unless you tie yourself to one particular database. Which is why IC is
the only true database-independent shop out there (that I know of).

In fact, I can't think of any application at all which hooks to as many
different database types without tweaking the core code. If I am proud
of anything in Interchange, I am proud of that. 8-)

Akopia, Inc., 131 Willow Lane, Floor 2, Oxford, OH  45056
phone +1.513.523.7621 fax 7501 <heins@akopia.com>

Be patient. God isn't finished with me yet.  -- unknown