Oct 4
discuss homework & projects
Do a demo of how to use the javascript console debugger
to look a script, set breakpoints, examine variables,
and try things out.
Talk about status of midterm projects.
A more complete description of what I'm looking for
has been posted on the assignments page.
silly season
more javascript corners
"Same origin policy" - implications and variations
When loading web pages with file:/// (i.e. just on your local machine),
even .js files in the same folder don't qualify as "same origin"
for ajax by Chrome & Firefox standards. (Go figure.)
Sam demo of origin policy:
Sam timeout example:
Sam google maps demo
Jim's futzing with google maps
Google "google api services" to see the several dozen web services they run.
(ads, analytics, maps, translation, url shortening, ...)
misc related
Another html + css + js playspace :
Another js host repo (more choices than google's)
LaTeX in javascript
TODO: add mathjax to cdnjs via github push ??
discuss testing of websites
After you write it, how do you know if it works?
Testing is typically a big part of writing code.
With web services, browsers, GUIs, ... it can
be harder to build in a test framework.
Here are some possibilities
http://doctestjs.org
doctests (a la python) for javascript
http://pivotal.github.com/jasmine/
"Jasmine is a behavior-driven development
framework for testing JavaScript code."
http://seleniumhq.org/
"Selenium automates browsers."
https://www.owasp.org/index.php/Appendix_A:_Testing_Tools
lists of security related web site testing tools
http://www.froglogic.com/squish/gui-testing/
Dr Dobb's best software in the category;
propietary GUI testing system
big suite of tools - no clear price listed
(which likely means it's an expensive
licensing system aimed at pro shops)
http://www.joedog.org/siege-home/
http load testing and benchmarking
sql
Depending on time, start talking more specifically about SQL databases
There are several common ways to interact with these engines:
- application GUI
- web interface
- command line
- ORM : object-oriented api in a programming language
Common tasks:
- create database
- create user accounts, give privileges on databases
- configure web scripts to connect to database (as given user)
- create tables with given fields and relations
- add/delete rows ("things") to a table in a database
- delete row
- find some fields from some tables that match some criteria
Talking to the mysql prompt at the command line :
$ ssh csmarlboro.org
$ alias cssql
$ cssql csplay
mysql>
GUI example ?
... see where the discussion goes.