Subject Datasheet
Completion requirements
Subject Datasheet
Download PDFI. Subject Specification
1. Basic Data
1.1 Title
Programming Basics
1.2 Code
BMEEOFTBSFC001-00
1.3 Type
Module with associated contact hours
1.4 Contact hours
| Type | Hours/week / (days) |
| Lab | 2 |
1.5 Evaluation
Midterm grade
1.6 Credits
3
1.7 Coordinator
| name | Dr. Ekler Hajnalka |
| academic rank | Assistant professor |
| ekler.hajnalka@emk.bme.hu |
1.8 Department
Department of Photogrammetry and Geoinformatics
1.9 Website
1.10 Language of instruction
english
1.11 Curriculum requirements
Compulsory in the Civil Engineering (BSc) programme
1.12 Prerequisites
1.13 Effective date
1 September 2025
2. Objectives and learning outcomes
2.1 Objectives
The main goal of the course is for students to acquire basic programming knowledge and be able to independently solve simple algorithmic tasks using the Python programming language. We encourage students to develop programming habits that will enable them to work in teams on more complex engineering tasks and modify larger codebases in the future.
2.2 Learning outcomes
Upon successful completion of this subject, the student:
A. Knowledge
1. Knows the most important data structures.
2. Knows the most important control structures.
3. Is familiar with the basic tools and methods of algorithm design.
4. Knows the fundamental principles of programming.
5. Is familiar with various Python libraries.
6. Understands the possibilities of importing, visualizing, and exporting data.
7. Knows the basic syntax of the Python language.
8. Knows the most important programming terms in English as well.
9. Understands the role and importance of programming in civil engineering practice.
B. Skills
1. Is able to choose a programming language and environment for civil engineering calculation tasks.
2. Can confidently solve civil engineering calculation problems using the Python programming language.
3. Is able to organize the computational methods of civil engineering design into functions that other engineers can later use.
4. Can read, use, and modify code created by others.
5. Can search the internet for answers to programming-related questions, and then filter and validate the relevant answers.
6. Can organize calculations and associated documentation into an interactive notebook.
7. Can interpret error messages and fix errors based on them.
C. Attitudes
1. Is capable and open to learning new programming languages.
2. Is capable and open to independently expanding their IT knowledge.
3. Understands that the programming language is English, so they strive to deepen their English (professional) language skills.
4. Always keeps in mind that their code should be understandable, clear, and easily modifiable by others.
5. Avoids unnecessary complexity and strives for transparent, elegant solutions.
6. Strives to complete their tasks to the best of their ability and at a high standard.
D. Autonomy and Responsibility
1. Can independently solve smaller engineering tasks using the Python programming language.
2. Applies a systems-based approach when solving tasks.
3. Checks and validates their work in every case.
4. Takes responsibility for the quality of the code they write.
2.3 Methods
As this is a lab practice course, the largest role in the teaching is played by in-person instruction. During the practice sessions, students solve mainly programming tasks with the help of the practice instructors. Students acquire the theoretical part independently, from the interactive workbook provided, which contains, alongside the theoretical material, the solution codes for the in-class tasks and their descriptions, thereby ensuring that students are also able to prepare independently for a given topic in case of absence.
2.4 Course outline
Introduction
Simple data types
List, tuple
Set, dictionary
Control structures
Functions
Basic algorithms I.
Basic algorithms II.
Partial summary
Reading text files
Writing text files
Data visualization
Complex programming tasks
Summary
The above programme is tentative and subject to changes due to calendar variations and other reasons specific to the actual semester. Consult the effective detailed course schedule of the course on the subject website.
2.5 Study materials
Interactive notebooks for every exercise found in Moodle.
2.6 Other information
-
2.7 Consultation
Consultation hours: as specified on the department's website, or by prior arrangement via email; email: ekler.hajnalka@emk.bme.hu .
This Subject Datasheet is valid for:
2026/2027 semester I
II. Subject requirements
Assessment and evaluation of the learning outcomes
3.1 General rules
During the semester, students will complete 10 short theoretical tests at the beginning of the practical sessions, and they are also required to complete two practical midterm exams.
If a student’s absence exceeds 30% of the total laboratory hours, the course credits cannot be obtained.
3.2 Assessment methods
| Teljesítményértékelés neve (típus) | Jele | Értékelt tanulási eredmények |
|---|---|---|
| Introduction test | CT1 | A1, A9, B1, B2, B6, C1 |
| Simple data types test | CT2 | A5, A9, B5 |
| List, tuple test | CT3 | A1, A9 |
| Set, dictionary test | CT4 | A1, A9 |
| Control structures test | CT5 | A2, A3, A6, A9 |
| Functions test | CT6 | A5, A6, A9, B4, B5, C4 |
| Basic algorithms I. test | CT7 | A2, A3, A4, A6, A9 |
| Basic algorithms II. test | CT8 | A2, A3, A4, A6, A9 |
| Midterm test 1. | MT1 | A1, A5, A6, A8, B4, B7, B8, C1-C6, D1-D4 |
| Reading text files test | CT9 | A5, A7, A9, B5 |
| Writing text files test | CT10 | A5, A7, A9, B5 |
The dates of deadlines of assignments/homework can be found in the detailed course schedule on the subject’s website.
3.3 Evaluation system
| Jele | Részarány |
|---|---|
| CT1 | 3% |
| CT2 | 3% |
| CT3 | 3% |
| CT4 | 3% |
| CT5 | 3% |
| CT6 | 3% |
| CT7 | 3% |
| CT8 | 3% |
| MT1 | 20% |
| CT9 | 3% |
| CT10 | 3% |
| MT2 | 50% |
| Összesen | 100% |
3.4 Requirements and validity of signature
No signature can be obtained for this course.
3.5 Grading system
| Érdemjegy | Pontszám (P) |
|---|---|
| jeles(5) | 85≤P |
| jó(4) | 75≤P<85% |
| közepes(3) | 65≤P<75% |
| elégséges(2) | 50≤P<65% |
| elégtelen(1) | P<undefined% |
3.6 Retake and repeat
The CTs have no minimum point requirement and cannot be retaken. The minimum point threshold for MT1 is 10 points, and for MT2 it is 25 points. Both MTs can be retaken during the retake week; for the retake, the last score obtained will be taken into account.
3.7 Estimated workload
| Tevékenység | Óra/félév |
|---|---|
| Participation in contact lessons | 14 x 2 = 28 |
| Preparation for practical sessions | 14 x 2 = 28 |
| Preparation for theoretical tests | 10 x 1 = 10 |
| Preparation for practical assessments | 2 x 12 = 24 |
3.8 Effective date
1 September 2025
This Subject Datasheet is valid for:
2026/2027 semester I