Introduction to Distributed Computing Applications and Infrastructure (i206)
Welcome to i206, a course focused on essential computer science concepts related to distributed computing applications and infrastructure. You will gain insights into various methodologies, tools, and principles that form the backbone of distributed systems and security. Engage in lectures, labs, and discussions to deepen your understanding and communicate effectively with engineers. This course includes hands-on programming assignments in Java, fostering collaboration and peer learning. Prepare for future technical challenges while catching up on core computational concepts.
Introduction to Distributed Computing Applications and Infrastructure (i206)
E N D
Presentation Transcript
i206: Distributed Computing Applications & Infrastructurehttp://courses.ischool.berkeley.edu/i206/s12/ Spring 2012
Welcome to i206! • The Teaching Team: • Marti Hearst <hearst@ischool> • Alex Chung <achung@ischool> • Monica Rosenberg <monica@ischool> • To reach all three of us: Let’s try using Piazza: http://piazza.com/class#spring2012/info206/
Course Objectives • Learn key computer science concepts. • CS’s “greatest hits” • Jargon changes, first principles don’t • Be able to communicate with engineers. • Peer inside the “black box”. • Catch up on missing math background. • Prepare you for other technical courses.
Distributed Systems Security 206Concept Map Cryptography Network Standards & Protocols Inter-process Communication Methodologies/ Tools Principles OperatingSystem Formal models Application Design Process I/O Algorithms Program Analysis Memory hierarchy Memory Compiler/ Interpreter Assembly Instructions Data Structures Machine Instructions CPU Data storage Circuits Gates Data compression Number Systems Data Boolean Logic Data Representation Binary Numbers Bits & Bytes
Typical CS Topics Not Covered in 206 • Database, data management, info retrieval, … • Artificial intelligence: data mining, NLP, robotics, computer vision, … • Computer graphics • HCI • Languages and Compilers • Theory
i206 Course History • One of the 3 original MIMS core courses • 202, 204 (now 203 and 205), 206 • Assumed deep knowledge of CS • Focused on security and networking • Programming in java • In 2001, i255 (Foundations of Software Design) introduced to help less technical students • Did not cover networking, security • In 2005, i255 merged with i206 • This explains why the course title doesn’t really fit • The slides and assignments will be a blend of mine from i255 and John Chuang’s from i206.
Learning Opportunities • Lectures • Do readings in advance • Discussion encouraged in lecture • Readings • Brookshear,Computer Science: An Overview, 10th Edition • Wikipedia and other readings as needed • Labs • Lead by the TAs • Practice concepts from lecture or programming exercises • Get your questions answered • Homework • Deepen your understanding of the ideas covered in class.
Learning Opportunities • We will all learn from one another! • There are no ‘stupid questions’ in this course • Let’s try the Piazza tool for asking and answering questions online. • http://piazza.com/class#spring2012/info206/
Administrivia • Grading Criteria • Assignments 60% (~7 assignments) • Must be turned in on time (or points reduced) • Tests 30% (three in-class tests) • Class participation 10% • Refer to website for important policies: • Academic integrity • Grading policy (including early/late submissions) • Instructors’ availability • Classroom technology etiquette
Computer architecture Software: Software design Algorithms Data structures Communications: Distributed systems Networking Security Life after 206MIMS Technology Requirement 206 (4 units) 2nd Course electives • 290TA. Information Organization Lab • 219. Privacy, Security, and Cryptography • 240. Principles of Information Retrieval • 242. XML Foundations • 250. Computer-Based Communications Systems and Networks • 256. Applied Natural Language Processing • 257. Database Management • 290. Web Architecture • 290. Mixing and Remixing Information • 290. Social Computing • 290A. XML and Databases • Selected EECS courses • Additional courses (of at least 2 units), on approval by the faculty See Masters Student Manual for updates
Life after MIMS Source: John Sargent, US Department of Commerce
CS Career Advice • Join the ACM (Association of Computing Machinery) • and one or more SIGs (e.g., SIGCHI, SIGCOMM, SIGecom) • Read the monthly CACM • Attend ACM conferences
An i206 Tradition • xkcd.com/rss.xml
Upcoming Reading Assignments • For hyperlinked readings, see course website • http://courses.ischool.berkeley.edu/i206/s12/ • For Lab tomorrow: • Python exercise • For Thursday: • Brookshear 0.1, 0.3, 0.4, 1.4, 1.5, 1.8, 1.9 • For next week: • Brookshear 1.1, 2.1 – 2.4