Hacker News new | comments | show | ask | jobs | submit login

As someone who started learning databases with NoSQL (mongodb), the familiar syntax (JavaScript) made learning higher order concepts much easier. SQL throws a ton of syntax at you that's only really useful in SQL, and personally put me off learning backend development.

Having something that is "only useful in SQL" really sells it quite short.

SQL is the bread and butter of the data storage world, since it is compatible with more DBMS systems than anything else.

For every mongoDB deployment out there, there will be thousands of Oracle/MSSQL/MySQL/etc databases running critical business functions working with both off the shelf and custom software in everything from family businesses to FTSE 100s.

Besides, SQL is not a fully turing complete language which actually makes it easier to reason about and to evaluate. Not to mention the amount of study it has had (COD NF etc) over the years.

You can do a lot with a Database by understanding a subset of syntax; SELECT , UPDATE , INSERT, DELETE , INNER JOIN , OUTER (LEFT|RIGHT) JOIN.

While you are correct, I still think NoSQL is a better introduction to databases than SQL. Without the syntax learning curve you can quickly interact with a database and get a feel for how it works for the first time. Once you get a hang of the broad db concepts, it could of course make sense to learn SQL given the reasons you've presented.

OTOH, if you're in a mode of operation where you're interacting with data directly with any regularity, SQL syntax is a massive improvement over MongoDB's JS DSL.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | DMCA | Apply to YC | Contact