Обновить

Разработка

Сначала показывать
Порог рейтинга
Уровень сложности

Рекомендации по обеспечению безопасности системного окружения веб-приложения

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров1.5K

Всем привет! Опыт защиты высоконагруженных сервисов, в том числе на базе 
1С-Битрикс показывает, насколько критичным с точки зрения обеспечения безопасности веб-приложения является настройка его системного окружения. Защита такого приложения - это не только включение подсистем защиты и своевременные обновления, а комплексный подход, охватывающий все слои ИТ-инфраструктуры. Недостаток в любой ее точке может свести на нет все усилия разработчиков по написанию безопасного кода и привести к серьезным последствиям: от утечки конфиденциальных данных до деградации связанных бизнес-процессов с финансовыми и репутационными потерями.

Данный чек-лист будет полезен при формировании внутренних правил безопасного конфигурирования компонентов системного окружения классических веб-приложений, включая продукты 1С-Битрикс. Очевидно, что все предлагаемые рекомендации, реализованные в конкретных настройках, должны быть гармонизированы с эксплуатационной документацией вендоров и протестированы в вашем ИТ-ландшафте.

Читать далее

Практическое тестирование приложений на python

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров4.2K

Всем привет! Эта статья — продолжение материала про универсальный прототип бэкенд-приложений. В ней я поделюсь практическим опытом написания тестов и покажу, как выбранная архитектура упрощает этот процесс.

Ну что ж, приступим

EvoPress: новый подход к оптимизации и сжатию LLM от исследователей Яндекса

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров3.3K

Всем привет! Меня зовут Денис Кузнеделев, я работаю в команде Yandex Research. Моё основное направление деятельности на данный момент — задача сжатия и ускорения больших языковых и картиночных моделей. Затраты на обучение, инференс и деплой LLM стали одной из ключевых инфраструктурных проблем индустрии: дефицит вычислительных ресурсов, нехватка видеопамяти и высокие требования языковых моделей к вычислительным ресурсам препятствуют масштабированию решений. 

Сегодня я расскажу о методе неравномерного сжатия нейронных сетей EvoPress, который мы предложили совместно с коллегами из ETH Zurich и представили в июле этого года на одной из ведущих конференций по машинному обучению — ICML.

Читать далее

Недельный геймдев: #248 — 19 октября, 2025

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров1.3K

Из новостей: продажи No, I’m not a Human превысили 500к копий, BALL x PIT про шары продался тиражом 100к копий за сутки, умер дизайнер Томонобу Итагаки, Heroes of Might & Magic: Olden Era добавили в вишлист более миллиона человек.

Из интересностей: Furnish Master EA 100к продаж, про важность обсуждений, Александр Тужик — хочу и буду: пишу движок для игры.

Читать далее

Сокращаем расходы на Kubernetes: практические подходы для pet-проектов и продакшена

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров6.4K

Привет! Я — Дима, менеджер продукта Managed Kubernetes в Selectel. Каждый день я вижу, как компании разных масштабов — от небольших стартапов до крупных enterprise — переносят свои сервисы в Kubernetes. Это логично: Kubernetes стал стандартом де-факто для оркестрации контейнеров, и с ним проще масштабировать и управлять приложениями.

Но как только кластер растет, почти всегда возникает вопрос: как оптимизировать расходы? Ведь большая часть стоимости — это воркер-ноды, на которых крутятся поды. Значит, первое, на что стоит обратить внимание, — выбор подходящих типов виртуальных машин или серверов. Под катом разберем варианты для разных сценариев: от pet-проектов до продакшен-сервисов.

Под кат →

Почему разработчики выступают за и против визуального и low-code программирования: причины и ответы на возражения

Уровень сложностиПростой
Время на прочтение15 мин
Количество просмотров6.3K

Привет, Хабр!

«Давайте все будем на ассемблере писать. Зачем мы пользуемся фреймворками?» — эта фраза из недавней дискуссии о low-code платформах прозвучала как манифест. И она заставила задуматься: где граница между разумным использованием абстракций и откровенным vendor lock-in?

Коллеги устроили жёсткий разбор low-code платформ — без маркетингового глянца и дипломатии. Спойлер: никакой «серебряной пули» мы не нашли. Зато выяснилось, что low-code платформы прошлого и нового поколения — это принципиально разные вещи. И что конфликт между разработчиками и визуальным программированием — это на самом деле спор о том, как писать код в 2025 году, когда есть и мощные LLM, и микросервисная архитектура из сотен сервисов.

Читать далее

URLPattern — pattern matching, который мы ждали

