This class has ended.
Dear Student,
In this class you will learn to record and communicate your ideas effectively by writing software. You will produce three programs in the JavaScript programming language, which I will teach you to read and write. You will also learn to use command line interfaces and edit source code effectively in the Emacs text editor. As a class we will discuss the artistic history of randomness, punctuation marks as traffic signals, machine speed, and the myth of interactivity.
Jeffrey Scudder
scudderj@newschool.edu
PS – Looking for our class emails?
Catalog Description
With the rapid evolvement of HTML5 in the past few years, the web has grown into a mature platform with infinite possibilities. This course focuses on creative explorations using web technologies while introducing some of the more advanced concepts and best practices in modern front-end web development. Topics will include 2D graphics and animation, latest HTML5 and CSS3 features, data-driven applications, and techniques for creating captivating interactivity.
Software Projects
The bulk of time in this class will be spent producing three programs that adhere to the instructions below. Each project has additional formal requirements, which will be discussed in class and reposted here as a reminder.
- Write a program that typesets a continuously changing sentence.
- Simulate a relationship between three individuals.
Create a webpage whose interface is a façade for a program that does something else.
Readings
10 PRINT CHR$(205.5+RND(1)); : GOTO 10 - Nick Montfort - RandomnessTheodore Adorno - Punctuation Marks
No More Secondhand God: And Other Writings - Buckminster Fuller - Machine Tools
The Language of New Media - Lev Manovich - Myth of the Digital / Interactivity
Technical
The Unix Programming EnvironmentGNU Emacs Manual (June '85)
Materials
Our class will usually take place in a computer lab, but you should probably own/bring a laptop with which you have permission to install software.
Resources
JavaScript | Mozilla Developer NetworkGNU Emacs Homepage
Jeffrey Scudder's JavaScript Class Google Doc
Learning Outcomes
At the end of this course, students will be able to:
- Operate command line interfaces.
- Compose programs for the web and other contexts using the JavaScript programming language.
- Understand the affordances and limitations of using software as a medium.
- Read and understand the source code of their classmate's projects.
- Independently research and learn unfamiliar technical topics.
Schedule
Our classroom is I-422, located on 55 West 13th St. and occurring from 7:00–9:40 on Thursday nights.
1: Introduction to JavaScript
2: Variables
3: Objects
4: Functions
5: Working
6: Working
7: Project #1 Critique: Part 1
8: Project #1 Critique: Part 2
9: Spring Break!
11: Working
12: Working
13: Working
14: Final Critique: Part 1
15: Final Critique: Part 2
Evaluation
Your performance will be evaluated based on class involvement, technical progress, and the novelty of your ideas.
- A: Exceptional
- B: Good
- C: Average
- D: Below average
- F: Poor
- 30% Class participation & dialogue
- 30% Project 1
- 40% Project 2
25% Project 3
Divisional, Program and Class Policies
Responsibility
Students are responsible for all assignments, even if they are absent. Late or incomplete projects and lack of preparedness for inclass discussions and presentations will jeopardize your successful completion of this course.
Participation
Class participation is an essential part of class and includes: keeping up with reading, contributing meaningfully to class discussions, active participation in group work, and coming to class regularly and on time.
Attendance
Attendance – 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 two absences for classes that meet once per week. Lateness or early departure from class may also translate into one full absence. Please contact me prior to class if you know you will have to miss all or a portion of our session.
Delays
In rare instances, I may be delayed arriving to class due to my fulltime job. If I have not arrived by the time class is scheduled to start, students are expected to wait a minimum of thirty minutes for my arrival. In the event that I will miss class entirely, an email notification will be sent in advance. I do not expect this to happen. Guidelines for Studio Assignments – Work from other visual sources may be imitated or incorporated into studio work if the fact of imitation or incorporation and the identity of the original source are properly acknowledged. There must be no intent to deceive; the work must make clear that it emulates or comments on the source as a source. Referencing a style or concept in otherwise original work does not constitute plagiarism. The originality of studio work that presents itself as “in the manner of” or as playing with “variations on” a particular source should be evaluated by the individual faculty member in the context of a critique.
Student Disability Services
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. At that point I will review the letter with you and discuss these accommodations in relation to this course. Mr. Luchs’ office is located in 79 Fifth Avenue, 5th floor. His direct line is (212) 2295626 x3135. You may also access more information through the University’s web site here.
Class Emails
May 29
Hi everyone, I'd like to take a moment to thank you all for taking JavaScript this semester. I really enjoyed our sessions together. If you are interested in expanding one of your existing projects into a public work (with a domain) please send me an email sometime during the break and we can work on it together. There is no extra credit or anything from this offer, but you will certainly learn things. I've already shared some inspiration in class, but I suggest you also browse the artist's projects on this website for more: http://parallelograms.info
Also, please remember to email me back from a different address if you are interested, but may have graduated and are no longer on the New School's system.
May 5
Hey everyone, this is just a reminder that the critique for your final projects will be this Thursday. Some of you might bleed into next week, but don't count on it! See you then. You can e-mail me this week and attach your projects if you need some help or have questions.
March 22
Great job on the first project everyone.
Here are two of the references I brought up in class (and one I almost brought up):
David Byrne - Report from L.A.
http://bin.sc.jas.life/Collection/Video/David%20Byrne/Report%20from%20L.A..mp4
Wojciech Kosma - Wait (one of my favorite pieces that uses a projector)
http://bin.sc.jas.life/Collection/Video/Wojciech%20Kosma/Wait.mp4
Christine Love - Digital: A Love Story
http://scoutshonour.com/digital
Download for Mac here: http://www.scoutshonour.com/lilyofthevalley/digital-1.1.dmg
Here is a link to the projects I have received from everyone, obviously a few are missing! Please send me ASAP so I can review them.
http://bin.sc.jas.life/Teaching/2014/JavaScript/Completed%20Projects/Sentences/
Enjoy your break!
March 15
Great job to those whose projects were critiqued this week.
Here are some references I mentioned in class:
Omer Fast - CNN Concatenated: http://bin.sc.jas.life/c/Video/Omer%20Fast/Omer_Fast-CNN_Concatenated.mp4
Renzo Martens - Enjoy Poverty Part III: http://bin.sc.jas.life/c/Video/Renzo%20Martens/Enjoy%20Poverty%20-%20Episode%20III.m4v
Frank O'Hara - Why I Am Not a Painter: http://bin.sc.jas.life/c/Text/Frank%20O'Hara/Frank_O'Hara%20-%20Why%20I%20Am%20Not%20a%20Painter.pdf
Handing in Your First Assignment
Please send me a .zip file that contains your entire project folder, and if you happen to be using any external images or .js files, please include them in the folder as well for archival purposes. You can reply to this email and attach the .zip or if it is larger than 25 megabytes then you can send it to me using Dropbox or some other service you may be familiar with. Please name the .zip file like so: First Name_Last Name_Sentence.zip
Please send me the .zip file by Friday of next week at the latest.
See you on Thursday!
March 12
You will have 10 minutes for your critique tomorrow, where we be focusing on and discussing your projects, if anyone needs to go at a specific time in order to set up, either at the beginning, or maybe after our short break, please let me know today - hopefully we don't go late tomorrow but I ask that if we do, please stay out of respect for your classmates. Bring a coffee!
You should have everything prepared to show your project to the group before it is your time to begin. I will bring projector dongles in case you need them.
Also class participation is part of your grade, 30% actually over the course of the semester, so please don't be shy!
February 13
Unfortunately the lecture has been cancelled: https://twitter.com/mccNYU/status/434028290920419328
If you are as disappointed as I am then you should just chill out and watch this movie tonight: http://youtu.be/LRhbcDzbGSU?t=7m46s
February 11
Hi class, this is just a reminder that on Thursday we will not be meeting in our usual location or at our usual time. Instead we will be going to a lecture by Nick Montfort at NYU from 6–8pm.
(http://events.nyu.edu/#event_id/17349/view/event)
Hope to see you all there!
January 31
Hey everyone, please remember to page through this chapter on randomness.
http://bin.sc.jas.life/Teaching/2014/JavaScript/Resources/10%20PRINT%20-%20Randomness.pdf
If the reading doesn't take, or it does and you want more, you can watch this http://vimeo.com/45851523#t=30m12s or this http://vimeo.com/19467912
If you want to know a little bit more about using the terminal on your computer, you can start reading this: http://bin.sc.jas.life/Teaching/2014/JavaScript/Resources/The%20Unix%20Programming%20Environment.pdf#page=13
It was written before graphical user interfaces were invented so pretend like you just bought a brand new computer and the terminal is all you get. At that time it was very common for a single computer to be used by many people simultaneously. They were physically big and too expensive for individuals to own. The reason why your laptop still has the ability to have multiple user accounts with different passwords is a side effect from that era.
If video is your thing (it is mine) you can go through this to review some of what we learned in class.
http://www.lynda.com/Mac-OS-X-10-6-tutorials/Unix-for-Mac-OS-X-Users/78546-2.html
You can go as far as you like but we will mostly be using the commands discussed in sections 1, 2, and 3 in class, most of which will be familiar by now.
This week when you are using your computer casually, try keeping a terminal open and using it to move some files around, delete files, restart / shutdown your computer... check what the date and time is, etc. Feel free to email me with any questions or email the class if you find something cool or useful that you'd like to share.
PS
Want to see how long it takes for your computer to send and receive a message from your favorite website? Try pinging it's url in your terminal: ping google.com
January 30
Hello, this is your JavaScript teacher. I'm yet to obtain a newschool.edu address. See you tomorrow at 7pm. Please bring a sample of software you've made (it's perfectly okay if you haven't done this) or something you've created using existing software. It can be anything, but it should be something that you are able to discuss. See you then!