Перейти к основному содержанию

Переход на Drupal 10

Опубликовано mishutka -

Drupal 10 вышел уже больше чем два месяца назад! И нам очень нетерпелось попробовать его.

Обычно у нас уходит не менее года на переход на новую версию ядра: обновление разных модулей, существенные изменения в кодовой базе и т.п. Но Drupal 10 основан практически на том же коде, который использовался в предыдущей версии ядра Drupal 9.5.  Удалено довольно много deprecated-кода, добавлены новые возможности. Но весь код, который работал с ядром 9.5, так же безо всяких проблем работает и на ядре 10.0.

MtLog - учёт посещения занятий, кружков, курсов, секций на основе сканирования QR-кодов.

Опубликовано mishutka -

Вот хожу я в бассейн, учусь правильно плавать с тренером. И дочка туда же ходит, тоже учится. И выдали нам картонки, на которых написано "Абонемент" и имя с фамилией. И ещё там расписание ручкой вписано, дни посещений, время занятий. И квадратики такие нарисованы, в которые отметки ставятся после каждого занятия. Приходишь, кладёшь картонку на стол. Пока занимаешься, администратор в очередной квадратик отметку сделает о том, что бы на занятии. Закончились квадратики на картонке - новую картонку выдадут. Продлил абонемент - снова новую картонку. Время занятий поменялось? Ну можно новую сразу и не выдавать, можно ручкой исправить расписание на старой.

А ведь наверняка администратор ещё и себе куда-то записывает, кто приходил на занятия. Всё таки строгая отчётность, оплаты учитывать, бухгалтерия и всё такое.

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

Так и родился прототип MtLog - облачная система учёта посещаемости на основе QR-кодов. Идея проста: для каждого посетителя генерируется уникальный QR-код. Можно его на картонку наклеить (или напечатать), а можно и прямо на экране смартфона показывать. А администратору для отметки посещения достаточно этот QR-код просто просканировать! А если его просканирует сам посетитель, то сразу увидит и расписание своё, и время начала следующего занятия, и историю последних посещений.

mt-howmany: подсчёт количества символов, строк, печатных страниц исходного кода проекта

Опубликовано mishutka -

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

Переезд на Drupal 9

Опубликовано mishutka -

Классические "сапожники без сапог"... Наш сайт был создан на Drupal 6 в далёком 2008. А с 2012-го года он бы почти заморожен и не обновлялся. Ушло несколько лет, чтобы наконец найти время и мигрировать сайт на современный Drupal 9.

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

Рациональная красота творчества

Опубликовано mishutka -

В "обывательской психологии" принято делить мозг на полушария: левое отвечает за логику, анализ, рациональное мышление, а правое - за эмоциональное восприятие, интуицию, воображение. И да, везде сразу же после таких объяснений пишут, что у всех людей работают оба полушария, что крайностей не бывает и т.п. Но факт остаётся фактом - кто-то больше склонен к рациональности и анализу, а кто-то - к эмоциям и интуитивному восприятию.

Большинство моих знакомых (причём подавляющее большинство) считают, что я программист. Ну пусть будет так для упрощения. А про программистов в той же самой "обывательской психологии" принято считать, что они математики, исключительно рационально мыслящие люди. И пожалуй да, соглашусь, без умения анализировать, мыслить рационально не написать хорошего кода. Но ведь для того, чтобы родилось хорошее программное обеспечение, не только код должен быть хорошим, хорошей в первую очередь должна быть архитектура системы.

По-хорошему, обычно всё начинается именно с проектирования это самой архитектуры. Её достаточно легко спроектировать, когда есть чёткое понимание того, что должно получиться. Например, хорошо формализованное техзадание. А когда его нету? Когда проект живёт и развивается вместе с разработкой? Если конечные требования совершенно не ясны, а есть лишь наброски, какой-то эскиз описания. Есть представление о том, что необходимо сделать, ровно на данный момент, и есть чёткое осознание, что это представление будет меняться и довольно сильно.

Безопасная аутентификация по «небезопасному» HTTP-протоколу

Опубликовано mishutka -

Практически любая современная WEB-ориентированная система (различные CMS, галереи, каталоги и т.п.) аутентифицирует пользователей через ввод логина и пароля. Эти логин и пароль вводятся в поля HTML-формы, которая затем отправляется через GET или POST запрос на сервер для проверки. Причём и логин и пароль в этом запросе передаются в открытом виде. Перехватив трафик между браузером и сервером, злоумышленник легко получает эти логин и пароль.