Sunteți pe pagina 1din 8

INFO1103 Let me introduce myself…

Introduction to Programming
• Jason Chan (call me “Jason”)
Lecture 1-1 • I completed all my tertiary studies at
Introduction Sydney Uni:
Semester 2, 2010
– B Science (1st class Honours)
School of Information Technologies – PhD Computer Science (Machine Learning)
The University of Sydney, Australia
• Studied in Computer Science, Electrical
www.it.usyd.edu.au/~info1103 Engineering, Physics, Mathematics
Jason Chan
jason.chan@usyd.edu.au
INFO1103 Intro. to Programming 1 INFO1103 Intro. to Programming 2
© Jason Chan 2010 © Jason Chan 2010

Let me introduce myself… Why students ♥ INFO1103


• First, I was a tutor of INFO1103 for 9 • Skills are useful in any career
semesters • Practical benefit after just 1 semester
• Then, I became Lecturer and Course • Creativity / new thinking / fun /
Coordinator of INFO1103 in sem 2, 2009 different to other courses
• I also lectured ENGG1801 Engineering • Problem solving and understanding,
Computing in sem 1, 2010 not memorization
• This will be my 3rd time lecturing and • Great value: only 4 hours of classes per
coordinating INFO1103 week for 6 credit points
INFO1103 Intro. to Programming 3 INFO1103 Intro. to Programming 4
© Jason Chan 2010 © Jason Chan 2010

What previous students said What previous students said (2)


• “Very exciting subject that you can’t get bored of” • “It is not as time consuming as my other [subjects]”
• “This unit of study is perfect. [They have] perfected • “It’s organised much better than any of the other IT
this course” subjects I’ve done, and I also find it fun”
• “So much freedom: choose-you-own lab, do-what- • “It isn't as terrifying as everyone told me it was, this
you-want lab (even though everybody codes time last year. I have discussed this with them and I
anyway). [They] place a lot of trust in us. It seems to think that it's been run better now.”
have paid off.”
• “I have tried this subject before and [it] was really
• “This course is exactly what I thought I was signing
up for” hard, [now] it is so much easier, but still covers the
necessary work which is really good”

INFO1103 Intro. to Programming 5 INFO1103 Intro. to Programming 6


© Jason Chan 2010 © Jason Chan 2010

INFO1103 Introduction to
Programming © Jason Chan 2009
What previous students said (3) What previous students said (4)
• “I got a lot out of it, even if it proved more • “It is not my usual area of study or something I
challenging than I originally thought it would be. It would usually pick to study but I have found it
was well set out and ultimately I learnt a lot about surprisingly interesting; the emphasis is upon logic
programming” rather than memory”
• “This unit of study allows for a different style of • “The content is delivered in such an easy way that
learning compared to my Engineering & Science anyone can pick up programming regardless of
classes. Most of all, it’s fun and grants me useful previous programming experience”
skills that I wouldn’t otherwise attain.” • “The labs are very practical and the questions well
designed”

INFO1103 Intro. to Programming 7 INFO1103 Intro. to Programming 8


© Jason Chan 2010 © Jason Chan 2010

What previous students said (5) What previous students said (6)
• “The way it’s taught – i.e. the way different concepts • “It’s clever and hard, but able to be done and
are revealed to us in a very specific order, with satisfying when you work it out”
complex concepts only being discussed after we • “I love INFO1103! Easy to understand although it’s
have a sound knowledge of the basic underlying not an easy course. Really enjoying it!”
ideas (so that we all have those “oh, that’s why we • “Make [INFO1103] worth 12 credit points and double
were doing that!” moments) allows me to grasp the the amount of lectures and tutorials. It’s a really
tougher concepts much more easily than I’m used good course”
to.”
• “Out of 5, I give it a 6”
• “People who cheated got punished, it was quite
enjoyable”
INFO1103 Intro. to Programming 9 INFO1103 Intro. to Programming 10
© Jason Chan 2010 © Jason Chan 2010

Unit of Study Evaluation Survey What will I learn?


