The CSZero Smorgasbord

This page was hastily constructed by Eric Freudenthal.  He apologizes in advance for errors or omissions.  Please contact him if you would like to contribute additions or other improvements.
  • Media-centric introductory programming environments:
        • primary and middle schools
        • Scratch and etoys are composed in (and to varying degrees expose) their underlying squeak programming system
        • While these systems support algebraic operations, their syntax are not algebraic
        • Manipulation of nicely animated 3-d puppets.  
        • Typically used to program games and tell stories
        • 9th grade+
    • Media computation http://coweb.cc.gatech.edu/mediaComp-plan
      • Students learn programming through manipulation of images and sounds
      • Available in Python and Java
      • Typical projects involve translation of 'recipes' from English to target language using Java's heavily O-O  "AWT" graphical toolkit, and then use them to  create engaging multimedia.
      • Aesthetic focus appeals to Liberal Arts majors. 
  • Robots, robots, and more robots
  • Real Projects for Real Clients
    • David Klappholz at Stevens Institute
    • Groups of students develop specifications for a solution to a real organization's problems
      • Examine use cases, build mock-ups of web pages using graphical editors
    • It's about learning how to cooperate in developing good solutions to real problems rather than data structure, programming, or algorithms.  Appeals to different proclivities and strengthens different skills  than conventional CS curricula.
  • CS Unplugged: http://unplugged.org 
    • Yes, you can learn some algorithms (and discrete math) without a computer.  
    • Unplugged is a series of interactive activities that teaches discrete math and a few algorithms   
    • Cards, string, crayons, running around.  Lotsa fun.
  • Computational CS-Zero http://www.cs.utep.edu/ccs0
    • From UTEP, a spin-off from python-based Media Computation organized by Eric Freudenthal that uses programming to elicit visceral understandings of programming fundamentals, pre-calculus and the principles underlying simple dynamic systems.
    • Starts imperative, later introduces objects as a means to simplify
    • Immersively starts with the modification of inituitvely simple programs that teach basic programming skills while dramatically manipulating images.  Subsequent exercises extend and reinforce skills using the same graphical palate to explore the foundations of college math & physics.
    • Intended to complement math and science courses attended by entering STEM students with weak math skills
    • Students learn the fundamentals of Python,  an easy-to-learn imperative language with usable OO extensions that's widely used in a variety of industrial and research applications 
Comments