Parsons The New School for Design
Fall 2014
PUCD 2035 D
Friday, 9:00am - 11:40am
Arnold Hall, 55 W 13th St., Room 402
Jonathan Dahan | dehanj@newschool.edu
This course will introduce students to the building blocks of creative computing within the visual and media environment. Students will learn to create dynamic images, type and interfaces, that can translate into print, web and spatial forms. Through weekly problems, students will learn programming fundamentals that translate in virtually all programming platforms.
By the end of this class students should feel excitement (as opposed to dread) when encountering new programming languags, techniques, and technologies. They will know how to quickly find and participate in each community to help them learn. Students will have to learn how to feel comfortable working with the unfamiliar. In doing so, encounters with new technology can be seen as an opportunity to expand the breadth and depth of their craft, and as inspiration for new work.
Per New School policy, 3 or more absences or excessive tardiness will result in a failing grade. If you need to miss class, please email me in advance.
Each week there will be a small exercises to help reinforce the ideas introduced in class. In addition, there will be three more open ended assignments, that will take more time to complete. There will be one final personal project, that can be started anytime during the course. Grades are broken down as follows
20% attendance and participation, 40% exercises, 20% assignments, 20% final project
Work will be assigned one of the following letter grades
A Work of exceptional quality, which goes beyond the stated goals of the course. A-, B+ Very high quality work, substantially above the average. B Very good work that satisfies the goals of the course B-, C+ Above-average work. C Average work that demonstates an understanding of the course material. Student fulfills the letter but not the spirit of the assignment, and is unwilling to re-work or refine projects. C- Passing work but below that required for good academic standing. D Below average work indicating that a student does not fully understand the assignments. F Failure; No Credit. Missing more than 3 classes, not being attendive in class, not participating in class discussions, not working, missing more than 25% of the projects/discussions.
W Withdrawal: Can be assigned only by the Registration Office
I Incomplete: signifying a temporary deferment of a regular grade, may be assigned when coursework has been delayed at the end of the semester for unavoidable and legitimate reasons.
We will cover at least the following topics in depth:
An sample of interesting projects and artwork to act as inspiration for the assignments. The exercises will help ensure working knowledge to incorporate these elements in future work.
Depending on the character and interests of the class, we can cover additional topics such as security, embedded systems, functional programming, node-based programming, wireless communication, bitcoin and the blockchain, bittorrent.
0x00
Hello, HumanAssignment Create a program designed to be executed by a human
Motivation Language design, machine empathy, common elements
Inspiration Sol LeWitt
Excercise Sign up for github, file an issue for the class
For the first assignment we will have to write a program designed to be executed by a human. You can write this in any language, but the final output must be created only by handing a person a sheet of paper. We will review our experiences after 30 minutes, discussing what programming concepts we have discovered. The final version of this assignment will be due in 2 weeks.
Syllabus Overview (30 minutes) Program a friend explanation (15 minutes) Programming (45 minutes)
0x01
Computer EmpathyIntro to languages and javascript.
Exercise Deface a website using jquery $.text and $.attr
Inspiration _why's poignant guide to ruby
Motivation Look at websites as raw materials
Defacements have been posted to github.
0x02
What is data? What is code?Learn about binary numbers, and other data types.
motivation Introduction to how operating systems work
inspiration Raphael Hemmer
0x03
The filesystem and commandlinemotivation: quick prototypes, reuse of tools, composability, imperative programming
inspiration cat /dev/urandom > /dev/{dsp,fb0}, hex edit a file
The command line
CLI tools and how to use pipes pipes
Navigation of the filesystem and how to read documentation
Show commandlinefu, stack overflow, manpages
0x04
Lets make circles!Introduction to p5.js, and servers
What is html/css/javascript? How can we draw with javascript?
What is a server? We run our own servers.
0x05
Crazier data circlesDrawings into interaction
Turn our javascript sketches into full blown interactives
0x06
Networked circles!Revisit data types, and connect data to visualisations
0x07
Networks and CommunicationLearn how APIs work, and continued use to create new work.
0x08
GlitchesPush the limits of our software to unexpected ends.
Inspiration Girl talk, ART404, Clement Vala
Motivation Software as a tool for reappropriation
0x09
Work dayDesign thinking / brainstorming
0x0A
Work dayCode code code
0x0B
Review and DocumentationThe importance of writing documentation, different writing styles.
Group review of each others WIPs.
0x0C
TURKEY DAYwhile(! self.sleeping()):
eat(turkey || tofurkey)
0x0D
Work DayWork Day
0x0E
PresentationsPresentations of documentation
Faculty members may fail any student who is absent for a significant portion of class time. A significant portion of class time is defined as three absences for classes that meet once per week and four absences for classes that meet two or more times per week. During intensive summer sessions a significant portion of class time is defined as two absences. Lateness or early departure from class may also translate into one full absence.
Use of Canvas may be an important resource for this class. Students should check it for announcements before coming to class each week.
In rare instances, I may be delayed arriving to class. If I have not arrived by the time class is scheduled to start, you must wait a minimum of thirty minutes for my arrival. In the event that I will miss class entirely, a sign will be posted at the classroom indicating your assignment for the next class meeting.
Use of electronic devices (phones, tablets, laptops) is permitted when the device is being used in relation to the course's work. All other uses are prohibited in the classroom and devices should be turned off before class starts.
The New School views “academic honesty and integrity” as the duty of every member of an academic community to claim authorship for his or her own work and only for that work, and to recognize the contributions of others accurately and completely. This obligation is fundamental to the integrity of intellectual debate, and creative and academic pursuits. Academic honesty and integrity includes accurate use of quotations, as well as appropriate and explicit citation of sources in instances of paraphrasing and describing ideas, or reporting on research findings or any aspect of the work of others (including that of faculty members and other students). Academic dishonesty results from infractions of this “accurate use”. The standards of academic honesty and integrity, and citation of sources, apply to all forms of academic work, including submissions of drafts of final papers or projects. All members of the University community are expected to conduct themselves in accord with the standards of academic honesty and integrity. Please see the complete policy in the Parsons Catalog.
It is the responsibility of students to learn the procedures specific to their discipline for correctly and appropriately differentiating their own work from that of others. Compromising your academic integrity may lead to serious consequences, including (but not limited to) one or more of the following: failure of the assignment, failure of the course, academic warning, disciplinary probation, suspension from the university, or dismissal from the university.
In keeping with the University’s policy of providing equal access for students with disabilities, any student with a disability who needs academic accommodations is welcome to meet with me privately. All conversations will be kept confidential. Students requesting any accommodations will also need to meet with Jason Luchs in the Office of Student Disability Services, who will conduct an intake, and if appropriate, provide an academic accommodation notification letter to you to bring to me. SDS assists students with disabilities in need of academic and programmatic accommodations as required by the Americans with Disabilities Act of 1990 (ADA) and Section 504 of the Federal Rehabilitation Act of 1973. http://www.newschool.edu/studentservices/disability/.