I'm working on designing a new CS1 (first CS) class, an alternative to CS1321. We're calling it Introduction to Media Computation. The main ideas of the course are:
All media are going digital.
Digital media are manipulated via software.
Knowing to program is then a communications skill.
The idea is for the course to focus on projects like synthesizing and manipulating sounds, doing Photoshop-like filters on images, and doing video effects (like putting a movie of yourself on the moon). The motivation is that 3-10 lines of code could do something that you want done, in order to make a point, cheaper and easier than buying and learning a high-end video/sound/image tool. I'm hoping that the assignments can be more open-ended and allow for more creative expression than traditional CS1. Along the way, we can introduce CS ideas while building and manipulating real media.
I'm aiming this class at non-CS majors, and maybe CS majors who are turned off by CS1321. It's probably not even a class for Engineers who strongly want a MATLAB and number-crunching focus in CS1. I hope it's a good fit for Ivan Allen College (e.g., LCC) students, Management, and Science students.
I'm trying to get feedback on the idea, and on the language for the course. I'm mostly interested in getting feedback from the kinds of students who might take such a course.
IF YOU ARE NOT A CS MAJOR, AND YOU ARE A 1st or 2nd year student, would you be willing to participate in this survey?
TO VISITORS OF THIS PAGE
Thanks for participating! You're welcome to answer everything anonymously, or nothing at all. Feel free to contact me at guzdial@cc.gatech.edu with any questions.
Type in an answer and hit "Add to this page" BEFORE going on to the next question, please.
P.S. I'd like to be able to share your comments on this page with others interested in the design of an alternative CS1 class. If you don't want me to share your comments, please just say so next to your comment and I won't. 1. What's your major (so I get a sense of what majors are represented by these answers)?
2. What do you think about the idea of an "Introduction to Media Computation" course? Does it sound motivating? More so than CS1321? Or just as undesirable?
3. Are the open-ended and creative assignments a draw for you, or not so important?
4. A big issue for me is choice of language. I'm considering
(a) a form of Scheme (what's now taught in CS1321) with multimedia extensions,
(b) Python (http://www.python.org) which looks more like a traditional language than Scheme, but may be easier for students and can handle multimedia and web-work well, and
(c) Java, which is very well known, can do multimedia, is a well-regarded job skill, and is much more complicated.
Which would you prefer of these three? Or is there another language that you'd prefer to learn?
5. Finally, what would YOU like to be able to do when you get done with CS1? Do you want to be able to program? Or just understand how programs are done? Or just complete the Core Area B requirement? :-) If you want to be able to program, what kinds of things?