Summer Camp: Creative Programming and User Experience 2014
at Sino-Dutch Design Center for Social and Cultural Computing, Science and Education New Town, Taicang, China
July 21-28, 2014
Contents
Summary of the structure
- This Summer camp takes 8 days, including
- lectures about Processing
- lectures about Arduino
- lectures about processes, techniques and methods for User Experience design
- Students will be working on three challenges
- Challenge 1
- Individual task. Creating static visual arts. At the end of this part, every student is expected to be able to
- Challenge 2
- Students work in pairs. Making the result of Challenge 1 interactive, by connecting the Processing program to Arduino sensors and/or actuators
- What to be delivered:
- a link to a Youku video that demonstrates the interactivity and explains the concept.
The video shall be titled as SDDC Summer Camp 2014: <a meaningful title> by <your names>.
- What to be delivered:
- Challenge 3
- Students work in teams. Designing an interactive application for a target user group.
- What to be delivered:
- a link to a Youku video that demonstrates the application and explains the concept and the process.
The video shall be titled as SDDC Summer Camp 2014: <a meaningful title> by <your names>.
- What to be delivered:
Schedule
Week |
|
Lecture, Tuesdays, 13:45 t/m 15:30;LAPLACE-GEBOUW -1.19 |
|
Workshop, Thursdays, 10:45 t/m 12:30; LAPLACE-GEBOUW -1.19 |
1 |
04-22 |
Introduction, by Jun Hu |
04-24 |
Using Libraries, by Jun Hu |
2 |
04-29 |
Variables and Flow Control, by Mathias Funk |
05-01 |
Graphics, by Mathias Funk |
3 |
05-06 |
Arrays and Functions, by Jun Hu |
05-08 |
Exhibition of Challenge 1 by All |
4 |
05-13 |
Algorithms and Data Structures, by Loe Feijs |
05-15 |
Arduino and Finite State Machines by Peter Peters |
5 |
05-20 |
Object Orientation, by Loe Feijs |
05-22 |
OOCSI (Out of Control for Semantic Interactivity) by Mathias Funk |
6 |
05-27 |
GUI and Interactivity, by Mathias Funk |
|
Holiday |
7 |
06-03 |
Serial and Internet (of Things), by Peter Peters |
06-05 |
Exhibition of Challenge 2 |
Week 1
Lecture: Introduction
Workshop: Using Libraries
Week 2
Lecture: Variables and Flow Control
Workshop: Graphics
Week 3
Lecture: Arrays and Functions
ArraysAndFunctions.pdf (just slides 1 - 24, the rest comes next week)
ArraysAndFunctions_examples.zip the introductory examples with the turning rectangles
DrawingCreatures.zip the example with the two "birds"
Homework: Arrays and Functions (voluntary!!)
You wanted more homework / exercise to develop your processing skills, here you go. All completely voluntary and optional. Start with the first one, as the other build on top of it. Questions? --> Ask during workshop 03, or email Mathias. Solutions? --> Next week!
Exercise Arrays.1: Initialize a list of 8 balls with colors as strings, and draw all balls on screen at a random location in the color specified.
Exercise Arrays.2: Initialize a list of 8 balls with colors as strings, and draw all balls on screen at a random location in the color specified. Animate the balls so that they bounce off the screen borders, all with different speeds.
Exercise Arrays.3: Initialize a list of 100 balls with colors as strings, and draw all balls on screen at a random location in the color specified. Animate the balls so that they bounce off the screen borders, all with different speeds.
Exercise Functions.1: Initialize a list of 8 balls with colors as strings, and draw all balls on screen at a random location in the color specified. Draw the ball with a function that takes the color of the ball as a parameter.
Exercise Functions.2: Write a function that calls itself, but stops doing that after 5 times. The function should output number of the call every time.
Exercise Functions.3: Write a function that calls itself twice and with every call draws a branch of a tree, so you will get a whole tree with ever shorter branches at the end.
Exhibition of Challenge 1
Week 4
Lecture: Algorithms and Data Structures
Workshop: Arduino and Finite State Machines
Download and install Arduino on your laptop
Week 5
Lecture: Object Orientation
Workshop: Out of Control for Semantic Interactivity (OOCSI)
OOCSI_in_Processing.pdf (slides)
oocsi_processing_library.zip (Processing library)
Week 6
Lecture: GUI and Interactivity
You need to download and install the controlP5 library for Processing: http://www.sojamo.de/libraries/controlP5/. Notice that if you are using Processing 1.5.1, you have to download and install an earlier version of the controlP5: controlP5-1.5.2.zip from http://code.google.com/p/controlp5/downloads/list.
Workshop: Serial and Internet (of Things)
Week 7
Lecture: Beyond Processing
From Processing to Java: http://www.eclipse.org
Processing for Android: http://wiki.processing.org/w/Android
From Processing to C++: OpenFrameworks: http://www.openframeworks.cc/; http://www.openframeworks.cc/tutorials/
Exhibition of Challenge 2
Deliverables
After Exhibition of Challenge 1
Within one week after the first exhibition:
For ALL students:
Attach the deliverables to an email, send it to dg290.submission@gmail.com <dg290 DOT submission AT gmail DOT com>, including:
- ZIP file of the source code from Challenge 1.
- PDF from Challenge 1.
- Written reflection about your development in the first half of the assignment (for example learning points, difficulties, achievements, future steps, ...).
For ID students: Feedback request after Exhibition of Challenge 1, in addition to the deliverables to the above gmail account:
Please send your request ONLY to one of the assigners, according to this RegistrationList.xls Excel sheet or in PDF format RegistrationList.pdf.
Attach all your deliverable to the request. Including:
- ZIP file of the source code from Challenge 1.
- PDF from Challenge 1.
- Written reflection about your development in the first half of the assignment (for example learning points, difficulties, achievements, future steps, ...).
After the assignment
Within one week after the final exhibition:
For ALL students:
Attach the deliverables to an email, send it to dg290.submission@gmail.com <dg290 DOT submission AT gmail DOT com>, including:
- ZIP file of the source code from Challenge 2.
TXT file containing the YouTube link from Challenge 2.
- Written reflection about your development in the entire assignment (max. 2 A4 pages).
For ID students: Feedback request after the assignment, in addition to the deliverables to the above gmail account:
Please send your request ONLY to one of the assigners, according to this RegistrationList.xls Excel sheet or in PDF format RegistrationList.pdf.
Attach all your deliverable to the request. Including:
- ZIP file of the source code from Challenge 2.
TXT file containing the YouTube link from Challenge 2.
- Written reflection about your development in the entire assignment (max. 2 A4 pages).
Installing Processing
Download processing. Please make sure you are downloading the latest stable release. There are two versions, one with Java, one without. If you are not sure, download the one with Java.
- For those who know what the JDK is and wants to install Processing along with JDK: You need x32 version of the JDK no matter whether you are running an x32 or x64 system.
If you don't understand what the above comment is about, download the one with Java.
- Create a directory "Programs" on the C: disk, in the root. If "C:\Programs" exists already, skip this step.
- Extract the entire directory to C:\Programs (note, not "C:\Program Files"). if you are reinstalling Processing, remove the entire processing directory first.
- Create a shortcut on your desktop to "Processing.exe" for easy access.
Installing Arduino
Download Arduino software;
- Extract the entire directory to C:\Programs (note, not "C:\Program Files"). if you are reinstalling Arduino software, remove the entire arduino directory first.
- Create a shortcut on your desktop to "Arduino.exe" for easy access.
Install necessary Arduino drivers. Follow the instructions in page 23, Chapter 3 of Getting Started With Arduino
If you are installing Arduino on Windows 8, the link below explains shortly how to install drivers for arduino on Windows 8.
http://mytechblog.com/2013/03/install-arduino-drivers-on-windows-8/. (Thanks to Wouter van der Wal for pointing this out)
Installing Processing
If you have questions or if you need help
- The assigner will announce a help hour during his lecture.
- The assigner will be available during this hour only if one or more of you make an appointment.