Flexible Coding
155 subscribers
165 photos
2 files
100 links
Download Telegram
Далее - два доклада про безопасность.

Первый - про баланс между ИТ и ИБ, и про то, как убедить бизнес заниматься этим ИБ (с конкретными примерами: отговорка -> действия). Кажется, до сих пор с этим есть проблемы.
На этом докладе я узнал про целый рынок Ransomware as a Service, про хактивистов, ну и про то, как организовывать ИБ в компании. Эта тема пересекалась с одним докладом первого дня

Второй доклад - про безопасность kubernetes. Узнал про пару ГОСТов по безопасности (не спрашивайте зачем), про вызовы и подходы к безопасности k8s, но в целом там было что-то вроде "делайте network policy и не светите секретами, используйте сертифицированное ПО и всё будет ок"
👍1
Последний доклад Стачки, который я посетил, был про Apache Kafka. Просто введение - из чего состоит, что с чем взаимодействует и какие преимущества этого инструмента. В компании, где я работаю, постепенно внедряется кафка, и мне стоит немного освежить и систематизировать свои знания по ней
👍1💯1
В целом, конференция - огонь. Мерч, эмоции, общение и классные доклады... Да и в целом неплохой идеей было уехать в Ульяновск и немного развеяться )

Мне всё понравилось, и я надеюсь, что попаду и на следующую Стачку) Спасибо организаторам и спикерам!
👍9🔥3
Logseq: новое приложение для заметок, которое я попробовал на конференции

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

Конспектировать доклады в виде списка тезисов с пунктами, подпунктами и подпунктами подпунктов оказалось очень удобно. Обычно наши конспекты (в школе, на лекциях в вузе) - это просто сплошной текст, но список более приятный и структурированный, о чём я раньше даже не задумывался.

В целом приложением я не планирую пользоваться в дальнейшем по двум причинам - в нём нет папок, и это не позволяет удобно разделять конспекты по разным темам, и основная масса заметок у меня в другом месте. Однако вполне возможно что-то изменится, и я начну использовать logseq. Например там очень удобные canvas-заметки )

В любом случае я рекомендую его попробовать тем, кто любит заметковедение и всю эту тему)

#приложения
Flexible Coding
🔥4
🚀 Практикум в Вологодском колледже связи

Привет, друзья! Недавно я от имени компании Skillaz провел практикум в Вологодском колледже Связи и информационных технологий - рассказал студентам о протоколе HTTP и его применении
Что мы делали:
1. Разбирали основы протокола HTTP
2. Тыкались в Swagger
3. Интегрировались со скиллаз на примере реального кейса

Для меня это был первый подобный опыт, и могу сказать что всё удалось! Естественно, были и недочёты, которые я обязательно учту для следующих подобных мероприятий, но прям критичные проблемы отсутствовали )

Спасибо всем, кто был с нами!
Flex Code
🔥20👍4❤‍🔥1💘1
Неожиданные детали реализации структур данных

Недавно на работе делал небольшой workflow-движок. Это такой механизм, в который можно засунуть набор некоторых действий с возможностью отката и выполнить их в единый момент времени. Все эти действия складывались в очередь - и я решил использовать Prority Queue, а к действиям добавить кастомизируемый приоритет (возможность указать Priority.Last и гарантировать, что действие выполнится последним). Звучит надёжно!

Итого я построил процесс, в котором было много действий с одинаковым приоритетом и одно Last, которое выполняется последним (см схемку). Написал какие-то тесты, вроде всё работает. Использую движок в конкретном бизнес-процессе, заливаю в прод, кайфую.

Проходит время, и коллегам из соседней команды заводят баг на тему того, что что-то где-то выполняется не в том порядке и возникают кривые данные. Коллеги изучают, и внезапно в PriorityQueue НЕ ГАРАНИРУЕТСЯ ПОРЯДОК ПОЛУЧЕНИЯ ЭЛЕМЕНТОВ С ОДИНАКОВЫМ ПРИОРИТЕТОМ! В общем, действия выполнялись в рандомном порядке, и потенциально (мы так и не убедились в этом на 100%) система порождала кривые данные

Какой можно сделать вывод?
- Структуры данных надо знать, я их знаю, я молодец. Но было бы неплохо читать ремарки в документации
- Тесты не панацея - они, в общем-то, были написаны, но покрывали недостаточно кейсов (кто ж знал что порядок не гарантируется)
- Чего-то не знать - это нормально, как и допускать ошибки. Главное - нести ответственность за свои решения и здраво воспринимать обратную связь

#кейсы
Flex Code
👍7
Всем привет! Пока контент готовится, расскажу вам про ещё одну мою активность

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

Мы собрали кейсы для аналитиков, продактов и разработчиков и представили их в своих презентациях. И всё прошло отлично! В конце доклада была интересная дискуссия на темы использования ИИ в работе, от безопасности до "а что если делегируя всё ИИ ты не будешь развиваться?"

Могу сказать, что организовывать такие мини-митапы действительно очень крутая практика, и это точно не последний мой доклад. А про то, как я использую GPT в жизни у меня есть статья (пусть немного и устаревшая - сейчас я использую его в большем количестве кейсов)

(а ещё у меня сегодня день рождения)

Flex Code
🎉13👍6
Всем привет!
Вспоминая недавний митап, расскажу подробнее про то, как я использую GPT на работе.

Важно понимать, что GPT (по крайней мере бесплатные версии) не сможет решать сложные/комплексные/специфичные задачи, особенно если про них мало информации в интернете. Однако базовые рутинные дела он может выполнять быстрее (и иногда лучше) чем человек. И вот примеры:
1. Маппинги объектов. Переложить 40+ полей из класса A в класс B с дополнительной логикой - тупая, но затратная задача. Однако можно просто написать в GPT "Напиши метод маппинга из класса <код> в класс <код>", и с высокой вероятностью он всё сделает как надо. А где "сомневается" - оставит коммент
2. Генерация SQL. Лично я в первую очередь использовал GPT для генерации таблиц на основе классов - мне было супер-лень писать код самостоятельно или натыкивать каждый столбец в интерфейсе СУБД. Ну а ещё он может быстро сгенерить код для пагинации или других запросов
3. Генерация DTO по документации. Скармливаем GPT json или просто описание полей из документации (иногда поля в интеграциях просто описываются списком в ворд-документе) и получаем необходимые классы

ВАЖНО!
Код от GPT надо проверять, а потом перепроверять. Он может генерировать плохой код, код с несуществующими методами или просто код, который не выполняет нужную задачу. Однако как показывает практика, лично мне проверить и добавить пару фиксов в уже готовый код гораздо проще, чем писать всё с нуля

А вот ещё пара статей про безопасность ChatGPT:
- GPT сливает персональные данные
- GPT генерирует уязвимый код
- Немного дырявый GPT
- Мысли про безопасность использования GPT

Flex Code
👍14
Итак, 2023 год подходит к концу.

Небольшие итоги:
- 7 статей для Flex Code
- 4 статьи для TimeWeb (чуть чуть попробовал себя в роли копирайтера)
- Очень много книг, однако технических стало поменьше - про 5 из них я рассказал в этом блоге
- Один завершённый пет-проект (кстати открыл исходники)
- Посетил конференцию "Стачка" в Ульяновске
- Организовал 2 митапа - в колледже и на работе

В целом считаю, что год прошёл очень хорошо, а следующий будет ещё лучше! (но можно было и не заболевать на праздники)
Всех с Наступающим!🎄🎄🎄
🎄13