Programming I - Elementary
Programming (3621251-3005), 2023
ORIENTATION
THURSDAY 5.9.2023 10:15 – 11:45
Pekka Makkonen, UEF
COURSE STAFF
• Pekka Makkonen – lectures and Tuesday
end of the theme sessions
• Teaching assistants
• Joel Myöhänen, Miika Turja and Antti
Vehviläinen at Kuopio Campus -
Counselling/consultations (ohjaus)
TODAY
• WHY PROGRAMMING?
• COURSE STRUCTURE & SCHEDULE
• STUDY MATERIALS
• COURSE EVALUATION
• THINGS TO DO
PROGRAMMING? WHAT? WHY?
• A CORE SKILL FOR ALL COMPUTER SCIENTISTS
• THE WAY TO TELL COMPUTERS WHAT TO DO
• ALL SOFTWARE HAS BEEN PROGRAMMED
COURSE COVERAGE
• HOW TO IMPLEMENT SIMPLE PROGRAMS
• KNOW THE BASIC PARTS OF A PROGRAM
• KNOW THE CENTRAL CONCEPTS OF PROGRAMMING
• ABILITY TO INSPECT PROGRAMS, FIX ERRORS
• UNDERSTAND WHAT IS DEBUGGING
”The student can solve simple problems and implement a problem solving program with
programming language, knows the basic parts of programming prosess knows the basic
concepts of programming and basic programming structures (sequence, condition,
selection) knows when to use which structure and knows how to use them with
programming language, can inspect programs, which others have made, can change
them and test them can find, identify and fix programming errors with debugger”
(Peppi)
TIMETABLE
WEEK TOPIC BOOK EXERCISES DL
1 Basic parts of programming C1,2 9.9 at 24:00
2 Conditions, logical operations, variables C3 16.9 at 24:00
3 Loops, checking input C4 23.9 at 24:00
4 Functions and modules C5 30.9 at 24:00
5 Files and exceptions C6 7.10 at 24:00
6 Lists and recursion C7 14.10 at 24:00
7 String manipulation, dictionaries, sets C8,9 21.10 at 24:00
8 Exam 23.10.
https://elearn.uef.fi/course/view.php?id=5831 Course key: recursion
COURSE ELEMENTS
COURSE ELEMENTS MANDATORY
LECTURES
COURSE BOOK (Tony Gaddis)
LEARNING MATERIALS (IN MOODLE)
WEEKLY EXCERCISE SETS (IN MOODLE)
GUIDANCE SESSIONS (OHJAUS)
EXCERCISE SESSIONS (R1, R3, R4)
DISCORD-CHANNEL
EXAM
PROGRAMMING EXERCISES
AUTOMATICALLY ASSESSED
CAN BE TRIED FOR UNLIMITED TIMES
YOU CAN LEAVE IT AND CONTINUE LATER
EXAMPLE SOLUTIONS WILL BE PRESENTED IN EXERCISE
SESSIONS
WHEN THE DEADLINE COMES, ANY INCOMPLETE EXERCISES
WILL BE AUTOMATICALLY SUBMITTED
PROGRAMMING EXERCISES
WEEKLY EXERCISES START WITH BASIC ONES
…BUT INCLUDE MORE CHALLENGING ONES, TOO
VERY GOOD WHEN PRACTICING FOR EXAM AND FUTURE STUDIES
HELP WILL BE AVAILABLE IN EXERCISE SESSIONS, GUIDANCE
SESSIONS, VIA DISCORD, AND IN LECTURES
NEVER SHARE CODE VIA DISCORD, INSTEAD: DISCUSS
PROGRAMMING IS A CRAFT, THE
BEST WAY TO LEARN IS HANDS-ON
PRACTICE
PROGRAMMING EXERCISES
THE EXERCISES ARE FOUND IN THE MOODLE-PLATFORM
REPEATED: NEVER COPY SOLUTIONS
FIND INFORMATION ONLINE, FROM THE COURSE BOOK, OR BY
ASKING AROUND
VIEW OF SCHEDULES september
Ohjaus = two groups
Make sure you know
your group
Luennot = Lectures
Excercise Group on
Tuesdays.
VIEW OF SCHEDULES October
Ohjaus = two groups
Make sure you know
your group
Luennot = Lectures
Excercise Group on
Tuesdays
Exam=Kurssikuulustelu
.
COURSE BOOK
• Tony Gaddis: Starting Out with Python (4th or higher edition)
• Digital Edition Available (10 simultaneous readers)
• Available in Library
WEEKLY ACTIVITIES
1) ATTEND LECTURES, STUDY THE WEEKLY MATERIALS
2) WORK UNDER GUIDANCE IN GUIDANCE SESSIONS (OHJAUS)
3) DISCUSS SOLUTIONS IN DISCORD (NEVER COPY SOLUTIONS)
4) COMPLETE AND RETURN WEEKLY EXERCISES BEFORE DEADLINE (MOODLE)
5) AFTER COMPLETION, DISCUSS SOLUTIONS IN EXERCISE GROUP (Tuesdays)
Attending mandatory – names will be collected by forms.
Work on exercises
ATTEND AND PASS
Attend EXAM
lectures and study and attend Complete and Discuss exercises in
the materials guidance sessions, return exercises exercise group
discuss in discord
COURSE EVALUATION
Final exam 50% correct needed to pass
Exercises 50p from each week, gives +1 grade
350p total GIVES 1 GRADE POINT FOR
your final grading
Attendance to exercise groups Must attend at least 4 out of seven
(with the exception of those who have
completed the entrance exam couse)
PROGRAMMING ENVIRONMENT
• IDLE or VISUAL STUDIO CODE
(+ Python, latest version, or at least version 3.6)
• INSTALLATION INSTRUCTIONS IN MOODLE. PLEASE INSTALL ASAP!
THANK YOU
• THE BEST WAY TO LEARN PROGRAMMING IS TO PRACTICE
• TODO
• Course registration
• MAKE SURE YOU KNOW YOUR EXERCISE GROUP
• GET ACCESS TO THE COURSE BOOK
• TAKE A LOOK AT THE FIRST EXERCISES
• NEXT LECTURE: BASIC PARTS OF PROGRAMMING
• FRIDAY 6.9, 10:15 – 11:45