Thoughts on Teaching Object Oriented Programming in JavaScript

I’ve been doing a series of JavaScript videos on YouTube as part of a larger effort teaching Software Development. I find that I create a video 2 to 4 times before actually recording the real one. When describing something, when I find I have to reference a basic concept, I instead stop, and record a video around that basic concept first. This has worked well, and similar to blogging/writing books, it forces you to plug all holes no matter how minute in your knowledge of a subject so you can succinctly describe it in a way that makes sense.

From a programming perspective, teaching advanced JavaScript is quite challenging because it wasn’t designed for traditional OOP concepts and large application design. Many of the more popular languages today are either built on, or support and promote OOP usage. On the same token, once you know OOP you better appreciate Functional languages, parametric polymorphism, and other dynamic language features.

Continue reading “Thoughts on Teaching Object Oriented Programming in JavaScript”