22
Advanced Topics Introduction to course. Refresher on client/server; JavaScript. Homework: Introduce yourself on moodle. Start posting. Start looking for topic. Start looking at computability videos.

Advanced Topics

  • Upload
    tieve

  • View
    42

  • Download
    3

Embed Size (px)

DESCRIPTION

Advanced Topics. Introduction to course. Refresher on client/server; JavaScript. Homework: Introduce yourself on moodle. Start posting. Start looking for topic. Start looking at computability videos. Introductions. - PowerPoint PPT Presentation

Citation preview

Page 1: Advanced Topics

Advanced Topics

Introduction to course. Refresher on client/server; JavaScript.

Homework: Introduce yourself on moodle. Start posting. Start looking for topic. Start

looking at computability videos.

Page 2: Advanced Topics

Introductions

• me: [full] professor, coordinator of the Math/CS Board of Study; active in New Media Board of Study. 6th book: HTML5 and JavaScript Projects. Articles for <jsmag> http://www.jsmag.com/ . Volunteer for progressive causes

• you:

Page 3: Advanced Topics

Course overview• Check out (and keep checking out) course schedule,

charts on my website: http://faculty.purchase.edu/jeanine.meyer/charts.html and on moodle. You need to do both!

• Various and varied topics chosen by me and (hopefully) some chosen by you.

• Postings by you on computing topics 'in the news': at least one post or reply each week.

• technical exercises: including reporting on use of web (e.g., cookies on your computer, accuracy of geolocation) and some writing programs: e.g. JavaScript&php to access tweets)

• Presentations by you: scheduled on 4 days spread out. ASSIGN YOUR DAY TODAY!– substantial: 20 minutes talk + 1-pager– Your choice of topic. I approve / modify / recommend.

Page 4: Advanced Topics

Topics [planned as of now]

• social media, behavioral marketing, cookies, • databases, formats, Big Data• cryptography• natural language processing, programming

languages• visualization• AI• algorithms, complexity• computability, "P=NP?"• SVG, HTML5 canvas• Cloud computing

Page 5: Advanced Topics

Computability

• What is means to be computable? A question that was posed BEFORE computers. Will describe work of Alan Turing—this is 100th anniversery of his birth.

• What is the complexity of algorithm: how much space and how much time?

• Mathematical approach• Historic and current significance

– How long it takes to compute something is a practical issue!

Page 6: Advanced Topics

Theory of Computation videos

Shai Simonson. Course Webpagehttp://

web.stonehill.edu/compsci//Theory/homepage.htm

Videos are ~10 minutes, so of each lecture is several videos.

• Introduction, motivation, starts with FSA: http://www.youtube.com/watch?v=HyUK5RAJg1c&feature=related

• Turing Machine lecture, http://www.youtube.com/watch?v=mPec64RUCsk

Page 7: Advanced Topics

client/server refresher

• Computer right in front of you is the client• A browser program (e.g. Firefox, Chrome) run

on the client accesses a website on a server. Downloads (to the client) various files, including html and media. Then browser interprets html & JavaScript on the client and also execute programs, possibly using plug-ins

• The browser may initiate a program to run on the server: aka server-side / middleware, that may access data in various ways

Page 8: Advanced Topics

Trend

• In past, and probably still today, bulk of computing in industry done on local computers accessing local data– THINK: banks, factories, distribution centers– Note: IT for logistics critically important.

• TREND is for more to be done "on the cloud", that is, on public or private server computers– program(s)– data

Page 9: Advanced Topics

Trend

• Past and current: Computing done on computers

• embedded devices– e.g., computers in cars

• TREND: more computing done on devices such as phones and tablets– "apps"– programs on websites

Page 10: Advanced Topics

Trend

• History: explicit use of specific programs and data sources.

• TREND: combination of programs and information sources, many applied based on determination (algorithm) of program.– e.g., Some program knows about you and

knows what you want…

Page 11: Advanced Topics
Page 12: Advanced Topics

Posting assignment• Computing in the news.• If appropriate, write about

– the device– what program(s)– what information– who/what/where/when– nature of algorithm

• If appropriate, do research on terms– distinguish product names from technical

terms from marketing terms– consult other sources

Page 13: Advanced Topics

More…

• What is business / revenue stream of owner of produce?– Who is the owner?

Page 14: Advanced Topics

Aside

• VOTE on November 6th• How do current technologies change or

have the potential to change:– how governments operate– how campaigns are run– how news is disseminated– how opinion / analysis is disseminated– how we vote– ????

Page 15: Advanced Topics

JavaScript refresher

• Scripting language run as part of HTML document– script = = interpreted versus compiled

• functions, variables, limited form of objects, statements

• http://www.codecademy.com – pretty easy given you know (at least) one

programming language

Page 16: Advanced Topics

examples• simplified credit card: http://

faculty.purchase.edu/jeanine.meyer/creditcard.html

• dice game: button, input fields (used for output). http://faculty.purchase.edu/jeanine.meyer/javascriptcraps.html General lesson: dividing up tasks into small(er) functions

• transitions: images on canvas, animation http://faculty.purchase.edu/jeanine.meyer/html5/crossingthelineallcases.html

Page 17: Advanced Topics

Sample Research topics

• Will give these throughout course (you can look ahead)– politics– http://www.thetoolbox.cc– technology in education– history, e.g., old technology being replaced (

http://www.nytimes.com/2012/06/28/world/europe/after-3-decades-in-france-minitels-days-are-numbered.html?pagewanted=all

– software tools/packages/frameworks• Example: data-driven documents: http://d3js.org/

Page 18: Advanced Topics

Assignments of dates

• Count off

Page 19: Advanced Topics

Course

• Mainly lecture / discussion– Most lecturing by me, some lecturing by you– Some discussion asynchronous

• You need to work! Make the course your own.– research topics– identify research project

Page 20: Advanced Topics

Posting examplesComputing in the news examples • Bugs

http://www.nytimes.com/2012/08/09/opinion/after-knight-capital-new-code-for-trades.html?hpw

• Mars rover: http://gcn.com/articles/2012/08/06/mars-curiosity-nasa-deep-space-network.aspx

• Patents: http://www.nytimes.com/2012/08/25/technology/jury-reaches-decision-in-apple-samsung-patent-trial.html?hp

• General source: http://www.sciencedaily.com/releases/2012/08/120806094053.htm?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+sciencedaily+%28ScienceDaily%3A+Latest+Science+News%29

Page 21: Advanced Topics

Example

• Lecture series on folding and unfolding– inspired by origami

• http://courses.csail.mit.edu/6.849/fall10/lectures/

• Take the time to view at least the first couple of lectures: video and notes.

Page 22: Advanced Topics

Homework

• Introduce yourself (again) on moodle

• Do JavaScript lessons and check out examples– I will assume that you can read an HTML

document, including understanding JavaScript and, to a lesser extent, CSS.

• Start posting