Школа проводилась с 8 июля по 3 августа. 8 июля в 12:00 прошло открытие школы и презентация проектов. 2 августа были проведены презентации результатов проектов, подведение итогов и закрытие школы.
Rust, Cargo
Желание погрузиться в низкоуровневую разработку с помощью Rust и Cargo. Понимание базовой теории алгоритмов. Выполнение небольшого тестового задания.
Гориховский Вячеслав Игоревич, Пилецкий Олег Антонович
Си, ассемблер, Linux, gcc
Полезно знакомство с языком Си. Некотрое знакомство с ассемблером, линуксом, gcc необязательно.
Кутуев Владимир Александрович, Смирнов Кирилл Константинович
Си, Linux
Знание английского языка для чтения документации. Знание языка Си. Умение работать в терминале ОС Linux (vim, ssh, sshfs, cd, ls, cp, …). Умение работать с виртуальными машинами (Oracle VirtualBox, QEMU, др.). Умение дебажить и отлаживать свой код. Знание базовых структур данных, их преимуществ и недостатков (стек, список, дерево, хеш-таблицы). Базовое понимание концепций многопоточного и асинхронного программирования. Спокойное или положительное отношение к программированию “на листочке”
Васенина Анна Игоревна
Си, Linux, ассемблер
Любить сидеть в терминале GNU/Linux. Основы представления данных: байт, бит, машинное слово, представление целых чисел, в перспективе представление чисел с плавающей точкой. Представлять как компилируются программы Си (понятия рантайма, объектного файла, линковки, умение из исполняемого файла получить его листинг ассемблера).
Косарев Дмитрий Сергеевич
Python
Умение пользоваться Git и GitHub. Базовое умение программировать на Python. Желание применять математические знания в программировании
Гориховский Вячеслав Игоревич, Михайлов Михаил Дмитриевич, Кутуев Владимир Александрович
Java
Умение пользоваться Git и GitHub. Базовое умение программировать на Java. Желание попробовать провести RnD исследование и реализовать современные графовые алгоритмы на практике.
Гориховский Вячеслав Игоревич, Чепуркин Константин Михайлович
Go, Gorilla, PostgreSQL,TypeScript, Material UI
Основные разделы веб-сервиса:
За этот месяц мы надеемся успеть разработать минимально работающую версию. Для это будет нужно:
Бэкенд — Go, Gorilla, PostgreSQL Фронтенд — TypeScript, Material UI
Чижова Ангелина Сергеевна, Луцив Дмитрий Вадимович, Литвинов Юрий Викторович, Латохин Святослав Алексеевич, Шеремет Ирина Дмитриевна
TypeScript, Node.js, Nest.js, MySQL/PostgreSQL, Rabbitmq, Docker Swarm
Умение оценивать асимптотическую сложность алгоритмов. Понимание принципов динамического программирования, любые познания в линейном программировании, в теории графов будут плюсом
Есин Максим Сергеевич, Корепанова Анастасия Андреевна
Python, Django, MySQL
Олисеенко Валерий Дмитриевич
V#, USVM, KLEEF
Костицын Михаил Павлович
C/C++: LLVM/Clang, GCC, CMake
Знание стека разработки на C/C++: LLVM/Clang, GCC, CMake, линтеры, отладчики, профилировщики. Понимание основ кросс-компиляции. Понимание основ устройства процессора и памяти: оперативная память, кэши, скорость доступа, промахи кэша. Понимание основ параллельного программирования будет плюсом: параллелизм по данным, синхронизация, потоки, атомарные операции. Знание основ OpenCL или Cuda, опыт разработки под GPGPU будет плюсом.
Григорьев Семён Вячеславович, Кутуев Владимир Александрович
Си, Python
Умение пользоваться Git и GitHub. Умение программировать на Python, знание C будет большим плюсом. Понимание процесса компиляции, понимание основ кросс-компиляции будет большим плюсом. Знание ассемблера и знакомство с Gem5 может оказаться полезным
Си, Linux, gcc/clang
Необходимо знакомство с языком Си, линуксом, gcc/clang. Полезно знакомство с принципами организации сетей и стеком TCP/IP. Полезно понимание принципов кросс-сборки, профилирования и бенчмаркинга приложений.
C/C++, Assembler
Assembler Intel x32, C/C++
Ханов Артур Рафаэльевич
Rust, C/С++
Предпочтительный язык реализации задач – Rust. Возможна также реализация на языках C или C++.
Архипов Иван, Низамов Ринат
C++, Cmake, llvm
C++, Cmake
Бабанов Петр, Низамов Ринат
Python, Linux
В рамках летней школы предлагаются следующие темы:
Для обнаружения и разрыва колец в топологии Ethernet используется семейство протоколов STP. В Miminet на данный момент реализован самый первый протокол STP. Требуется добавить поддержку протокола RSTP.
Сейчас можно рисовать только сетевые устройства. Необходимо добавить возможность добавлять текстовые заметки прямо на карте с компьютерной сетью.
Серверная часть делалась очень быстро и, как следствие, не очень качественно. Периодически у нас наблюдаются падения сервера. Необходимо реализовать мониторинг сервера и автоматизацию по перезапуску сервера в случае падения.
Python, Flask, Linux, Bootstrap
Зеленчук Илья Валерьевич, Романова Зинаида Андреевна
OCaml, F#, Haskell, Scala
Ожидаемые результаты школы:
Хороший английский, навыки работы с ОС семейства Linux, знание архитектуры компьютера, знание основ математической логики, базовые знания функциональных языков программирования
Григорьев Семён Вячеславович, Пономарев Николай Алексеевич
C/C++, LLVM/Clang, GCC, CMake
Задачи:
Знание стека разработки на C/C++, понимание основ кросс-компиляции, понимание основ анализа производительности
Знание стека разработки на C/C++, навыки настройки окружения в GitHub, понимание основ анализа производительности, знание основ OpenCL C