Обновить

Разработка

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

Имитация, симуляция или эмуляция

Уровень сложностиПростой
Время на прочтение10 мин
Охват и читатели8.3K

Выскажу свое мнение относительно использования этих слов в контексте программного обеспечения как развлекательной так и образовательной направленности в т.ч. с использованием систем формирования виртуальной реальности (VR).

Читать далее

Следующие два года в разработке программного обеспечения

Уровень сложностиПростой
Время на прочтение16 мин
Охват и читатели10K

Эта статья была вдохновлена статьей https://addyosmani.com/blog/next-two-years/. Постить на Хабре просто очередной перевод выполненный LLM, на мой взгляд, не имеет смысла и ценности не несет. Плюс разработка в России ≠ разработка в США, у нас много своих нюансов и специфики. При этом я заимствовал вопросы, и части текста автора , потому что полностью разделяю его мнение в некоторых вопросах, а в некоторых вопросах наши мнения расходятся (да, да, можете считать, что это с одной стороны урезанный, а с другой дополненный перевод статьи).

Про вайбкодинг не высказался только ленивый, буквально пару дней назад на Хабре была любопытная статья Перестань вайбкодить: почему «разработка на расслабоне» убьет твою карьеру. Я тоже хочу поделиться с вами своим мнением.

Читать далее

Хотят многие, делают единицы: наш опыт автоматизации рутины пентеста

Время на прочтение10 мин
Охват и читатели8.9K

Привет, Хабр! Меня зовут Дмитрий Федосов, я руковожу отделом наступательной безопасности в Positive Technologies. В этой статье мы с ведущим специалистом нашего отдела Владиславом Дриевым расскажем про автоматизацию рутины в пентесте на основании нашего опыта построения результативной безопасности.

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

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

Читать далее

Почему нейросети не заменят прикладных специалистов: простая логика против вероятностных подходов

Время на прочтение5 мин
Охват и читатели9.1K

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

Это статья о том, что такое инженерное мышление и, как правильная формализация предметных знаний способствует реализации экспертных систем с применением простой логики.

Читать далее

Флаг вам в руки: внедряем feature flags в Django

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

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

Сегодня поговорим о том, как включать и выключать функциональность в Django, не разворачивая каждый раз новый деплой. В больших проектах эту задачу решают через feature flags, такие условные флажки , которые позволяют запускать скрытые возможности лишь для части пользователей или откатывать фичи, не выкатывая заново весь код. Если вы хотите поэтапно раскатать новую функцию, сделать A/B тест или просто спрятать недоделанный модуль за переключателем, вам сюда.

Читать далее

Как компании провести внутренний мультиагентный AI-хакатон

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели5.7K

Год назад мы провели первый внутренний AI-хакатон. После некоторые проекты были разработаны и реализованы в течение года. В этом году мы повторили опыт, но усложнили задачу — сместили фокус на мультиагентные системы. Делимся опытом организации, выводами и результатами. Наш опыт будет полезен тем, кто планирует подобное мероприятие.

Читать далее

Игра во время загрузки игры

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

На протяжении всей истории существования домашних компьютерных развлечений им сопутствует процедура, именуемая «загрузка» — процесс передачи кода и данных игры с внешнего носителя в память компьютера, необходимый, чтобы можно было начать играть в игру. В зависимости от типа носителя, загрузка занимает некоторое время, порой весьма заметное. Сначала это были компакт-кассеты, с которых игры грузились несколько минут, потом их сменили дискеты, загрузка с которых тоже иногда могла занимать минуту-другую, и даже в эпоху лазерных CD и DVD-дисков минутные загрузки были не так уж редки.

Чем же занять себя находящемуся в нетерпении игроку всё это время до того, как игра будет загружена и можно будет начинать в неё играть? Было время, когда человечество почти нащупало интересный ответ на этот вопрос: «загрузочные игры».

«Мы сделали игру на экране загрузки игры, чтобы вы могли играть в игру, пока загружается игра»

Читать далее

Как работать с legacy-системами и не ломать бизнес: опыт MANGO OFFICE

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

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

Читать далее

std::move ничего никуда не двигает: подробный рассказ о категориях значений в C++

Время на прочтение35 мин
Охват и читатели17K

Проблема: когда из-за «оптимизации» код замедляется

Начнём с ситуации, в которой могут спотыкаться даже опытные разработчики. Допустим, вы написали на C++ следующий код, который выглядит совершенно нормальным:

Читать далее

Полезные ресурсы для тестировщиков: подборка от специалистов Selectel

Время на прочтение3 мин
Охват и читатели9.3K

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

Вместе со специалистами Selectel мы собрали полезные материалы для тестировщиков. В список вошли ресурсы, которые помогают развивать практические навыки, системное мышление и уверенно расти в профессии — от начального уровня до Middle.

В подборке собрано то, что действительно помогает в работе и может служить ориентиром для самостоятельного обучения. Подробности под катом!

Читать далее

Объяснение что такое классы в python на примере 3д игры. Пошагово с нуля

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели8.9K

