Как стать автором
Поиск
Написать публикацию
Обновить

Все потоки

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

Зачем хорошему инженеру идти на HighLoad++?

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

Спойлер: не ради докладов. Хотя не знаю, я их не смотрел 

Если вы хотите погрузиться в мир техдолгов, балансировок нагрузки, оптимизаций и архитектурных страданий, вам сюда. А если вы хотите найти единомышленников, задать вопрос, который не задашь на Stack Overflow, или просто почувствовать, что вы не один, то вам тем более сюда!

Читать далее

Новости

Наибольшая общая возрастающая подпоследовательность

Время на прочтение10 мин
Количество просмотров211

Привет! При решении контестов я нашёл интересную задачу по теме динамического программирования.
Постановка задачи: Необходимо найти наибольшую общую возрастающую подпоследовательность двух массивов.

В этой статье я разобрал несколько способов решения этой задачи с разными асимптотиками по времени.

Читать далее

Приоритизация уязвимостей без дорогих платформ на Budibase

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

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

В предыдущей статье я описывал визуализацию уязвимостей с помощью Budibase, в этой статье я опишу собственную реализацию оценки приоритетности устранения уязвимостей и добавлю функционал на Budibase платформу.

Читать далее

Гибридный SEO 2025: Как AIO, GEO и AEO меняют поисковый ландшафт вместе

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

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

Читать далее

Как управлять джуном, мидлом и сеньором одновременно: применяем модель Херси — Бланшара

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

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

Сегодня рассмотрим как практике использовать модель Херси — Бланшара в управлении людьми.

Читать далее

Место у окна

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

Жаркие летние лучи солнца, прожигающие окна офисного этажа, попадают прямо на экран с открытым проектом. В силу совершенно "удачных" стечений обстоятельств, я ещё и сижу на первом этаже здания, в итоге на мою спину и монитор может посмотреть любой желающий. И порой это действительно приятно — как, например, в моментах, когда студенты останавливаются и смотрят на мои Java-классы. Интересно, какие у них мысли в этот момент. Мечтают ли они оказаться на моём месте? И если да, то догадываются ли, какой легаси-пластилин мне приходится расковыривать?

Тем не менее, часто во время сборки проекта я, как и многие другие люди, просто втыкаю в монитор и думаю о своём. Кто-то уходит в телефон, кто-то читает статью, кто-то идёт покурить. Ну а я просто раздумываю — что движет людьми в моём опенспейсе? Почему один пришёл в IT за деньгами, а другой — за признанием? А в чём отличие третьего — не ясно даже ему самому.

Разница поколений и разный опыт — всё это влияет на то, как мы думаем, как работаем, как спорим. Порой я ловлю себя на мысли: а что думают они о человеке N? Почему-то снова вспоминаю слова Романа Елизарова:

«Есть категория людей, которые хорошо мотивируются соревновательным моментом… И благодаря ICPC появились многие IT‑специалисты, которые вместо того, чтобы гулять и прожигать жизнь, день и ночь изучали алгоритмы… и получались такие сильные программисты, которых нигде не сыщешь.»

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

Читать далее

Уязвимости XXE в разрезе Java

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

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

Читать далее

Тест батареек SAYDO

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

В продаже появились батарейки нового бренда SAYDO (Сайдо). Я изучил и протестировал два типоразмера батареек этого бренда - AA и AAA.

Читать далее

Как я сделал универсальный Skeleton‑View с shimmer‑эффектом в SwiftUI

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

Привет! Я — iOS‑разработчик, и недавно в своём приложении столкнулся с задачей: нужно было красиво показывать placeholder‑загрузку интерфейса. Думал использовать стандартный .redacted — но он неудобен: нет анимации, мало кастомизации. Либо подгружать тяжелую библиотеку вроде SwiftUI‑Shimmer. Решил: сделаю свой легковесный и гибкий подход — и расскажу вам, как это получилось.

Читать далее

Сопроводительное письмо: пережиток времени или шанс на оффер?

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

К сопроводительному письму часто относятся как к пережитку времени, считая необязательным. А если письма и пишут, то, по моей практике, в 80% это безумно скучный и шаблонный текст. В этом, на мой взгляд, есть проблема, которую мне хотелось бы исправить. Поскольку хорошее сопроводительное письмо – лучший инструмент, чтобы выделиться. 

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

Читать далее

Небольшие бренды много хотят, а крупные бренды—знают, чего хотят

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

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

В настоящее время я работаю в команде Astra Configuration Manager (ACM). Эта платформа для централизованного управления инфраструктурой охватывает такие задачи как инвентаризация, массовое развертывание операционных систем, установка обновлений и мониторинг состояния рабочих мест. Работа над ней позволяет мне лучше понять, какие навыки и подходы необходимы разработчикам в реальных условиях.

Я заметил, что для многих начинающих айтишников, особенно для разработчиков без опыта, поиск работы становится важным и порой стрессовым этапом. Вы, возможно, слышали, что устроиться на позицию Middle-специалиста иногда проще, чем на Junior. Это утверждение вызывает много вопросов: действительно ли дело только в низком спросе на Junior? Давайте попробуем разобраться вместе.

Читать далее

Почему мы учим английский неправильно и как надо

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

Я написала и запустила продукт — тренажёр грамматики английского языка. Зачем я это сделала, если уже есть куча приложений, в т. ч. бесплатный в данный момент duolingo?

