Class Description
This class introduces the trifecta of web technologies - JavaScript, HTML and CSS (cascading style sheets) - to middle and high school students. Learn how to structure web content using HTML and semantic markup, how to control the layout and look of content using CSS rules and properties, and how to add animation and interactivity using JavaScript.
Together, students will learn how to create components that are commonly seen throughout the web: different layout techniques, site navigation controls, slideshows, image galleries, and more.
The majority of the class will focus exclusively on JavaScript, and creating interactive web pages and web games! We will create a number of small projects - like a memory game, tic-tac-toe, a flashcard drill, a trivia game - and then set our sights towards a making a larger game (note that we decide as a class which projects we build, so the list of things we actually make will vary).
Some of the programming topics covered include: variables, control flow, loops, functions, closures, object oriented JavaScript, the document object model (DOM), event handling, callback functions, and asynchronous execution. We will also cover the principles of responsive design, and will touch upon third-party JavaScript libraries, like jQuery.
Everything will be coded from scratch using a simple text editor.
Prerequisites
None!
No prior programming experience or knowledge is required, or expected - this is a great place to start!
Software
Students will be taught how to code HTML, CSS, and JavaScript, using the application, Sublime Text. Although this is a commercial application, it has a liberal evaluation period, and can be used for free for the duration of the class. This is one of the go-to editors for front-end coders.
Computers
Students should bring their own laptops to class. Please download and install Sublime Text beforehand!
Students are welcome to use one of our laptops if they are unable to bring their own. Make sure to bring a USB Flash Drive to save your work.