# Intro to Computational Language

### Hello! ICL

#### This is an online syllabus for the 'Intro to Computational Language' so called 'ICL' class.

#### [Processing](https://processing.org/) has been a great tool for the media artists, creative technologists, designers, educators and etc. And here we have [p5.js](https://p5js.org/), a javascript library which promotes the same goal as the processing. It has come to this internet world because the web is to be alive forever.&#x20;

#### At the browser, we have P5.js which welcomes you to experiment your intentions in media. A great thing about the P5.js is we have a youtube channel by [Daniel Shiffman](https://www.youtube.com/user/shiffman) at [NYU ITP](https://tisch.nyu.edu/itp). You can subscribe and easily learn p5.js, and even cutting-edge machine learning.&#x20;

#### You can learn more about p5.js[ here](https://p5js.org/).  The great thing about the [p5.js](https://p5js.org/) is that you can learn the mechanisms of the coding environment. Just like when you are learning a new language you learn how to use a dictionary, you can learn the mechanisms of how to learn a new computational language and eventually learn how to vitalize yourself from 'illiterate' to 'literate' in any language.

### Schedule <a href="#schedule" id="schedule"></a>

1. Introduction and Workflow(Javascript, Text Editor)
2. Introduction and Drawing
3. Animation and Variables, Interaction
4. If Statements, Repeat Loops
5. Functions: the basics
6. Objects and Arrays
7. Events and Callback Function
8. Data
9. Video and Sound
10. Mobile and Chrome
11. After p5.js - Final Project Proposal 1
12. Web Socket and Node - Final Project Proposal 2
13. User Testing
14. Final Presentation 1
15. Final Presentation 2

### Books

* **Getting Started with p5.js (Recommended) :** [**Link**](http://shop.oreilly.com/product/0636920032076.do)
* **JavaScript: The Good Parts** (**Recommended**) : [**Link**](https://www.amazon.com/JavaScript-Good-Parts-Douglas-Crockford/dp/0596517742)

### Resources

{% embed url="<https://www.w3schools.com/>" %}

{% embed url="<https://p5js.org/>" %}

{% embed url="<https://www.youtube.com/user/shiffman>" %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://icl.doyoki.com/master.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