Объясняю что такое классы простыми словами на пример создания сфер в 3д мире python ursina, есть такие понятия как self и init.

Читать далее

Бесконечность, графы и Wi-Fi: неожиданный мост между теорией множеств и информатикой

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

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

В 2023 году математик Антон Бернштейн опубликовал статью о глубокой и удивительной связи между дескриптивной теорией множеств и современной информатикой. Его результат показал, что язык алгоритмов может описывать даже те бесконечные структуры, которые десятилетиями считались чисто абстрактными. И если это правда, то граница между теорией множеств и информатикой проходит совсем не там, где мы привыкли её проводить.

Читать далее

Ненормальные непотребства, трюки, хаки и алгоритмы на C

Уровень сложностиПростой
Время на прочтение10 мин
Охват и читатели17K

Доброго времени суток, господа и дамы! Иногда у некоторых людей возникает желание заняться откровенным непотребством в программировании — то, что не несет практической пользы напрямую, но помогает развлечься. И я — не исключение. В этой статье я хочу рассказать вам о лайфхаках, трюках (магических и не очень), алгоритмах на языке C!

Идея написать эту статью зародилась из моего поста, после него я начал серию статей, которая раскрывала много интересных моментов — от математических алгоритмов и оптимизации до ГПСЧ.

Если вы видите на экране эту шестую часть нашей бесконечной саги о ненормальном программировании на C, значит, мы с вами прошли уже немало: от конвертации миль в километры через Фибоначчи до ГПСЧ и быстрых вычислений.

В этой статье будет еще порция свежих хаков, фанов, трюков, еще больше магии и скорости!

Добро пожаловать в шестую часть. Прошу под кат — там будет жарко, быстро и очень, очень интересно.

Читать далее

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

Я стал ИИ-зависимым и вот как борюсь с этим

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

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

Читать далее

Почему ИИ-агенты важнее всего остального

Уровень сложностиПростой
Время на прочтение9 мин
Охват и читатели7.1K

Команда AI for Devs подготовила перевод статьи о том, почему ИИ-агенты — самый важный элемент экосистемы ИИ прямо сейчас. Главная мысль: именно агенты способны выполнять полезную работу без участия человека, а значит — радикально изменить рынок интеллектуального труда и саму структуру экономики.

Читать далее

Рецензия на книгу «Принципы модернизации программных архитектур»

Уровень сложностиПростой
Время на прочтение9 мин
Охват и читатели9.2K

«Принципы модернизации программных архитектур»— это действительно полезное руководство по современной архитектуре ПО, ориентированное на реальные случаи миграции монолитных систем в микросервисы и обратно. В одной книге собраны и объяснены все ключевые знания, включая решение архитектурных антипаттернов и советы по повышению качества инженерных решений. Книга подходит как для практикующих архитекторов, так и для разработчиков, стремящихся понять, почему архитектуры ломаются, Что делать? и Кто виноват? (и как это исправить). 

Читать далее

Angular сегодня: ключевые изменения последних лет

Время на прочтение5 мин
Охват и читатели7.4K

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

MDN Baseline badges и влияние на поддержку браузеров в Angular

Начать стоит не с самого Angular, а с важного обновления в веб-документации MDN (Mozilla Developer Network). Там появились Baseline badges (метки), которые позволяют быстро оценить, насколько целесообразно использовать новую фичу — например, часть браузерного API.

Читать далее

Как начать тестировать внутренние покупки (In-App Purchases) на Android

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели6.3K

В этом туториале разберем, как настроить тестовую среду и выполнить ручное тестирование IAP на Android с использованием тестового аккаунта и sandbox-режима.

Читать далее

Закономерности в данных вместо догадок: как мы помогаем студентам дойти до конца курса

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

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

В 2025 году в Практикуме заработала ML-модель, которая за две недели до возможного ухода студента сигнализирует о том, что такой риск появился, и показывает вероятные причины. Благодаря этому кураторы успевают предложить поддержку: академ, смену курса или более гибкий формат обучения. В этой статье расскажем, как мы проектировали модель, какие данные использовали и как проверяли её работу на практике.

Читать далее

Black-White Array: новая структура данных с O(log N) аллокаций

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

Black-White Array (BWA) — это упорядоченная структура данных с амортизированным временем операций вставки/поиска/удаления O(\log N) и O(\log N) используемых участков памяти. Преимущества:

• Амортизированное время вставки/удаления/поиска сравнимое с реализацией BTree от Google;
• Низкое количество аллокаций памяти при операциях вставки O(\log N) - меньше давления на сборщик мусора, ниже фрагментация памяти;
• Массивы под капотом: данные лежат рядом, что улучшает кэшируемость процессором и скорость обхода/доступа к данным;
• Позволяет хранить элементы с одинаковыми ключами - не нужно использовать дополнительные структуры для группировки таких элементов;
• Низкий оверхед на хранение служебной информации - экономия памяти по сравнению с другими структурами данных;
• Удобен для вставки батчами;
• Простая сериализация и десериализация;

Подробности