Kobe Institute of Computing, Syllabus 2023

1. Course Code2203
2. Course Title
F30e: Fundamentals of Computer Programming Python
3. Teacher
HAMIDULLAH, Sokout
4. TermFall 2
5. Course Requirements (Courses / Knowledge for this course) and Important Information
Fundamentals of Computer Systems (both courses can be taken concurrently)

6. Course Overview and Objectives
Programming is the foundation of every other subject in ICT. By becoming proficient inprogramming, students will be able to actively participate in projects involving system creation.
Programming is also necessary for testing ideas, constructing and maintaining networks andservers, and in many other areas.
The course first reviews the fundamentals of procedural programming through experimental
exploration, using the dynamic, interactive, object-oriented Python language. This course is thepave for Data Science and AI.
7. Course Outline
1 Course orientation, Python Objects and Data Structure Basics
2 Python Data Structure Advanced
3 Python Statements
4 Exercises
5 File Handling
6 Methods and Functions
7 Project-1
8 Exercises
9 Object Oriented Programming
10 Exercises
11 Errors and Exceptions Handling + Web Scraping
12 Python Database (MySQL)
13 Python Modules (Pandas, Numpy, Scipy) + Gradio
14 Exercises
15 Student Final Project
16 Presentation/ Reflection
8. Textbooks (Required Books for this course)
None.

9. Reference Books (optional books for further study)
Python Crash Course, 2nd Edition: A Hands-On, Project-Based Introduction to Programming
Author: Eric Matthes
Publisher: No Starch Press
Online Resources

10. Course Goals (Attainment Targets)(1) Become able to read, understand, and modify programs written in Python.
(2) Become able to develop a small application.
(3) Can write and use Python scripts for everyday tasks.
(4)
(5)
(6)
(7)
(8)
11. Correspondence relationship between Educational goals and Course goals
Educational goals of the school
Course Goals
High level ICT Basic academic skills(1) (2) (3)Specializedknowledge
andliteracy(2) (3)skillsAbility to continually improve own strengths(3)
Problem setting
Ability to discover andHypothesis planning
Human skill resolve the problem inHypothesis testing(Tankyusociety
Practiceskill）
Fundamental
Ability to step forward(3)
Ability to think through(3)
Competencies for
Ability to work in a teamWorking Persons
Professional ethics
12. Evaluation
Goals
Evaluation method & point allocation
examination
Quiz
Reports Presentation Deliverables
Other(1)
〇(2)
〇(3)
〇〇
(4)
(5)
(6)
(7)
(8)
Allocation
20305013. Evaluation Criteria
Examination
Quiz
Related weeks tasks will be given to students to solve in order to evaluate theunderstanding of students and motivate them for further learning.
Expected codes should be without errors and original.
Reports
Presentation

In the final presentation, students will be asked develope a small application
using Python. The evaluation will be based on participation in the group work,
presentation, the relavance of the argument, time managment and relation tothe course contents. Meanwhile, its recommended to have specific instructions
for code implementation.

Deliverables

1. Individuale or group assignment will be assigned for the students with focus
on learning goals (1,2 and 3). The evaluation will be based on how the students
understand the exercises and participation.
2. The results required by the exercise can be achieved.

Other14. Active LearningHourly percentage of active learning within the whole class time60%
1 Active learning such as problem solving assignment using theknowledge and skills acquired in class.

Sometimes

2 Active learning such as group works and discussions.

All the time

3 Outcome presentations and feedbacks.

All the time

4 Students actively make decisions on how the class should beconducted.

Not at all

15. Notes

16. Course plan(Notice) This plan is tentative and might be changed at the time of delivery

Lesson 1: Python Objects and Data Structure Basics

Lecture + Exercises

What is programming? We consider solving everyday tasks, first by natural language, then bywriting exact and detailed instructions. Students learn the basics of the Python language
through a few simple exercises and use it to test their understanding of the elements ofprogramming principles.

Lesson 2: Python Data Structure Advanced

Lecture + Exercises

1. List
2. Dictionary
3. Tuple
4. SetLesson 3: Python Statements

Lecture + Exercises

1. If statements
2. Loop
Lesson 4: Exercises

Lecture + Exercises

Summarize the previous knowledge and practice comprehensively.
Lesson 5: File Handling

Lecture + Exercises

Introdcue the additional built-in sequence types, Dictionaries and Sets in Python.

Lesson 6: Methods and Functions

Lecture + Exercises

1. Built in Methods in Python
2. User define Methods
Lesson 7: Project-1

Exercises

Summarize the previous knowledge and practice comprehensively.

Lesson 8: Exercises

Exercises

Summarize the previous knowledge and practice comprehensively.

Lesson 9: Object Oriented Programming

Lecture + Exercises

Introduce the the concept of Object Oriented Programming.

Lesson 10: Exercises

Exercises

Summarize the previous knowledge and practice comprehensively.

Lesson 11: Errors and Exceptions Handling + Web
Scraping

Lecture + Exercises

1. Errors and Exeptions Handling with Python
Lesson 12: Python Database (MySQL)

Lecture + Exercises

Learn how to use the Python library to connect to database, and operate the data inPython.
Lesson 13:Python Modules (Pandas, Numpy, Scipy) +Lecture + Exercises
GradioIntroduce the fundamental packages for scientific computing with Python: Numpy, Pandas
Scipy and matplotlib and Gradio for user interface.
Lesson 14: Exercises

Exercises

Summarize the previous knowledge and practice comprehensively.

Lesson 15-16: Final Presentation/ Reflection
Presentation and discussion

Presentation