Уровень сложностиСредний
Время на прочтение14 мин
Количество просмотров4.7K

Привет, Хабр! На связи снова Сергей, ведущий фронтенд-разработчик из Центрального университета. В последнее время я преисполнился URL и опять хочу про него рассказать. 

В прошлой статье я рассказал о том, почему неправильно использовать URL API для валидации ссылок. В этот раз буду использовать инструменты по назначению. Речь пойдет про новый URLPattern API для сопоставления URL с шаблонами, который позволит валидировать ссылки без головной боли.

Читать далее

HTML и CSS ошибки, влияющие на доступность. Мой опыт и моего незрячего знакомого Ильи. Часть 13

Время на прочтение6 мин
Количество просмотров2.5K

Хабр, я снова пришёл к вам с практическими советами про доступность вместе с Ильёй. Мы показываем, как HTML и CSS могут улучшить или ухудшить её. Напоминаю, что Илья мой незрячий знакомый, который помогает мне найти наши косяки в вёрстке.

Сегодня мы рассмотрим следующие аспекты:

где полезно использовать элемент search;

существующие проблемы при использовании единиц измерения от размеров вьюпорта для установки размера текста;

как элемент hr влияет на опыт пользователей скринридера;

нужны ли заголовки модальным окнам.

Давайте начнём!

Читать далее

О вызовах в разработке современной пререндеренной игры The Goddess's Will: работа с графикой

Уровень сложностиПростой
Время на прочтение27 мин
Количество просмотров2.1K

Доброе утро, Хабр!

Разработка технического демо длиной в пять лет подошла к концу, а работа над полной версией The Goddess's Will обещает быть интенсивной и сложной.
Сегодня я принёс статью о базовых проблемах, с которыми мы столкнулись при производстве графики, разрабатывая современную игру в эстетике пререндера.

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

Добро пожаловать под кат. Там вас ждут кровь, пот, рендеры, а также тематические мемы и движущиеся картинки!

Читать текст, смотреть движущиеся картинки

Мой первый pet-проект: процесс-менеджер synd3

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров3.4K

Всем привет!

Пишу этот пост, чтобы поделиться своим опытом и получить критику или советы от людей с большим опытом.

Мне 22 года, я из Латвии. По образованию я судовой механик, но уже около 4 лет увлекаюсь программированием. Долгое время это оставалось хобби: пробовал сайты, простые игры — но они не приносили настоящего удовольствия. Я считал, что в программировании нужно было разбираться ещё со школы, и долго не верил, что могу найти себя в этой сфере.

Переломный момент наступил, когда я заинтересовался системным программированием. Каждый раз, когда узнаю, как работает низкоуровневая часть ОС, у меня будто открывается новый мир. Особенно зацепила тема процессорного планирования: все говорят «железо, CPU, видеокарта», но на практике даже реализация планировщика процессов может заметно влиять на производительность.

Читать далее

Использование Obsidian при проведении пентеста

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров12K

В последнее время Obsidian стал очень популярным. В своей деятельности (проведение тестирования на проникновение) я его использую уже около 2-х лет и в этой статье я расскажу о том, как можно использовать Obsidian при проведении пентеста. Возможно, мой опыт использования будет кому-то полезным.

Поехали...

Уравнения Максвелла и геометрическая алгебра

Уровень сложностиСложный
Время на прочтение9 мин
Количество просмотров11K

Здесь вы можете узнать о том, как все 4 уравнения Максвелла, выражаемые через сложные дифференциальные операторы, можно выразить одним единственным уравнением первого порядка очень простой формы.

Читать далее

Фингерпринтинг стал массовым явлением

Время на прочтение4 мин
Количество просмотров76K

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

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

Читать далее

Ближайшие события

Postmortem без обвинений: Миф или реальность?

Время на прочтение9 мин
Количество просмотров2.4K

Человеческий мозг эволюционировал для выживания в саванне, а не для анализа распределенных систем. Когда что-то идет не так, наш древний мозг кричит: "Найди угрозу! Накажи виновного! Защити племя!" Эта реакция спасала наших предков от саблезубых тигров, но разрушает современные инженерные команды.

Читать далее

Дэвид Л. Парнас «О критериях для разбиения систем на модули»

Уровень сложностиСредний
Время на прочтение17 мин
Количество просмотров3.9K

Статья Парнаса «О критериях...» давно стала классикой, на которую постоянно ссылаются, но мало кто ее реально читает. Высказанные в ней идеи о «сокрытии информации» как основе модульности упоминаются повсеместно, однако оригинальный текст с его тщательной аргументацией и яркими примерами остается для многих терра инкогнита. Данный перевод призван восполнить этот пробел.

