# Starting point in Computer Science M27 (new guide)
###### tags: `IB`, `Computer Science`, `guide`
[ToC]
## Who am I and who are you
I'm David Prieto. Architect (building architect, since there is also a software architect role). Coder. Teacher.
I have worked in Generali and for the Indra as a code analyser and I also have colaborated several projects in digital fabrication with FablabBCN. I've been working here since 2021.
### Questions about you
- Name
- Why are you here
- What do you expect from this class
- Any previous knowledge
## What is this subject about
* It's about computacional *thinking*.
* It's about knowing how computers work inside.
* It's about algorithms and how to write them.
* It's about solving problems using planning.
* It's about knowing the ethic caveats involved in computing (they actually ask that in the exam)
## What is this subject not about
* How to use computers _(You're supposed to have some understanding of it)_
* How to create webpages _(it's not the main goal but maybe we can do something little)_
* How to gain money using [crypto](https://www.youtube.com/watch?v=YQ_xWvX1n9g) _(please, don't do crypto it's bad for you and the enviroment)_
* How to create an Artificial Intelligence to cheat using ChatGPT
* A full stack developer course. This subject is more general and no so specific than that.
* How to enter other person e-mail.
## How is it going to be evaluated
You can check it out for yourself in the [guide](http://ib.compscihub.net/wp-content/uploads/2015/04/IBCompSciGuide.pdf) in "assesment outline"
The main idea is that your grade is going to be evaluated not for _me_ the teacher, but is **the IB in charge of evaluating** you. It's like doing a Cambridge exam but for _every subject_.
So here my role is to prepare you to that assesments. There are two types
* External. What you could put as an "exam". Some subjects have 2 exams ("papers") or 3.
* Internal. There are more like "projects"/"exercises". You will be asked about your Internal Assessment in your subjects or "IA"
Depends if you're in HL (High Level) or SL (Standard Level) your grading is going to be different. Let's see it.
### SL (Standard Level)
You will have 2 papers:
* Paper 1 is about the core content of the subject (topics 1-4)
* Paper 2 is about one of the options (Here I chose for you Object Oriented Programming, topic D).
In those paper calculators are not allowed. That's a total of 115 marks and it makes a 70 % of the total grade.
Then you will have the IA and the project 4 group activity that's going to be another 40 marks and 30% of the total grade.
### HL (High Level)
You will have 3 papers.
* Paper 1 is about the core content of the subject including the High level expansion (Topics 1-7).
* Paper 2 is about one of the options (Here I chose for you Object Oriented Programming, topic D).
* Paper 3 is an investigation about a topic. Each year is different.
As in the SL, calculators are not allowed and that makes 195 marks and it's 80 % of the final grade.
Then you will have the same IA and the project 4 group activity but that makes only 20 % of the total grade.
### Grade boundaries
IB works with boundaries from 1 to 7. A 1 is awful and a 7 is the maximum.
IB is hard and they know that so they make a grade boundary each year. [Here](https://drive.google.com/file/d/1AWLW3wdIklLwiELMLzg1K2MJk0VTVAUE/view) you can consult the biased data (because of Covid) from the year 2021.
For here I'm using these gradings:
|Grade |Percentage bigger than|
| -------- | -------- |
1| 0 %
2| 14 %
3| 29 %
4| 39 %
5| 49 %
6| 59 %
7| 69 %
*This gradings are subject to change using the current year grade boundaries.
Let's see with an example
If you do a test with 27 marks and you have 15 correct you will have a percentage of 15/27 = 56%, and that means you have a 5. You would need a 63% (17/27) to get a 6.
When I have several grades I would first make the aritmethic average in the percentage and then find out the grade boundary.
During the course if we use IB type questions I will use this grading. If not, I will use a percentage.
### Progressive grade
Progressive grade is an overal grade that covers the 2 years and it's a projection of what would be the expected grade in the final marking with your actual skills and knowledge.
So that means that starts almost always very very low and doesn't descend.
For the first trimester expect 1 of 2. 1 means that you need to work, 2 means that you're doing as espected.
For the final trimester of the first year expect grades from 1 to 4. 3 and 4 are good grades. 1 is **very** bad and 2 is **worrying**.
### Evidence based grades
The other grade that you will see each trimester is the evidence based grade. That will collect mainly the exams and other activities. I will ponder them and I'll tell you "this trimester you did it good" (or not).
I'll check out the homework on classroom and you will have a comment on homework. The idea is that any given homework it's to keep the subject fresh in your minds.
There are another kind of deadlines that we'll arrive that are more strict. Those are the IAs. The tutor will be noticed right away if you miss any of these deadlines.
## The books and the topics
We're going to use 2 books, one that is the core for SL and HL and other that is only for HL. I recommend you to have them printed so you don't have to swap between the pdf and the notes.
Those books are... fine, but they are not great. And they are very boring. They are a good reference because the concepts are well defined there. We will touch the book mainly for reference and you will find it useful for studing.
### Notes suggestion
I suggest to take notes with paper and pencil in class. It's easier not to get distracted.
Also it will happen that you will see different formattings that are complicated to express using word and if you need to format while taking notes you will lose the thread of what's happening in the class.
How do I take notes of any class: I take notes on any kind of subject is about and put down. I made that effort so I have to think of what's happening in the class and maybe I can use it or not.
Maybe those notes are not good enough for making some "proper studing notes" but I least I have the idea of what happened that day in class and I can use other references. (The book, a colleague notes, something I found in the internet).
If we're doing something more "learning by doing" (like programming an arduino) I'll take notes of what I'm doing as a journey. If I find something interesting I take note of it. In these cases writing in the computer could be more useful since I can copy-paste the code I'm referencing for.
[Here](http://fabacademy.org/2020/labs/barcelona/students/david-prieto/assignments/week12/) you can find a example of myself doing that. And [here](https://github.com/Tabrih/Arduino/blob/main/Cerrojo%20de%20Puerta.md) one my students with some notes regarding arduino.
I suggest, if you're going to take notes on the computer not only use "documents"/word but work with hackmd.io or github/gitlab using markdown language.
### Computer policies
You will need to use your computer to do CS, specially in projects. You might be asked to download IDEs or some programs.
You can use the computer to have a pdf of the book.
I have a strict policy about computers. In my class it can only be used for the contents of the subject.
* If you have any autostart program that is not related to studying, take it out. You can configure it so it doesn't start with the OS. (Examples: Steam, epic store, whatsapp, discord)
* You're not allowed to do other subjects here.
* I know that you can switch between tabs/applications/desktops. Other applications **must** be closed. If you need help so discord/steam/epic games doesn't open automatically I'd be glad to help.
The consequences are going to be "in crescendo", from just telling you close the other applications. Taking your device until the end of the class or the end of the day.
Since it's a bit difficult to work in CS without a computer, I suggest to follow these policies.
## Reference
* IB Guide: http://ib.compscihub.net/wp-content/uploads/2015/04/IBCompSciGuide.pdf
* Tutorials and courses about Java as a complement for the course: https://d-prieto.medium.com/resources-to-learn-java-c4f6a1bd4d98