[HN Gopher] Exploring Borland DBase IV for DOS (2020)
       ___________________________________________________________________
        
       Exploring Borland DBase IV for DOS (2020)
        
       Author : elvis70
       Score  : 36 points
       Date   : 2021-03-04 15:06 UTC (7 hours ago)
        
 (HTM) web link (psychocod3r.wordpress.com)
 (TXT) w3m dump (psychocod3r.wordpress.com)
        
       | Zenst wrote:
       | Fun times and all in an era without raid storage, though the
       | likes of Novell Netware soon did well addressing that in the
       | years that followed.
       | 
       | I didn't do much DBase work in that time, but did do Dataease
       | https://en.wikipedia.org/wiki/DataEase (if you get an old copy
       | hold down the CTRL key and type DEBUG and you will get a hidden
       | debug mode, might also need to hold shift and do not recall if
       | debug was upper or lower case but one or the other will work in
       | the old DOS versions at least).
       | 
       | Which was pretty powerful stuff and was used for bespoke
       | construction projects - what would be the realm of ERP in many
       | ways. But large projects like the construction of oil-rigs was
       | not isolated and few large engineering projects would be using
       | your DBase, Dataease and Paradox! as well as few that I do not
       | recall at the moment.
       | 
       | Was not long after that we saw SQL start to take some traction in
       | usage and availability. Which was also around the time that the
       | GUI war (however brief the GEM/Windows and then Windows/ OS/2
       | was) and saw many of those legacy databases fall upon those
       | swords over the comming decade and early 90's release of Access
       | sure did cat those who was left, combined with some aggressive
       | office bundles and that included later their server system with
       | backoffice - all priced together for the price of a competitions
       | single package offering and that further hammered many of the
       | competition that come the end of the 90's - many just hang on to
       | stalwart legacy customers and for some, that help for a while.
        
         | kcartlidge wrote:
         | I still use DataEase v4 for DOS (no interest in the Windows
         | versions). For rapid development of databases, with forms and
         | reporting, nothing current beats it for speed and flexibility
         | (if you have the familiarity of course).
        
       | tyingq wrote:
       | That progressions of screens is remarkably similar to what you
       | see today with things like Quickbase, Zoho Creator, Knack.com,
       | Ragic.com, etc.
        
         | dspillett wrote:
         | A lot of low-code solutions aimed at collecting and reporting
         | on data are based on streamlined versions of the workflows from
         | old-world DBs like this (and, later, Access): Define your data,
         | define how it is joined for reports, drag-and-drop form/table
         | designers of varying complexity for data entry. So the UI is
         | likely to feel similar unless/until someone comes up with a
         | genuinely new paradigm for this sort of thing. Some are a bit
         | more spreadsheet+transformation based, but that is the "define
         | data & connections" part and once you add custom forms for
         | easier data entry you are essentially back to the same place
         | just maybe hiding the table structure less.
        
       | GnarfGnarf wrote:
       | I was actually still using Sequiter CodeBase
       | (dBase/FoxPro/Clipper) until last year, when I upgraded to 64-bit
       | and couldn't compile the CodeBase source. There were 64-bit flags
       | in the code, but it failed to work. Switched to SQLite, should
       | have done years ago.
        
       | squarefoot wrote:
       | Brought back some good memories of my old days writing Clipper
       | software. Performance was fast, I mean really fast, even on plain
       | 486 PC hardware. I still have some sources around, although I
       | made use of external libraries iirc for .nsx indexes and other
       | things and they wouldn't compile with some free Clipper clones.
        
       | airhead969 wrote:
       | Interesting. Maybe take a look at R:BASE too. It was the first
       | relational database for the PC. dBASE wasn't very relational
       | (didn't emphasize referential integrity) at first. MicroRIM also
       | took/takes pride in its code.
        
         | teilo wrote:
         | I entirely forgot about R:BASE. Thanks for the memories. I
         | worked in it only briefly, as a teenager. My uncle, an early PC
         | adopter, introduced me to it.
        
         | ghaff wrote:
         | Relational databases were pretty new at the time of dBase II,
         | although at least IBM and Oracle had SQL-based products. There
         | were a bunch of other databases in the market however.
        
           | airhead969 wrote:
           | IBM's System R came out in 1977, and DB/2 in 83.
           | 
           | R:BASE was the first RDBMS on the PC. Oracle existed in 1979
           | but was only ported to PC in 1984.
           | 
           | NonStop SQL in 1987 was revolutionary.
        
         | tyingq wrote:
         | Foxbase/FoxPro and Clipper also.
        
         | mamcx wrote:
         | "referential integrity" is not necessary to make something
         | relational.
         | 
         | Is just that for some reasons, everyone on the RDBMS/relational
         | space instantly add EVERYTHING that make a rdbms.
         | 
         | Is like adding transactions to OO... and if a OO implementation
         | don't have it claim is not OO.
         | 
         | P.D: I'm building a relational language... And also start with
         | FoxPro. What it not have at the time was well rounded SQL
         | support but is until this day MUCH better rdbms tool than any
         | other on the market, by a mile (considering the difference on
         | time and scope, btw)
        
           | airhead969 wrote:
           | Never said that. And I'm having difficulty following what
           | point you're trying to make because there's little coherence
           | or grammar to your writing.
           | 
           | Referential integrity is a real DBMS term, so I don't know
           | why you're poo-pooing it. It means never having dangling
           | foreign key references.
           | 
           | The drop or preserve semantics of RI are dependent on R-E
           | DBMS design (foreign keys). RI is fundamental to data
           | hygiene, unless you'd prefer customers have a huge mess and
           | then blame you for it.
           | 
           | FoxPro is/was based on dBASE II/III. R:BASE predates it by 3
           | years.
           | 
           | Good luck to you!
        
       | malkia wrote:
       | Last year of mathematical high-school (Bulgaria, 1993-94) I had
       | assignment for dBase. I hated it, but I was rebel back then :)
        
       | lsllc wrote:
       | Ah the good times when you could build a functioning business
       | application in a day or two or three.
       | 
       | Now it takes 2 weeks to evaluate the latest UI frameworks only to
       | find the one you chose (or it's tooling) is obsolete before you
       | finish the project:
       | 
       | https://hackernoon.com/how-it-feels-to-learn-javascript-in-2...
       | (from 2016).
        
         | bborud wrote:
         | I was thinking the same thing. In fact, I've been thinking
         | along these lines for a while now. It would be cool if someone
         | were to revisit the idea and re-create it in a modern form.
         | 
         | Modern, but without all the nonsense we waste time on today.
        
       | G3rn0ti wrote:
       | I'd love to see it used as a DB backend for a small website. :-D
        
       | nybblesio wrote:
       | dBASE was a product of Ashton-Tate, not Borland. [1] Odd sidebar:
       | Ashton-Tate had a BBS accessible via a toll-free (800) number for
       | many years and it was extremely popular. I shudder at the thought
       | of their monthly phone bill.
       | 
       | I built several systems using dBASE III and Clipper. Ah, the
       | Summer of 87. [2]
       | 
       | I know I'm old and washed up when I wish I could time travel back
       | to this era. I miss it.
       | 
       | [1] https://en.wikipedia.org/wiki/Ashton-Tate
       | 
       | [2] https://en.wikipedia.org/wiki/Clipper_(programming_language)
        
         | tibbydudeza wrote:
         | When a program could be written and be useable within hours.
         | 
         | Now it takes me days to install VM's and butchered/forked SDK's
         | and cloud connectors and incant the various sacred undocumented
         | mantras before I can actually open VSCode and start coding.
        
       | bitwize wrote:
       | Library terminals! I remember the public library in my hometown
       | had both an InfoTrac PC (with CD-ROM, in the 80s!) with a
       | horribly burned-in amber monitor, and actual green screen
       | terminals connected to some beast in the basement or someplace
       | (VAX?) to search the card catalog.
        
         | bombcar wrote:
         | I remember that half the searches at the main library would
         | refer you to the microfiche (for some reason they'd know which
         | one to look at but wouldn't have the data).
        
       | ghshephard wrote:
       | dBase IV tanked the dBase Line. dBase III+ was an amazing product
       | - that everyone used, was super reliable - I made a ton[1] of
       | money in college writing up, teaching dBase III+ systems (Along
       | with with FoxBase PRO).
       | 
       | When dBase IV came out (From Ashton Tate, Not Borland) it was
       | buggy, and much of the stuff in the user manual literally did not
       | work. I was super excited about the SQL support in dBase IV -
       | until after an entire evening of trying to get it to work I
       | realized they had shipped non-functional code. Not buggy - it
       | just didn't actually work as documented. Ended the company. (They
       | came up with massive patches years later - but it was too late -
       | people had moved on).
       | 
       | I would _love_ to read a story on how they decided to ship a
       | product that was essentially still 12-18 months from being
       | completed. I 'm guessing (?) they were about to run out of cash -
       | and selling something, even if it didn't work, kept the lights
       | on? Hard to believe given how dominant dBase III+ was back then.
       | 
       | [1] Where, by ton, I mean many, many hundreds of dollars. Which
       | felt like a lot of money back then.
        
         | toddh wrote:
         | Loved FoxBase PRO. In college I traded a gym membership for
         | foxbase programming. I sometimes wonder that we haven't
         | progressed much at all from those days.
        
           | protomyth wrote:
           | First real job and all I had was Foxbase Pro, Turbo C 2.01,
           | and a PostScript printer. It made for some interesting
           | programing and data display.
        
         | tibbydudeza wrote:
         | Dbase IV biggest issue was that it supported the SQL syntax for
         | the first time and it's implementation was just buggy and
         | FoxPro just worked better.
        
       | mixmastamyk wrote:
       | Neat, this was the first db I was exposed to at school and didn't
       | touch another for years. Didn't know it could be so colorful, my
       | memory is of grey on black. CP 437 FTW though.
       | 
       | I thought the lang was a precursor of SQL, but people are saying
       | that's not the case. Might explain why I also didn't know SQL for
       | a long time.
        
         | ghaff wrote:
         | SQL dated back to work at IBM in the early 1970s but it didn't
         | actually find its way into products from IBM and Oracle for
         | almost another decade. I can't say to what degree any of that
         | work influenced dBase. Certainly, the relational model wasn't
         | dominant at the time.
        
       | rbanffy wrote:
       | I'm not sure I'd go with the green terminal feel. By the time
       | dBase IV was released, VGA was becoming popular a lot of us moved
       | to color monitors. Even the monochrome ones were white, thanks to
       | the adoption of GUIs.
       | 
       | Last green-screen I used was on a CGA system. It was horrendous.
        
         | ghaff wrote:
         | You really only wanted CGA when you _had_ to do something
         | graphical. The nicest thing you could probably say was it was
         | better than nothing. For most purposes, it was better to just
         | use text monochrome. (There was monochrome graphics with
         | Hercules and some other proprietary variants but they were
         | never very widely supported.)
        
           | rbanffy wrote:
           | At least in Brazil, where I lived, CGA monitors were much
           | cheaper because they had high commonality with B&W TVs, CCTV
           | monitors, and the monitors that have been used with 8-bit
           | computers. Color RGBi monitors were not as common because
           | they required better CRTs than most TVs that size and decent
           | color monitors only started appearing when it became easier
           | to import them and their parts.
           | 
           | I'm not really fond on the MDA/EGA/VGA default fonts either
           | unless we are talking about the ones that came with the
           | Cordata or Toshiba portables ;-)
        
       | faichai wrote:
       | Something that popped into my head the other day, is that I think
       | we missed a trick going straight from text based UIs with their
       | uniform simplicity to rich, pixel-perfect GUIs.
       | 
       | Would be interesting to see a design system that somehow sits in-
       | between these two extremes. I've got no idea what that looks
       | like.
        
         | janekm wrote:
         | I experimented with building something like that (at the time)
         | as a potential graphical BBS interface with low bandwidth
         | requirements. Basically combination of sprite editor / "level
         | editor" to create graphical screens as a grid of entries into
         | the sprite table, the sprite set & graphical screens required
         | very little bandwidth.
        
         | buescher wrote:
         | Are you imagining something like the PLATO system?
         | https://en.wikipedia.org/wiki/PLATO_(computer_system)
        
           | faichai wrote:
           | Not quite. What I envision is something that has a broader
           | colour palette, say 256 colours. Themeable. Perhaps like
           | subpixels, there's some kind of sub-character addressing mode
           | to give more control aesthetics but not too much. And for
           | contiguous blocks some basic capability to support
           | proportional width text. Same with ability to fill blocks
           | with images.
           | 
           | I may have already gone too far with the proportional text.
        
       | monkey_monkey wrote:
       | I remember doing a project for my CS degree in DBase III, and in
       | my first job out of university I built a back office system for a
       | very large UK cinema chain in Clipper. Discovering Blinker was a
       | game changer, and Mike Schinkel's "Programming in Clipper 5" was
       | my bible.
       | 
       | The nostalgia is real.
        
         | jasim wrote:
         | Blink and you'll miss it !!
         | 
         | Oh the nostalgia. Linkers were exotic at the time. Before I
         | discovered Blinker, I got to use Exospace that was shipped with
         | Clipper 5.3. A lot of old goodies are still availabe at the The
         | Oasis mirror at https://harbour.github.io/the-
         | oasis/ftpgenrl.htm
        
       | pasc1878 wrote:
       | Borlands database was Paradox not dbase. Looks like borland was
       | picking up the pieces of failing PCDOS companies A better history
       | is on Wikipedia https://en.wikipedia.org/wiki/XBase
       | 
       | For dbase look at Nantucket Clipper and Fox Base (which MS
       | bought). They lasted into the Windows era. Also see the open
       | source harbour which round on unix
        
         | wenc wrote:
         | Borland acquired Paradox from Ansa. They later acquired Ashton
         | Tate which gave them dBASE.
         | 
         | For those who have used both, many consider Paradox the
         | superior product (technically and also in terms of ease of use,
         | hence the name "paradox"). It had innovations like QBE and a
         | modern Turbo Vision interface. The Paradox Application Language
         | (PAL) was a joy to write in. dBASE had name recognition but was
         | unwieldy in many ways.
         | 
         | Having two flagship database products unfortunately led to a
         | confused strategy and neither product thrived after the
         | acquisition.
        
         | teilo wrote:
         | Borland bought Aston-Tate in 1991, and thereafter owned dBase.
         | 
         | Borland also developed Paradox prior to that acquisition.
         | 
         | Clipper and FoxBase were dBase clones, and not always
         | compatible.
         | 
         | I did a lot of Clipper programming in the 90s, and a lot of
         | reporting in MS Access. The dBase ODBC drivers could sometimes
         | be hit or miss when used with Clipper DBFs.
        
           | tibbydudeza wrote:
           | Borland bought Paradox (was developed by Ansana (???)) as a
           | me-too move when their biggest competitors Microsoft/Lotus
           | was moving into databases.
        
             | wenc wrote:
             | I don't remember this history -- Borland bought Ansa
             | Paradox in 1987.
             | 
             | Microsoft had no desktop database product then. It bought
             | FoxPro in 1992 and Access was released in 1992.
             | 
             | Lotus also had no desktop database product then. Lotus
             | bought Approach in 1994.
             | 
             | The dominant desktop database products of the time were
             | dBASE/xBASE (Clipper, FoxPro etc.).
             | 
             | Which database products from MS/Lotus were you thinking of?
        
             | teilo wrote:
             | Borland had very little except "me too" products, TBH.
             | Pascal, C++, etc. But Delphi was a nice system, FWIW. Of
             | all the Borland products, this one had the longest shelf-
             | life, now still actively developed by Embarcadero.
        
               | wenc wrote:
               | I really don't agree and I don't think creating a product
               | in the same category is "me-too".
               | 
               | Borland had some truly great products back in the day.
               | Quattro Pro had innovations that surpassed the incumbent
               | 1-2-3's. Paradox had innovations that superseded dBASE.
               | Turbo Pascal was a popular product on its own merit (UCSD
               | Pascal, Quick/MS Pascal never caught on commercially).
               | Turbo C and Quick C were competitors, and many
               | applications back in the day used the Turbo Vision text
               | UI.
               | 
               | In the 1980s and early 90s, the marketplace was full of
               | competing office products before Microsoft Office came
               | around and dominated then scene (folks might remember
               | Lotus SmartSuite and Corel WordPerfect Office).
               | 
               | Spreadsheets weren't always synonymous Excel, nor word
               | processors with Word.
        
               | teilo wrote:
               | Dude, I used to use Visicalc.
        
               | wenc wrote:
               | Which should help you understand my perspective even
               | better. I don't agree that Borland "had very little
               | except "me too" products" just because another product in
               | the same category existed first. Lotus 1-2-3 was
               | essentially a clone of VisiCalc on the IBM PC but it was
               | also its own thing.
        
           | pjmlp wrote:
           | For DB applications, I got introduced to xBase via dBase III,
           | then moved into Clipper Summer '87, followed by Clipper 5.x
           | including doing OOP stuff in it.
           | 
           | And that was it, Visual Objects was a disappointment and I
           | eventually fully focused on C++/TPW based applications on
           | Windows 3.x.
        
             | teilo wrote:
             | And let's not forget Btrieve. Prior to my Clipper work, I
             | did a lot of work building an estimation and accounting
             | system based on Btrieve databases, using an obscure system
             | called TAS Professional. Evidently it still survives in
             | some incarnation: http://www.cassoftware.com/tas/manual/ind
             | ex.html?btrievesetu...
        
               | tibbydudeza wrote:
               | We used it under DOS for our backoffice system - you
               | talked to the "database" engine using an interrupt via
               | loaded as a TSR utility.
        
         | myth2018 wrote:
         | Harbour is really interesting and, last time I saw it some
         | years ago, its development was pretty active.
         | 
         | I have already messed around a bit with Harbour and even wrote
         | some small tools for personal use. I was pretty happy with the
         | combination of modern capabilities with the old-school "TUI
         | ergonomics", allowing one to render a TUI to a Win32 GDI
         | context (they give a name to that capability, which I can't
         | recall. It seems that there is also the possibility of
         | rendering to X11 windows, if I'm not mistaken).
         | 
         | I know a couple of decades-old Clipper shops which continued
         | their development with Harbour (although they migrated from DBF
         | files to relational databases), and their businesses are doing
         | fairly well.
        
         | CurtHagenlocher wrote:
         | FWIW, Paradox was also originally an acquisition by Borland,
         | from a company named "Ansa Software".
        
         | rbanffy wrote:
         | In the end Borland acquired what was left of Aston Tate, so I
         | guess it's fair to call it Borland now.
        
       | tibbydudeza wrote:
       | I started my coding career when I discovered you could compile
       | your Dbase III code (CRUD stuff) using the Clipper compiler into
       | a DOS executable.
       | 
       | Then Clarion was released with it's amazing app generator.
        
       | rbanffy wrote:
       | The tool that impressed me most back then was Dataflex version 2.
       | Version 3 felt very PC-centric and added some OOP ideas that
       | didn't feel right. It was trivially easy to quickly write a
       | screen layout and derive table structure from it. From there to a
       | full-function CRUD was more or less nothing.
       | 
       | I like to compare it to "Rails for the VT-100".
       | 
       | That and Mantis (not sure the version) on an IBM mainframe
       | (something like "Rails for the 3270")
        
       | CurtHagenlocher wrote:
       | Both dBase III and dBase IV predate the acquisition by Borland.
       | This kind of stuff is super easy to fact-check, so I'm always a
       | bit put off by pieces which make those kinds of factual errors.
        
         | ghaff wrote:
         | In fact, it was at least in part the screwed up introduction of
         | dBase IV that led to Borland's acquisition of Ashton-Tate.
        
         | akx wrote:
         | Yet the installer screenshots pretty clearly say Borland.
        
           | ghaff wrote:
           | Presumably Borland rebranded after they acquired Ashton-Tate.
        
           | CurtHagenlocher wrote:
           | As per the sibling comment, Borland acquired Ashton-Tate
           | after dBase IV 1.0 shipped in part because it was such a
           | disastrous release. I think 2.0 was the first Borland
           | release.
        
       | ghaff wrote:
       | "dBase was THE first commercially successful DBMS in computing
       | history"
       | 
       | Got to love people who think computing didn't exist before the
       | PC.
        
         | airhead969 wrote:
         | It just wasn't a strongly-relational one. Marketing! xD
        
           | rbanffy wrote:
           | Back then I refused to call it a database. It was more like a
           | data bundle or data bunch.
        
             | airhead969 wrote:
             | Pretty much. It was a queryable, flat file spreadsheet
             | verging on what we would call a NoSQL these days.
             | Referential disintegrity.
        
         | the-dude wrote:
         | Please name this first commercial succesful DBMS you are
         | thinking about then.
         | 
         | For me, only Oracle comes to mind.
        
           | ghaff wrote:
           | IBM IMS goes back to 1968 (originally developed for NASA).
           | Cincom's TOTAL was sometime around the early 1970s. I'm sure
           | there were databases on DEC's PDP systems. And so forth.
           | dBase II was an important early database product for CP/M and
           | then DOS systems but there were many earlier databases on
           | mainframes and minicomputers.
        
             | the-dude wrote:
             | Thanks for the follow-up.
             | 
             | > there were many earlier databases on mainframes and
             | minicomputers
             | 
             | We were talking about commercially successful DBMS. From
             | the Wikipedia-page it is still not clear to me when IMS
             | became a DBMS for example. Wikipedia lists TOTAL as
             | released in 1982.
        
               | ghaff wrote:
               | IMS was always a database. But it was hierarchical rather
               | than relational. I was thinking TOTAL was earlier than it
               | was though given the company had been in business for
               | quite a while.
               | 
               | What is true is that pretty much all the earlier database
               | products were tied to specific system hardware. In fact,
               | Cincom (which developed TOTAL over time) was arguably the
               | first independent software vendor. So there were lots of
               | databases being put out by successful computer companies
               | (indeed most of them). They just weren't products you
               | would buy or use unless you were also using a particular
               | manufacturer's hardware.
        
           | specialist wrote:
           | MicroRIM's R:Base had modest success, pre client/server. It
           | was always a true RDBMS. I had used R:Base for "real work"
           | and dBase (and kin) for flatfile type stuff.
           | 
           | https://en.wikipedia.org/wiki/R:Base
           | 
           | I've always wondered how Oracle swept the industry, and
           | R:Base did not. Probably multiple factors.
           | 
           | Like Oracle's initial customers had big iron and those
           | enterprise contracts are big money. Whereas R:Base was part
           | of the personal computer revolution and so probably wasn't
           | even considered.
           | 
           | In my mind, MS Access was the market fit successor. IIRC,
           | Access was the first "workgroup" (network file sharing vs
           | true client/server) RDBMS to make the jump to GUI. A bit like
           | Excel displaced Lotus 1-2-3.
           | 
           | Too bad. Much as I came to love Access, I also loved R:Base.
        
           | leeter wrote:
           | Not relational but IBMs Information Management System (IMS)
           | comes to mind.
           | 
           | https://en.wikipedia.org/wiki/IBM_Information_Management_Sys.
           | ..
           | 
           | dBase appears to be the first DBMS for minicomputers however.
        
             | ghaff wrote:
             | microcomputers. But, yes, that was probably the case. At
             | least the first one of any significance that I can recall.
        
       ___________________________________________________________________
       (page generated 2021-03-04 23:01 UTC)