• “Q12 - Overall, I was satisfied with the quality • Programming is about telling the computer
of this unit of study” exactly ‘what to do’, step by step
– 98% of students who answered this Q selected “Strongly
Agree” or “Agree” • ‘What to do’:
– Average score: 4.45 raw data → meaningful information
• Strongly Agree = 5
• Think creatively
• Agree = 4
• Neutral = 3 • Solve problems
• Disagree = 2 • General understanding of any
• Strongly Disagree = 1
programming language
INFO1103 Intro. to Programming 11 INFO1103 Intro. to Programming 12
© Jason Chan 2010 © Jason Chan 2010

INFO1103 Introduction to
Programming © Jason Chan 2009
Am I good enough to do this? Lectures
• Congratulations - You have already • 2 hours of lectures each week (week 1-13)
qualified into this university! – Tuesday 12-1pm Eastern Avenue LT
• So you are definitely good enough to get – Tuesday 2-3pm Eastern Avenue LT
good results in this course • You should attend both each week
• Virtually no previous computing • I’m happy to answer any of your questions
experience is necessary immediately after each lecture
• It’s a matter of Effort and Practical
Experience during the semester
INFO1103 Intro. to Programming 13 INFO1103 Intro. to Programming 14
© Jason Chan 2010 © Jason Chan 2010

Labs (Tutorials) Labs (Tutorials)


• 2 hours of labs each week (week 1-13) • See course website for any updates to the
• Each week, you are allowed to go to: weekly timetable
– Any lab that is convenient for you
– A different lab
www.it.usyd.edu.au/~info1103
– More than 1 lab if necessary Some lab times / rooms may change
• Labs start in week 1 – it is worth marks later in the semester
– Bring your student card so you can log in
• Website also shows map showing where
all classes are
INFO1103 Intro. to Programming 15 INFO1103 Intro. to Programming 16
© Jason Chan 2010 © Jason Chan 2010

Weekly Timetable (see website) Tutors


• Tutors are responsible for:
– Helping guide you through the lab work
– Answering some of your Q’s
– Marking your lab work
• Their main job is to help you learn on your own
to become independent and self-sufficient
• We have the very best tutors in this course
– Jason Chan
– Neill Li
– Sophie Liang
INFO1103 Intro. to Programming 17 INFO1103 Intro. to Programming 18
© Jason Chan 2010 © Jason Chan 2010

INFO1103 Introduction to
Programming © Jason Chan 2009
Mentors Assessment
• Volunteer students who have achieved a very
Marks Overall Value
good mark in this or similar courses
• They can also: Lab Exercises 66 marks 33%
– Help guide you through the lab work Assignment 34 marks 17%
– Answer some of your Q’s
Final Exam 100 marks 50%
• They are not responsible for marking
• You will meet them in the lab • To pass INFO1103, you need both:
– At least 50% (100 marks out of 200) overall
– At least 40% (40 marks out of 100) in exam
INFO1103 Intro. to Programming 19 INFO1103 Intro. to Programming 20
© Jason Chan 2010 © Jason Chan 2010

Lab Exercises (33%) Lab Exercises (33%)


• Most labs are worth 3% (all except weeks • Q’s must be completed in the given order
11 and 13) – Finish Q1 correctly before starting Q2, etc.
• You need to write code and demonstrate • Marks are only awarded for:
your working program(s) in a lab by the – A solution that works
end of the week – Good coding practice
• Each lab has a number of Q’s • Just because it works, doesn’t mean it’s good
– Initial Q’s are easy if you follow the lectures • Code should be simple and clear (more on this
– Some Q’s will involve combination of ideas from later)
previous labs and lectures • You should be able to score all your lab
– Final Q’s will require more thinking marks if you put in the effort
INFO1103 Intro. to Programming 21 INFO1103 Intro. to Programming 22
© Jason Chan 2010 © Jason Chan 2010

Lab Exercises (33%) Assignment (17%)


You must sign the tutor’s marks sheet • Introduced in week 8 lab
after they write your mark on it – • Due at start of week 12
No signature means no marks – Nearly 5 weeks to do it
• Late submissions: • All students submit at the same time;
– The first 2 times you don’t get full marks by it doesn’t matter which lab you attend
the end of week of a lab, you can submit your • You can do the assignment easily if you
work in next week’s lab and still get full marks can do the labs
– Students who enroll late into the course and
miss at least 1 lab will automatically use 1 of • The lectures in week 11 will help you to
their late submissions finish the final small part of the assignment
INFO1103 Intro. to Programming 23 INFO1103 Intro. to Programming 24
© Jason Chan 2010 © Jason Chan 2010

