1 CS312 Course Introduction "Computers are good at following instructions, but not at reading your mind." -Donald Knuth, Tex p. 9 Mike Scott, Gates 6.304.

Slides:



Advertisements
Similar presentations
UIL Computer Science Contest – Advanced Content
Advertisements

CS112: Course Overview George Mason University. Today’s topics Go over the syllabus Go over resources – Marmoset – Blackboard – Piazza – Textbook Highlight.
Introduction to programming with Visual Basic.NET Dr. Marty Sirkin.
Computers in Principle & Practice I - V Deena Engel Computers in Principle and Practice I V , Sections 1 & 2 Fall, 2009 Deena Engel .
CS305j Introduction to Computing Course Introduction 1 Topic 1 Course Introduction Chapman:I didn't expect a kind of Spanish Inquisition. Cardinal Ximinez:
CPSC 181Set 1: Introduction1 CPSC 181 Introduction to Computer Science Spring 2008 Prof. Jennifer Welch Source: slides from Prof. John Keyser.
COMP 110 Introduction to Programming Tabitha Peck M.S. January 9, 2008 MWF 3-3:50 pm Philips 367.
Welcome to Introduction to Java Programming At J.D.O’Bryant Science & Mathematics Chonho Lee Department of Computer Science University of Massachusetts.
CMSC 132: Object-Oriented Programming II
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Adrian Ilie COMP 14 Introduction to Programming Adrian Ilie Summer Session II, 2005 MTWRF 9:45-11:15 am.
CMSC 132: Object-Oriented Programming II Nelson Padua-Perez William Pugh Department of Computer Science University of Maryland, College Park.
COMP 14 Introduction to Programming Miguel A. Otaduy Summer Session I, 2004 MTWRF 9:45-11:15 am Sitterson Hall 014.
COMP 110 Introduction to Programming Jingdan Zhang June 20, 2007 MTWRF 9:45-11:15 am Sitterson Hall 014.
COMP 110 Introduction to Programming Mr. Joshua Stough August 22, 2007 Monday/Wednesday/Friday 3:00-4:15 Gardner Hall 307.
Computer Science - I Course Introduction Computer Science Department Boston College Hao Jiang.
COMP 14 – 02: Introduction to Programming Andrew Leaver-Fay August 31, 2005 Monday/Wednesday 3-4:15 pm Peabody 217 Friday 3-3:50pm Peabody 217.
1 CS312 Course Introduction "Computers are good at following instructions, but not at reading your mind." -Donald Knuth, Tex p. 9 Mike Scott, Gates
1 An Extremely Short Introduction to Computer Programming Mike Scott.
ECS15: Introduction to Computers Fall 2013 Patrice Koehl
CS307 Fundamentals of Computer Science Course Overview, Materials, and Procedures 1 Topic 1 Course Introduction, Syllabus, and Software Tools Chapman:I.
CS 312: Introduction to Programming Vallath Nandakumar.
Computer Science 102 Data Structures and Algorithms V Fall 2009 Lecture 1: administrative details Professor: Evan Korth New York University 1.
EECS 110: Introduction to Programming for Non-Majors
CS 312: Introduction to Programming Vallath Nandakumar.
CS324e - Elements of Graphics and Visualization Class Intro
CSE 501N Fall ‘09 00: Introduction 27 August 2009 Nick Leidenfrost.
COMP Introduction to Programming Yi Hong May 13, 2015.
EECE 310 Software Engineering Lecture 0: Course Orientation.
CSC 212 – Data Structures Prof. Matthew Hertz WTC 207D /
Computer Networks Lecture 1: Logistics Based on slides from D. Choffnes Northeastern U. and P. Gill from StonyBrook University Revised Autumn 2015 by S.
Introduction to EGR115 1.Welcome! 2.Your instructors 3.Class format 4.Requirements 5.Topics 6.Grading 7.Help 1.
1 Topic 1 CS314 Course Introduction Chapman:I didn't expect a kind of Spanish Inquisition. Cardinal Ximinez: NOBODY expects the Spanish Inquisition! Our.
1 8/29/05CS150 Introduction to Computer Science 1 Professor: Shereen Khoja
Catie Welsh January 10, 2011 MWF 1-1:50 pm Sitterson 014.
CSCI 51 Introduction to Computer Science Dr. Joshua Stough January 20, 2009.
Welcome to CS 115! Introduction to Programming. Class URL Write this down!
Computer Science 102 Data Structures and Algorithms CSCI-UA.0102 Fall 2012 Lecture 1: administrative details Professor: Evan Korth New York University.
EECS 110: Introduction to Programming for Non-Majors Aleksandar Kuzmanovic Northwestern University
June 19, Liang-Jun Zhang MTWRF 9:45-11:15 am Sitterson Hall 011 Comp 110 Introduction to Programming.
What to expect or Now that I have gotten used to Prof. Fitzpatrick, here is this new guy with his weird foreign accent…
CS320n – Elements of Visual Programming Course Introduction Mike Scott.
CSC 213 – Large Scale Programming Prof. Matthew Hertz WTC 207D /
CMSC 2021 CMSC 202 Computer Science II for Majors Spring 2002 Sections Ms. Susan Mitchell.
CMSC 2021 CMSC 202 Computer Science II for Majors Spring 2003 Mr. Frey (0101 – 0104) Mr. Raouf (0201 – 0204)
EECS 110: Introduction to Programming for Non-Majors Aleksandar Kuzmanovic Northwestern University
CS112: Course Overview George Mason University. Today’s topics Go over the syllabus Go over resources – Marmoset – Blackboard – Piazza – Textbook Highlight.
Data Structures and Algorithms in Java AlaaEddin 2012.
Computer Networks CNT5106C
Questions to ask yourself. What is AP Human Geography? What can I expect?
PROBLEM SOLVING AND PROGRAMMING ISMAIL ABUMUHFOUZ | CS 170.
Computer Science I ISMAIL ABUMUHFOUZ | CS 180. CS 180 Description BRIEF SUMMARY: This course covers a study of the algorithmic approach and the object.
INTERMEDIATE PROGRAMMING WITH JAVA
CSc 020: Programming Concepts and Methodology II
CS312 Course Introduction
CS312 Course Introduction
CS5040: Data Structures and Algorithms
EE 312 Course Introduction
Computer Science 102 Data Structures CSCI-UA
September 27 – Course introductions; Adts; Stacks and Queues
Topic 1 CS314 Course Introduction
Welcome to CS 1010! Algorithmic Problem Solving.
CS312 Course Introduction
Welcome to CS 1010! Algorithmic Problem Solving.
Welcome to CS 1010! Algorithmic Problem Solving.
Welcome to CS 1301! Principles of Programming I.
Topic 1 CS314 Course Introduction
Topic 1 CS314 Course Introduction
Topic 1 CS314 Course Introduction
Topic 1 CS314 Course Introduction
CSC 241: Introduction to Computer Science I
Presentation transcript:

