SQLWindows (later Centura Team Developer, later dead) was a fourth-generation programming language and IDE from Gupta Technologies that was designed for building database-connected Windows applications with forms, reports, and SQL queries. It was a 4GL — a rapid application development tool for the database-centric business applications of the early 1990s, the kind of software where a form connects to an Oracle table and the user enters data and the data gets saved and the cycle repeats.
riclib, in his early twenties, used SQLWindows as a general-purpose programming language. Including for the first website of the Portuguese National Archives.
This is the software engineering equivalent of using a forklift as a daily commuter vehicle. It was not designed for this. It should not work for this. And yet the forklift got him to work every day, and the National Archives got their website, and SQLWindows never knew it was being abused.
“The tool was there. The task was there. The developer was twenty-three. The question ‘is this the right tool?’ had not yet been invented.”
— The Lizard, who uses the tool that is available
The National Archives
The first website for the Portuguese National Archives — Arquivo Nacional da Torre do Tombo — was built in SQLWindows. Not in Perl. Not in C. Not in whatever early web framework existed in the mid-1990s. In SQLWindows, a Windows database tool, generating HTML and serving it to Netscape Navigator because the developer knew SQLWindows and the deadline was real and the website needed to exist.
The fact that this worked says less about SQLWindows and more about the nature of software in the mid-1990s: the web was young enough that anything that could produce HTML and respond to HTTP requests could be a web server, and SQLWindows could produce strings and SQLWindows could talk to databases and if you squinted hard enough, those two capabilities were sufficient.
riclib built it because SQLWindows was the tool he knew. This is the honest truth of most technology decisions in the early career: you use the tool you know, not the tool that is correct, because the tool you know ships and the tool that is correct requires learning and the deadline does not care about your architectural opinions.
The Language
SQLWindows had an outline-based code structure — not braces, not BEGIN/END, but an indented tree that was simultaneously the code and the IDE’s display. You wrote code by expanding and collapsing outline nodes. Classes were outline headings. Methods were sub-headings. Code lines were leaf nodes. The entire program was a hierarchical outline that the IDE rendered as a collapsible tree.
This was either innovative or horrifying, depending on whether you had used anything else. For riclib, who came from Z80 assembly and Pascal, the outline was a curiosity — a different way of organising code that worked well enough for the database forms SQLWindows was designed for and became increasingly strange as the code it contained diverged from database forms toward web servers.
SQLWindows no longer exists in any meaningful sense. It lives in the memory of developers who used it, in the archived websites it somehow produced, and in the CVs of programmers who include it and watch recruiters’ faces as they try to determine whether “SQLWindows” is a real technology or a typo.
Measured Characteristics
- Developer: Gupta Technologies (later Centura Software, later acquired, later forgotten)
- Era: late 1980s to mid-1990s
- Purpose: database-connected Windows forms (4GL)
- riclib’s use: general-purpose programming, including web development
- Most notable project: first website for the Portuguese National Archives (Torre do Tombo)
- Appropriate tool for that project: no
- Shipped: yes
- Code structure: outline-based (tree hierarchy, not text files)
- Modern recognition: zero (recruiters do not believe it exists)
- Successor in riclib’s career: Delphi (love at first sight, a proper tool)
- Legacy: proof that a determined developer with a deadline and the wrong tool will ship before a hesitant developer with the right tool and no deadline
See Also
- Delphi — The tool that was right. Love at first sight, after the SQLWindows years.
- Java — The other language of the era. riclib arrived at Java later, when it was still fun.
- Boring Technology — SQLWindows was not boring technology. SQLWindows was desperate technology. But it shipped.
