'def title Добре дошли - УПП, Седмица 1, 06.10.2023
'def desc Въведителни думи за практикума и ФМИ
# {title}
\n
{presentation-controller}
:title_slide35
# Добре дошли
:width65%
{url {img https://upload.wikimedia.org/wikipedia/commons/3/3c/Chimpanzee_seated_at_typewriter.jpg};https://en.wikipedia.org/wiki/Infinite_monkey_theorem}
:slide
## Кой съм аз
{br2}
:font35
Казвам се Камен (моля не ми говорете на Вие), в момента съм третокурсник в КН2.\n
{br1}
Ще водя практикуми - давам ви задачи, вие ги решавате и на живо оправяме проблеми.\n
{br1}
Също ще проверявам част от домашните и контролните през семестъра.
:slide
## Кои сте вие
Айде сега, ред по ред:
{br3}
:font35
:bulleted
- Име
.bulleted
- Едва ли ще го запомня сега, не ми се сърдете :)
- Коя операционна система ползвате
- Писали ли сте код преди? Ако да:
.bulleted
- на кои езици?
- в какво IDE/текстов редактор?
- как сте се научили (чрез интернет, курсове, ...)? Ходили ли сте на курсове? Къде?
:slide
## Чисто организационно
{br3}
:centered35
Задачи, презентации, ...\n
{url syndamia.com/teaching/upp-2023;/teaching/upp-2023}
{br3}
:unordered
- Не сме в училище, ако трябва да излезете за разговор или до тоалетна, просто си излезте (за предпочитане по-тихичко).
- Ако ви се наложи да пропуснете някой практикум, пропускайте.
.bulleted
- Само ако решите за постоянно да ходите при някой друг, кажете за да се организираме екипа.
- Оценяване: ще разберете на първата лекция
:slide
## Как можете да се свържете
:unordered
- Facebook messenger:
- Discord:
- Имейл:
.bulleted
- kamen.d.mladenov@protonmail.com
- kamen@syndamia.com
{b (гледайте си спама!)}
- {url kdmladenov@uni-sofia.bg;mailto:kdmladenov@uni-sofia.bg}
Директни линкове към Facebook и Discord има на {url профила ми в мудъл;https://learn.fmi.uni-sofia.bg/user/profile.php?id=23229}.\n
:slide
## Как ще протичат практикумите
:unordered
- Ще започнем всяко упражнение с 5 минутки преговор, какво ново трябва да приложим\n
и ще го завършим с 15-20 минути (ако има желание/смисъл) обяснение на задача
- Ще гледам винаги да има задачи с връзка към реален софтуер.
За любителите, където е възможно, ще добавям външни препратки.
- Давам ви {i много} повече задачи, отколкото очаквам да решите на живо!\n
Хубаво е да имате с какво още да се упражните след практикума, 2 часа писане на код седмично е малко!
- Ще качвам решения на задачите, заедно с подробно коментари върху тях, тук: {url github.com/Syndamia/upp-2023-solutions;https://github.com/Syndamia/upp-2023-solutions}.
Това ще се случва в началото на следващия практикум, тоест ще имате една седмица, от деня в който ви давам задачите, през която няма да имате решения.
:middle_slide
:unordered
- Ще използваме GitHub classroom, където ще трябва да качите работата си през упражнението.
Целта е да видя какво сте правили и да връщам обратна връзка на всеки.
Дори нещо да е недовършено, да не работи, так. нат. качвайте!
.bulleted
- Това ще играе роля върху оценката ви, но колко ще допринесе зависи изцяло от преценката ми
- Обратна връзка със сигурност ще правя за нещата, предадени по време на практикума.
Окуражавам ви да си решите всички задачи и след упражнението, обаче все пак имам лимитирано време, ако искате можете да се свържете с мен за работата ви по някоя от тях, но не гарантирам кога ще мога да го видя.
:slide
## Оплаквайте се!
.bulleted
- За първи път водя практикум (и никога не съм преподавал формално)
- Задачите сам си ги измислям
Ако задачите са трудни, зле направени, ако нещо не обяснявам като хората, изобщо ако нещо не е ок, свържете се с мен, ще го обсъдим.
{br3}
## Помагайте си!
.bulleted
- Аз съм един, вие сте >20
\n
Със сигурност няма да успея да помогна на всеки по всяко време от практикума, не се страхувайте да питате съседите си за помощ.
:slide
## Няколко съвета в позицията ми на третокурсник
{br2}
:font35
:unordered
- {b НЕ плагиатствайте!}
{b НЕ си качвайте решенията на контролни или домашни онлайн!}
Формално плагиатството е незаконно, ако някой Ви направи доклад, възможно е да бъдете изключени.
- {b Следвайте материала, който ви се преподава!}
За хората с опит, ще дойде време когато ще искате да приложите лични знания и практики.
Ако не е казано някъде, не го правите и не го обмисляте!
:title_slide
# Въпроси ?
:title_slide
# ФМИ в контекста на програмирането
Или защо учим толкова много математика
{br2}
:font22
Ще си позволя едно отклонение.\n
Искам да обясня как {b аз лично} виждам\n
математиката в компютърния свят.
:slide
## В КН2 има много и трудна математика
:row
.width35% {img ./img/u4-mat-hard.gif}
:column
.bulleted
- Жълто - математически предмет\n
- Червено - проблемни предмети
\n
.bulleted
- Всички проблемни предмети също са математики
- Към половината предмети са математики
- Почти всички проблемни са наблъскани в 1ви курс
:slide
## Защо учим толкова много математика?
.p
Има добра причина, има директни и основни приложения в компютрите, и без тях до никъде нямаше да сме стигнали.
Нека обясня защо:
### Дискретни структури
.p
Смесица на уводите в няколко предмета:
:row
.font35
{img Claude Shannon;https://upload.wikimedia.org/wikipedia/commons/9/99/ClaudeShannon_MFO3807.jpg?20190622223728}
:column
:unordered
- {b Булева алгебра}: как работим с истина/лъжа, с 0/1
.bulleted
- Доказана е {url еквивалентност между ел. вериги и булевата алгебра;https://en.wikipedia.org/wiki/A_Symbolic_Analysis_of_Relay_and_Switching_Circuits}.
- Много типове данни и математически операции могат да се сведат до булева алгебра и работа с памет.
:slide
### Дискретни структури (продължение)
{br1}
:unordered
- {b Теория на множествата}: множество е някаква съвкупност от обекти
.bulleted
'footnote importance-of-sets {url https://math.stackexchange.com/a/536172;https://math.stackexchange.com/a/536172}
- Позволява ни да третираме колекция от математически обекти като математически обект{importance-of-sets}.
Използва се в основата на много математики; колкото са полезни те, толкова са и множествата.
{br2}
'footnote importance-of-combinatorics {url https://math.stackexchange.com/questions/2146051/where-do-combinatorics-play-a-role-in-computer-science;https://math.stackexchange.com/questions/2146051/where-do-combinatorics-play-a-role-in-computer-science}
- {b Комбинаторика} {importance-of-combinatorics}: изследва бройки на неща
.bulleted
- Често се ползва за анализ и дизайн на алгоритми и структури от данни
- Употребява се при оптимизации и теория на кодирането (компресиране на данни, отстраняване на грешки, криптография)
- Есенциална в теория на графите
:slide
### Дискретни структури (продължение)
{br5}
:unordered
- {b Теория на графите}: граф е съвкупност от някакви обекти и връзки между тях.
.bulleted
- Позволява моделиране на много естествени структури: интернет мрежите, географски карти (места и пътищата между тях), йерархии, биологически мрежи и так. нат.
- Използва се във важни структури от данни като {url heap;https://en.wikipedia.org/wiki/Heap_%28data_structure%29} (и интересната {url fibonacci heap;https://www.youtube.com/watch?v=6JxvKfSV9Ns}) и {url trie;https://en.wikipedia.org/wiki/Trie}
:slide
### Езици, автомати и изчислимост
{br5}
:row
:font35
.width85% {img https://upload.wikimedia.org/wikipedia/commons/thumb/1/1c/Kleene.jpg/421px-Kleene.jpg?20230630215747}
.p Stephen Kleene
:column
.p
Това е част от материала в по-общото "theoretical computer science".\n
Можем формално да опишем и работим с теоретични компютри и програми.
.bulleted
- Позволява ни да използваме математика за създаване, обработка и доказване на програми
:slide
{br1}
### Алгебра 1
Линейни уравнения и операции върху тях.
.bulleted
- Линейни уравнения и матрици се срещат сравнително често в софтуер
- Основоположна в компютърната графика
- Много използвана в machine learning
{br3}
### Диференциално и интегрално смятане
Разглежда функции и по-общо, непрекъснатата промяна на стойности.
.bulleted
- Част от компютърната графика (особено обработка на изображения)
- Напреднал machine learning, главно заради употребата на статистиката (която на свой ред се основава на линейната алгебра)
- Анализ на алгоритми
:slide35
## В по-общ план
Какво не би било възможно без математика в софтуер:
.bulleted
- компютрите
- компютърната графика (особено 3D)
- интернет
- GPS
- сателити и ракети
- самолетни системи и инженерство
- ...
.p
Математиката е {b неразделима} част от софтуера!\n
Друг е въпросът дали на вас лично ще ви се налага да я използвате...
:slide
## Какво означава да пишеш софтуер?
.bulleted
- Инженерите и физиците са създали компютрите, едни специални калкулатори с много памет
- Математиката представя света с абстрактни модели/шаблони
- Компютърната наука свързва теоретичната математика с физичната машина
.p
.bulleted
- Най-великият труд на тази дисциплина е постигнат чрез {b синхрон} между тези три предмета
:centered
:width60%
:row
.p {img https://upload.wikimedia.org/wikipedia/commons/thumb/4/4f/Black_hole_-_Messier_87_crop_max_res.jpg/600px-Black_hole_-_Messier_87_crop_max_res.jpg}
.p {img https://upload.wikimedia.org/wikipedia/commons/thumb/d/d2/Internet_map_1024.jpg/600px-Internet_map_1024.jpg?20121030160606}
:title_slide35
# Означава да създадеш\ndeus ex machina
С други думи, позволява ни да разрешим неразрешими проблеми
:title_slide35
# {url Достатъчно философия, сега ще конфигурираме всичко нужно за първото ни упражнение;./setup.html}
### Употреба на изображения
Снимки на {url Claude Shannon;https://upload.wikimedia.org/wikipedia/commons/9/99/ClaudeShannon_MFO3807.jpg?20190622223728} и {url Stephen Cole Kleen;https://upload.wikimedia.org/wikipedia/commons/thumb/1/1c/Kleene.jpg/421px-Kleene.jpg?20230630215747}, предоставени от Konrad Jacobs с авторско право от {url MFO;https://opc.mfo.de/}, лицензирано с {url CC BY-SA 2.0 DE;https://creativecommons.org/licenses/by-sa/2.0/de/deed.en} в Уикипедия.
Снимка на черната дупка Messier 87, предоставена от {url ESO;https://www.eso.org/public/} с лиценз {url CC BY 4.0;https://creativecommons.org/licenses/by/4.0/deed.en} в {url Уикипедия;https://en.wikipedia.org/wiki/File:Black_hole_-_Messier_87_crop_max_res.jpg}.
Изображение на интернет мрежата направено от {url Matt Britt;https://en.wikipedia.org/wiki/User:Matt_Britt} с данни от {url The Opte Project;https://www.opte.org/}, лицензирано с {url CC BY 2.5;https://creativecommons.org/licenses/by/2.5/deed.en} в {url Уикипедия;https://commons.wikimedia.org/wiki/File:Internet_map_1024.jpg}.