Пятничный наброс на финтех Многие говорят, что у нас один из лучших финтехов в стране, но отдельные аспекты у меня вызывают вопросы — особенно в части безопасности. Недавно посмотрел видео, которое напомнило мне об одной из таких проблем, и решил поделиться мыслями. Почему в наших банковских и особенно инвестиционных приложениях до сих пор не используются протоколы безопасности вроде U2F или хотя бы TOTP? Для вывода средств с банковского счёта сейчас требуется только пароль и SMS-код, который ле...
Struchkov // Java TechLead
Заметки: https://garden.struchkov.dev — — — — — Блог: https://struchkov.dev/blog — — — — — Связь: @uPagge
Графики
📊 Средний охват постов
📉 ERR % по дням
📋 Публикации по дням
📎 Типы контента
Лучшие публикации
20 из 20🛠️ Как управлять VIEW в Liquibase и избегать проблем с их обновлением? В заметке я объясняю, как справиться с изменениями вьюх и почему важно выделять их в отдельные changeLog файлы. В статье есть практические советы, примеры кода и ключевые рекомендации по поддержке вьюх без ошибок и конфликтов. 📖 Подробнее
Небольшой лайфхак для защиты оплаченной лицензии в IntelliJ IDEA: установите случайные значения в настройках proxy. Или поднять нормальную прокси за бугром и указать ее :) P.S. Если используете Toolbox App, то там тоже нужно добавить
🔍 Потоки в Java: Thread и Runnable В новом посте продолжаем цикл про многопоточность, разбираясь, когда лучше использовать Thread, а когда Runnable, и рассматривая их ключевые отличия. Сегодня потоки практически никогда не создают напрямую — вместо этого используют высокоуровневые инструменты, такие как ExecutorService или ForkJoinPool, которые мы рассмотрим в следующих статьях. Однако важно понимать, что происходит «под капотом» этих абстракций, чтобы уверенно строить многопоточные приложения....
🔑 Индекс на внешний ключ — это не опция, а необходимость Часто забываемый, но очень важный момент в проектировании схемы базы данных — добавление индекса на столбец внешнего ключа. Почему это так важно? В заметке вы найдете наглядный и неочевидный пример, в котором без индекса запрос выполнялся 690 мс, а с индексом — всего 0.1 мс 😱 📖 Подробнее
🔑 Как я решаю проблему уникальных идентификаторов в своих приложениях? Когда дело касается уникальных идентификаторов, я почти всегда выбираю UUID. Однако версию UUID я подбираю в зависимости от задач конкретного сервиса. Каждая версия UUID имеет свои особенности, и выбор зависит от того, что важнее: сортируемость, случайность или производительность. Подробнее о том, как я использую UUID и какие версии предпочитаю, можно узнать в моей заметке. Там вы найдете обзор каждой версии, с ее преимущест...
💡 Хочу порекомендовать канал Юли (@javagirlspace), который я читаю с самого начала! Мы с Юлей начали вести свои каналы примерно одновременно, и её публикации всегда вдохновляли меня. Сейчас она работает в Яндексе, а начинала как 1С-программист, постепенно став востребованным Java специалистом — её канал как раз о таких профессиональных достижениях и развитии. Там вы найдёте размышления о work-life балансе, профессиональном развитии и честные истории о сложностях, с которыми она сталкивается как...