INFO1103 Introduction to
Programming © Jason Chan 2009
Final Exam (50%) Final Exam (50%)
• After week 13 and stuvac • Q’s will be about same difficulty as the
• 2 hour, open-book, “pen and paper” exam hardest Q’s in the labs, but you will have
– All printed and handwritten notes allowed much less time than in the labs
– All books allowed Warning: There are no easy Q’s in exam
• Tests your ability to write programs and However, you should be able to do all Q’s
solve problems
• See sample exam on course website • You should aim to score most of your
marks in the labs + assignment
– Aim to score close to full marks
INFO1103 Intro. to Programming 25 INFO1103 Intro. to Programming 26
© Jason Chan 2010 © Jason Chan 2010

Wow, can I really do this? What is allowed


• Virtually no previous computing • What is allowed:
experience necessary – Talking and explaining with other students
• Just need to understand and solve about exercises and solutions
problems in practice, not memorize – Looking at other student’s screen / work and
getting them to explain it to you
– You can write notes in your own language
– Preparing for the Q’s before the lab
• Concepts in this course can be understood
– Using the lecture notes, your own notes,
by everyone books, internet
• Yes, you can definitely do this course
INFO1103 Intro. to Programming 27 INFO1103 Intro. to Programming 32
© Jason Chan 2010 © Jason Chan 2010

What is allowed What is NOT allowed: Plagiarism


• What is also allowed: • What is NOT allowed:
– Picking which lab you will attend – Copying other student’s work without being
– Going to a different lab each week given an explanation
– Going to more than 1 lab each week – Copying large amounts of code (even if it is
– Going to toilet, eating, drinking, surfing the explained)
internet for fun, listening to music during lab – Giving or receiving any part of lab solutions
that are worth marks to/from other students
• Emailing, transferring with USB, printing, writing
code or other instructions, etc.

INFO1103 Intro. to Programming 33 INFO1103 Intro. to Programming 34


© Jason Chan 2010 © Jason Chan 2010

INFO1103 Introduction to
Programming © Jason Chan 2009
What is NOT allowed: Plagiarism Why students ♥ Java
• Plagiarism will absolutely not be tolerated • The Java programming language is very
• You must sign a declaration form in the lab popular in industry, research, education
• Excellent for learning programming
– Avoids ugly and confusing features
Students who plagiarize will
– Saves a lot of work (elegant features, simple
definitely be caught and dealt with! debugging, thorough and easy-to-use API)
– Syntax similar to other important languages
– Forfeit all marks in assessment or entire subject
– Lots of help available (internet, books, etc.)
– Permanent official record
– Expulsion from university • Disadvantages are not felt by students
INFO1103 Intro. to Programming 35 INFO1103 Intro. to Programming 36
© Jason Chan 2010 © Jason Chan 2010

INFO1105 Data Structures Important Resources


• INFO1105 Data Structures is a very • Course Website
challenging course – www.it.usyd.edu.au/~info1103
• Important announcements
– You are assumed to be very comfortable with
• Lecture notes
all the material taught in our course,
• Lab exercises
INFO1103 Introduction to Programming
• Sample solutions
– The theory can be quite difficult, and you • Assignments
need to implement them in practice • Marks
• Students should NOT be doing both • Sample exam
• Weekly timetable
INFO1103 and INFO1105 at same time
INFO1103 Intro. to Programming 37 INFO1103 Intro. to Programming 38
© Jason Chan 2010 © Jason Chan 2010

Important Resources Important Resources


• Email • Textbook / Course Notes
– info1103@it.usyd.edu.au – Lecture notes are the most important, and are
• Any Q on INFO1103 answered by the tutors totally sufficient on their own
– jason.chan@usyd.edu.au – If you really want a book, then I recommend
• Q’s specific for me (e.g. special considerations)
“Java in a Nutshell” (David Flanagan)
– Attach code (Java files) to emails; do not write • Free online copy available – see course website
the code in the body of the email
– Use appropriate subject headers • Installing the Java SDK on Your Computer
– Follow instructions on course website
– You should install Java now
INFO1103 Intro. to Programming 39 INFO1103 Intro. to Programming 40
© Jason Chan 2010 © Jason Chan 2010

