MOOC Talk : And I thought I knew SQL

Massive Open Online Courses (MOOC) became popular early this year with offerings from Coursera, Udacity and EdX. These platforms were inspired by the phenomenal success of the three online courses (db-class, ai-class and ml-class) that ran in late 2011. It has never been so easy to get high-quality knowledge – for example, Coursera has renowned experts teaching over 200 courses; moreover the incentive of getting certificates appeals to many of us.

I have taken a couple of courses since the year started and I periodically enroll in new courses. Presently; I am registered in about 50 courses (am I greedy? :) ) – I am not taking all of them simultaneously however I want to have access to the course content when I have time.

It’s impossible to learn everything and I don’t really care much about getting certificates (they are nice to have though); I am more interested in understanding the course and getting the concepts right. The same concept applies to everything I do: now I am not saying excellent grades are bad. I appreciate great grades however I place more importance on thorough understanding and being able to apply concepts.

After completing Professor’s Kearn’s Networked life which I enjoyed; I decided to take Professor Jennifer Widom’s Database course. I had earlier enrolled for the course in late 2011 however I had to drop out because of my coursework at MASDAR. The courses started off well enough but soon became challenging. I thought I was good at databases since I have been writing SQL queries (mostly CRUD and referential integrity etc.) for at least 3 years however I was wrong.

Professor Jennifer Widom does a pretty great job of guiding students through the concepts. The videos are easy to follow and have been meticulously prepared however the assignments are quite challenging and I recommend you do them if you really want to understand the course. I initially wanted to post my answers on my github however I don’t think I’ll be doing that – it doesn’t help anyone: the main aim is to get the knowledge and not just perfect scores.

I have learnt a lot: relational algebra, XML, JSON, SQL, constraints, triggers and a whole slew of other topics. It was also good to learn about database indexes, their types and applications; the succinct exposition provided great insight into the merits and demerits of this great concept.

I don’t want to be a database administrator but I want to learn. Moreover I am always interested in programming languages and paradigms and SQL is a language in its own right. It’s a declarative language and forces you to think in weird ways but it’s always fun to stretch ain’t it? Some people write and solve problems in SQL; talk about gurus….

Alhamdulilah, the skills I picked come in handy for my work using the stackoverflow dataset so you never can say when you’ll need some knowledge. It’s even possible to query XML data using XPath or XQuery or XSLT however the results will be in XML. If you’re interested in doing mental acrobatics; write some SQL code or challenge yourself.

Well I haven’t finished the course – I am midway through but I’ll gladly recommend it to anyone who is interested in DBs who to anyone who just wants to learn. That’s it for this week; insha Allaah I’ll be writing about productivity or Ember or my thesis next week.

Learn, learn even more and never stop learning…

13 thoughts on “MOOC Talk : And I thought I knew SQL

  1. Good for ya! How’s your thesis? It’s amazing the ton of stuff one thinks one can handle until you see ’em take another direction. Once I had to work with deeply nested subqueries and some overly complex joins. Here I was thinking life in SQL ended with some simple SELECT statements. Good point on depth over grades. A perfect match of the two will be awesome though. :) Barakallah feeh.


  2. they are really nice course although very challenging, i am also taking a course in edX about Python programming and another in Coursera also about python. I am having a difficult time when they got to OOP, classes, inheritance, instances all are giving me a hard time because i could not commit to them 100% cus of my other work here, anyway i think i have learnt something too sha.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.