MYO053 Advanced PythonIstinye UniversityDegree Programs Computer Programming (Evening Education)General Information For StudentsDiploma SupplementErasmus Policy StatementNational Qualifications
Computer Programming (Evening Education)

Preview

Associate TR-NQF-HE: Level 5 QF-EHEA: Short Cycle EQF-LLL: Level 5

Course Introduction and Application Information

Course Code: MYO053
Course Name: Advanced Python
Semester: Fall
Course Credits:
ECTS
3
Language of instruction: Turkish
Course Condition:
Does the Course Require Work Experience?: No
Type of course: Departmental Elective
Course Level:
Associate TR-NQF-HE:5. Master`s Degree QF-EHEA:Short Cycle EQF-LLL:5. Master`s Degree
Mode of Delivery: E-Learning
Course Coordinator: Öğr. Gör. AHMET SELİM ÖVER
Course Lecturer(s): Öğr. Gör. Mustafa Koçal
Course Assistants:

Course Objective and Content

Course Objectives: The main goal of this course is to make students practice the programming skills that they acquired in Programming Fundamentals 1. In particular, the course aims to teach widely used problem solving methodologies on real life examples.
Course Content: From filtering spam to recommending movies, books and music to end-users, the course content is mainly based on practical applications. All students are required to complete a set of mini projects which will allow students to practice what they learn in the classroom by building practical applications.

Learning Outcomes

The students who have succeeded in this course;
1) Learn practical data mining techniques (classification, clustering, etc.).
2) Learn collaborative filtering techniques
3) Get familiar with document retrieval and ranking
4) Get exposed to advanced Python concepts (lambda functions, decorators, etc.)
5) Apply learned data mining techniques on real life cases.
6) Learn team work through projects in small groups

Course Flow Plan

Week Subject Related Preparation
1) Files, Databases, Pickling, Exceptions Think Py – Ch 14
2) GUI Programming – Widgets
3) GUI Programming – Layout Managers
4) GUI Programming – Events
5) Introduction to Collective Intelligence, Making Recommendations
6) Introduction to Collective Intelligence, Making Recommendations (Continue) Ch 1, 2
7) Introduction to Collective Intelligence, Making Recommendations (Continue) Ch 1, 2
8) Introduction to Collective Intelligence, Making Recommendations (Continue) Ch 1, 2
9) Collaborative Filtering Ch 2
10) Collaborative Filtering (Continue) Ch 2
11) Collaborative Filtering (Continue) Ch 2
12) Discovering Groups - Hierarchical Clustering Ch 3
13) Discovering Groups - Hierarchical Clustering (Continue) Ch 3
14) Discovering Groups - kMeans Clustering Ch 3
15) Final

Sources

Course Notes / Textbooks: Programming Collective Intelligence by Toby Segaran. O’Reilly Press (2007, 1st edition).
References: Programming Collective Intelligence by Toby Segaran. O’Reilly Press (2007, 1st edition).

Course - Program Learning Outcome Relationship

Course Learning Outcomes

1

2

3

4

5

6

Program Outcomes
1) He gains the ability of problem solving and analytical thinking skills. 3 3 3 3 3 3
2) He learns the fundamentals of computer programming, hardware and software and the basic computer concepts. 3 3 3 3 3 3
3) He develops algorithms according to the problems, gains the ability to distinguish the appropriate ones from the fundamental algorithms for the problem. 3 3 3 3 3 3
4) He understands object-oriented programming concept and web programming. 3 3 3 3 3 3
5) He learns radix systems, fundamental electronics and computer hardware knowledge. 3 3 3 3 3 3
6) He gains mobile programming skills and develops applications for mobile platforms. 3 3 3 3 3 3
7) He designs and codes databases. 3 3 3 3 3 3
8) He learns to program and use computer networks, open source operating systems. 3 3 3 3 3 3
9) He uses the English language effectively. 3 3 3 3 3 3
10) He learns to use appropriate data structures according to programming requirements. 3 3 3 3 3 3
11) He develops software individually or as a team. 3 3 3 3 3 3
12) He follows developments in the field, high technology tools / applications. 3 3 3 3 3 3
13) He gains awareness of professional and ethical responsibility and has an awareness of professional ethics. 3 3 3 3 3 3

Course - Learning Outcome Relationship

No Effect 1 Lowest 2 Average 3 Highest
       
Program Outcomes Level of Contribution
1) He gains the ability of problem solving and analytical thinking skills. 3
2) He learns the fundamentals of computer programming, hardware and software and the basic computer concepts. 3
3) He develops algorithms according to the problems, gains the ability to distinguish the appropriate ones from the fundamental algorithms for the problem. 3
4) He understands object-oriented programming concept and web programming. 3
5) He learns radix systems, fundamental electronics and computer hardware knowledge. 3
6) He gains mobile programming skills and develops applications for mobile platforms. 3
7) He designs and codes databases. 3
8) He learns to program and use computer networks, open source operating systems. 3
9) He uses the English language effectively. 3
10) He learns to use appropriate data structures according to programming requirements. 3
11) He develops software individually or as a team. 3
12) He follows developments in the field, high technology tools / applications. 3
13) He gains awareness of professional and ethical responsibility and has an awareness of professional ethics. 3

Assessment & Grading

Semester Requirements Number of Activities Level of Contribution
Homework Assignments 2 % 20
Project 1 % 35
Final 1 % 45
total % 100
PERCENTAGE OF SEMESTER WORK % 55
PERCENTAGE OF FINAL WORK % 45
total % 100

Workload and ECTS Credit Calculation

Activities Number of Activities Preparation for the Activity Spent for the Activity Itself Completing the Activity Requirements Workload
Course Hours 3 5 15
Project 1 30 30
Homework Assignments 2 6 12
Final 1 30 30
Total Workload 87