The two main goals for this course are to study OpenGL ES (Embedded Systems), the emerging standard for handheld devices, and the OpenGL Shading Language, the emerging new standard for OpenGL itself. OpenGL ES is a "lighter" version of OpenGL with additional features designed specially for small-screen graphics, particularly games programming. The OpenGL Shading Language is designed to take advantage of modern processor speeds to make more of the OpenGL pipeline, previously static, now programmable. In particular, every vertex and fragment is individually programmable. This will be a hands-on seminar style course where the participants will be asked to read and present material and, most importantly, share coding experience. We shall study the underlying principles of OpenGL ES and the Shading Language, as well as acquire practical experience with both. Additional topics related to the two main ones will be discussed as they arise.