Сообщения

Сообщения за 2019

Школа 21, 2019 год, неделя 14 - организационная встреча, начало учебы, коалиции и wzei

В Школе началась учеба. Очень приятно было увидеть много знакомых лиц. Второй этаж почти полностью забит студентами и, наверное, если мы все вместе придем в кластера, то таки не поместимся в них и придется занимать третий этаж.

Самый первый проект - формальность, где надо было набить в файл текст с картинки, подтверждающий, что ты прочел заповеди обучения. На удивление, онлайн распознавание текста прочло скриншот без каких-либо ошибок и проект был закрыт. Следующий проект, который я буду называть первым, оказался… повторением Бассейна. Повторение мать учения и тебя просят повторить основные таски всех дней Бассейна.

Естественно, этот проект с первого раза я сдать никак не мог. Мулинетта усмехнулась и сказала: “Да, молодец, все правильно, кроме пятого задания”. Так Бассейн продолжился и в моральном плане тоже :D. И все оказалось потому, что я решил выпендриться и сделать пятое задание при помощи Питона - создавай бы я файл руками в терминале, этого бы не случилось.

Первого апреля у нас…

2019, неделя #10, воскресенье

Изображение
Начнем с, наверное, самой актуальной для блога информации – инвайт, мне пришел инвайт в Школу, это победа. Пришел он еще в четверг, но сразу написать об этом я не смог.

Много разных эмоций связано с этим – и в первую очередь это было облегчение. Больше нету сомнения будет так, или будет эдак, больше можно не думать о планах возмездия против людей, распувкавших гнилые слушки, больше не нужно беспокоится, что письмо может не прийти, потому что что-то сломалось, и так далее. Радоваться уже начал поэтапно – немного после письма, зачем в планах после подписания договора, проявнения дальнейших шагов и после первого дня на обучении.

(далее в посте ничего не относится к Школе)

В прошлую пятницу случилось веселое похождение в текущий мир серверной части Майнкрафта. Spigot живее, чем Bukkit; все разработчики перекочевали, большая часть сверх-важных плагинов стала платной – анти-читы, решения из коробки для экономики и прочие… Закинув пяток ссылок в папку “плагины, что нужно купить”, я отправилс…

2019, неделя #09, четверг

Изображение
tl;dr Raspberry Pi плохо работает, если сила тока меньше рекомендованной, магазины сантехники – это странные места, EVE Online до сих пор жива, а домашние дела приходиться делать.

Понедельник принес мне неожиданное наблюдение, что Raspberry Pi 3 B+ действительно очень хочет 2.5А силы тока и без них отказывается нормально функционировать. Обнаружено это было при помощи подключения внешнего жёсткого диска в попытках понять что ж нода Tezos так сильно лагает. В логе ядра в момент подключения мило высветилось “undervoltage detected”. Начался поиск дома подходящего USB зарядника, но найден был лишь 2.4А из Икеи.

После подключения устройства, нода даже начала что-то синхронизировать с сетью. Зарядник на 2.5А не куплен до сих пор, завтра, видимо, придется ехать за ним куда-то в центр.

Во вторник случилось замечательное приключение по поиску термостатического смесителя для ванной. Это такой интересный кран, который поддерживает температуру постоянно одинаковой, автоматически реагируя на измен…

SCP: Secret Laboratory, сервер Fry Labs, чиню Crimewatch и плагин для Патреонов

tl;dr Суббота – починил C# плагины на своём сервере SCP:SL, воскресенье – провел серверное событие по возвращению Гейлорда.Ладно, Бассейн допустим кончился, однако, пожалуй, не стоит расслабляться и точно не стоит забрасывать блог.Суббота (2019-02-23) проплыла в починке сломанных плагинов на моих серверах SCP:SL. Сначала я взялся за то, что Патреоны сервера возрождались без инвентаря. Ранее система работала так – в событии получения урона игроком, если нанесенный урон больше текущего здоровья, игрока просто сразу спавнило другой ролью. У такого подхода было достаточно проблем и последней каплей стало то, что из-за того, что они не умирают, не отображались убийства Патреонов в логгере (специальная система отображения выбранных событий на сервере).Так я перед Бассейном переделал систему так, что они таки умирали и плагин вел запись количества смертей каждого Патреона. После первой смерти вызывалось событие смены роли на наблюдателя и вот там я (как я думал) ловил событие и менял роль на…

Школа 21, Бассейн закончился

This was a triumph!
I’m making a note here:
Huge success! Вот мы и доплыли в океане Бассейна Школы 21 до теплых берегов.
It’s hard to overstate my satisfaction. Шторм за нашей спиной поглотил океан. Я смотрел на студентов и видел в их глазах следующий куплет Still Alive…
We do what we must because we can.
For the good of all of us.
Except the ones who are dead. Я бы мог привести весь текст этой прекрасной песни, слишком уж он подходит к произошедшему. Однако давайте лучше подведем итоги.

