CR: Stack II Topics Outline: Difference between revisions
Created page with "==Title== ==Weekly Topics== ==Assignments==" |
No edit summary |
||
(7 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
==Title== | ==Title== | ||
==Learning Objectives== | |||
* learn basics of modern web applications? | |||
* basics of dynamic languages | |||
** first class functions | |||
** functional programming concepts (non-mutability) | |||
* basics of databases | |||
** data representation | |||
** query languages | |||
* basics of distributed applications | |||
** latency vs. bandwidth | |||
** reliability concerns | |||
** state vs. stateless | |||
==Weekly Topics== | ==Weekly Topics== | ||
* Modern web architecture | |||
* HTML, CSS: markup languages | |||
* client-server, stateless vs. stateful servers, HTTP (cookies & other state) | |||
* Server-side scripting: PHP | |||
* Database schemas | |||
* Database query languages & semantics (logic) | |||
* Dynamic memory management (garbage collection) | |||
* lexical and dynamic scoping | |||
* functions as first-class objects, functions that generate other functions | |||
* eval, JSON | |||
* domain-specific languages: SQL | |||
* embedded interpreters | |||
* scalability for data: NoSQL approaches, database caches | |||
* mapreduce | |||
==Assignments== | ==Assignments== | ||
# PHP/HTML introduction (dynamic generation of web pages) | |||
# PHP & Databases: simple SQL | |||
# RPC: REST, SOAP, legacy | |||
# runtime generation of client code: PHP->JavaScript (AJAX) + DB | |||
# first-class functions for dynamic code generation (JavaScript) + DB | |||
# closures, scoping + DB | |||
# JavaScript interpreter in Java (Rhino?) | |||
# scalable database? (BigTable-like?) |
Latest revision as of 16:33, 9 February 2011
Title
Learning Objectives
- learn basics of modern web applications?
- basics of dynamic languages
- first class functions
- functional programming concepts (non-mutability)
- basics of databases
- data representation
- query languages
- basics of distributed applications
- latency vs. bandwidth
- reliability concerns
- state vs. stateless
Weekly Topics
- Modern web architecture
- HTML, CSS: markup languages
- client-server, stateless vs. stateful servers, HTTP (cookies & other state)
- Server-side scripting: PHP
- Database schemas
- Database query languages & semantics (logic)
- Dynamic memory management (garbage collection)
- lexical and dynamic scoping
- functions as first-class objects, functions that generate other functions
- eval, JSON
- domain-specific languages: SQL
- embedded interpreters
- scalability for data: NoSQL approaches, database caches
- mapreduce
Assignments
- PHP/HTML introduction (dynamic generation of web pages)
- PHP & Databases: simple SQL
- RPC: REST, SOAP, legacy
- runtime generation of client code: PHP->JavaScript (AJAX) + DB
- first-class functions for dynamic code generation (JavaScript) + DB
- closures, scoping + DB
- JavaScript interpreter in Java (Rhino?)
- scalable database? (BigTable-like?)