Wednesday, January 19, 2011

Intro to Computers For Everyone

FROM URL: http://www.cs.jhu.edu/~kchurch

1.       Scratch

a.       http://scratch.mit.edu/

b.      Keywords to try: Circle_Circus, Fold Symmetry, Rubik's Cube, Guitar Hero, BigPaw

c.       http://info.scratch.mit.edu/Support/Videos

d.      Homework: Suppose you have a 12-year-old kid sister.  Design a scratch project for her.  Ok to start with some other student's project and ask her to modify it in some interesting way.  The project should be fun (and educational), and make her want to learn more.

2.       Unix for Poets (Small is Beautiful)

a.       If you don't have access to Unix, try this: http://www.cygwin.com/

b.      https://jshare.johnshopkins.edu/kchurch4/public_html/wwwfiles/tutorials/unix_for_poets.ps

c.       http://people.sslmit.unibo.it/~baroni/compling04/UnixforPoets.pdf

d.      http://www.faqs.org/docs/artu/ch01s06.html

e.      http://en.wikipedia.org/wiki/Douglas_McIlroy

f.        Optional

                                                               i.      Ancestry of Linux - How the fun began presentation, Nov 2005 (presentation) (audio) (video)  

                                                             ii.      http://www.cs.dartmouth.edu/~sinclair/doug/

g.       Video Response: http://video.google.com/videoplay?docid=-8860158196198824415#

h.      http://www.cs.ucsb.edu/~ravenben/papers/coreos/Hoa81.pdf

i.         Homework: follow the links above.  Complete as much of the Unix for Poets that you can do in 2 hours (but save a third hour for the video response)

3.       Chomsky Hierarchy, Python & NLTK

a.       http://en.wikipedia.org/wiki/Chomsky_hierarchy

b.      Chomsky, Noam (1956). "Three models for the description of language". IRE Transactions on Information Theory (2): 113–124. http://www.chomsky.info/articles/195609--.pdf. 

4.       Web Programming

a.       HTML

b.      Javascript (with sound)

                                                               i.      http://www.webcodingtech.com/javascript/tablecell-colorchange.php

                                                             ii.      http://www.w3schools.com/HTML/html_colorvalues.asp

c.       Forms

d.      Tables

                                                               i.      http://www.w3schools.com/html/tryit.asp?filename=tryhtml_tables

                                                             ii.      Tables

                                                            iii.      Via Word

e.      Homework: Make a form that uses the following features: tables, input text box, drop down menu, radio buttons, submit button, HREFs, images & sounds.

f.        Hint:  If you don't know how to use one of these features…

                                                               i.      Textbooks/References (not recommended)

                                                             ii.      Google for documentation (such as this)

                                                            iii.      Learn by example: Google for a page that uses a feature and then view source

                                                           iv.      Word for Windows

                                                             v.      Word of mouth (don't be afraid to ask a friend for help)

5.       Facebook

a.       http://www.mathcs.emory.edu/~eugene/cs190/

6.       Search Engines & Crawling (wget)

7.       World Wide Telescope

8.       Databases (MySQL)

9.       Statistics Packages (R, Excel)

a.       R

                                                               i.      http://cran.r-project.org/

                                                             ii.      data = read.table(http://www.stat.umn.edu/geyer/5102/data/ex5-1.txt, header=T); plot(data); g = glm(data$y ~ data$x); abline(g); summary(g)

                                                            iii.      http://www.stat.umn.edu/geyer/5102/examp/reg.html

                                                           iv.      http://www.ats.ucla.edu/stat/r/dae/logit.htm

                                                             v.      http://www.cs.uiowa.edu/~jcryer/JSMTalk2001.pdf

10.   Symbolic Processing

a.       Numeric Series & Web Search

                                                               i.      http://www.wolframalpha.com/input/?i=derivative+of+x%5E2+%2B+x

                                                             ii.      http://www.wolframalpha.com/input/?i=integral+of+x%5E2+%2B+x

                                                            iii.      http://www.wolframalpha.com/screencast/introducingwolframalpha.html

                                                           iv.      http://www.research.att.com/~njas/sequences/index.html?q=1%2C2%2C3%2C5%2C8&language=english

                                                             v.      http://www.research.att.com/~njas/sequences/?q=catalan&sort=0&fmt=0&language=english

                                                           vi.      http://www.wolframalpha.com/input/?i=1%2C+2%2C+3%2C+5%2C+8%2C+13%2C+21

b.      Lisp & Symbolic Differentiation

                                                               i.      http://common-lisp.net/project/lispbox/

                                                             ii.      http://en.wikipedia.org/wiki/Read-eval-print_loop

                                                            iii.      http://www.paulgraham.com/rootsoflisp.html

                                                           iv.      http://mitpress.mit.edu/sicp/full-text/sicp/book/node39.html

c.       Homework: Expand the symbolic differentiation (using Lisp, or any other programming language)

11.   Lambda Calculus & Scheme

a.       http://en.wikipedia.org/wiki/Scheme_(programming_language)

b.      http://jscheme.sourceforge.net/jscheme/contrib/jswebapp/jscheme/demo/JSchemeEvaluator.html

c.       http://en.wikipedia.org/wiki/Lambda_calculus

d.      http://www.cs.bham.ac.uk/~axj/pub/papers/lambda-calculus.pdf

e.      http://www.allisons.org/ll/FP/Lambda/Introduction/

f.        http://www.mactech.com/articles/mactech/Vol.07/07.05/LambdaCalculus/

g.       http://www.jetcafe.org/jim/lambda.html

h.      Homework: http://worrydream.com/AlligatorEggs/

12.   C

a.       http://madison-project.wdfiles.com/local--files/tutorials/The_C_Programming_Language.pdf

b.      http://www.jetcafe.org/jim/highlowc.html

c.       http://home.earthlink.net/~momotuk/pointers.pdf

d.      Suffix Arrays

e.      http://www.research.att.com/~bs/hopl2.pdf

13.   Algol

a.       http://portal.acm.org/citation.cfm?id=356671

b.      Example of Design by Committee: http://www.masswerk.at/algol60/report.htm

14.   Cloud Computing (MapReduce, Google File System & Hadoop)

a.       http://labs.google.com/papers/mapreduce.html

b.      http://labs.google.com/papers/gfs.html

c.       http://labs.google.com/papers/bigtable.html

d.      http://aws.amazon.com/

e.      http://perspectives.mvdirona.com/2008/10/11/Hotnets2008Paper.aspx

f.        http://www.alphaworks.ibm.com/tech/mapreducetools

g.       http://hadoop.apache.org/common/docs/current/mapred_tutorial.html

h.      http://www.cloudera.com/hadoop-training-thinking-at-scale

No comments:

Post a Comment