There is no shortage of ways to learn a new programming language, but with over 8 years of teaching beginners the craft of software development, our team has learned a thing or two on how to best learn a new language. Our Advanced SQL for Developers course was built with those learnings in mind. So what should you look for in a course when you want to learn SQL (or any other programming language)? Here are three things we recommend.
By building a realistic business scenario into our curriculum, students are able to follow along and not only learn SQL, but understand how SQL is used in the real world. The seven-week Advanced SQL course takes developers into the world of an organization with several locations. The organization has outgrown simple spreadsheets and is in desperate need of a database to store their information. Students are tasked with moving the data from the spreadsheet into a database, but not so fast. Along the way, new requirements and challenges are thrown their way.
Aside from helping students understand how SQL fits into the real world, they also learn to think about the goals of the business and not just the code itself. They are looking at the organization’s processes as they design the database, creating triggers so that when data is entered it updates another record, improving query performance to make it faster to access and manipulate data, and getting introduced to concepts like transactions and stored procedures. Mapping what can be somewhat theoretical knowledge down to actual code, that solves an actual problem, is crucial in learning how to actually solve problems.
With the short duration of a course like Advanced SQL for Developers, it’s important to maximize the time students have with instructors, and each other, to learn. We use flipped classroom techniques, where valuable classroom time is reserved for writing SQL to solve specific problems, active discussion of concepts and application of concepts, group project work, and engaging instructors directly in questions and problems. We minimize the amount of lecture time consumed in class by shifting the initial sharing of factual information outside the classroom via reading of lessons we've created, articles, and watching of videos. “You come to class having read something and have started to absorb it,” shares Rachel Werner, former Program Manager for Web Development.
Flipped classroom, along with synchronous remote classes, are techniques we use to have in-person engagement in an online class environment. Students can ask questions of their peers and instructors about what they did not understand and get immediate feedback on problems with their code. Students also receive more face-time with instructors to get guidance and feedback.
We also use group work to facilitate active learning (more on that below). With each assignment in Advanced SQL for Developers, students work with a different group. As an added bonus, this makes the current virtual environment more inviting as you get to meet and work with most of your classmates.
Cognitive science research over the last couple of decades has confirmed the “folk wisdom” that the most effective way to master any subject is through hands-on practice and application. Active learning gets students directly engaged in the learning process. It involves learning by doing versus passively listening or reading. Active learning triggers your brain to activate the sensory nerves and helps you better retain what you are learning. Active discussions, group project work, hands-on coding of solutions to real-world problems, and real-time engagement with instructors are all active learning techniques designed to ensure students walk away with the ability to immediately use their SQL skills on the job.
So as you’re evaluating whether a self-study tutorial or a online class is right for you to learn SQL, run it through our checklist:
Learn more about our 7-week, online, synchronous Advanced SQL for Developers course by visiting the program page!