Разные слухи ходили про последний экзамен и чем ближе он становился, тем больше информации удавалось получить из разных источников. Это довольно приятно, когда тебе даже не надо ничего спрашивать, а нужно лишь внимательно слушать, чтобы получить ответы на вопросы. Что особенно интересно, подтвердилась почти вся информация, а еще стало довольно очевидно почему распределение баллов Московского бассейна так близко к цифре 45 (мне нравится подобные явления, так как они позволяют провести связь между геог…

Школа 21, Бассейн, интермишшен (четвертая неделя, понедельник)

tl;dr ¯\_(ツ)_/¯ day13 ¯\_(ツ)_/¯ 10/100, evalexpr – метод "рекурсивного" спуска без деревьев, работающий за `O(n)`, rush02 – о том, как читать stdin и не погореть.Доброе утро.С тринадцатым днём я смог полностью ощутить каково это – сдать задания без тестирования и даже без минимальной компиляции. Напомню, что как раз этот день прошел под девизом "запушить хоть что-то", так что десять баллов, как ни крути, больше, чем ноль.Оказалось, что я забыл в рекурсивной функции передать все аргументы вниз. Одного хватит, ведь так? ¯\_(ツ)_/¯Забавно было обнаружить эту же ошибку у других в ходе проверок. Вероятно так действуют на сознание указатели на функции – казалось бы, ну, вот, зачем тебе передавать указатель? Объяви функцию как нормальный человек и не парься. Но, к примеру, если твой код – "чистая" библиотека только бинарных деревьев, то, очевидно, она вынуждена принимать указатель на функцию для обхода дерева.Я набросился на evalexpr и начал расписывать алгоритм …

Школа 21, Бассейн, интермишшен (третьи выходные, воскресенье)

#школа21 #теорияФрая ¯\_(ツ)_/¯

Остался один последний проект и последний экзамен. В кластерах стало тише. Люди привыкли к воде, к препятствиям и к друг другу…

Я бы не стал сравнивать Бассейн с бассейном. Вас не кидают в середину бассейна, нет. Вы все оказываетесь на кораблях в середине океана и у вас в карманах есть только нечетко нарисованная карта, книга по навигации, в которой нет половины страниц, и выключенная рация без батареек. На горизонте с одной стороны чистое ясное небо, а с другой - вечный шторм.

Кто-то из вас будут уметь плавать, некоторые раньше занимались греблей и вот совсем единицы раньше были матросами на кораблях. На каких-то кораблях сразу поднимутся паруса, на других будет выброшен якорь и капитан будет думать как его поднять и еще на каких-то сядут пить чай прямо на капитанском мостике, в предвкушении шторма.

Тех, кто не сдвинется с места, уничтожит шторм. Остальные поплывут в неком направлении, ориентируясь лишь по звездам. Некоторые обнаружат, что на карте отме…

Школа 21, Бассейн, день двенадцатый и тринадцатый

tl;dr ¯\_(ツ)_/¯ day11 ¯\_(ツ)_/¯ 21/100, ¯\_(ツ)_/¯ day12 ¯\_(ツ)_/¯ 0/100, day13 – бинарные деревья, exam02 – 85/100, rush02 – детектор вывода rush01, evalexpr – калькулятор со скобками, BSQ – найти наибольший квадрат одинаковой высот на поле высот.

В одиннадцатом дне, в ex05 (пятом задании) в условии попросили аргументы командной строки записать в односвязный список в обратном порядке. Мы сразу поняли, что будет что-то не то, ибо было неясно нужно ли добавлять имя программы в список. Так и вышло, что почти весь бассейн получил не больше 21 балла, так как понять что действительно от тебя хотят было почти невозможно.

Судя по трейсам нужно было элемент списка, что мог бы содержать имя программы сделать содержащим… Пустую строку. ¯\_(ツ)_/¯. Карл, как это можно было понять из задания? ¯\_(ツ)_/¯

Двенадцатый день был посвящен работе с файлами, но мы в них ничего не писали. Нас попросили написать четыре разные утилиты вывода файлов на экран – обрезанный cat, полноценный cat, tail и hexdump.

В …

Школа 21, Бассейн, интермишшен (третья неделя, среда)

tl;dr day10 – 40/100 (или история о том, как я проверил на массив из одного элемента, а на массив из нуля – нет), day12 – операции с файлами и разбираемся с файлдескрипторами.Приходить в школу к полднику оказалось совсем неработающей затеей. Пока проверишь себя и других за позапрошлый день, пока проверишь и уберешь крайние случаи в прошлом дне, пока зальёшь свои тесты на ГитХаб, чтобы другие могли проверить свой код – пока все это, день успеет закончится и настанет десять вечера.Я же решил, что в десять нужно точно уходить, чтобы высыпаться на следующий день и быть продуктивным. Так, встав со своего места в десять, к одиннадцати я смог достичь выхода из кластеров. Посмотреть код, показать на ошибки, намекнуть на решения, поругаться на будущего тиммейта по групповому проекту...Тиммейт мой будущий сердечно пообещал мне, что вся неделя будет у него "зелёной". После того, как я увидел у него "зелёный" первый день, я решил, что он действительно взялся за голову и не соб…

Школа 21, Бассейн, день десятый и одиннадцатый

tl;dr rush01 – 80/100, matchnmatch – 0/100, day10 – Makefile и указатели на функции, day11 – список мне разверни, отсортируй, вставь, выбери и убери...Нетрадиционный ночной пост сразу после одиннадцатого дня – сегодня я узнал, что некоторые станции метро закрывают для прохода пассажиров ровно в 01:00. Пришлось зайти через выход и перелезть ограду.Наши аргументы за нецелесообразность поиска второго решения судоку были отвергнуты, как и предложение пушить решения подобных конфликтов в отдельную ветку – проверяется только мастер. Что ж, справедливо.Поиск строки со звёздами в другой строке был невероятно эпично зафейлен. Надо было не стесняться и запушить прочтенный на GitHub ответ – он был лаконичен, прост и работал как надо, в отличие от моей простыни вложенных циклов.Десятый день сходу предлагает гуглить все аргументы `gcc` и синтаксис Makefile. Слава богу, что для решения задания требуется совсем немного, а остальное просто идёт в копилку знаний.Среди остальных заданий особенно выдели…