No edit summary |
|||
(18 intermediate revisions by the same user not shown) | |||
Line 2: | Line 2: | ||
Computational Thinking for Artists, Designers and Architects<br /> | Computational Thinking for Artists, Designers and Architects<br /> | ||
''Instructor:'' [[Jason Reizner]]<br/> | ''Instructor:'' [[Jason Reizner]]<br/> | ||
''Credits:'' 6 [[ECTS]], | ''Credits:'' 6 [[ECTS]], 4 [[SWS]]<br/> | ||
''Capacity:'' max. 15 students (see registration information below)<br/> | ''Capacity:'' max. 15 students (see registration information below)<br/> | ||
''Language:'' English<br/> | ''Language:'' English<br/> | ||
''[[Zeitraster|Date]]:'' Monday, 13:30 to 15:00<br/> | ''[[Zeitraster|Date]]:'' Monday, Lecture 13:30 to 15:00, Lab 15:15 to 16:45<br/> | ||
''Location:'' Marienstr. 7b, Room 103<br/> | ''Location:'' Marienstr. 7b, Room 103<br/> | ||
''First Meeting:'' ''' | ''First Meeting:'' '''Monday, 10 April 2017, 13:30''' | ||
==Description== | ==Description== | ||
"Computational thinking involves solving problems, designing systems, and understanding human behavior, by drawing on the concepts fundamental to computer science." – Jeannette M. Wing (2006) | "Computational thinking involves solving problems, designing systems, and understanding human behavior, by drawing on the concepts fundamental to computer science."<br /><em>– Jeannette M. Wing (2006)</em><br /><br /> | ||
Not everyone is a programmer, yet artists, designers and architects increasingly find it necessary to be able to think like one. Post-analog creative practice demands a functional understanding of computational processes in order to articulate ideas and realize projects programatically. This module introduces core computer science principles and programming concepts including data structures, variables, operators, control structures and functions, enabling participants to become familiar with C-syntax languages and develop the skills necessary to work effectively in Javascript, Processing or C/C++. Participants will also focus on identifying, selecting and implementing appropriate external resources, dependencies and libraries, while addressing relevant software development topics including design patterns, documentation and commenting, debugging, version control and licensing. | Not everyone is a programmer, yet artists, designers and architects increasingly find it necessary to be able to think like one. Post-analog creative practice demands a functional understanding of computational processes in order to articulate ideas and realize projects programatically. This module introduces core computer science principles and programming concepts including data structures, variables, operators, control structures and functions, enabling participants to become familiar with C-syntax languages and develop the skills necessary to work effectively in Javascript, Processing or C/C++. Participants will also focus on identifying, selecting and implementing appropriate external resources, dependencies and libraries, while addressing relevant software development topics including design patterns, documentation and commenting, debugging, version control and licensing. | ||
Line 19: | Line 19: | ||
==Registration procedure== | ==Registration procedure== | ||
<em>Media Art and Design MFA Program:</em> Registration through the official Faculty Modulbörse/Kurswahl on 3-4 April 2017<br /><br /> | <em>Media Art and Design MFA Program:</em><br />Registration through the official Faculty Modulbörse/Kurswahl on 3-4 April 2017<br /><br /> | ||
<em>Other Programs (MediaArchitecture, HCI, International Exchange et.c.):</em> Send an Email with a letter of motivation to jason.reizner [ät] uni-weimar.de before 8 April 2017 | <em>Other Programs (MediaArchitecture, HCI, International Exchange et.c.):</em><br />Send an Email with a letter of motivation to jason.reizner [ät] uni-weimar.de before 8 April 2017 | ||
==Evaluation== | ==Evaluation== | ||
Line 31: | Line 31: | ||
==Syllabus (subject to change)== | ==Syllabus (subject to change)== | ||
''' | <br /> | ||
'''10 April 2017'''<br /> | |||
''Week 1''<br /> | |||
Introduction<br /> | Introduction<br /> | ||
Course Organization<br /> | Course Organization<br /> | ||
Line 37: | Line 39: | ||
<br /> | <br /> | ||
[[/EvaluationRubric | Semester Evaluation Rubric]]<br /> | [[/EvaluationRubric | Semester Evaluation Rubric]]<br /> | ||
[[/Assignment-10Apr17 | Assignment]]<br /> | |||
<br /><br /> | |||
'''17 April 2017'''<br /> | |||
''Week 2''<br /> | |||
No Class - Easter Monday<br /> | |||
<br /><br /> | |||
'''24 April 2017'''<br /> | |||
''Week 3''<br /> | |||
An abridged history of Computing<br /> | |||
What is Computational Thinking?<br /> | |||
<br /> | |||
[[/Sources-24Apr17 | Sources and Links from the Lecture]]<br /> | |||
[[/Assignment-24Apr17 | Assignment]]<br /> | |||
[[/SemesterProject | Semester Project Overview]]<br /> | |||
<br /><br /> | |||
'''1 May 2017'''<br /> | |||
''Week 4''<br /> | |||
No Class - Tag der Arbeit<br /> | |||
<br /><br /> | |||
'''8 May 2017'''<br /> | |||
''Week 5''<br /> | |||
'''Attention: No Class due to Deutsche Bahn'''<br /> | |||
<br /> | |||
Due to last-minute travel plan changes made necessary by the German Railway, this class meeting has been cancelled.<br /><br /> | |||
Please make sure you have completed the tasks from [[/Assignment-24Apr17 | 24. April]]<br /> | |||
and review the following text "On Software, or the Persistence of Visual Knowledge" from Wendy Chun for next week:<br /> | |||
http://www.brown.edu/Departments/MCM/people/chun/papers/software.pdf<br /> | |||
<br /> | |||
<br /> | |||
'''15 May 2017'''<br /> | |||
''Week 6''<br /> | |||
Foo = Bar: Variables and Data Types<br /> | |||
Hello, World: Functions and Operators<br /> | |||
if, while, do, for, else: Iteration and Control Structures<br /> | |||
<br /> | |||
[[/Sources-15May17 | Sources and Links from the Lecture]]<br /> | |||
[[/Assignment-15May17 | Assignment]]<br /> | |||
<br /> | |||
<br /> | |||
'''22 May 2017'''<br /> | |||
''Week 7''<br /> | |||
Pseudocode Show-n-Tell Discussion Round<br /> | |||
Under the Hood: Interpreters vs. Compilers<br /> | |||
or, See where the sausage is made<br /> | |||
<br /> | |||
[[/Sources-22May17 | Sources and Links from the Lecture]]<br /> | |||
[[/Assignment-22May17 | Assignment]]<br /> | |||
<br /> | |||
<br /> | |||
'''29 May 2017'''<br /> | |||
''Week 8''<br /> | |||
Recap: Iteration & Recursion, Interpreters & Compilers<br /> | |||
Why is this happening to me?<br /> | |||
Debugging & Existentialism<br /> | |||
<br /> | |||
[[/Sources-29May17 | Sources and Links from the Lecture]]<br /> | |||
[[/Assignment-29May17 | Assignment]]<br /> | |||
<br /> | |||
<br /> | |||
'''5 June 2017'''<br /> | |||
''Week 9''<br /> | |||
No Class - Pfingstmontag<br /> | |||
<br /> | |||
<br /> | |||
'''12 June 2017'''<br /> | |||
''Week 10''<br /> | |||
Midterm Presentations<br /> | |||
<br /> | |||
<br / > | |||
'''19 June 2017'''<br /> | |||
''Week 11''<br /> | |||
Libraries, Dependencies and Blobs<br /> | |||
Don't Copy that Floppy: Licensing, Attribution, Open Sources, Piracy<br /> | |||
<br /> | |||
[[/Sources-19Jun17 | Sources and Links from the Lecture]]<br /> | |||
[[/Assignment-19Jun17 | Assignment]]<br /> | |||
<br /><br /> | |||
'''26 June 2017'''<br /> | |||
''Week 12''<br /> | |||
Design Patterns and Architectural Considerations<br /> | |||
<br /> | |||
[[/Sources-26Jun17 | Sources and Links from the Lecture]]<br /> | |||
[[/Assignment-26Jun17 | Assignment]]<br /> | |||
<br /> | |||
<br /> | |||
'''3 July 2017'''<br /> | |||
''Week 13''<br /> | |||
No Class - xCoAx2017 Lisboa<br /> | |||
<br /> | |||
<br /> | |||
'''10 July 2017'''<br /> | |||
''Week 14''<br /> | |||
Commenting, Documentation and the Needs of Humans<br /> | |||
<br /> | |||
[[/Sources-10Jul16 | Sources and Links from the Lecture]]<br /> | |||
[[/Assignment-10Jul16 | Assignment]]<br /> | |||
<br /> | |||
<br /> | |||
'''17 July'''<br /> | |||
''Week 15''<br /> | |||
Final Presentations<br /> | |||
<br /> | |||
<br /> |
Latest revision as of 13:31, 2 June 2017
Fachmodul
Computational Thinking for Artists, Designers and Architects
Instructor: Jason Reizner
Credits: 6 ECTS, 4 SWS
Capacity: max. 15 students (see registration information below)
Language: English
Date: Monday, Lecture 13:30 to 15:00, Lab 15:15 to 16:45
Location: Marienstr. 7b, Room 103
First Meeting: Monday, 10 April 2017, 13:30
Description
"Computational thinking involves solving problems, designing systems, and understanding human behavior, by drawing on the concepts fundamental to computer science."
– Jeannette M. Wing (2006)
Not everyone is a programmer, yet artists, designers and architects increasingly find it necessary to be able to think like one. Post-analog creative practice demands a functional understanding of computational processes in order to articulate ideas and realize projects programatically. This module introduces core computer science principles and programming concepts including data structures, variables, operators, control structures and functions, enabling participants to become familiar with C-syntax languages and develop the skills necessary to work effectively in Javascript, Processing or C/C++. Participants will also focus on identifying, selecting and implementing appropriate external resources, dependencies and libraries, while addressing relevant software development topics including design patterns, documentation and commenting, debugging, version control and licensing.
Admission requirements
Previous enrollment in an IFD course offering, or with instructor permission.
Registration procedure
Media Art and Design MFA Program:
Registration through the official Faculty Modulbörse/Kurswahl on 3-4 April 2017
Other Programs (MediaArchitecture, HCI, International Exchange et.c.):
Send an Email with a letter of motivation to jason.reizner [ät] uni-weimar.de before 8 April 2017
Evaluation
Successful completion of the course is dependent on regular attendance, active participation, completion of weekly assignments and delivery of a relevant semester project. Please refer to the Evaluation Rubric for more details.
Eligible participants
Fachmodul:
MFA Medienkunst/-gestaltung, MFA Media Art and Design, MSc MediaArchitecture
Syllabus (subject to change)
10 April 2017
Week 1
Introduction
Course Organization
Administrative Housekeeping
Semester Evaluation Rubric
Assignment
17 April 2017
Week 2
No Class - Easter Monday
24 April 2017
Week 3
An abridged history of Computing
What is Computational Thinking?
Sources and Links from the Lecture
Assignment
Semester Project Overview
1 May 2017
Week 4
No Class - Tag der Arbeit
8 May 2017
Week 5
Attention: No Class due to Deutsche Bahn
Due to last-minute travel plan changes made necessary by the German Railway, this class meeting has been cancelled.
Please make sure you have completed the tasks from 24. April
and review the following text "On Software, or the Persistence of Visual Knowledge" from Wendy Chun for next week:
http://www.brown.edu/Departments/MCM/people/chun/papers/software.pdf
15 May 2017
Week 6
Foo = Bar: Variables and Data Types
Hello, World: Functions and Operators
if, while, do, for, else: Iteration and Control Structures
Sources and Links from the Lecture
Assignment
22 May 2017
Week 7
Pseudocode Show-n-Tell Discussion Round
Under the Hood: Interpreters vs. Compilers
or, See where the sausage is made
Sources and Links from the Lecture
Assignment
29 May 2017
Week 8
Recap: Iteration & Recursion, Interpreters & Compilers
Why is this happening to me?
Debugging & Existentialism
Sources and Links from the Lecture
Assignment
5 June 2017
Week 9
No Class - Pfingstmontag
12 June 2017
Week 10
Midterm Presentations
19 June 2017
Week 11
Libraries, Dependencies and Blobs
Don't Copy that Floppy: Licensing, Attribution, Open Sources, Piracy
Sources and Links from the Lecture
Assignment
26 June 2017
Week 12
Design Patterns and Architectural Considerations
Sources and Links from the Lecture
Assignment
3 July 2017
Week 13
No Class - xCoAx2017 Lisboa
10 July 2017
Week 14
Commenting, Documentation and the Needs of Humans
Sources and Links from the Lecture
Assignment
17 July
Week 15
Final Presentations