That never happened. SQL is hard to master, but it’s the easy part of understanding the relational model and any particular schema. Instead Oracle and the other RDBMSs that followed created more jobs for programmers and database analysts and admins.
From my point of view, it totally did happen? Can you imagine how many programmers the company would've needed to get all the data a business analyst casually queries per day?
What you're looking at is the quantity of people actually employed in the industry, not how many SQL made obsolete. The industry just grew so much that it didn't become an issue.
With more flexibility in the database companies could collect, store, and use more data. And that data had to get into the DBMS somehow: more code.
Setting up and managing databases required DBAs, a role often filled by programmers in smaller companies, and still filled by programmers today. And only larger companies had business analysts. In smaller companies programmers or maybe technically-proficient managers did that work.
Anyone who had devoted their career solely to building bespoke database systems had to pivot or walk in the late ‘80s, but very few programmers only did that — it was part of the larger application development. If you were good enough to write robust database code pre-Oracle you had plenty of options.
In the ‘80s when RDBMSs started to take over I worked in enterprise logistics. Oracle created jobs at the places I worked, and no programmers had to leave because we got a better tool.
I’ve worked in large and small organizations for 40+ years. I’ve never worked with a manager or analyst who could write SQL more complex than “SELECT * FROM orders WHERE total > 10000.” In sure they exist, but not in threatening numbers.
Maybe ChatGPT will get good at designing relational database schemas, who knows?
Give what even pessimistic AI alignment people are saying, I think you're correct that there are a few more repeats possible before AGI.
(Whether the pessimists are correct that all of them will happen before the 30s, I cannot say).
I think a lot of smaller companies would struggle if that was still a requirement, but if relational/SQL had not come along we’d have something else like it.
Indeed SQL was not the only local maxima we could have gone for, but the point is that having an easy to use database with a powerful query language did not reduce the number of jobs, but instead increased it. Instead of a few companies hiring a lot of developers, we have a lot of companies hiring a few. The latter will usually mean more jobs.
Not really. There were a ton of ISVs competing with Oracle and pretty much every mainframe and minicomputer maker also had their own database products, many of them non-SQL.
All commercial databases pre-Oracle were non-SQL. Watching that history get rediscovered and pushed as an improvement by people mostly too young to know better — so-called NoSQL databases — brings to mind Alan Kay’s quip about the software industry constantly reinventing the flat tire.
The hash-based Pick OS/database came out before Oracle but only ran on a few computers from Microdata and later Pr1me and Honeywell. Pick-based systems remained popular into the early 2000s in some sectors. A friend of mine still works on one, for a state government agency.
You could construct a database management system from the ISAM-based libraries for COBOL or Fortran, but I wouldn’t call those database management systems comparable to Oracle. Mostly they didn’t have a query language per se — you had to write code to get anything in or out. And they ran as part of the application process, not as a separate server dedicated to running the database engine.
* language syntax
* the relational model (relatively easy? It is just "there"?)
* database schema, where I have 3 000 tables, or 50 0000 tables (that's how ERPs are made)
* actualy knowing how to use the language
* building those queries that join columns from 15 different tables together to deliver the needed data -> it sounds easy, but Im struggling to do it better/faster - I never saw a book or website that focuses on that (multiple joins from multiple tables), when it feels my work is is mostly that
* understanding what is needed
* actual "programming" problems (say: you have 100k items on stock, those are parts of BOMs, make a list of 'where used'... yes I know you can google it and try to copy from stockoverflow)
Seriously, I am trying now how to learn how to setup a simple DB to consolidate data (20 csv files on a shareddrive) and the guides are often like in the 'how to draw an owl' meme...
Controlling/reporting/analyst jobs feel in some way as "programmer" but without tools/training/salary - just figuring stuff on your own. Im doing it, but apart from that SQLzoo website I didnt manage to find any decent guide for the 'usual' problems. Also since those are like 10% of my work I cant focus on those problems properly - and try to learn it after work.
Also SQLzoo is a lot like the "how to draw the owl" meme.. the easy tasks are easy, the hard ones are impossible and there are no medium tasks. There also dont seem to ne any real life examples like those tasks like: 'join 15 tables to make some report'.
* Rewriting queries and also parts of the schema when it turns out the things that made sense in the design phase cause massive bottlenecks once you get more data, or just get it faster, than you tested with.
Of course the good news is now you can run the best RDBMS's on your laptop, or on a $5/mo VPS; or have a small managed one starting at <= $15/mo. Plus ChatGPT can help you remember how to do that inside join. ;-)
You can reach me at nominallyanonymous-at-protonmail-dot-com. From there I’ll give you my “durable” contact info - Slack, Discord, SMS, Signal, Telegram… whatever you use regularly, basically.
I recommend Chris (C.J.) Date’s books.
On a side note, if you have to join 15 tables for a report it is a sign you may go in the wrong direction. In 99% of the cases I never needed more than 5-6 tables if the data is well structured, but that takes years to learn.
I don't know of any modern environment that functions like that, on any platform.
I'm posting this to invite others to either a) correct me and tell me I'm wrong that tooling doesn't matter (a legitimate view, but wrong), and/or b) recommend some modern, OSS Access-like tools that might help flatten the learning curve for you. (And if you're more comfortable with a CLI and a REPL already, then you don't even need this hypothetical tool, but I myself am curious about it.)
EDIT: looks like LibreOffice Base is pretty close to MS Access circa 1997.
But there are good reasons where you don’t want random people running sql queries on production database or having direct access to the data.
https://www.zdnet.com/article/excel-errors-microsofts-spread...
I have seen this multiple times. Got called into a corp. audit once because CFO's spreadsheet didn't match reports from database. His SUM() function was missing some rows, ZIP Codes got converted to scientific notation and he didn't know why, that kind of thing.
If you get experienced db guy to do excel I bet he will do it correctly.
If you get “data jockey”, whatever tool he gets it will be a mess.
Getting basic queries or basic calculations in spreadsheet a person can learn in couple hours.
Somewhere after that comes zone "proficient enough to shoot himself in the foot".
Then there is level of excel or SQL where without months of experience you simply don't know what is happening.
What it didn’t do was reduce the need for programmers, because the new SQL users always wanted more data to answer more complex questions.
IA is the new Excel.
The funny/sad part about computer science is that people don't want to understand the costs of customization and sales/management/marketing forever want it as a differentiator.
SQL could have eliminated us from the flow of many niches as easily as the spreadsheet did from business operations. I think why it didn't has more to do with market timing.
It’s just that, with more powerful tools we can create more advanced and intricate things, so it never ends…
I not exactly welcome but rather anticipate, a near future were instead of reinventing every kind of pattern and library in terms of cloud and infrastructure management, we will see the same meta-management of different AI engines and services…
Even funnier - we've already lived through the great 'software development adoption' by business and hardly noticed, except some of us got work out of it. A lot of small businesses (legal practices and accountancies were particular suspects) grabbed MS Access with both hands and went wild in the 90s/early 2000s. Timesheets and other HR functions were popular applications.
SQL was a typical failure in this regard. It was seen as a savior but at the same time was designed for at least math-versed people. The prediction was right, its scope was wrong. Since then we failed many times and as I see it, we tend to diverge from this idea more and more. And the reason is there’s no one controlling our stacks vertically, so it takes more jobs than it could to make an app.
With SQL you need none of those.
It might sound really crazy and stupid today, but when SQL came out, it's advertised as one of "program-generating" languages and was supposed to reduce the need to code.
https://en.wikipedia.org/wiki/Fourth-generation_programming_...
(I mean, in some sense it's true because it's much less code than writing our own database...)