CS/ENGRD 2110 SPRING 2013 Lecture 1: Overview

Slides:



Advertisements
Similar presentations
Credit hours: 4 Contact hours: 50 (30 Theory, 20 Lab) Prerequisite: TB143 Introduction to Personal Computers.
Advertisements

CSS446 Spring 2014 Nan Wang. 2 Instructor Instructors: –Nan Wang Office: TEC 232 Phone: (601) Meeting time and location:
1 CS Tutorial 2 Architecture Document Tutorial.
Improving Achievement
Introduction to Recursion and Recursive Algorithms
REALly, it can be done!!. 1. Review your catalog 2. Enact a plan 3. Ask questions and seek advice 4. Learn how to read course descriptions.
Lecture 1: Overview CMSC 201 Computer Science 1 (Prof. Chang version)
Introduction to CS170. CS170 has multiple sections Each section has its own class websites URLs for different sections: Section 000:
Intro to CIT 594
June 13, Introduction to CS II Data Structures Hongwei Xi Comp. Sci. Dept. Boston University.
SEAS Acad Mtg – 8/26/03Prof. Frank Sciulli Introduction - Physics SEAS Academic Meeting l Intro: Frank Sciulli – Professor in the Physics Dept. u Lecturing.
July 16, Introduction to CS II Data Structures Hongwei Xi Comp. Sci. Dept. Boston University.
Computer Science 102 Data Structures and Algorithms V Fall 2009 Lecture 1: administrative details Professor: Evan Korth New York University 1.
CS/ENGRD 2110 SPRING 2015 Lecture 1: Overview and intro to types
1 CS1130 Spring 2011: David Gries & Walker White Transition to Object-Oriented Programming Assumes programming knowledge in a language like Matlab, C,
1 CS1110 Fall 2011: David Gries & Steve Marschner CS1112: Matlab No prior programming experience One semester of calculus Math- & engineering- type problems.
CS/ENGRD 2110 SPRING 2015 Lecture 1: Overview and intro to types
CS/ENGRD 2110 FALL 2013 Lecture 1: Overview and intro to types
Computer Network Fundamentals CNT4007C
1 CS1110 Fall 2010 Instructors: David Gries & Lillian Lee CS1112: Matlab No prior programming experience One semester of calculus Math- & engineering-
CSE 501N Fall ‘09 00: Introduction 27 August 2009 Nick Leidenfrost.
COMP Introduction to Programming Yi Hong May 13, 2015.
Lecture 1 Page 1 CS 111 Summer 2015 Introduction CS 111 Operating System Principles.
EECE 310 Software Engineering Lecture 0: Course Orientation.
Object Oriented Programming (OOP) Design Lecture 1 : Course Overview Bong-Soo Sohn Associate Professor School of Computer Science and Engineering Chung-Ang.
CS 122 Engineering Computation Lab Lab 2 Dan De Sousa and Tim Cheeseman Department of Computer Science Drexel University April 2009 ©By the author. All.
CSE 331 Software Design & Implementation Hal Perkins Autumn 2012 Lecture 0 – Course Introduction 1CSE 331 Au12 One handout up front!
CSCE 1040 Computer Science 2 First Day. Course Dr. Ryan Garlick Office: Research Park F201 B –Inside the Computer Science department.
CSCI 51 Introduction to Computer Science Dr. Joshua Stough January 20, 2009.
17-Dec-03 Intro to CIT 594 ~matuszek/cit594.html.
CS 140 Computer Programming (I) Second semester (3 credits) Imam Mohammad bin Saud Islamic University College of Computer Science and Information.
Introduction to Data Structures
Computer Science 102 Data Structures and Algorithms CSCI-UA.0102 Fall 2012 Lecture 1: administrative details Professor: Evan Korth New York University.
+ Introduction to Class IST210 Class Lecture. + Course Objectives Understand the importance of data, databases, and database management Design and implement.
Principles of Computer Science I Honors Section Note Set 1 CSE 1341 – H 1.
Object Oriented Programming (OOP) Design Lecture 1 : Course Overview Bong-Soo Sohn Associate Professor School of Computer Science and Engineering Chung-Ang.
Matter and Interactions 1 Fall 2006 Matter & Interactions I Physics Professor & Lecturer: Dr. Reinhard Schumacher Teaching Assistants: Ms. Elisa.
Introduction to ECE 2401 Data Structure Fall 2005 Chapter 0 Chen, Chang-Sheng
1 CS1100 Fall Instructor: David Gries CS100M: Matlab No prior programming experience One semester of calculus Math & engineering type problems CS100J:
1 CS1110 Fall Instructors: David Gries & Lillian Lee CS1112: Matlab No prior programming experience One semester of calculus Math- & engineering-
CSE8A: Introduction to Programming in Java Fall 2012 Prof. Christine Alvarado cse8afall.weebly.com.
Lecture 1: Overview CMSC 201 Computer Science 1. Course Info This is the first course in the CMSC intro sequence, followed by 202 CS majors must pass.
CSCE 1030 Computer Science 1 First Day. Course Dr. Ryan Garlick Office: Research Park F201 B –Inside the Computer Science department.
CS 122 Engineering Computation Lab Lab 4 Dan De Sousa and Bruce Char Department of Computer Science Drexel University Summer 2009 ©By the author. All rights.
Winter 2016CMPE212 - Prof. McLeod1 CMPE212 Object Oriented Programming for Engineers Course Web Site: Lecture.
CS151 Introduction to Digital Design Noura Alhakbani Prince Sultan University, College for Women.
1 CS 381 Introduction to Discrete Structures Lecture #1 Syllabus Week 1.
Data Structures and Algorithms in Java AlaaEddin 2012.
CS/ENGRD 2110 FALL 2016 Lecture 1: Overview and intro to types
Computer Networks CNT5106C
1 CS100J Spring Instructor: David Gries CS100M: Matlab No prior programming experience One semester of calculus Math & engineering type problems.
Computer Science I ISMAIL ABUMUHFOUZ | CS 180. CS 180 Description BRIEF SUMMARY: This course covers a study of the algorithmic approach and the object.
CS1110 Spring Instructor: David Gries
Lecture 1 Introductory Microeconomics
Lecture 1 Introductory Microeconomics
Introductory Macroeconomics Lecture 1
Computer Science 102 Data Structures CSCI-UA
September 27 – Course introductions; Adts; Stacks and Queues
Week 1 Gates Introduction to Information Technology cosc 010 Week 1 Gates
Welcome to CS 1010! Algorithmic Problem Solving.
Welcome to CS 1010! Algorithmic Problem Solving.
Welcome to CS 1010! Algorithmic Problem Solving.
EECE 310 Software Engineering
Geo 318 – Introduction to GIS Programming
Introduction to CS II Data Structures
EE422C Software Design and Implementation II
Accelerated Introduction to Computer Science
Lecture 1a- Introduction
Computer Networks CNT5106C
CS Problem Solving and Object Oriented Programming Spring 2019
Presentation transcript:

