Logo ČVUT
CZECH TECHNICAL UNIVERSITY IN PRAGUE
STUDY PLANS
2024/2025

Information Technology

Login to KOS for course enrollment Display time-table
Code Completion Credits Range Language
2371102 Z,ZK 4 2P+2C+0L Czech
Course guarantor:
Matouš Cejnek
Lecturer:
Matouš Cejnek, Jakub Jura, Cyril Oswald
Tutor:
Matouš Cejnek, Jakub Jura, Michal Kuchař, Cyril Oswald, Martin Vitoušek
Supervisor:
Department of Instrumentation and Control Engineering
Synopsis:

Operating systems, programming languages, markup languages, proprietary and open-source software. File formats. Internet, security on the Internet, protocols, databases. Creating programs, commenting, documentation for programs, versioning. Trends in Industry 4.0.

Requirements:
Syllabus of lectures:

• Operating systems (UNIX, Windows, DOS, Linux) – historical development, differences, advantages, realtime systems, areas of application. For practice: basic commands (Linux, Windows), controlling a remote computer over the network

• Representation of different types of artificial languages: programming, markup, other - what are they for, how are they different, comparison of advantages. For the exercise: Creating documents using languages ​​for presentation and display of data - HTML, Markdown, Latex

• Paradigm of programming languages ​​(imperative, declarative, functional, object-oriented) – introduction to object-oriented programming. For practice: Introduction to Python 1 - basic data types, loops, conditions, generators

• Various software licenses (proprietary, open-source) - advantages and disadvantages, history, area of ​​application, comparison. For practice: introduction to Python 2 - functions, classes, importing modules

• Data formats and databases; common data formats: JSON, CSV, XML - presentation and work with them; database: SQL, noSQL - areas of application, comparison of benefits, specific products/services. For practice: Creation of scripts for conversion between data formats, connection and operation of SQL database

• HTTP protocol - how it works, where and why it is used. Introduction and review of formats, concepts and languages ​​related to HTTP: API, HTML, CSS, JSON, Javascript. For practice: creating a client/bot that can contact a remote API, creating a virtual server

• Security in IT - hashing, handling of passwords and API keys, cryptography, blockchain. For practice: hashing, encryption, signing

• Security on the Internet and typical types of threats from the perspective of the client and the server (phishing, CSRF, sql injection, ...). Increasing the competence of safe use of the Internet by explaining basic terms and protocols: email, mac vs IP, VPN tunnels, TOR. For practice: network monitoring, HTTP request tracing, threat detection

• Software versioning – motivation for versioning, history of versioning tools, specific products/services. Good habits during versioning (best practice) For practice: Example of a basic versioning workflow via GIT.

• Software documentation, good code writing habits, documentation automation. To practice Python code documentation, software for automatic documentation generation

• Introduction to software testing, extreme programming, code auditing. For practice Example of creating a battery of unittests to check the integrity of a simple program.

• Trends in Industry 4.0 - presentation of current and upcoming trends in Industry – AI, machine vision. Motivation of new trends, advantages, benefits and costs of new trends. In practice: Interesting applications of new scientific findings in Industry 4.0

Syllabus of tutorials:

• Operating systems (UNIX, Windows, DOS, Linux) – historical development, differences, advantages, realtime systems, areas of application. For practice: basic commands (Linux, Windows), controlling a remote computer over the network

• Representation of different types of artificial languages: programming, markup, other - what are they for, how are they different, comparison of advantages. For the exercise: Creating documents using languages ​​for presentation and display of data - HTML, Markdown, Latex

• Paradigm of programming languages ​​(imperative, declarative, functional, object-oriented) – introduction to object-oriented programming. For practice: Introduction to Python 1 - basic data types, loops, conditions, generators

• Various software licenses (proprietary, open-source) - advantages and disadvantages, history, area of ​​application, comparison. For practice: introduction to Python 2 - functions, classes, importing modules

• Data formats and databases; common data formats: JSON, CSV, XML - presentation and work with them; database: SQL, noSQL - areas of application, comparison of benefits, specific products/services. For practice: Creation of scripts for conversion between data formats, connection and operation of SQL database

• HTTP protocol - how it works, where and why it is used. Introduction and review of formats, concepts and languages ​​related to HTTP: API, HTML, CSS, JSON, Javascript. For practice: creating a client/bot that can contact a remote API, creating a virtual server

• Security in IT - hashing, handling of passwords and API keys, cryptography, blockchain. For practice: hashing, encryption, signing

• Security on the Internet and typical types of threats from the perspective of the client and the server (phishing, CSRF, sql injection, ...). Increasing the competence of safe use of the Internet by explaining basic terms and protocols: email, mac vs IP, VPN tunnels, TOR. For practice: network monitoring, HTTP request tracing, threat detection

• Software versioning – motivation for versioning, history of versioning tools, specific products/services. Good habits during versioning (best practice) For practice: Example of a basic versioning workflow via GIT.

• Software documentation, good code writing habits, documentation automation. To practice Python code documentation, software for automatic documentation generation

• Introduction to software testing, extreme programming, code auditing. For practice Example of creating a battery of unittests to check the integrity of a simple program.

• Trends in Industry 4.0 - presentation of current and upcoming trends in Industry – AI, machine vision. Motivation of new trends, advantages, benefits and costs of new trends. In practice: Interesting applications of new scientific findings in Industry 4.0

Study Objective:
Study materials:
Note:
Time-table for winter semester 2024/2025:
06:00–08:0008:00–10:0010:00–12:0012:00–14:0014:00–16:0016:00–18:0018:00–20:0020:00–22:0022:00–24:00
Mon
Tue
Wed
Thu
roomT4:C1-308
Cejnek M.
14:15–15:45
(lecture parallel1)
Dejvice
roomT4:C1-308
Cejnek M.
16:00–17:30
(parallel nr.1)
Dejvice
Fri
Time-table for summer semester 2024/2025:
Time-table is not available yet
The course is a part of the following study plans:
Data valid to 2025-01-21
For updated information see http://bilakniha.cvut.cz/en/predmet8001206.html