1 CS312 Course Introduction "Computers are good at following instructions, but not at reading your mind." -Donald Knuth, Tex p. 9 Mike Scott, Gates

2 Who Am I  Lecturer in CS department since 2000  Undergrad Stanford, MSCS RPI  US Navy for 8 years, submarines  2 years Round Rock High School CS312

3 What We Will Do Today  Introductions and administrative details  Discuss what computer science is  Look at some examples of what computer scientists do CS312

Intro to Programming  Learn to design and implement programs to solve complex problems. CS course Intro 2.basic Java 3.static methods 4.expressions & variables 5.for loops 6.more loops, constants 7.parameters 8.2d graphics 9.more graphics 10.return values, Math methods 11.conditional statements 12.cumulative algorithms 13.Strings 14.while loops 15.random numbers 16.Boolean logic 17.assertions 18.file input 1 19.file input 2 20.file input 3 21.arrays 22.more arrays 23.tallying algos 24.sorting, searching 25.more array algos 26.2d arrays 27.classes and objects 28.methods 29.constructors 30.creating classes, Enums 31.inheritance 32.polymorphism 33.ArrayList 34.recursion

5 Startup   Request CS department account –  Read the syllabus and look over the schedule.  Explore the class web page  Sign up for the class discussion group on Piazza  Register iClicker (not on Canvas) CS312

Startup  Software if working at home  Practice It Account  Get the textbook CS312 6

7 Clicker Question1 Which of these best describes you? A. First year at UT and first year college student B. First year at UT, transferring from another college or university. C. In second year at UT. D. In third year at UT E. Other CS312

8 Graded Course Components  clicker participation –40 lectures with clicker, 1 point each: 40 points total  Discussion section quizzes (Go to your section.) –8 quizzes, 10 points each: 80 points total  Programming projects –12 projects, 1 st 10 points, rest 20 points: 230 points total  Two Midterms: 150, 200 –7 - 9 pm, Wednesday 9/30 and Wednesday 11/4 –conflict? me ASAP  Final: 330 points, Day and Time TBD  = 1030  clicker, Quizzes, Programming Assignments capped at 320 points.  30 points of “slack” among those 3 components  No points added! Grades based on 1000 points, not 1030  Grades posted to Canvas

9 Grades and Performance  Final grade determined by final point total and a 900 – 800 – 700 – 600 scale –plusses and minuses if within 25 points of cutoff: 875 – 899: B+, 900 – 924: A-  historically my CS312 classes  72% C- or higher: –33% A's, 25% B's, 15% C's  15% D or F  13% Q or W (drop) CS312

Assignments  Start out easy but get much, much harder  Individual – do your own work –okay to share tests you write  Programs checked automatically with plagiarism detection software  Turn in the right thing - correct name, correct format or you will lose points / slip days  Slip days –6 for term, max 2 per assignment –don’t use frivolously 10 CS312

11 Succeeding in the Course  Randy Pausch, CS Professor at CMU said:  "When I got tenure a year early at Virginia, other Assistant Professors would come up to me and say, 'You got tenure early!?!?! What's your secret?!?!?' and I would tell them, 'Call me in my office at 10pm on Friday night and I'll tell you.' "  “A lot of people want a shortcut. I find the best shortcut is the long way, which is basically two words: work hard.”

