Mastery

Craig Pears
SQL Confidence
Published in
2 min readOct 21, 2016

https://www.youtube.com/watch?v=-MTRxRO5SRA

Just watched an awesome video from Sal Khan that really encapsulates everything we believe in when it comes to education and user experience.

The Khan Academy has long been the inspiration for this project. It’s the only website that I really felt focused on delivering high quality education, whereas most of the programming educational websites I always felt focused more on giving people a sense of completion and achievement, at the expense of truly understanding what they were doing. The result of that in my mind was that they would get an over inflated sense of how much they had learned and under-estimate how long it really took to build those skills.

The best examples that stick in my head were two examples of interviewees I was told about somewhere that I worked.

They were given SQL questions. One comment I remember was being told that a candidate said “I prefer left joins over joins”. The second that I remember was someone that answered a simple question with a query incluing some UNION syntax.

In my experience the scenarios where you would use a UNION clause are quite advanced, even though the actual idea of it is relatively simple. My question that I asked myself is why do these people even know about these advanced pieces of syntax when they clearly don’t understand the basics?

When we first started the project we found most online courses or websites followed exactly this syntax driven curriculum. Focusing on teaching key words and simple small examples. There’s no way that a student is going to get any kind of deep understanding or mastery from that.

Our vision for our website is to focus on mastering things. We would much rather a student understand how to use the basic SELECT WHERE FROM style query and know how to apply it to the real world in a variety of circumstances. What we don’t think is useful is the course that pushes the student on to learn JOIN queries, but doesn’t know how to apply them in a real work situation or what kind of problem can be solved with the use of a join.

--

--