This workshop will teach participants to program in JavaScript. No previous experience in programming is necessary. The workshop will introduce the basic conceptual foundations shared by contemporary programming languages and cover both functional and object-oriented styles of programming. Over the course of the workshop, participants will begin to write their own library of higher-order JavaScript functions for use in the browser and server-side in Node.js. These libraries will be developed and reused over several simple but useful projects. More than just a how-to, the workshop advances and embodies the argument that programming can become an integral part of writing courses and entire curricula, and that even the humble Web browser can be a powerful teaching, learning, and communication tool.
This day-long workshop (or two half-day workshops) will teach participants to program, using JavaScript. The workshop will introduce the basics of data types, control structures, and functio