Привет, Хабр!Сегодня рассмотрим как обезопасить бизнес-логику от случайного (или злонамеренного) изменения DTO, чем опасна мутабельность моделей и какие инструменты дают C#, Java, Python и Go, чтобы вы больше никогда не ловили эти баги. Читать далее
Wails - это легковесный фреймворк, предназначенный для создания кросс-платформенных GUI приложений рабочего стола на golang и стандартных веб технологиях (Svelte, React, Preact, Vue, Lit, Vanilla JS). Ближайшие аналоги это естественно Electron (JS), Tauri (Rust), хочется добавить Qt (С++), но это уже другой уровень.…
Мне нравится наблюдать за менторами, которые учат быть независимыми в тестировании и слать всех нафиг т.к. тестирование это не поиск багов, а сравнение ожидаемого результата с фактическим, и если нет требований, то и сравнивать нечего!Прекрасно, вам должны платить просто так!…
Привет, Хабр! Мы команда T-Банка: Алиса — лидер проекта, Алексей — аналитик по клиентскому негативу, Влад — аналитик, разбирается в данных и превращает числа в гипотезы, Александр — исследователь-разработчик ML-алгоритмов. Мы изучаем, как коммуникации влияют на клиентов и как…
Привет, Хабр! Меня зовут Даша Козлова, я аналитик в Авито. В этой статье я расскажу свою не самую репрезентативную, но интересную историю рождения бабочки аналитика. Добро пожаловать, усаживайтесь поудобнее и погнали! Интересно! Пойду читать
*Все технические решения описаны в обезличенном виде и адаптированы под публичное изложение. Проект находится под НДА, поэтому часть информации и детали реализации были изменены или обобщены.Изначальный расчет был на то, что данное решение позволит существенно сократить…
Yandex Cloud использует квоты для мягкого контроля ресурсов. Квоты можно легко увеличить через специальную форму или техническую поддержку. Однако, очень часто бывает, что о необходимости увеличить квоты мы узнаем поздно, например, когда падает джоба с terraform. Это раздражает, а в некоторых случаях даже может сломать стейт и принести ненужные проблемы. Решить проблему поможет маленькая утилита. Читать далее
Каждый Go-разработчик знаком с этим паттерном — создание обёрток для ошибок с дублированием метаданных: func (*SomeObject).SomeMethod(val any) error { if err := otherMethod(val); err != nil { return fmt.Errorf("otherMethod %w with val %v", err, val) } return nil } Проблемы такого подхода: Дублирование названий методов в сообщениях об ошибках…
Топ-5 Linux дистрибутивов для пентестераЧто такое тестирование на проникновение и оценка уязвимостей? Первым делом после настройки сервера и сети компании необходимо проверить систему на наличие брешей в сетевой безопасности. Специалистам, отвечающим за ИТ-инфраструктуру школ,…
В то время как тысячи людей штурмуют курсы программирования, надеясь на высокие зарплаты и удаленную работу, индустрия уже переживает радикальную трансформацию. Что будет с рынком IT-образования в ближайшие годы, и как не оказаться среди тех, кто инвестировал время и деньги в устаревающие навыки? Читать далее