Читать далее

Всё-таки свободное ПО не победило

Уровень сложностиПростой
Время на прочтение14 мин
Количество просмотров59K

(Перевод моего выступления на  P.I.W.O в июне, слегка подчищенный и приближенный к формату блога).

…звучит как-то не очень. Я сделала все эти слайды в Inkscape с ПК под управлением KDE Linux, плюс я регулярно пользуюсь Firefox. Но это всего лишь я. А что насчёт вас? Вы используете свободное ПО? Поднимите руки! [в аудитории поднимаются руки] Конечно же! Что за чепуха, «Свободное ПО не победило». Кто-то подменил мои слайды… Эй, ведущий конференции!

Ведущий: В другом каталоге.

[Перехожу в каталог с названием другой каталог и открываю файл твои слайды тупица.pdf]

Вот они мои слайды.

Всех приветствую, меня зовут Дорота, и сегодня я буду говорить о том, как …

Читать далее

Java 25: упрощённые исходники

Уровень сложностиСредний
Время на прочтение11 мин
Количество просмотров11K

Язык Java развивается. Не так давно вышла очередная версия, в которой, помимо всего прочего, вышло любопытное обновление языка (JEP-512).

Изменения, в язык внесенные, делают его более пригодным и удобным для обучения и написания коротких программ.

В этой статье хочу рассказать о том, как это сделано. Для этого заглянем в компилятор и немного коснемся теории создания языков.

Читать далее

Ностальгические игры: Final Fantasy XII

Уровень сложностиПростой
Время на прочтение13 мин
Количество просмотров3.4K

У серии Final Fantasy огромное количество поклонников, но и не меньшее число тех, кто её недолюбливает. Кому-то кажется скучной боевая система, кого-то отталкивает «анимешная» стилистика, а кто-то устал от типичных историй о спасении мира от очередного апокалипсиса. Но что, если я скажу, что среди старых частей есть одна, которая разительно отличается от остальных — настолько, что даже убеждённым скептикам серии она может прийтись по вкусу?

Только представьте: сюжет, построенный не на избранных героях и древнем зле, а на политических интригах и противостоянии держав; революционная для серии боевая система, удивительно похожая на ту, что позже использовали в Dragon Age — хотя Final Fantasy XII вышла на три года раньше; и уникальная ролевая система, полностью переосмысленная в последующем переиздании, из-за чего даже ветераны, вернувшись к игре спустя годы, фактически получали новый опыт. Звучит интригующе, не так ли? Это именно та часть, которая способна увлечь даже тех, кто раньше обходил серию стороной. И если вы когда-то не понимали, за что миллионы игроков по всему миру любят Final Fantasy — то, пожалуй, попробуйте начать именно с неё.

В этом обзоре я расскажу, как создавалась игра, какие идеи легли в основу её мира и сюжета, чем особенна система боя и развития персонажей, какие различия есть между версиями и переизданиями Final Fantasy XII — и главное, почему эта RPG остаётся увлекательной даже спустя годы!

Читать далее

Пограничные случаи HTTP, которые должен понимать каждый разработчик API

Уровень сложностиСредний
Время на прочтение16 мин
Количество просмотров15K

В феврале прошлого года у интерфейса веб-серверов Rack, лежащего в основе практически каждого приложения Ruby on Rails, был обнаружен CVE-2024-26141. Уязвимость была простой: достаточно отправить запрос файла с сотней байтовых диапазонов, и Rack генерировал неожиданно большой ответ. Серверы продакшена можно было атаковать одиночными HTTP-запросами, пока у них не закончится ресурс памяти или канала.

Усугубляло ситуацию то, что баг затронул широкий диапазон версий: от 1.3.0 и выше; это означало, что уязвимыми оказались приложения, которые писали с 2011 года. Многие разработчики тратили все свои выходные на установку патчей.

Это пример того, как простой неправильно обрабатываемый пограничный случай HTTP может нанести существенный ущерб. И не потому, что мы плохие разработчики, а потому, что HTTP сложен. В идеальном случае всё работает замечательно. Но потом наступает продакшен.

Читать далее

Для Кремниевой долины наступила эра «хард-тека»

Время на прочтение7 мин
Количество просмотров11K

Попрощайтесь с эпохой потребительских сайтов и мобильных приложений. Искусственный интеллект положил начало эре, которую инсайдеры из инновационной столицы страны именуют «хард-теком».

Читать далее