CS/ENGRD 2110 SPRING 2013 Lecture 1: Overview

Welcome to CS2110!  We’ll be learning about…  OO, abstract data types, generics, queries on Java collections, other cool Java features  Reasoning about complex problems, analysis of the algorithms we create to solve them, and implementing those tricky algorithms with elegant, easy to understand, correct code  Recursion on graphs and other linked structures  Algorithmic complexity  (+ lectures on cloud computing & quantum computing) 2

Is CS2110 right for you?  Knowledge of Java not required  About 40% of students know Java  Others know Matlab, Python, …  Requirement: comfort with some programming language. Prior knowledge of OO and “strong typing” not required.  Don’t take cs1110 just because you are worried that your high school programming experience won’t do  We recommend against skipping directly to cs3110. cs3110 requires permission from both Prof Birman and Prof Joachims! 3

Lectures  TR 10:10-11am, Statler auditorium  Attendance is mandatory  Old videonotes from 2010 are available but the course has evolved since then …  ENGRD 2110 or CS 2110?  Same course! We call it CS 2110 in online materials  Non-engineers sign up for CS 2110  Engineers sign up for ENGRD

Sections  Like lecture, attendance is mandatory  Usually review, help on homework  Sometimes new material  Section numbers are different for CS and ENGRD  Each section led by member of the teaching staff  No permission needed to switch sections, but do register for whichever one you attend 5

