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?)