Subject RE: [IBO] TDataSet vs. Native
Author Claudio Valderrama C.
> -----Original Message-----
> From: Christian Kaas [mailto:christian@...]
> Sent: Sábado 6 de Enero de 2001 19:06
>
> Absolutely right - as long as your product/app. stays on interbase/IBO
> only - what if you plan to port it - let'say - Oracle or any other RDBMS
> than Interbase!?

Very easy: if you are out of IB, you don't have to bother on comparing IBX,
FIB, FIBPLUS and IBO. All are IB-specific, so you should "enjoy" the generic
solution instead, be it ADO, BDE or ODBC (there's a product called
ODBCExpress, right?).


> So you will get stuck with Tdataset and 3rd Party controls - i formyself
> prefer Infopower just because i've grown with them since 1.0 :-)

[Warning: possibly off-topic.]
This assumes that your client or your boss won't like IB or that IB won't
be able to manage the load and features you need. Of course, portability is
not the major concern, since MsSql is constrained to Windows and IB runs in
several platforms... maybe one day it will run again in 18 platforms,
although some or several of those are dead now.
In the past, there were two standards competing for market acceptance: ODBC
(Open DB Connectivity) and ODAPI (Open DB API). Everybody knows that ODBC
won. The focus of ODAPI was to provide an uniform view of both desktop &
local dbs and remote or C/S engines. Of course, for doing this, you should
flatten the special possibilities of each engine to create a model that
handles the average capabilities. Also, ODAPI could (and can) talk to ODBC
if the need arises. There was a couple of companies backing ODAPI and
Borland was the main proponent. It evolved into the IDAPI (Independent DB
API) and finally appeared as BDE. There are several funny names for the
B.D.E. abbrev in the NGs (one of them being scatological, maybe for the pain
the developer had with it). Borland could have based D1 on abstractions of
ODBC, but at that time they liked to play David v/s Goliath so they
continued pushing the BDE as hard as they could. (When I saw how some of my
classmates worked with VB to use DBs and read errors that resembled "Run
time error NNN: today is Bill Gates's birthday", I decided that the incoming
D1 was worth the wait instead of learning VB.) Making the BDE part of Delphi
seemed like an assured long life. Not indeed: early reviews by independent
Delphi magazines showed that a percentage of developers didn't want the BDE.
At the time of D2, several facilities had been devised and some of them were
sold as a replacement of the BDE-centric controls, from scratch, since there
was not way to plug into the hierarchy. Borland paid attention to the
disgruntled customers and virtualized TDataset in D3.
However, virtualizing the hierarchy is not the full story. If Jason was
going to base full IBO-controls on such hierarchy, he would have to make
contorsions to make all dataset-centric properties fit into the dataset
model, assuming all is possible. Shifting paradigms is not as easy if you
use the same abstract hierarchy. Now that the BDE seems to be phased out in
favor of DbDirect with its fat drivers (so in theory at least, you can
surface more special features of each engine, I guess), I'm not sure if the
virtual TDataset will experiment changes.
Having IBO native controls to be independent of the Delphi hierarchy has
its good and bad consequences, as everything has when one needs to take a
decision. You are isolated from changes in TDataset (if they are made) and
you don't need it but you can't take advantage of some useful plug-in or
facility that's added or interfaced at this level. I think that's really
futile to enter into a great discussion about what hierarchy is better.
Jason has to support IB/FB so he can focus on this engine's features.
Borland has to support several engines so they must make things work in a
generic way. Former CEO Del Yocam (regarded as "Pizza boy") said that
Borland was not a DB company. I wonder why then they wasted effort on
JDataStore and finally retained IB, but that's another tale.
In the past, I was concerned about Borland putting IB in their museum,
together with old Turbo Pascal versions. My fears turned into nightmare on
14-Dec-1999, when Bill Karwin, Paul Ostiguy and Paul Beach resigned, Marco
Romagnini (if I remember well his name) and Reed Mideke did the same some
days later and Mark Duquette was reassigned to the Windows development
group, etc. Word leaked on 17-Dec and until January there was no formal
assurance that it wouldn't be killed. In February, things were better and in
March there were a couple of vendors interested in updating their products
to support IB6, including Embarcadero and its ER/Studio CASE product that's
stuck at IB4. As time passed, investors and companies marched away and the
landscape was turning dark. The original "unbuildable" source code released
and the ISC failure in July were very unpleasant, but at least Borland
posted several of the missing pieces in the following weeks. Now, I think
that's almost impossible for Borland to pull back the engine and stop the
open source license, because it would be a huge PR disaster and that company
doesn't need more bad PR, unless its top execs are indeed ready for the
madhouse. Hence, I think either InterBase® or Firebird will be with us for
the foreseeable future. I would like to know if Oracle Corp. would risk to
open source its main product, too. ;-)

C.