I recently had the opportunity to design and lead an introductory JavaScript workshop for students at the Tech Talent South code immersion program. I was grateful for the opportunity to introduce a topic I was passionate about to these students, and I really wanted them to have a positive first experience with it.

I think a lot of programmers in the industry have a negative impression of JavaScript because it doesn’t live up to expectations they have from languages like Java or C#. But JavaScript is a different type of brush that paints on a different type of canvas. My goal was to highlight what makes JavaScript unique so that students would have the right set of expectations as they launch their development careers.

I asked myself, what are the things that I wished I’d known about JavaScript that would have made my journey easier? Things like type coersion, lexical scope, calling context, and closures. I tried to focus on those topics, while simultaneously introducing basic language syntax.

The result is a workshop that I think both new students and experienced programmers coming over from other languages might find valuable. Even JavaScript programmers who want a refresher on some language fundamentals might learn something new.

I’ve posted a link to the slides and exercises below. I hope you find them valuable. Feel free to share, download, or use it as the basis for your own JavaScript workshop.