12 Succeeding in the Course  Whole course is cumulative!  Material builds on itself –failure to understand a concept leads to bigger problems down the road, so …  do the readings  start on assignments early  get help from the teaching staff when you get stuck on an assignment  attend lecture and discussion sections  participate on the class discussion group  do extra problems (Practice It!  study for tests using the old tests  study for tests in groups  ask questions and get help when needed

Succeeding in the Course  Cannot succeed via memorization.  The things I expect you to do are not rote.  Learn by doing.  If you are brand new to programming or have limited experience I strongly recommend you do lots and lots of practice problems. –Practice It! web site –JavaBat CS312 13

Common Mistakes  Not registering clicker at iClicker website  Assuming final date and time already set  Not turning in the correct thing on programming assignments  Going to the wrong section  Not getting help CS312 14

15 Course Materials and Procedures  Software –can work in CS department microlab, 1 st and 3 rd floor of Gates, north wing (GDC) –login via CS account name and password –work on your own system if you wish –Java. Web page has details under Software. - JDK 7.0 –Optional IDE. Recommended IDE is BlueJ or Eclipse, also free CS312

Programming is like Legos…

CS312

Legos and Programming  With Legos and Programming you have a small number of primitives. (basic tools or pieces)  But you build huge, elaborate structures out of those simple pieces. CS312 19

20 A Brief Look at Computer Science  This class, like most first classes in Computer Science, focuses solving problems and implementing those solutions as computer programs. –you learn how to program  … and yet, computer science and computer programming are not the same thing!  So what is Computer Science? CS312

21 What is Computer Science?  Poorly named in the first place.  It is not so much about the computer as it is about Computation.  “Computer Science is more the study of managing and processing information than it is the study of computers.” -Owen Astrachan, Duke University  learn to program –programming a key tool in later courses CS312

22 Computer Programming and Computer Science  Generally the first thing that is studied in Chemistry is stoichiometry. –Why? It is a skill necessary in order to study more advanced topics in Chemistry  The same is true of problems solving / programming and computer science. CS312

23  “What is the linking thread which gathers these disparate branches into a single discipline? …it is the art of programming a computer. It is the art of designing efficient and elegant methods of getting a computer to solve problems, theoretical or practical, small or large, simple or complex.” - C. A. R. Hoare  Sir Tony Hoare. Turing Award Winner. Inventor of the quicksort algorithm CS312

24  “Programming is unquestionably the central topic of computing. In addition to being important, programming is an enormously exciting intellectual activity. In its purest form, it is the systematic mastery of complexity. For some problems, the complexity is akin to that associated with designing a fine mechanical watch, i.e., discovering the best way to assemble a relatively small number of pieces into a harmonious and efficient mechanism. For other problems, the complexity is more akin to that associated with putting a man on the moon, i.e, managing a massive amount of detail. In addition to being important and intellectually challenging, programming is a great deal of fun. Programmers get to build things and see them work.. What could be more satisfying? “ - John V. Guttag, Professor at MIT research in AI, medical systems, wireless networking CS312

25 Computer Programming  a skill and tool that are applied to all other areas of computer science –artificial intelligence, networks, cpu architecture, graphics, systems (programming languages, operating systems, compilers), security, and on and on …  We will be using solving problems and implementing solutions in a programming language called Java  problem solving and computational thinking are key CS312

26 What do Computer Scientists do?  Computer Scientists solve problems –creation of algorithms  Some examples –you –Kurt Dresner, Intersection Control –Austin Villa, Robot Soccer –Doug and Steve, the TRIPS processor CS312

You!  Encryption and Decryption  Ever entered your credit card number to a website? game company? CS312 27

After a Little Computation:  Apply some human smarts: CS312 28

29 Kurt Dresner – Intersection Control  Former PhD student in UTCS department –working at Google now  area of interest artificial intelligence  Multiagent Traffic Management: A Reservation-Based Intersection Control Mechanism Multiagent Traffic Management: A Reservation-Based Intersection Control Mechanism –how will intersections work if and when cars are autonomous? –SimulatorSimulator CS312

30 Austin Villa – Robot Soccer  Multiple Autonomous Agents  Get a bunch of Sony Aibo robots to play soccer  Problems: –vision (is that the ball?) –localization (where am I?) –locomotion (I want to be there!) –coordination (I am open! pass me the ball!)   Video Video2 VideoVideo2 CS312

31 Doug and Steve  Doug Burger and Steve Keckler –and many, many others....  TRIPS –what has happened to processor speeds the past 5 years? –what is a super computer? – CS312

32 The Trips Chip Prototype CS312

33 Google Trends   Try these: –computer science –Mumford and Sons –computer science, Mumford and Sons –facebook, computer science, Mumford and Sons –binary search tree –recursion –linked lists, binary search tree –AP –super bowl CS312

Goolge N Grams  CS312 34