29
© Peter Andreae Introduction to Computer Science COMP 112 2014 T1 . Peter Andreae David Streader ( “Pondy” ) Engineering & Computer Science Victoria University of Wellington

© Peter Andreae Introduction to Computer Science COMP 112 2014 T1. Peter AndreaeDavid Streader ( “Pondy” ) Engineering & Computer Science Victoria University

Embed Size (px)

Citation preview

Page 1: © Peter Andreae Introduction to Computer Science COMP 112 2014 T1. Peter AndreaeDavid Streader ( “Pondy” ) Engineering & Computer Science Victoria University

© Peter Andreae

Introduction to Computer Science

COMP 112 2014 T1 .

Peter Andreae David Streader( “Pondy” )

Engineering & Computer Science

Victoria University of Wellington

Page 2: © Peter Andreae Introduction to Computer Science COMP 112 2014 T1. Peter AndreaeDavid Streader ( “Pondy” ) Engineering & Computer Science Victoria University

© Peter Andreae

COMP112 1:2

COMP 112

Menu:• Introductions

• What is COMP112 about?

• Course organisation

• What to do NOW!

Admin:Handouts: • Course Outline• Lab Assignment 1Switching to COMP102: see me after the lecture.

Page 3: © Peter Andreae Introduction to Computer Science COMP 112 2014 T1. Peter AndreaeDavid Streader ( “Pondy” ) Engineering & Computer Science Victoria University

© Peter Andreae

COMP112 1:3

Introducing the Course.

• COMP112 is a brand new course.

• Designed as a first university course in Computer Science for students who have already done some programming, and already know much of COMP 102

• Driven by the new NCEA standards in Programming & CS

• Exciting because it is a course full of students who understand something of what this subject is about.

COMP 102

COMP 112

COMP 103

No programming experience

Programming experienceeg level 3 NCEA DT

programming standards

Page 4: © Peter Andreae Introduction to Computer Science COMP 112 2014 T1. Peter AndreaeDavid Streader ( “Pondy” ) Engineering & Computer Science Victoria University

© Peter Andreae

COMP112 1:4

Introducing People.

• Pondy: taught 1st year programming here since 1985COMP112 is most exciting development in that

time!

• David: has taught 1st year programming in Waikato, also has lots of industry experience.

• Students:• Group 1: Done NCEA level 3 DT standards in programming

and maybe Computer Science.

• Group 2: Learned programming by themselves (not in a classroom)

