Resources

All the platforms introduced in class are open source and very well documented online. So please take time to go through the online tutorials, and always try to troubleshoot online by yourself.

Advice

While general overview of skills are given in class, the best learning happens through practice over time.

Since the web and its constituent code are constantly changing, there is no one resource that is best. Instead, students should aim to absorb resources from a variety of sources, putting them to use through trial and error.

If you find yourself stuck while writing code (which is extremely common–even for the best programmers), first try breaking your problem down into smaller, more manageable parts. Search Google or Stack Overflow for how to solve those parts, one at a time.

Remember that most of the time spent writing code will be fixing bugs. In fact, learning how to debug is what programming is all about! (And sometimes bugs will allow you to discover something new and never seen before.)

Accessing your site

Accessing your Rutgers server away from school

Tutorials

All students of Mason Gross Visual Arts Department has free access to all lynda.com tutorial service. Students can log in with their lab user and passwords.

Tools & materials

Most of the hardware and software we will use in class will be available in the classroom. On the other hand, if you have access to a computer at home, I strongly recommend you equip it with relevant software for practice and completion of assignments. Here is a list of software we are planning to use during the semester. All of these are free and open source (except the Adobe Suite, which will be used provisionally).

We will also use some DIY electronic boards and sensors for the final project. Basic parts will be provided by the school, but you might want to have your own Arduino UNO board and sensors, depending on your project idea. You may check the following sites for retailers and a buying guide.

Specific resources & tools per unit

I. Online publishing

Resources:

HTML

HTML stands for Hypertext Markup Language. It's used to structure a webpage and its content. HTML is not a programming language, but a markup language.

CSS

CSS stands for Cascading Style Sheets. It's a series of rules used to style a webpage. Like HTML, CSS is not really a programming language—it's a style sheet language.

JavaScript and jQuery

JavaScript is the programming language of HTML and the web. Interaction with the user, animation, etc., are all done with JavaScript. jQuery is a library, or set of helpful add-ons, to the JavaScript programming language. In general, jQuery is much better at giving you immediate, visual results than regular JavaScript. In this class, it's likely you'll use a mix of basic JavaScript and jQuery.

Tools:

II. Algorithmic design

Processing Resources:

P5 Resources:

Tools:

III. Physical computing

Resources:

Are.na channels

Are.na is a website and online community that allows you to collect things online. You will all sign up for accounts at the beginning of class. Below are some specific are.na channels that are relevant to this class. Please explore!

Keyboard Shortcuts

Keyboard shortcuts can be a useful tool. With limited real estate on screens and multiple applications open, it’ll become important that you can quickly interact with your code, in plain text, the web inspector and in the browser. These are some common shortcuts, grouped by application, that you might want to use while working. This list is by no means all-inclusive and will change based on your own machine's keyboard, applications, user settings, and operating system.

These shortcuts are meant for the software most of us are using in this class: Google Chrome, Atom or Brackets, and macOS.

 the Command Key symbol
  the Option Key symbol
 the Shift Key symbol
 the Control Key symbol

Atom and Brackets

  • Copy: ⌘C
  • Paste: ⌘V
  • Cut: ⌘X
  • Save: ⌘S
  • Save As: ⌘⇧S
  • Close Window: ⌘W
  • Switching between tabs: ⌃tab
  • Delete forward: fn del
  • Multiple Select: ⌘ click
  • Highlight text: ⇧ arrow keys
  • Highlight to end of line: ⇧⌘ arrow keys
  • Highlight to end of word: ⇧⌥ arrow keys
  • Comment out highlighted text: ⌘/

You can also drag your 'Sites' folder into your text editor for quick access to all of its files and directories.

Google Chrome

  • Open the Inspector: ⌥⌘I
  • Open the JavaScript Console: ⌥⌘J
  • View page source: ⌥⌘U
  • Full Screen: ⌃⌘F
  • New Window: ⌘N
  • New Incognito Window: ⌘⇧N
  • New tab: ⌘T
  • Switch between tabs: ⌃tab
  • Close tab: ⌘W
  • Refresh the page: ⌘R
  • Hard refresh: ⌘⇧R
  • Show/Hide the bookmarks bar: ⌘⇧B
  • Zoom in: ⌘+
  • Zoom out: ⌘-
  • Back in history: ⌘[
  • Forward in history: ⌘]

macOS General

  • Switch between applications: ⌘ tab
  • Spotlight (quick find an application): ⌘ space
  • Screenshot of whole screen: ⌘⇧3
  • Screenshot a selected part of screen: ⌘⇧4
  • Screenshot a selected application: ⌘⇧4 space