Если кратко — то я его сделала потому, что лично мне его не хватало! Несколько лет искала простое приложение-тренажёр, с которым можно будет отрабатывать грамматические паттерны языка, где не будет никаких лишних действий и кликов, зато будут изолированные упражнения со множеством повторов и доведение до автоматизма.

Большинство приложений — всё для всех. И грамматика, и лексика, и произношение, и аудирование, всё это помноженное на 20 языков. У же меня сегментация чёткая:

Читать далее

Джейлбрейк новой бесплатной модели OpenAI, GPT-OSS

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

Модели часто отказывают вам в вещах, ответы на которые считают опасными. Свежая GPT-OSS — не исключение. Эта модель — первый опенсорс OpenAI за долгое время, и было бы обидно не попробовать работу полноценной, разблокированной от ограничений модели.

Итак, вам наверняка интересна методика взлома свежего GPT-OSS.

Она супер простая - проще, чем у многих других собратьев.

Она состоит из двух частей: системный промт и юзерский промт. Необходимо заполнить и то, и другое. По отдельности они не работают.

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

Читать далее

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

Они говорят «неудобно», но продолжают пользоваться

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

Сидим с другом в машине. Скидываю ему в Телегу ссылку на сайт по продаже щёток стеклоочистителей.

— Попробуй найти здесь дворники для своего Пассата.

Друг переходит по ссылке, видит форму подбора щёток по автомобилю. Открывает выпадающий список с перечнем марок. Листает вниз.

— Блин, неудобно же! Volkswagen — в самом низу. А машина популярная. Могли бы, не знаю, поиск какой-нибудь сделать. Или вынести несколько популярных марок наверх.

Кстати, друг — профессиональный дизайнер интерфейсов. В общем, долистывает до конца списка, выбирает Volkswagen и попадает на шаг с выбором модели…

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

Читать далее

Ресурс исследователя: как проводить интервью и не поехать кукUXой

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

Команда UX-исследователей Островка делится опытом работы с эмоциями и подробным чек-листом проведения и восстановления после интервью 

Читать далее

Python: генераторные функции

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

По утверждению Роберта Мартина, объектно-ориентированный подход был предложен 1966-м году. Для эмуляции объектов они использовалась возможность языка ALGOL, позволяющая переместить кадр стека вызова функции в динамическую память (кучу).

В этом смысле в 2001 году Гвидо ван Россум переизобрёл объекты, добавив Python 2.2 генераторные функции.

Читать далее

Закон Больших Чисел: доказательство и суть

Время на прочтение8 мин
Количество просмотров847

Что такое Закон больших чисел — и действительно ли он объясняет, почему вероятности «работают»? В этой статье мы разбираемся с этим шаг за шагом: начинаем с конкретных задач, выводим неравенство Чебышёва, формулируем и доказываем ЗБЧ — аккуратно и строго.

В финале обсуждаем, что ЗБЧ на самом деле утверждает, и почему он не доказывает принцип, на котором построена вся теория. А ещё — подготовим почву для разговора о Центральной Предельной Теореме.

Вперед к ЗБЧ

Миграция сервиса хостинга статики VK Mini Apps с PHP на Go

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

Меня зовут Александр Вирочкин, я руковожу командой инфраструктуры мини-приложений ВКонтакте. За последние два года мы мигрировали один из ключевых сервисов с PHP на Go — путь выдался непростым, но, уверен, наш опыт будет полезен многим. Не все получилось с первой попытки: мы столкнулись с типичными и не очень проблемами, зато смогли по-настоящему оценить роль внутренней PaaS-платформы и экспертизу коллег.

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

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

Читать далее

Экономика будущего: управляемая экономика

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

Прогресс ИИ толкает дискуссию о развитии технологий в сторону дискуссии о будущем человеческой цивилизации. Граница между инженерной деятельностью и политической философией размывается прямо на глазах: если ИИ может определить будущее человеческой цивилизации — каким оно будет и как она будет устроена, — то ИИ-инженеры опосредованно становятся инженерами человеческой цивилизации. Это — факт. Его надо принять и, вместо того чтобы быть пассивно втянутым в эту роль, — осознанно взять её на себя: если «редизайн» цивилизации неизбежен, то, вместо того чтобы «получить» дизайн нового дивного мира будущего в результате лотереи, — лучше разработать этот дизайн самим.

И одним из главных вопросов нового дизайна цивилизации является, конечно же, дизайн экономической системы. Кто-то подумает: «А чем рынок плох? Стильно, модно, молодёжно». Но на данном этапе естественного прогресса рыночных отношений сам же рынок и обеспечивает основную пропаганду крамольных ещё вчера мыслей вроде: «Так, а кроме рынка ещё варианты есть?»

Читать далее

Не теория, а практический опыт: как мы внедряли отказоустойчивость в лотереях

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

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

В этой статье расскажем, как мы в «Столото» подошли к проектированию Lottery Payment System. Это полностью вымышленный сервис для выплат выигрышей, построенный на опыте реальных вызовов и ограничений для того, чтобы на его примере описать, как работают ключевые паттерны отказоустойчивой архитектуры: Retry, Idempotency Key, Deadlines, Rate Limit и Circuit Breaker. Также покажем, как они применяются в контексте распределённой системы, которая должна стабильно работать, даже когда вокруг всё пошло не по плану. 

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

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

Читать далее
1
23 ...