Werkmodul | Fachmodul
Lecturer: Michael Markert
Credits: 6 ECTS, 3 SWS
Date: Tuesdays, 13:30 until 16:00 h
Venue: Marienstraße 7b, Room 105
First meeting: Tuesday, 22. October 2013
Beschreibung
Wolltest du schon immer eine App für dein iPhone erstellen? Oder hast du eine tolle Idee für ein "Creative Coding Experience" auf deinem iPad? Hast du ein neues Android Tablett und möchtest etwas schickes damit machen? Das ist deine Chance!
Wir werden mit den neuesten cross-platform HTML5 Web-Technologien arbeiten (hauptsächlich mit der ECMA Scriptsprache, besser bekannt als JavaScript; inklusive CSS3), um Apps zu erstellen, die auf deinem internetfähigen mobilen Endgerät laufen.
Themen:
- siehe englische Auflistung
Dieser Kurs wird je nach Bedarf höchstwahrscheinlich auf Englisch abgehalten.
Hinweis: Wer mit mehreren Endgeräten und Web-Synchronisation arbeiten will, dem wird der gleichzeitige Besuch des Werk-/Fachmoduls von Kollege Gabriel Rausch empfohlen, das auch auf Serverseitige Programmierung eingeht. Aus zeitlichen Gründen können wir das in diesem Kurs nicht tun.
English description
Did you ever wish to design an app for your iPhone? Or do you have an idea for this nice creative coding experience on your iPad? Do you have a new Android Tablet and want to make something cool with it? This is your chance!
We will work with the latest cross-platform HTML5 web technologies (mainly the ECMA scripting language, better known as JavaScript; including CSS3) to create applications that will run on your mobile device.
Topics will be:
- Creative Coding on mobile devices
- Introduction to Programming
- Variables
- Functions / Methods
- Objects
- Events
- Best practices and Software Design Patterns (Accessors: Getters/Setters, Creating Objects, Modules…)
- ECMA Script (JavaScript)
- CSS3 (Design, Animation, Transition…)
- HTML5 (Multitouch, Geolocation, Device Orientation, Local Storage, Canvas, WebAudio, SVG...)
- Communication Protocols (JSON, AJAX with XMLHttpRequest), using the API of WebServices (Google, FlickR, Twitter, Yahoo Pipes, Facebook...)
- JavaScript Libraries (Processing.js, Paper.js, D3.js, jQuery Mobile and many more…)
- Webapps and Hybrid Apps (that's a webApp that is wrapped in a native application that you can download from an app store)
This course will most likely be held in English
Requirements
- Your own computer (Laptop) with a proper plain text code editor
- Your own mobile device that's capable of browsing the internet
- If you have a computer running Mac OS X 10.7 or newer, you'll get a free copy of Procoding
- If you have an iPhone, iPad or iPod Touch running iOS 7 or newer, you'll get a free copy of Procoding Mobile
- Procoding is not required, if you have another system, you'll get a starter package that you can edit with the code editor of your choice.
Registration Procedure
THE COURSE IS FULL. NO MORE REGISTRATIONS ACCEPTED.
Assignment
- Regular and active participation
- Working on the weekly assignments and documenting them in this Wiki
- Presentation of your work in progress in the course
- Presentation of your work at the IFD:Showreel
- Final hand-in (in this Wiki) with short documentation at the end of the term
Student Projects
Please copy this first entry (NameOrPseudonym) and make your own subpages:
- That's what the Wiki-Code means:
- The first two brackets create a infernal link in this wiki (this creates a new page).
- The slash "/" makes the page a subpage of this page
- /NameOderPseudonym <-- Please copy this link and use your own name (this is a public wiki!).
- /Charlotte
- /mantik
- /Anastasiya Pavelchuk
- /Sabina
- /Xianzhi
- /MartinMelcher
- /NataSuu
- /YorGarcia
- /AndrésArteaga
- /Bastiny
- /Julia
- /Jano
- /ElMerino
Btw:
Help shows how to edit in this wiki; How to upload and use images. Please do not upload content that you did not create.
Eligible participants
- Bachelor Students Media Art & Design
- Master Students Media Art & Design
- Master Students MediaArchitecture
- All others: if you're interested, get in contact with Michael!
Syllabus
Preliminary schedule:
- 22.10. First meeting, Intro & Showcase
- 29.10. HTML, CSS & jQuery Mobile
05.11. no classdue to an excursion!- 12.11. CSS, JavaScript (ECMA): Variables & Functions
- 19.11. Objects
- 26.11. Event Handlers (Drawing with a Touch)
- 03.12. Networking (XMLHttpRequest), Yahoo Pipes (XML to JSON)
- 10.12. Geolocation & Device Orientation
- 17.12. Communication Part II (FlickR API)
- 07.01. SVG
- 14.01. JS Libs Part I
- 21.01. JS Libs Part II
- 28.01. Hybrid Apps Part I
- 04.02. Hybrid Apps Part II
- 31.03. tba
Links
Literature
Beginners:
- Marijn Haverbeke: Die Kunst der JavaScript Programmierung (DE) / Eloquent JavaScript (EN), ISBN 9873898647878, http://marijnhaverbeke.nl
- Florian Franke: Apps mit HTML5 und CSS3: für iPad, iPhone und Android (DE), ISBN 978-3836218481
Advanced:
- Stoyan Stefanov: O'Reilly JavaScript Patterns, ISBN 978-0596806750
Processing and Processing.js:
- Daniel Shiffman: Pixels, Patterns, and Processing: A Beginner's Guide to Programming Images, Animation, and Interaction, ISBN 978-0123736024
- Daniel Shiffman: The Nature of Code: Simulating Natural Systems with Processing, ISBN 978-0985930806, http://natureofcode.com