INFO1103 Introduction to
Programming © Jason Chan 2009
Special Consideration Special Consideration
• If a student cannot finish an assessment • An alternative assessment or mark will be
(illness, misadventure), they can apply for given to you
special consideration • The history of performance of students
– Click on “Resources” on course website for applying for special consideration is not
more details very good…
– You must submit the application within 7 days
– You will need proof (certificate, etc.)
– More likely to be accepted if you submit
beforehand
INFO1103 Intro. to Programming 41 INFO1103 Intro. to Programming 42
© Jason Chan 2010 © Jason Chan 2010

Semester 2, 2010 Schedule How to perform in INFO1103


Week Lecture topics Labs + Assessment
1
2
Introduction, HelloWorld, File System
Primitive Variables, Conditional (if) Statements
Lab Exercises (3%)
Lab Exercises (3%) • Performance in INFO1103 does NOT
3
4
Iterative Statements (loops)
Methods (1)
Lab Exercises (3%)
Lab Exercises (3%)
depend on:
5
6
Methods (2)
Classes & Objects (1)
Lab Exercises (3%)
Lab Exercises (3%)
– Programming or computing experience
7 Classes & Objects (2) Lab Exercises (3%) – International or local student
8 Collection Classes, Assignment is introduced Lab Exercises (3%)
9 Unit Testing , Java API, Text and File IO Lab Exercises (3%) – Degree / major / background
Mid-Semester Break (MSB)
10 Arrays (1) Lab Exercises (3%) – Gender
11 Arrays (2), Assignment Help Assignment Help
12 Inheritance & Polymorphism Lab Exercises (3%), Assignment (17%) [Monday 18 Oct] – Which semester you do INFO1103
13 Review for Exam Exam Help
Student Vacation (Stuvac) • So what does performance depend on?
Let’s meet some students…
Exams --- Final Exam (50%)

INFO1103 Intro. to Programming 43 INFO1103 Intro. to Programming 44


© Jason Chan 2010 © Jason Chan 2010

How to perform in INFO1103 How to perform in INFO1103


• INFO1103 Introduction to Programming is • Concentrate on the labs
all about programming – Learn the material
• The only way to succeed in this course is – Prove you know how to use them in practice
to be able to program – Prioritize learning instead of marks – it will be
• Concentrate on the basics and doing each easy to score the marks if you do the above
week’s lab properly • You must be totally comfortable after
• Try to do everything on your own, with as every week, especially the first 6 weeks
little help as possible • Aim to finish labs in 2 hours
INFO1103 Intro. to Programming 59 INFO1103 Intro. to Programming 60
© Jason Chan 2010 © Jason Chan 2010

INFO1103 Introduction to
Programming © Jason Chan 2009
For new students For repeating students
• Actually this applies to all students • This also applies to all students
• It’s ok if you start off with no computing • We will use PuTTy and Notepad++,
experience not IDEs (e.g. Eclipse, DrJava, JCreator)
• Just focus on what you can do, not on • Do not recycle old code, old notes, etc.
what other students can do • This is a fresh start for you, a new chance
for you to do well and get good results

INFO1103 Intro. to Programming 61 INFO1103 Intro. to Programming 62


© Jason Chan 2010 © Jason Chan 2010

The 1st Lab Summary: INFO1103


• Labs start in week 1 • This course is exciting and different!
• You will be introduced to your SIT account – Immediately beneficial
in the 1st lab – Creativity and new thinking
• Bring your student card – you may need it – Practical course, involves “doing things”
to log in to your SIT account
• Programming is about solving problems by
• Lab Exercises worth 3% and based on telling the computer exactly what to do
next lecture
• So most of your learning will be by “doing”
• The week 1 lab is the only very easy lab
(programming on a computer)
INFO1103 Intro. to Programming 63 INFO1103 Intro. to Programming 64
© Jason Chan 2010 © Jason Chan 2010

INFO1103 Introduction to
Programming © Jason Chan 2009

S-ar putea să vă placă și