Computer programming(ECON222)
| Course Code | Course Name | Semester | Theory | Practice | Lab | Credit | ECTS |
|---|---|---|---|---|---|---|---|
| ECON222 | Computer programming | 4 | 4 | 0 | 0 | 4 | 5 |
| Prerequisites | |
| Admission Requirements |
| Language of Instruction | Turkish |
| Course Type | Compulsory |
| Course Level | Bachelor Degree |
| Course Instructor(s) | Amine Hatun ATAŞ ahatas@gsu.edu.tr (Email) |
| Assistant | |
| Objective | The aim of this course is to assist students in the Department of Economics in acquiring computational thinking and data processing skills that are aligned with the requirements of the digital age by introducing the fundamental concepts of programming. Students will develop their computational thinking abilities through algorithms and flowcharts, while gaining hands-on experience in the software development process using the Python programming language. In addition to fundamental data structures such as data types, lists, tuples, sets, and dictionaries, students’ problem-solving skills will be enhanced through the use of decision structures, loops, and functions. Furthermore, through libraries such as NumPy, Pandas, and Matplotlib, students will develop competencies in data analysis, visualization, and interpretation. |
| Content |
Introduction to Programming and Fundamental Concepts * Computational thinking * What is an algorithm and how is it designed? * Flowcharts * Software development process General Overview of Programming Languages * Introduction to the Python Programming Language * What is Python? * Compiler and interpreter concepts * IDE usage and installation * Introduction to the Python interface Data Types and Basic Structures * Numerical data: Integers, Floats * Text data: Strings * Logical data: Booleans * Variable definition and usage * Operators: arithmetic, comparison, logical Decision Structures, Loops, and Error Handling * if, else, elif structures * Nested decision structures * while and for loops * Use of break and continue in loops * Range and enumerate functions * Types of errors * Exception handling blocks Functions * Functions with and without parameters * Return statement * Lambda expressions * Recursive functions Data Structures * Lists * Tuples * Sets * Dictionaries Python Standard Libraries * Math module * Random module * Datetime and Time modules File Operations * File creation, writing, and reading * File updating and control functions Data Analysis and Visualization Libraries * NumPy: Numerical computations * Pandas: Data analysis and data frames * Matplotlib: Plotting and data visualization |
| Course Learning Outcomes |
At the end of the course, a student will be able to: model the problem-solving process using basic algorithms and flowcharts; understand software development processes by developing computational thinking skills; write simple programs using the basic syntax and structures of the Python programming language; perform operations using variables, data types, and basic operators; control program flow through decision structures and loops; store and process data using data structures such as lists, tuples, sets, and dictionaries; develop modular and readable code through the use of functions; perform file operations to read data from external sources and to store data; carry out various operations using Python’s standard libraries (e.g., math, random, datetime); conduct basic-level analysis and visualization of economic data using NumPy, Pandas, and Matplotlib; apply programming knowledge to data-driven problems in the field of economics. |
| Teaching and Learning Methods |
Lecture: Fundamental concepts, algorithms, and the structure of the Python programming language will be taught with this method. Demonstration: Example applications will be carried out during the course to translate theoretical topics into practice. Problem Solving and Practical Exercises: Algorithm development and Python coding practice will be conducted using examples related to economics. Question-and-Answer Method: This method will be used to encourage active student participation and to reinforce the covered topics. Laboratory Applications: Hands-on instruction will be provided in a computer-based environment where Python programs are written and executed, and data analysis is performed. Assignments: Students will apply what they have learned through a small-scale project or a data analysis assignment. Feedback: Evaluation and feedback will be provided after laboratory activities. |
| References |
The course materials for each week will be uploaded to the Moodle course page under the relevant week. The following resources may be used as supplementary (optional) materials to support the main course resources: Yıldız, B. Python Projeleri ve Popüler Kütüphaneler (3rd. Ed.) Tungut, H. B. Algoritma ve Programlama Mantığı (23rd Ed.) Taşçı, V. Python Eğitim Kitabı (4rd Ed.) Kalb, I. Learn to Program with Python 3. Sweigart, Al. The Big Book of Small Python Projects: 81 Easy Practice Programs Matthes, Eric. Python Crash Course, 3rd Edition: A Hands-On, Project-Based Introduction to Programming. Tuckfield, Bradford. Dive into Algorithms: A Pythonic Adventure for the Intrepid Beginner. |
Theory Topics
| Week | Weekly Contents |
|---|---|
| 1 | Introduction to Programming: Algorithms and Flowcharts |
| 2 | Introduction to Python |
| 3 | Conditional Statements |
| 4 | Loops, Error Handling |
| 5 | Functions |
| 6 | Strings |
| 7 | List |
| 8 | Tuple |
| 9 | Set |
| 10 | Dictionary |
| 11 | File Handling |
| 12 | Standard Libraries |
| 13 | Python Libraries and Applications |
| 14 | Python Libraries and Applications |
Practice Topics
| Week | Weekly Contents |
|---|---|
| 1 | Introduction to Programming: Algorithms and Flowcharts |
| 2 | Introduction to Python |
| 3 | Conditional Statements |
| 4 | Loops, Error Handling |
| 5 | Functions |
| 6 | Strings |
| 7 | List |
| 8 | Tuple |
| 9 | Set |
| 10 | Dictionary |
| 11 | File Handling |
| 12 | Standard Libraries |
| 13 | Python Libraries and Applications |
| 14 | Python Libraries and Applications |
Contribution to Overall Grade
| Number | Contribution | |
|---|---|---|
| Contribution of in-term studies to overall grade | 5 | 60 |
| Contribution of final exam to overall grade | 1 | 40 |
| Toplam | 6 | 100 |
In-Term Studies
| Number | Contribution | |
|---|---|---|
| Assignments | 4 | 30 |
| Presentation | 0 | 0 |
| Midterm Examinations (including preparation) | 1 | 30 |
| Project | 0 | 0 |
| Laboratory | 14 | 0 |
| Other Applications | 0 | 0 |
| Quiz | 0 | 0 |
| Term Paper/ Project | 0 | 0 |
| Portfolio Study | 0 | 0 |
| Reports | 0 | 0 |
| Learning Diary | 0 | 0 |
| Thesis/ Project | 0 | 0 |
| Seminar | 0 | 0 |
| Other | 0 | 0 |
| Make-up | 0 | 0 |
| Toplam | 19 | 60 |
| No | Program Learning Outcomes | Contribution | ||||
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | ||
| 1 | Demonstrate a basic knowledge of different economic theories and main discussions driving current theoretical approaches | X | ||||
| 2 | Demonstrate ability to use basic qualitative and quantitative methods to asses different economic questions of applied fields | X | ||||
| 3 | Show a sound understanding of current economic discussions and problems | X | ||||
| 4 | Have an effective and clear communication in written and oral formats in different public and professional contexts. | X | ||||
| 5 | Demonstrate basic knowledge of the world economic history and a sound knowledge of the Turkish economic history | |||||
| 7 | Demonstrate knowledge of standard quantitative techniques and empirical models used in economics | X | ||||
| 8 | Show ability to apply basic economic theory to an applied topic | X | ||||
| 9 | Show a basic understanding of analytical methods, both theory- and model-based | X | ||||
| 10 | Show ability to use economic concepts to discuss current economic issues | X | ||||
| 11 | Reason logically and work analytically | X | ||||
| 12 | Show awareness on social aspects of the economics in different applied and theoretical fields | X | ||||
| 13 | Identify appropriate economic models to analyse problems | X | ||||
| 16 | Show understanding of basic statistical and econometric concepts and ability to apply basic concepts to own empirical work | X | ||||
| 17 | Demonstrate a sound knowledge of the current economic issues in Turkey and a general knowledge of the issues in the world economy | |||||
| Activities | Number | Period | Total Workload |
|---|---|---|---|
| Class Hours | 14 | 2 | 28 |
| Working Hours out of Class | 1 | 10 | 10 |
| Assignments | 4 | 4 | 16 |
| Presentation | 0 | 0 | 0 |
| Midterm Examinations (including preparation) | 1 | 20 | 20 |
| Project | 0 | 0 | 0 |
| Laboratory | 14 | 2 | 28 |
| Other Applications | 0 | 0 | 0 |
| Final Examinations (including preparation) | 1 | 20 | 20 |
| Quiz | 3 | 1 | 3 |
| Term Paper/ Project | 0 | 0 | 0 |
| Portfolio Study | 0 | 0 | 0 |
| Reports | 0 | 0 | 0 |
| Learning Diary | 0 | 0 | 0 |
| Thesis/ Project | 0 | 0 | 0 |
| Seminar | 0 | 0 | 0 |
| Other | 0 | 0 | 0 |
| Make-up | 0 | 0 | 0 |
| Yıl Sonu | 0 | 0 | 0 |
| Hazırlık Yıl Sonu | 0 | 0 | 0 |
| Hazırlık Bütünleme | 0 | 0 | 0 |
| Total Workload | 125 | ||
| Total Workload / 25 | 5.00 | ||
| Credits ECTS | 5 | ||