• Group 3: Learned programming in another course (eg COMP102, INFO 102, other institution, school course…..

• Course is for all of you, but targeted at group 1.

Page 5: © Peter Andreae Introduction to Computer Science COMP 112 2014 T1. Peter AndreaeDavid Streader ( “Pondy” ) Engineering & Computer Science Victoria University

© Peter Andreae

COMP112 1:5What did language(s) did you learn?• What programming languages have you used?

(find out from the people around you).

• COMP 102 will teach you:• The Java programming language (used in later courses)• More about programming• More about other aspects of computer science as well.

• Graphics Artificial Intelligence• Networking Software Engineering• Relational Databases …

Page 6: © Peter Andreae Introduction to Computer Science COMP 112 2014 T1. Peter AndreaeDavid Streader ( “Pondy” ) Engineering & Computer Science Victoria University

© Peter Andreae

COMP112 1:6

What does COMP112 assume?

• COMP 112 assumes programming experience up to this level:• variables, loops, conditionals (ifs) input and output• writing functions/procedures/methods with parameters• lists or arrays• little bit of event driven input, object oriented design

• Doesn’t care what language you used • (as long as it is not drag-and-drop).

• What if you haven’t done enough to cope?

• Tell us!!! we may be going too fast.We will slow down if we are not properly calibrated.

• We will talk to you in labs to find out what you have done.

• We will let you switch back to COMP102 during the first 4-5 weeks.

Page 7: © Peter Andreae Introduction to Computer Science COMP 112 2014 T1. Peter AndreaeDavid Streader ( “Pondy” ) Engineering & Computer Science Victoria University

© Peter Andreae

COMP112 1:7

Does it matter if you aren’t ….

• NO!!

• We don’t assume you have been programming since you were small

• We don’t assume you spend all you life programming and configuring computers.

• We don’t assume you have to be male.• Top student in both 1st year courses last year was female!

Top students consistently include lots of female students• Four of my PhD and Masters thesis students in the past few

years have been female.• The fraction of women in COMP112 is a bit higher than

COMP102 has had for a long time!

Page 8: © Peter Andreae Introduction to Computer Science COMP 112 2014 T1. Peter AndreaeDavid Streader ( “Pondy” ) Engineering & Computer Science Victoria University

© Peter Andreae

COMP112 1:8

Computing is everywhere

• Name areas of modern life where computers or computing are / are not involved in some way:

⇒ Computing underlies almost all aspects of modern life⇒ Computer Scientists/engineers are critical for society.

Page 9: © Peter Andreae Introduction to Computer Science COMP 112 2014 T1. Peter AndreaeDavid Streader ( “Pondy” ) Engineering & Computer Science Victoria University

© Peter Andreae

COMP112 1:9

Comput er 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• ….

• Programming is central, but not the whole field!

ing Science

Page 10: © Peter Andreae Introduction to Computer Science COMP 112 2014 T1. Peter AndreaeDavid Streader ( “Pondy” ) Engineering & Computer Science Victoria University

© Peter Andreae

COMP112 1:10

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 electronic 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?• design a computer system that learns to move its hand like a

child.

Page 11: © Peter Andreae Introduction to Computer Science COMP 112 2014 T1. Peter AndreaeDavid Streader ( “Pondy” ) Engineering & Computer Science Victoria University

© Peter Andreae

COMP112 1:11

Role of COMP 112?

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

IS

EC SE

CSNW

MD

OR

Page 12: © Peter Andreae Introduction to Computer Science COMP 112 2014 T1. Peter AndreaeDavid Streader ( “Pondy” ) Engineering & Computer Science Victoria University

© Peter Andreae

COMP112 1:12What will you do in COMP 112?• Design and write lots of little programs for a wide

variety of tasks. • 1st five weeks: fairly small programs, getting up to speed

in Java

• Rest of course: larger programs for• Graphics: bunch of photoshop-like tools for

images• Networks: build an IRC client

(chat program for real IRC services)• Databases: Program to interface to a Relational

Database.

• Several exercises on other aspects of Computer Science.

Page 13: © Peter Andreae Introduction to Computer Science COMP 112 2014 T1. Peter AndreaeDavid Streader ( “Pondy” ) Engineering & Computer Science Victoria University

© Peter Andreae

COMP112 1:13

Planning ahead

• If you are doing BE or BSc (COMP), or any 2nd year comp sci• then you should plan on taking COMP103 in Tri 2.

• If you are doing BSc (COMP)• You should plan on doing MATH161 in Tri 2.

• required for entry to two 2nd year courses (COMP261, SWEN224)and for many 3rd year courses.

• Consider taking ENGR 110 in Tri 2• required for entry to one of the 2nd year courses

(SWEN223) • You don’t need to change enrolment until mid-year

• You can’t do COMP102 at the same time as COMP112

Page 14: © Peter Andreae Introduction to Computer Science COMP 112 2014 T1. Peter AndreaeDavid Streader ( “Pondy” ) Engineering & Computer Science Victoria University

© Peter Andreae

COMP112 1:14

Planning ahead

• If you want to do Computer Graphics• BSc in Comp Sci with focus in Computer Graphics

• Masters/Hons programme in Computer Graphics

• You will need to take • COMP 112 and 103

• MATH151 (or ENGR121) and MATH 161

• DSDN 101 and DSDN 142

Page 15: © Peter Andreae Introduction to Computer Science COMP 112 2014 T1. Peter AndreaeDavid Streader ( “Pondy” ) Engineering & Computer Science Victoria University

© Peter Andreae

COMP112 1:15

Course Organisation

All the details are in the course outline:• handout• on the course web page:

http://ecs.victoria.ac.nz/Courses/COMP112_2012T1/

Lectures• Present new ideas, techniques, examples.

• Mon, Tue, Thu 4-5 HULT 002/104/002

Optional Tutorial/Review Session • May offer a tutorial from third week.

Page 16: © Peter Andreae Introduction to Computer Science COMP 112 2014 T1. Peter AndreaeDavid Streader ( “Pondy” ) Engineering & Computer Science Victoria University

© Peter Andreae

COMP112 1:16

Course Web Site

An essential resource for the course:

• http://ecs.victoria.ac.nz/Courses/COMP112_2014T1

• 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.

Page 17: © Peter Andreae Introduction to Computer Science COMP 112 2014 T1. Peter AndreaeDavid Streader ( “Pondy” ) Engineering & Computer Science Victoria University

© Peter Andreae

COMP112 1:17

People

Lecturers (Academic/content issues)• Peter Andreae – “Pondy” Office : CO 336

email : [email protected]

• David Streader Office : CO 260email : [email protected]

Senior Tutor (Administrative issues, esp labs)• Zarinah Amin Office: CO 343

email : [email protected]

Tutors (Help in labs or via online help system)• Range of Undergraduates and Graduates

Technical Staff (Reporting problems with the computers) email : [email protected]

School Office (Forgotten passwords)• Kelsey, Renee, and Prema School Office: CO 358

Page 18: © Peter Andreae Introduction to Computer Science COMP 112 2014 T1. Peter AndreaeDavid Streader ( “Pondy” ) Engineering & Computer Science Victoria University

© Peter Andreae

COMP112 1:18

Lab assignments

• Seven lab assignments • hand out on Thursdays.• 4 assignments: 1 week.• 3 assignments: approx. 3 weeks

• 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, • on your home computer

Page 19: © Peter Andreae Introduction to Computer Science COMP 112 2014 T1. Peter AndreaeDavid Streader ( “Pondy” ) Engineering & Computer Science Victoria University

© Peter Andreae

COMP112 1:19

Scheduled Labs

• 2 hr lab, on Friday in CO 219/238• Fri 12-2, 2-4

• Tutors present to help.

• Start THIS week (Friday)• First assignment is a real assignment!

• Sign up online• https://signups.victoria.ac.nz/

Page 20: © Peter Andreae Introduction to Computer Science COMP 112 2014 T1. Peter AndreaeDavid Streader ( “Pondy” ) Engineering & Computer Science Victoria University

© Peter Andreae

COMP112 1:20

Course Organisation

Help• Online help:

• Forum for general questions; email/web form for questions about your code.

• Help Desk: Tutors available at various times: TBA • Tutorials ??• Study groups??

• We will be happy to facilitate organising study groups• Excellent way of helping your learning

• Science and Engineering Faculty Awhina programme:• support particularly for Maori and Pacific Nations students

• Women students support group??.

Page 21: © Peter Andreae Introduction to Computer Science COMP 112 2014 T1. Peter AndreaeDavid Streader ( “Pondy” ) Engineering & Computer Science Victoria University

© Peter Andreae

COMP112 1:21

Text Book and Handouts

No assigned Text BookCOMP102 & COMP103 text book:• Java Foundations Lewis, DePasquale, Chase

• May be a useful resource.• The lectures complement the text, not replace it.• Neither lectures nor text will cover all the details you

need! • You need to go and find things out!

Handouts• Course outline, Lecture slides, Assignments• Handed out in class.• On COMP112 web page.

Hope to video record the lectures.

Page 22: © Peter Andreae Introduction to Computer Science COMP 112 2014 T1. Peter AndreaeDavid Streader ( “Pondy” ) Engineering & Computer Science Victoria University

© Peter Andreae

COMP112 1:22

Tests and Exams

Terms Test:• 15%• Tue 15 April 4-5 pm

Exam: • 55% • Date tba (between 13 June and 2 July)

Page 23: © Peter Andreae Introduction to Computer Science COMP 112 2014 T1. Peter AndreaeDavid Streader ( “Pondy” ) Engineering & Computer Science Victoria University

© Peter Andreae

COMP112 1:23

Assessment

Read the Course Outline!!!

Mandatory Course Requirement:• Submit reasonable attempts for at least 6 of the assignments.

Final Grade:• Lab assigs 1-4: 12% (3% each)• Lab assigs 5-7: 18% (6% each)• Terms Test: 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.

Note for returning students: Passing grades now C-, C, … A, A+

Page 24: © Peter Andreae Introduction to Computer Science COMP 112 2014 T1. Peter AndreaeDavid Streader ( “Pondy” ) Engineering & Computer Science Victoria University

© Peter Andreae

COMP112 1:24

Withdrawal dates

• Early withdrawal with refund: by Fri 14 March• no consequences to early withdrawal

• Standard withdrawal without refund: 17 March – 16 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 16 May• Requires permission of Associate Dean• Normally given only when special circumstances arise after

16 May.

Page 25: © Peter Andreae Introduction to Computer Science COMP 112 2014 T1. Peter AndreaeDavid Streader ( “Pondy” ) Engineering & Computer Science Victoria University

© Peter Andreae

COMP112 1:25

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 COMP112: • We encourage you to talk to each other and help each other

understand and solve problems BUT• The code you submit should be yours.

If you got some of the code from the web or someone else, you must put a comment in your code saying that.

• If you use code from the text book, or lectures, or tutors then you do not need to declare it; If you use any other code that wasn’t yours, then declare it!

Page 26: © Peter Andreae Introduction to Computer Science COMP 112 2014 T1. Peter AndreaeDavid Streader ( “Pondy” ) Engineering & Computer Science Victoria University

© Peter Andreae

COMP112 1:26

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.

Page 27: © Peter Andreae Introduction to Computer Science COMP 112 2014 T1. Peter AndreaeDavid Streader ( “Pondy” ) Engineering & Computer Science Victoria University

© Peter Andreae

COMP112 1:27

Lab Facilities

• All scheduled labs are in CO219/238 • 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!

Page 28: © Peter Andreae Introduction to Computer Science COMP 112 2014 T1. Peter AndreaeDavid Streader ( “Pondy” ) Engineering & Computer Science Victoria University

© Peter Andreae

COMP112 1:28

Where to go for Help

Depends on the kind of help needed

• Staff: Lecturers, Senior Tutor, tutors• Forum

• Questions, answers, comments, discussion.

• Online help system.

• ECS School Office:

• Student Services: http://www.vuw.ac.nz/st_services/

• Science/Engineering/Arch&Des Awhina programme

• The Web

Page 29: © Peter Andreae Introduction to Computer Science COMP 112 2014 T1. Peter AndreaeDavid Streader ( “Pondy” ) Engineering & Computer Science Victoria University

© Peter Andreae

COMP112 1:29

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 ECS school computers

• Read the course outline.

• Read Assignment 1 before your lab session• You can start on the assignment before the lab session if you

wish.

• Read the course outline. Yes, again!