370 likes | 560 Views
Berkeley School of Information, Fall 2011. Information Organization Lab. Critical info. Me: Benjamin Hill bhill@ischool TAs: Karen Rustad, karen@ischool 2 Support: (whole bunch of people) http://www.piazza.com/class#290ta Class times: Mon 5:30-7 (Lectures) Thurs 3:30-5 (Lab-Lab)
E N D
Berkeley School of Information, Fall 2011 Information Organization Lab
Critical info • Me: Benjamin Hill • bhill@ischool • TAs: • Karen Rustad, karen@ischool • 2 • Support: • (whole bunch of people) • http://www.piazza.com/class#290ta • Class times: • Mon 5:30-7 (Lectures) • Thurs 3:30-5 (Lab-Lab) • Projects: 4 3-week, 1 final • Grading:
Get from this course • [Be | hire & work with] internet ninja developers • Less fear of trying new languages, toolkits, platforms • Sense of what • tools are out there • is possible vs. is still really hard • are signs you should prototype first • Information management group work • Fun time playing and building cool stuff • Play a new role in a group • Prototype rapidly • Build resume
Should/Should Not Take? • Brand new to coding: -1 • Did some HTML or JavaScript or Flash before: +1 • Knows some programming (java, python, JavaScript, etc) but wants to get all crazy: +2 • Web guru with extensive knowledge of App Engine, ABC on Rails, Map-Reduce, etc: Maybe you should guest lecture?
Tools This space intentionally left blank
What this course isn’t INFO 202 Information Organization and Retrieval
What this course isn’t INFO 290 Mixing and Remixing Information
What this course isn’t INFO 290 Information Systems Clinic
What this course isn’t A Traditional Class
Each Class • Theory for a few minutes • (without laptops. Or note taking. Or tweets. Brains and ears and mouths.) • Demo of the tech or concept • With real code typed out, laptops a-flyin. • You may be asked to research bits of it, contribute a function live, or jump in and correct the presenter’s horrible misunderstanding. • Additional time to • Answer questions • Work in groups • Demo days • Discuss and critique (constructively!!)
Not Just Tech • Agile/SCRUM • Stories and Estimation, Scoping • Task Breakdown • Rapid Iteration • Experience with Rally • Test driven development • When a test framework is worth it
Syllabus and Projects • http://courses.ischool.berkeley.edu/i290-iol/f11/syllabus.php • http://courses.ischool.berkeley.edu/i290-iol/f11/projects.php
“Office”“Hours” • Virtual, on-demand • (your dime!) • Combination of email, mailing list, and blog comments • bhill@ischool, thing1@ischool, thing2@ischool
Intros • Within 25 seconds: • Your name • Where you were right before the iSchool • Your interest in this course • Save for the survey: • 1 thing good at (for this course!) • 1 thing you want to be good at (for this course!) … break next
Memex “The human mind does not work that way. It operates by association. With one item in its grasp, it snaps instantly to the next that is suggested by the association of thoughts, in accordance with some intricate web of trails carried by the cells of the brain. It has other characteristics, of course; trails that are not frequently followed are prone to fade, items are not fully permanent, memory is transitory. Yet the speed of action, the intricacy of trails, the detail of mental pictures, is awe-inspiring beyond all else in nature. It affords an immediate step, however, to associative indexing, the basic idea of which is a provision whereby any item may be caused at will to select immediately and automatically another. This is the essential feature of the memex. The process of tying two items together is the important thing.”
The owner of the memex, let us say, is interested in the origin and properties of the bow and arrow. Specifically he is studying why the short Turkish bow was apparently superior to the English long bow in the skirmishes of the Crusades. He has dozens of possibly pertinent books and articles in his memex. First he runs through an encyclopedia, finds an interesting but sketchy article, leaves it projected. Next, in a history, he finds another pertinent item, and ties the two together. Thus he goes, building a trail of many items. Occasionally he inserts a comment of his own, either linking it into the main trail or joining it by a side trail to a particular item. When it becomes evident that the elastic properties of available materials had a great deal to do with the bow, he branches off on a side trail which takes him through textbooks on elasticity and tables of physical constants. He inserts a page of longhand analysis of his own. Thus he builds a trail of his interest through the maze of materials available to him. And his trails do not fade. .
Demo • Sometimes me standing & typing / you staring & thinking • Sometimes everyone typing in parallel on the same thing • Sometimes everyone coding up a link in the chain
Why Demo? • How to skim existing code • Experience with estimating “Can it be done (easily)?” • Showing you that the next isn’t impenetrable
“The Hard Way” • Why JavaScript? • Ugly • Overly permissive, allows you to shoot yourself in the foot • Not consistent across browsers • BUT: Everyone can run it! Everyone can code it! No need for a compiler, IDE, $ for dev access, separate code for mobile, etc. • Kinda fun once you get used to it • learnpythonthehardway.org • strange, but works
For Next Week • Install Chrome or Firebug for next week’s lecture about JavaScript tools. • Complete the online skills assessment and lab Doodle. • Join the iolab@ischool mailing list. • Short reading: “Emanuel Goldberg, Electronic Document Retrieval, And Vannevar Bush's Memex” You can find links to help with all of these on the course website at http://courses.ischool.berkeley.edu/i290-iol/f11/
Class Plot Arcs • September • Javascript, CSS, browser extensions oh my • October • start programming in Python • Google App Engine • Mobile (replacing semantic web) • November • focus is on retrieval Projects • controlled vocabularies • tools for interacting with controlled vocabularies • Learn about sources for controlled vocabularies. • social and distributed classification • the messy world of tagging, folksonomy. • Mobile • (TODO) • retrieval • tf/idf, document search • a bit more open-ended.
Mobile • Let’s build a mobile version of our product! FAIL • Let’s make sure the mobile interface and experience with our product is great! WIN
Focus on Features • A group installed mysql, deploy script, jengo, etc … but than had no time for app logic! Don’t be this group. • How to tell when to write it yourself and when to use a library. • how to "smell" if a library’s maturity (documentation, completeness) is worth your time. • If (when) you use libraries, cite them