CS2111  New!  An “enrichment” course  Aimed at students who want slightly more help understanding core ideas behind Java, objects, and programming  Taught by Professor Gries, 1 credit S/U, only for students who also take CS2110.  We hope to help students who might otherwise feel overwhelmed by CS2110 6

Academic Excellence Workshops  Two-hour labs: students work together in cooperative setting  One credit S/U course based on attendance  Time and location TBA  See website for more info: learning/academic-excellence-workshops/ 7

Resources  Book: Frank M. Carrano, Data Structures and Abstractions with Java, 3 nd ed., Prentice Hall  Note: 2 nd edition is okay  Sharing textbook: fantastic idea. You don’t need a personal copy. You do need access to it from time to time  Copies on reserve in Engr Library  Additional material on Prentice Hall website  “e-Book” not required  Great Java resource: online materials at Oracle JDK web site. Google has it indexed. 8

Obtaining Java  Follow instructions on our « resources » web page  Make sure you have Java JDK 1.6 or 1.7, if not download and install. We explain how on the page.  Then download and install the Eclipse Juno « IDE » for Java developers from Eclipse IDE for Java Developers  Test it out: launch Eclipse and click “new>Java Project”  This is one of a few ways Java can be used  When program runs, output will be visible in a little console window 9

Eclipse IDE  IDE: Integrated Development Environment  Helps you write your code  Protects against many common mistakes  At runtime, helps with debugging  Follow “Resources” link to download “In my country of Kazakhstan everyone is use Eclipse and Java! Java 1.7 is best for hack American web site and steal credit card.” 10

Learning Java  CS 2110 assumes that students are totally new to Java —we’ll teach you the language  We assume you are comfortable programming in some other language, so we’ll teach Java at a pretty fast pace  By end of course, you’ll have seen some “extreme Java” capabilities… 11

Coursework  5 assignments involving both programming and written answers (45%)  Two prelims (15% each)  Final exam (20%)  Course evaluation (1%)  Possible surprise in-class quizzes (4%) 12

Assignments  A1 and A5: do by yourself  A2-A4: teams of one or two (not more than two)  A1 will be posted soon on CMS  We encourage you to do them by yourself and have considered making this the rule  Finding a partner: choose your own or contact your TA. Piazza is incredibly helpful. 13

Piazza  Click link on our web page to register  Incredible resource for 24x7 help with anything  We keep an eye on it, but people help each other out too. 14

Academic Integrity… Trust but verify!  We use artificial intelligence tools to check each homework assignment  The software is very accurate!  It tests your code and also notices similarities between code written by different people  Sure, you can fool this software  … but it’s easier to just do the assignments  … and if you try to fool it and screw up, you might fail the assignment or even the whole course. 15

What’s CS 2110 about?  Computational tools are “universal” but the key is to master computational thinking.  Looking at problems in ways that lead naturally to highly effective, correct, computational solutions  There are many ways to do anything, but some are way better than others  Mastery of computational thinking will help you become a master of the universe!  Also: Great job prospects with high salaries… 16

Example (we’ll see it again in April…)  Suppose you wanted to build a massive database of pictures of people and stuff about them  … then create smart eyeglasses  In the past a concept like this was crazy…  Today, it can be solved with “cloud computing” + Java programs to search huge image databases fast…  … With CS2110 you’ll be about 1/3 of the way there Also: Snavely’s vision course + Ken’s cloud computing course 17

A class declaration defines  Format/content of objects, which can contain variables and functions/procedures  Variables and functions/procedures for which only ONE copy exists A class defines the form and behavior of some type of objects. But your program needs to explicitly create them. 18

World’s simplest Java program  Writing “Hello world” in Java using Eclipse  Running it  Understanding line by line exactly what it says Let’s launch Eclipse and see these steps in action 19

Next steps?  Attend a recitation section this week  Repeat what we just did but do it yourself  Try making mistakes and see what Eclipse “says”  Try making it a little fancier  Drop in to see what CS2111 is about this afternoon (two times, on Tuesday) 20