This course will teach, step-by-step, how to create a cool interactive code rain animation, just like the one featured in one of the most iconic movies, that runs on any current web browser! In addition to being cool and fun, your animation can be customized and configured on-the-fly, so that you can get creative and have a good time while learning how to use Object-Oriented Programming in JavaScript and the HTML5 Canvas. Anyone can jump into this! Just be aware that we will be programming our animation with code, which means that everything is created from a text editor and we won’t be using a video editing software to achieve this. You will be introduced to Object-Oriented Programming concepts throughout the course, although we will be focusing on how to apply them in JavaScript. This course was developed to follow standard development practices (with version control) that you would find in the real-world, so there’s some mild (maybe close to heavy) source control integration into the workflow and the course itself for any programmers looking to get more experience on working with Git, as source control is a very important skill to have when working in teams or even on your own projects. We will be covering (or at least brushing) some very interesting topics in JavaScript, like: ObjectsClassesEvents and Event ListenersPackagesConsuming resources from a ContentDelivery Network (CDN)Scopes[Emulating] Access Modifiers in ClassesLamda ExpressionsData ContainersExecution ContextDocument Object Model in HTMLand JSExceptionsData type checks in vanilla JavaScript (without TypeScript)The JavaScript consoleAdditionally, we will be covering the following: Source ControlWorking with a repositoryCommittingBranchingComparing ChangesMergingReviewing a repository historyDynamic HTML (HTML+CSS+JS)File SystemHow to setup a static websiteViewing local files through a web browser without a serverDebugging JavaScriptOutput meaningful error messagesUsing built-in developer toolsInteracting in real-time with JavaScript run-timeEverything will be coded from scratch, except for the animation frame controller to programmatically compute and draw our animation into an HTML5 Canvas. By the end of this course you will have a pretty solid understanding on how you can create interactive animations by just using JavaScript and the HTML5 canvas.