by Caleb Curry

Database Design Full Course

Photo by Eugene Lim on Unsplash

Hi, I’m Caleb Curry. I create developer-focused content available on I’m pleased to announce that I’ve collaborated with freeCodeCamp to produce the Database Design Full Course! This all-in-one video contains 8 hours of content going from complete beginner all the way through understanding integrity, keys, relationships, normal forms, indexes, joins, and more.

My thought process behind this course was that databases do not need to be confusing or something you study when you need help falling asleep. I try to keep it real and fun, but at the same time try to give clear and practical examples with technically correct information.

Why This Course?

Database Design is a fundamental step for building nearly any software application. Databases power the backend of almost every website, desktop application, and mobile app. Databases are hidden from plain site so that users don’t realize they exist. This is a good thing when it comes to user experience and security, but has tricked many young developers into neglecting the importance of databases and data management.

As a result of this neglect, developers are releasing applications with weak data layers full of incorrect data, ugly data, redundant data, and serious security flaws. This lack of discipline with the database is especially true with web applications as web developers are often required to know numerous technologies (HTML, CSS, JavaScript, server side languages, SQL, and database design). It’s very easy to neglect the database as it’s not a front-facing technology like JavaScript or HTML and CSS. This is a huge mistake.

With the rise of data breaches and regulations like GDPR, a fault in the database could be enough to cause the downfall of an entire organization with the unintentional leaking of sensitive data. The first step to protecting against security issues is with a properly designed database and an understanding of SQL and database principles. After going through this course, you will have a strong understanding of data integrity and security as well as clear steps to follow to enforce integrity.

Intuitive Database Design

A lot of people don’t realize that there are various ways you can design a database. A lot of these choices come down to personal preference and application needs. This course will explain some of these options and discuss the pros and cons.

For example, you’ll understand surrogate keys and natural keys, different relationship types and look-up tables, referential constraints and which to ones to use, NOT NULL relationships, clustered vs non-clustered indexes, what types of joins to use, and more. All for free on the freeCodeCamp YouTube channel!

Enjoy the Content?

If you’ve enjoyed this blog or the Database Design Full Course, you’d really enjoy my blog which goes in more detail about the course. Additionally, you can subscribe on YouTube and follow me on Twitter.

This is my first blog with freeCodeCamp — any tips? What other content would you like to see between me and freeCodeCamp?

Thanks for reading, and enjoy the course!