The State of SQL Education

Posted by dave on July 16, 2013 Opinion, Data Analytics

Data science, once a task only for engineers, is popping up in a large variety of jobs. Marketing, sales and product teams are becoming more and more data driven, meaning that there are not just more people, but whole new groups of people that need to know their way around a database.

The Business Intelligence community should be coming to the great aid of this market, but are instead confusing them more and more with catch-all buzzwords, warehouses, and ‘big’ data fear mongering. They’re making a killing by selling magic beans to the uninformed.

A good data analysis tool, however, doesn’t move you further from your data with a magic solution. It doesn’t reformat the schema, give you a new query language or hide the language completely. It works with you and your data to compliment your analysis, not complicate it. That usually means it works with SQL.

The BI community needs to stop selling magic, and start educating. Quite simply the majority of problems in data analysis could be solved by more people sitting down for just a single day and learning the basics of SQL. Udemy had their whole marketing department learn SQL to great success.

I learned SQL, and it’s been one of the greatest skills I could have ever acquired as a marketing / business guy at a startup.

Unfortunately Udemy is a rare example.

So why is this new group going after magic tools rather than digging down and learning SQL? A big part of that is the lack of good tutorials, specifically those targeted toward these new groups. SQL syntax really hasn’t changed much in the past few years and the tutorials out there haven’t either. They’re really ugly and offer little explanation. They’re very much focused toward the engineering culture.

What is needed is a SQL tutorial with no setup, an interactive SQL shell, plenty of examples, and explanations targeted at this new group of non-engineers getting into data analysis.

In the mean time, these are the 3 tutorials I’ve found with the most promise. They each have their plusses and minuses but should get the job done for a determined individual.

1. Udemy’s MySQL Database For Beginners

This is a free online class that has 21 video lectures based on MySQL. I’ve watched a few of them and they seem pretty well targeted to a non-engineering audience. Unfortunately they kind of skip over the setup for this one so you’ll need access to a database that’s already set up for you to get going.

2. Zed Shaw’s Learn SQL The Hard Way

This isn’t a complete tutorial, and is the most engineering focused one listed, but as Zed says it will teach you 80% of what you need to know about SQL and even gives you several examples. It has you use SQLite3, a really lightweight database to setup which eliminates most of the annoying installation and setup steps required for some of the other DBs.

3. W3Schools SQL Tutorial

This one is fairly old looking, and supported by ads, but it does have working examples that you can play with on their website. Underneath each example click “Try it yourself”which brings you to a nice SQL interface for trying SQL out. It is probably the easiest tutorial to get started learning with as there’s no setup.

If you write this non-engineering focused SQL tutorial or know of one that exists please let us know!