© Peter Andreae Introduction to Computer Program Design COMP 102 2013 T1. Peter Andreae ( “Pondy” ) Computer Science Victoria University of Wellington.

Slides:



Advertisements
Similar presentations
Lecture 1: Overview CMSC 201 Computer Science 1 (Prof. Chang version)
Advertisements

© Peter Andreae Introduction to Computer Program Design COMP T1. Peter Andreae ( “Pondy” ) Computer Science Victoria University of Wellington.
COMP 110 Introduction to Programming Tabitha Peck M.S. January 9, 2008 MWF 3-3:50 pm Philips 367.
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 Mr. Joshua Stough August 22, 2007 Monday/Wednesday/Friday 3:00-4:15 Gardner Hall 307.
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 Are you ready?. 2 Professor: Vladimir Misic Office : Phone: Office Hours : Mon, Tue; 2:00pm – 4:00pm Website :
COMP 151: Computer Programming II Spring Course Topics Review of Java and basics of software engineering (3 classes. Chapters 1 and 2) Recursion.
© Peter Andreae Introduction to Computer Program Design COMP T1. Peter Andreae ( “Pondy” ) Computer Science Victoria University of Wellington.
Object-Oriented Programming Dr. Napoleon H. Reyes, Ph.D. Computer Science Institute of Information and Mathematical Sciences Rm QA, IIMS, Albany.
Welcome to CS 115! Introduction to Programming. Class URL Please write this down!
© Peter Andreae Introduction to Computer Science COMP T1. Peter AndreaeDavid Streader ( “Pondy” ) Engineering & Computer Science Victoria University.
Computer Network Fundamentals CNT4007C
Xiaoying Sharon Gao Mengjie Zhang Computer Science Victoria University of Wellington Introduction to Artificial Intelligence COMP 307.
© Peter Andreae Introduction to Computer Science COMP T1. David Streader Engineering & Computer Science Victoria University of Wellington.
© Xiaoying Gao, Peter Andreae Introduction to Computer Program Design COMP T2. Xiaoying Sharon Gao Computer Science Victoria University of Wellington.
Welcome to CS 3260 Dennis A. Fairclough. Overview Course Canvas Web Site Course Materials Lab Assignments Homework Grading Exams Withdrawing from Class.
INTRODUCTION TO DATA STRUCTURES AND ALGORITHMS Marcus Frean School of Engineering and Computer Science, Victoria University of Wellington COMP T2.
COMP Introduction to Programming Yi Hong May 13, 2015.
Lecture 1 Page 1 CS 111 Summer 2015 Introduction CS 111 Operating System Principles.
Chapter Eight Academic Survival Skills. Study Skills  For most students time is the greatest issue.  The first rule to follow is to allow two or three.
How to be an online student. How does it work? An online course follows a schedule and syllabus with due dates for assignments (just like an on-campus.
© Xiaoying Gao, Peter Andreae Introduction to Computer Program Design COMP T2. Xiaoying (Sharon) Gao Computer Science Victoria University of Wellington.
Welcome to Physics 1D03.
Catie Welsh January 10, 2011 MWF 1-1:50 pm Sitterson 014.
Welcome to CS 115! Introduction to Programming. Class URL Write this down!
INTRODUCTION TO DATA STRUCTURES AND ALGORITHMS Marcus Frean School of Engineering and Computer Science, Victoria University of Wellington COMP T2.
COP3502: Introduction to Computer Science Yashas Shankar.
Fall 2o12 – August 27, CMPSC 202 First Day Handouts  Syllabus  Student Info  Fill out, include all classes and standard appointments  Return.
Lecture 1 Page 1 CS 111 Summer 2013 Introduction CS 111 Operating System Principles Peter Reiher.
© Xiaoying Gao, Peter Andreae Introduction to Computer Program Design COMP T2. Xiaoying (Sharon) Gao Computer Science Victoria University of Wellington.
Peter Andreae Engineering and Computer Science Victoria University of Wellington Copyright: Peter Andreae, Victoria University of Wellington2012 COMP 103.
1 Daily Announcements CS 202, Spring 2007 Aaron Bloomfield.
Introduction Fall 2001 Foundations of Computer Systems Prerequisite:91.166* or * Section A Instructor: Dr. David Hutchinson Office:
CSE 1105 Week 1 CSE 1105 Course Title: Introduction to Computer Science & Engineering Classroom Lecture Times: Section 001 W 4:00 – 4:50, 202 NH Section.
INTRODUCTION TO PROGRAMMING ISMAIL ABUMUHFOUZ | CS 146.
CSE 1105 Week 1 CSE 1105 Introduction to Computer Science & Engineering Time: Wed 4:00 – 4:50 Thurs 9:30 – 10:20 Thurs 4:00 – 4:50 Place: 100 Nedderman.
© Peter Andreae What is Programming About COMP 102 # T1 Peter Andreae Computer Science Victoria University of Wellington.
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.
A Puzzle for You. Puzzle Someone is working for you for 7 days You have a gold bar, which is segmented into 7 pieces, but they are all CONNECTED You have.
 READING FOR COLLEGE SUCCESS. Who Am I? Why Are You Here?  This course is a half credit course that will count for your online graduation requirement.
INTRODUCTION TO DATA STRUCTURES AND ALGORITHMS Thomas Kuehne School of Engineering and Computer Science, Victoria University of Wellington COMP T2.
COMP1927 Course Introduction 16x1
CS151 Introduction to Digital Design Noura Alhakbani Prince Sultan University, College for Women.
© Peter Andreae Introduction to Computer Program Design COMP T1. Peter Andreae ( “Pondy” ) Computer Science Victoria University of Wellington.
Winter 2016CISC101 - Prof. McLeod1 CISC101 Elements of Computing Science I Course Web Site: The lecture outlines.
Computer Programming for Engineers CMPSC 201C Fall 2000.
CSE 1340 Introduction to Computing Concepts Class 1 ~ Intro.
Computer Networks CNT5106C
MIS 610: Seminar in Information Systems Management Yong Choi School of Business Administration CSU, Bakersfield.
PROBLEM SOLVING AND PROGRAMMING ISMAIL ABUMUHFOUZ | CS 170.
Course Book Course Objective - The student will be able to describe various operating system concepts as they are applied to memory, process, file system.
Spring 2008 Mark Fontenot CSE 1341 – Honors Principles of Computer Science I Note Set 1 1.
Computer Science I ISMAIL ABUMUHFOUZ | CS 180. CS 180 Description BRIEF SUMMARY: This course covers a study of the algorithmic approach and the object.
© Peter Andreae Introduction to Computer Program Design COMP T1. Peter Andreae ( “Pondy” ) Computer Science Victoria University of Wellington.
INTRODUCTION TO DATA STRUCTURES AND ALGORITHMS Thomas Kuehne School of Engineering and Computer Science, Victoria University of Wellington COMP T2.
Introduction to Computer Science COMP T1. David Streader Engineering & Computer Science Victoria University of Wellington.
CSc 120 Introduction to Computer Programing II
CITS1001 Object Oriented Programming and Software Engineering
Computer Network Fundamentals CNT4007C
Introduction to Computer Science COMP T1 .
Course Overview - Database Systems
Computer Networks CNT5106C
E 96 Introduction to Engineering Design Peter Reiher UCLA
Week 1 Gates Introduction to Information Technology cosc 010 Week 1 Gates
Welcome to CS 1010! Algorithmic Problem Solving.
Course Overview - Database Systems
Welcome to CS 1010! Algorithmic Problem Solving.
Welcome to Physics 1D03.
Computer Networks CNT5106C
Presentation transcript:

© Peter Andreae Introduction to Computer Program Design COMP T1. Peter Andreae ( “Pondy” ) Computer Science Victoria University of Wellington

© Peter Andreae COMP 102 1:2 COMP 102 Menu: What is COMP102 about? Where does COMP102 fit in your degree? Course organisation What to do NOW! Administrivia: Handouts: Course Outline Lab Assignment 1 Students with enrolment conflict– please see me after the lecture: C Palamo, J Player, H Hawe

© Peter Andreae COMP 102 1:3 Computing is everywhere Computer based systems are everywhere user application programs – browsers, photo editors, chat programs social media and mobile phone apps,… computer games Information systems in commerce and business specialised applications – analysing gene data, X-rays, simulations controllers for device – cars, washing machines, TVs, DVD player, etc operating systems that run computers, cell phones, etc. network communication: internet connections, phone exchanges, fibre optics, cell phone systems, etc …. ⇒ Computing underlies almost all aspects of modern life

© Peter Andreae Computer Science Computer Science is the science of Computing The study of the computing processes that happen inside computers when they are working. How do we design, build, analyse systems that deal with information: text numbers graphics and video sound sensor and control signals …. COMP 102 1:4

© Peter Andreae Computer Science Questions How do you…. design a computer system to manage an organisation’s information? design an intelligent assistant for your phone that can talk with you? enable social interaction over communication networks send data securely and reliably over unreliable public networks? manage large teams of programmers building insanely complicated programs (not the way Novopay did!) design algorithms that will create new visual effects for movies design a database so that it is impossible to enter inconsistent data? design programming languages to make programming easier ensure that the computer program controlling a nuclear reactor or a spacecraft never makes a mistake? design a self-driving car that drives safely on city roads? make a safe encryption scheme for electronic commerce? determine whether some computation is tractable or even possible? COMP 102 1:5

© Peter Andreae What is COMP 102? A first course in Computer Science Software Engineering Network Engineering A required course for Electronic and Computer Engineering Operations Research An important course for Information Systems Media Design A useful course for Everyone COMP 102 1:6 CS IS NW EC SE MD

© Peter Andreae COMP102 not Computer Science overview Why not? To understand the issues and principles of Computer Science, we need to understand and be able talk about computation. Programming is about specifying the computation that a computer should do We need to be able to write, understand, think about, and analyse programs to address the Programming is fundamental to the engineering side of Computer Science. COMP 102 1:7

© Peter Andreae What is COMP 102 about COMP 102 is about learning the language and the ways of thinking required for Computer Science, Software Engineering, Network Engineering etc. Programming is about designing new programs, applications, systems by writing the instructions to make a computer behave in the way we want it to. In COMP102, you will design and write lots of little programs for a wide variety of tasks. Gives you a new set of mental tools for addressing problems Different way of thinking from most disciplines Very precise, coping with abstraction and complexity, creative. COMP 102 1:8

© Peter Andreae COMP 102 1:9 Goals of COMP102 By the end of COMP102 you will be able to understand, design, and construct small computer programs (in Java). ⇒ be able to use computers to solve new problems ⇒ be able to think in a new way about problems Note: We don’t assume you have done any programming. COMP102 starts from the beginning Example programs: Bouncing ball simulator diagram editor photo manipulator little game

© Peter Andreae COMP 102 1:10 What does COMP102 cover? Focus of the course: Object Oriented programming and design. Programming with the Java programming language. Java is a widely used programming language Clean enough for learning to program Useful for real programming Strong enough for very large programs Practical programming, writing small programs. Testing and debugging. Principles of good design.

© Peter Andreae COMP 102 1:11 Planning your programme You can’t do COMP102 at the same time as COMP103 Some students were enrolled this way by mistake! If you are doing BE or BSc (COMP) then you should do COMP103 in Tri 2. (unless we let you straight into COMP 103 this trimester) If you are doing COMP then it is very sensible (but not required) to take SWEN 102 in Tri 2. You don’t need to change enrolment until mid-year You should also plan on doing MATH161 in Tri 2.

© Peter Andreae COMP 102 1:12 Is COMP102 For You? Required course for Computer Science, Engineering Useful course for anyone who wants to be able to program. Not about using computers and applications software. Not an “easy credits” course for most people Involves higher level thinking skills than many students expect Key factors for success are logical/abstract thinking, being able to think about your own thinking processes problem solving, not memory attention to detail not getting behind Takes time! plan on around 10 hours / week Practical work is critical

© Peter Andreae COMP 102 1:13 Wide range of Backgrounds We assume you have used a computer We do NOT assume you have done any programming But some students have! good – it is definitely helpful if you have done lots of programming, the course should be easy It may be that you can take COMP103 this trimester instead! See me after the lecture. We try to meet the needs of the full range of students Additional support available Assignments have graduated components. If you are repeating the course: Do the whole of the assignments, without looking at previous solutions The course will be similar, but there will be changes.

© Peter Andreae COMP 102 1:14 Course Organisation All the details are in the course outline: handout on the course web page: Lectures Present new ideas, techniques, examples. Tue, Wed, Fri 12-1 MC LT103 (hopefully video recorded) Approx 30 lectures Other 6 lecture slots used for tests, reviews, extension material, etc. Optional Tutorial/Review Session Mon 12-1, MY 632, Starts third week.

© Peter Andreae COMP 102 1:15 Course Web Site An essential resource for the course: Course information, announcements, handouts, videos Lab Assignment details (times, dates, handouts, files,...) Forum, for questions and discussion Info about doing work at home. Java documentation Other useful links Primary administrative communication channel.

© Peter Andreae COMP 102 1:16 People Lecturer/Organiser (Academic/content issues) Peter Andreae – “Pondy”Office: CO 222 or Senior Tutor (Administrative issues, esp labs) Ambreen Khan-EvansOffice: CO 343 Tutors (Help in labs or via online help system) Range of Undergraduates and Graduates Technical Staff (Reporting problems with the computers) School Office (Forgotten passwords) Kelsey, Renee, and PremaSchool Office: CO 358

© Peter Andreae COMP 102 1:17 Lab assignments Ten lab assignments (roughly weekly), hand out:Tuesday (or Wednesday morning) due:11am Wednesday (a week later) (except #4, #5, & #10) Apply material from lectures and text book to practical programming problems. This is where your learning happens! Done partly in scheduled lab sessions Further work required: expect 5 hours outside labs any of the ECS labs, VS 3.19 (design school) on your home computer

© Peter Andreae COMP 102 1:18 Scheduled Labs 2 hr lab, on Wed, Thu, Fri in CO 242/243 Wed 1-3, 3-5, 5-7 Thu 9-11, 11-1, 1-3, 3-5 Fri 10-12, 1-3 Wed 2:40-4:40 in VS 3.19 (Te Aro campus for Design/Arch students) Make-up lab: 3-5 on Friday. Tutors present to help. Start THIS week (from Wednesday) First assignment is short, and should not require additional work outside the lab session. Sign up online

© Peter Andreae COMP 102 1:19 Course Organisation Help Desk Online help: Forum for general questions; /web form for questions about your code. Help Desk: Tutors available at various times: TBA Study groups We will facilitate organising study groups and tutored help sessions Excellent way of helping your learning Science and Engineering Faculty Awhina programme: support for Maori and Pacific Nations students Women students support group??.

© Peter Andreae COMP 102 1:20 Text Book and Handouts Text Book Java Foundations Lewis, DePasquale, Chase Same as for COMP103. [also OK: Java Software Solutions (6th ed) Lewis and Loftus] We consider it an important resource. The lectures complement the text, not replace it. Lectures will not cover all the details you need! But nor will the textbook! Handouts Course outline, Lecture slides, Assignments Handed out in class. On COMP102 web page.

© Peter Andreae COMP 102 1:21 Tests and Exams Terms Test 1: 15% Mon 8 April 5-6 pm NOT in lecture time! Terms Test 2: 15% Mon 13 May 5-6 pm NOT in lecture time! Exam: 50% Date tba (between 15 June and 3 July)

© Peter Andreae COMP 102 1:22 Assessment Read the Course Outline!!! Mandatory Course Requirement: Submit reasonable attempts for at least 8 of assignments 2 to 10. Final Grade: Lab assignments: 20% (labs 2 -10) Terms Test 1:15%(mark boosted to exam mark, if better) Terms Test 2: 15% (mark boosted to exam mark, if better) Exam: 50% To pass the course, you must: Satisfy the Mandatory Requirement. Get overall grade of C or better.

© Peter Andreae Withdrawal dates Early withdrawal with refund: by Fri 15 March no consequences to early withdrawal Standard withdrawal without refund: 18 March – 17 May Withdrawal recorded No grade recorded on transcript Withdrawal counts as a fail for determining "Satisfactory Academic Progress" Late withdrawal with Dean's permission: after 17 May Requires permission of Associate Dean Normally given only when special circumstances arise after 17 May. COMP 102 1:23

© Peter Andreae COMP 102 1:24 Plagiarism (Cheating) You must not present anybody else’s work as if it were your own work: Basic principle of academic honesty. applies to work by other students, friends, relatives, the web, books… If you received substantial help, then you must state who helped and how much. If you declare any work from someone else, then it isn’t plagiarism!!! In COMP102: We encourage you to work in pairs on the core & completion parts of assignments BUT You must put a comment at the top of your code saying that you worked with …. If you use code from the assigned text book, or from the lectures, then you do not need to declare it; If you use any other code that wasn’t yours, then declare it!

© Peter Andreae COMP 102 1:25 Cheating in the assignments. Assignments are primarily for learning, not assessing Cheating in the assignments is not worth it! You won't learn, so you will probably fail. If caught, you'll lose marks --- or worse. Assignments have a fairly small contribution to your grade.

© Peter Andreae COMP 102 1:26 Lab Facilities All scheduled labs are in CO242/243 or VS 3.19 Can also use other ECS labs Can also use home computers. Lab Hours: 24/7 Need ID card to access in evenings and weekends The labs are for getting work done Don’t prevent other people from working If you want to play around, go somewhere else Read the lab rules!

© Peter Andreae COMP 102 1:27 Where to go for Help Depends on the kind of help needed Staff: Pondy, Ambreen, tutors Forum Questions, answers, comments, discussion. On COMP102 Web page. ECS School Office: Student Services: Science/Engineering/Arch&Des Awhina programme The Web

© Peter Andreae COMP 102 1:28 What to do NOW! Sign up for the labs Note: You need to be registered for the course (a) to sign up for a lab (b) to be able to use the school computers Read the course outline. Get Text Book (Book Shop). Read Chapter 1. Read Assignment 1 before your lab session. Read the course outline. Yes, again!