---
# System prepended metadata

title: David Prieto teaching material
tags: [Computer Science, tutorial]

---

# David Prieto teaching material


Here you will find the links to the public notes that I have done for the different subjects I have teached divided by subjects.

## General guidance

[Note taking (thinking of IB students)](/wKj6y-rySjejV7BupP9i1w)
[Programs to take notes for IB](/-LTqm6f2SxicgF57XFkwOA)

## Computer Science (IB Diploma Program)

General guide (of my class)
[Starting point in Computer Science](https://hackmd.io/@dprieto/Starting-point-M27)
[Old version](/frd1Pi6FQm2ew2bs4gL-qw)

## Computer Science New syllabus (first examination 2027)

Note: some of the topics/subtopics **won't** be covered by hackmd notes. Some other intersecional topics (such as command terms) will be addressed in specific notes. Here you have the structure as is in the syllabus so is easier for reviewing. 

### Theme A  Concepts of computer science (paper 1)

#### A1 Computer fundamentals


A1.1 Computer hardware and operation

[A1.1 Notes and resources](/6LgCmT4IToOkOu0CuV3UBQ)

A1.2 Data representation and computer logic

* A1.2.1 and A1.2.2 Representing data (binary, hexadecimal)
[A.1.2. Notes and resources](/W_rCaPb-Sy-QabJVLhnCZg)

* A1.2.3, A1.2.4, A1.2.5 Logic gates, truth tables, logic diagrams
[IB Logic gates and truth tables](/YIBSvz5YQLSwEOTxVh5pdA)

:::info
:information_source: 
Previous notes that may be helpful for A1.2

[IB Topic 2 Computer Science - Reference for truth tables and binary](/aZey_UT0QNKk4VGEG0CxxQ)
:::

A1.3 Operating systems and control systems

[A1.3 Notes and Resources](/iD8iagfzSm6tbNqeApW50g)

A1.4 Translation (HL only)
 (no note on this one, this is about compile, interpret and just in time compiling)

#### A2 Networks

#### A3 Databases

[[Private notes on DBs](/Cg3BU1S-Rdaq6jeo1JGpSQ)]

#### A4 Machine Learning


### Theme B: Computational thinking and problem-solving (paper 2)

#### B1 Computational thinking 

[Computational thinking and flowcharts (DRAFT)](/aoJTd1gBSMKAVO1rlmaF6w)

#### B2 Programming 

##### B2.1 Programming fundamentals

*  Arduino

[Melodies in Arduino](/HSHFqID9Sly6rS534i8L4w)
[Arduino morse code and functional programming](/2OLbqEc6SnuhkR-RcrGRDA)

* Python

[Start point with Python](/BDB83OQZRzOGXCg2oHeBxg)
[Flow control in Python](/zX6YpspsTnCvqmZC0vTzRg)
[Functions in Python](/Apsl9c53SSKET1Mlj7iM2Q)
[Lists in Python](/RWrVgWBOTOebitrb0MSFVw)
[Iteration in python (loops)](/vUyPmmaEQ8Wb5cYooygiuQ)
[String exercises in python](/y_afcRmLQcysv05xlSqRuQ)
[Errors and error handling in python](/RCQ32fpjS-up6rYC74jPoQ)
[File reading and writing in python](/LG5DF-vbStKA5nUfx6-Nsg)
[2D Lists in python](/-ylq-DUoTKOS6qGCiq3JRA)

:::info
:information_source: 
Previous notes that may be helpful 
[Flow control in programming (IB pseudocode and arduino)](/fDEulLpKQR-ir1K471w9qw)
[Iteration in programming (IB pseudocode)](/0NGpPJ8DSSCmKMVv0p1ScQ)
[Functions in programming (IB pseudocode)](/LNgQad5gSAqlNAiNyr33fg)
[Arrays in IB Pseudocode](/GOWuknHrTJSBs6NsxEeDOA)

[Collections in IB Computer Science](/jJs5xsoHRjWY3n4eYzL9ZQ)
:::


#### B3 Object-Oriented programming (OOP)
You can check "Option D" questions even if they are about java and not in python. 


#### B4 Abstract data structures (HL only)

:::info
:information_source: 
Previous notes that may be helpful:
[HL Topic 5 Linked lists](/cFrhn2YMTuK9Iyb6lKhWcA)
[HL Topic 5 Binary trees](/VEzA5NMrR0i8cbqnlUBIxg)
:::
### Internal Assessment (new syllabus May 2027)

[Criterion A](/m5NGlqm5S5qvxDiuLejkZg)
[Criterion B](/7DBwVt8SRlqG-UfKqGz7Nw)


### Case study

//TO-DO summer 2026

### Other notes

[IB Computer Science command terms](/iZ30L7H-RgWacb8ZfA76lw)

#### Story time

Events that happened that I can tell you about in class.
* Outage of Chile February 2025
* Outage of Spain April 2025
* Succession of 6 exploits probably done by the CIA. https://en.wikipedia.org/wiki/Stuxnet 
* Airport problem with crowdstrike in Summer 2024
* [Airport problem in September 2025](/f3rnt891Si2xQAnHhDD4hA)



## Old syllabus (last examination 2026)
Theory

Topic 1:
[IB Topic 1: notes from a student](/FLNgAyjSR6Ogw8OjGUAxkA)
Topic 2: 
[IB Topic 2 Computer Science - Computer architecture](/3xQjnnJgTLylJr8LzNzkYw)
[IB Topic 2 Computer Science - Operating systems and programs](/R73PC58XRamdxdJ3vdnvNw)
[IB Topic 2 Computer Science - Reference for truth tables and binary](/aZey_UT0QNKk4VGEG0CxxQ)
Topic 3: (no data)
Topic 4:
[Concepts for Topic 4 in IB Computer Science](/ijsmd7yTTP27ZmO-NyhuUA)
[Big O Notation](/ePOy45OFT0yOOnIMyxtaTw) (requires pseudocode knowledge)
Options
[Options in IB Computer Science](/wDPwJBCCR4iOertaR0xgMg)
Option C
[Topic C links](/_-j8ypokTN29MONvkJNxyQ)
[Topic C material](https://hackmd.io/8g9EfWtdSRGYnvkY41fS9A)
Option D (Java and OOP)

Linear course:
[Start point with Java](/S3oXtcWLQduOy_R5_03Z2g)
[The concept of Object in OOP](/6FsqJbw3SKq5m1NKk56U3Q)
[The POJO (Plain Old Java Object) and their common methods](/zJgmWQUbSLqf3JIiVehBNA)
[Relationship between objects and UML diagrams](/5rUt1ACuTQGF7nuLhvx7TA)


Previous material
[Object Oriented Programming concepts](/oPiYWjKyQLSoeUCKD0SXBA)
[Java concepts not directly in OOP but still important for CS paper 2](/zfx3YkE9QD6-lnNz42kkbQ)
[Functions signatures in Java](/mOroD8vWSsa1TKbciY1f4w)
[Java exercises](/22BDSCcQSDqeb4W4VRRmbg)
[Array exercises in Java](/xkzCpBgIQdeywnxFoVcIyA)
[Using pokemon as example for option D of Computer Science](https://hackmd.io/SFDaYNufTESC4_k5GehaKw)




Programming:

[Flow control in programming (IB pseudocode and arduino)](/fDEulLpKQR-ir1K471w9qw)
[Iteration in programming (IB pseudocode)](/0NGpPJ8DSSCmKMVv0p1ScQ)
[Functions in programming (IB pseudocode)](/LNgQad5gSAqlNAiNyr33fg)
[Arrays in IB Pseudocode](/GOWuknHrTJSBs6NsxEeDOA)

[Collections in IB Computer Science](/jJs5xsoHRjWY3n4eYzL9ZQ)





### Internal Assessment: 



[Internal Assessment: Criterion A](/pYWQphm_TOS-ztdz79-DUw)
[Internal Assessment: Criterion B](/0MElKhl0QZ-mcL-5F3gRAg)
[Internal Assessment: Criterion C](/RjHA5RCVTnyVC2fUCp4bWg)
[Internal Assessment: Criterion D](/45ElzGTuSfa3rnmDUZmARA)
[Internal Assessment: Criterion E](/ytPDNxeBR4WRG7wYJIih5g)
[Internal Assessment Delivery instructions](https://hackmd.io/cZeotVDlSw2UdXBhcUB9Tg)

#### HL Topics: 

HL topic 5:
[2 dimensional arrays](/W401zMAJToK7PBiLN1QKnw)
[HL Topic 5 Stacks and Queues](/iKS9xt1pTJSGLfcy4lvsdg)
[HL Topic 5 Linked lists](/cFrhn2YMTuK9Iyb6lKhWcA)
[HL Topic 5 Binary trees](/VEzA5NMrR0i8cbqnlUBIxg)
Topic 6 interrupts image:
![images](https://hackmd.io/_uploads/r1adu1YJbg.jpg)


General revision
[Revision M24 CS](/bxUIRbA5SdeAspuEdNCuAw)

Other
[Arrays and functions in C++](/1OhSLPk6RO6bZMOvXc6rgg)
[Working with physical arrays](/ldEKvI3UR5-WyKMHblRbhw)
[Melodies in Arduino](/HSHFqID9Sly6rS534i8L4w)
[Arduino morse code and functional programming](/2OLbqEc6SnuhkR-RcrGRDA)]

### Case studies github

The research by the students is uploaded in github with me and the students. You can find all the documentation there.

[May 23 Case Study: Predictive algorithms in social media](https://github.com/d-prieto/2023IBComputerScienceCaseStudy)
[May 25 Case Study: Chatbots in insurance industry](https://github.com/d-prieto/2023IBComputerScienceCaseStudy)
[May 26 Case Study: Ethical hacking in healthcare](https://github.com/d-prieto/2026IBComputerScienceCaseStudy)

## Math (IB Math Analisys and Approaches)

I did a couple of these in 2021-2022

[Exponents and logarithms](/6UtAqMYlQNW-UolAjvfGmA)
[Second grade equations](/cvRqc4CrRcKDAs-eRVfioA)

## Physics

[Physics heat exercises and questions](/2ZkTEs4MSDGLzCX5QUYZjw)
[Inclined planes with friction and no friction](/1T61DXzbSbm_H80XNLO93g)
[Physics. Energy and Power](/zJiCCMzoSI6K6y-DsgWG4w)


## Tecnologia Industrial

[Ejercicios de Tensión y deformación y material de estudio](/i1ILo8LyRTWOm3qdbWKL5g)
[Apuntes sobre electricidad extra para J24](/DL4n-zE8RzS5Echb0RyHyQ)

## Other

Second grade equation exercise:
[Notas ecuaciones 2° grado](/meKQdUC8QD-tf4jTY0wRGQ)
[How to layout in Word a little bit](/11QOL-jDSAK57OngRKKIvg)