May 16, 2020

Recently I decided to go with the Indie Hackers route and do my own thing.

I’m going to make an online course about SQL for engineers and analysts!

Check it out:


I’ve taught two Udemy courses before, one about Blockchain / Ethereum and the other around Flutter in Mandarin Chinese. So this is not my first time.

However, I want to do things differently for this course: Talk to customers before making the course!

The goal is to gather enough feedback and tailor the course content for real users.

My Motivations

I’ve worked with data and SQL many years. From my experience, I realized this: SQL is an evergreen skill that applies everywhere.

Knowing SQL is powerful.

Being able to quickly write queries, glean insights from production and generate organized CSVs make you helpful. SQL gets the job done and others can depend on you.

SQL is a core developer skill.

Regardless of databases or SQL flavours or database your company uses, it’s an incredible skill to be able to write queries and get results back within seconds.

Regardless what Object Relationship Mapper (ORM) libraries you use, ORM will always get in your way at some point. When that happens, you don’t want to be blocked by your ability to understand and write SQLs. Having SQL ability in your arsenal make you more prepared and unblocked for handling all scenarios.

SQL is a career booster.

At some point, you need to get data out of relational databases. You don’t want to always talk to senior engineer or DBA to troubleshoot data issues, or filter error logs. Once you gain SQL fluency, it follows you from job to job.

SQL is a technology that lasts

SQL isn’s the trendiest, and is often overlooked. Over the last decades, it has outlasted VBScript, VBA, Java, C#, Javascript, Typescript and Python, and will do many more in the foreseeable future.

Who is the course for?

Developers and analysts. I expect you to have basic knowledge about software development.

This course will not cover the fundamentals about databases and SQLs. Instead, we focus on the hands-on part of SQL. After going through the materials, you can immediately apply to your work.

What exactly do I teach? (WIP)

I’m currently working on the outline based on customer feedback. So things may change, but here’s WIP version of the curriculum:

Comfort with SQL

  • Primary and foreign keys
  • Join tables
  • Filter results
  • Group by
  • Nested queries

Think in SQL

  • Convert problems into SQL queries
  • Query performance
  • Troubleshoot data issues

PostgreSQL Practical Tricks

  • Set variables in psql
  • Date functions
  • Import and export CSVs
  • Use COALESCE() to handle NULLs
  • Formatting numbers
  • (More to come)

Good SQL Habits

  • Good indentation
  • SQL Linting

Last mile delivery (Bonus) This section covers the tips and tricks to deliver the query results in an effective way.

How do I build the landing page

Answer: What they have is good enough for building landing pages.

Closing thoughts

SQL is everywhere. After some years in the career, you may realize the same thing as I do. And I want to share all I have learned about SQL. It will close the knowledge gap between you (or your ORM) and database.

Also, teaching an online course is a rewarding experience. It forces me to organize my thinking when explaining to others. As a result, my understanding about the subject is enhanced and deepened.

If you are interested in SQL or this course, sign up at:

Thank you for your read!