Introduction to the tools and techniques used to create and perform electronic music in a variety of styles. Programming of virtual analog and digital synthesizers, developing techniques for recording unique instruments and sounds, creating custom single and multi-sample patches using software samplers, using algorithmic composition tools and techniques, building interactive performance systems using object-oriented programming environments, and adapting hardware and software for live performance.