Крупные компании ежедневно генерируют, обрабатывают и хранят колоссальные объемы информации. По данным исследования IDC, корпоративный цифровой контент удваивается каждые 18–24 месяца (ссылка), а средний сотрудник тратит до 20% рабочего времени ежедневно на поиск нужной информации или коллеги, который сможет ему помочь. При этом он еще и отвлекает коллегу на решение своего вопроса. Казалось бы, в эпоху цифровизации найти нужный документ или ответ должно быть проще, чем когда-либо. Однако реальность оказывается совершенно иной.
Читать далееМногие разработчики при обсуждении основ Clean Code называют одни и те же принципы — чаще всего упоминаются DRY, KISS и YAGNI. Эти концепции прочно закрепились в профессиональном сообществе и воспринимаются как обязательная часть хорошего кода.
Принцип RUG упоминается значительно реже. Чаще всего о нём узнают с опытом, а многие применяют его интуитивно, даже не подозревая, что для этого подхода существует отдельное название и формулировка.
Сегодня я хочу поговорить о принципе RUG и о том, какие рекомендации он даёт по написанию программного обеспечения.
RUG (Repeat Until Good) — это принцип, который говорит: можно повторять один и тот же код, пока это разумно.
На ранних этапах разработки важнее просто реализовать логику, исходя из текущих требований, чем пытаться сразу создать «идеальную» абстракцию. В этот момент задача — как можно быстрее получить рабочее решение, которое отражает текущие знания о системе. Но со временем, когда одна и та же логика начинает встречаться всё чаще, становится очевидно, что её удобнее и правильнее выделить в отдельную, чётко оформленную абстракцию, чтобы избежать дублирования и упростить дальнейшую поддержку.
Мы используем этот принцип каждый раз, когда пишем код. Ведь практически любую логику можно сделать более абстрактной и масштабируемой — вопрос лишь в том, когда наступает подходящий момент для этого.
Я буду использовать TypeScript, так как этот язык знаком большинству разработчиков.
Рынок IT меняется с такой скоростью, что за ним иногда трудно угнаться: новые технологии, методологии, роли — всё постоянно меняется. Из-за этого границы между профессиями часто становятся размазанными. Если разработчики чётко знают свой стек, задачи и техдолг, то у дизайнеров и аналитиков всё гораздо более гибко, потому что их работа опирается на коммуникацию, логику и потребности людей. Часто дизайнеры и аналитики начинают работать вместе еще на самых ранних стадиях проекта — именно там, где чаще всего царит хаос.
И вот здесь начинается путаница. Часто не совсем ясно, кто за что отвечает. В одной команде UX-дизайнер делает всё: от сбора требований до создания прототипов, а в другой — он ждет четкого ТЗ от аналитика. И тогда возникает вопрос: где заканчивается аналитика и начинается дизайн? Давайте разберемся.
Читать далееЭра искусственного интеллекта уже наступила — и люди, мягко говоря, в панике.
К счастью, я здесь, чтобы рассказать хорошие новости: AI не уничтожит мир, а наоборот, вполне может его спасти.
Для начала короткое описание того, что такое AI: это применение математики и программного кода для обучения компьютеров понимать, синтезировать и генерировать знания примерно так же, как это делают люди. AI — это программа, как и любая другая: она запускается, принимает входные данные, обрабатывает их и выдаёт результат. Причём output AI полезен в самых разных областях — от программирования до медицины, юриспруденции и искусства. Её владеют и контролируют люди, как и любой другой технологией.
А теперь коротко о том, чем AI не является: это не какие-то «убийственные программы» и роботы, которые внезапно оживут и решат уничтожить человечество или развалить всё вокруг, как это показывают в фильмах.
И еще короче о том, чем AI может стать: способом сделать лучше всё, что нам действительно важно.
Читать далееПри разработке и тестировании приложений порой требуется заглянуть под капот - проанализировать HTTP-трафик или проверить кэш данных в базе данных. Ранее для этих целей мы использовали Inspektify и Delight SQL Viewer. Но в какой-то момент нам понадобился еще и удобный доступ к логам приложения и тащить ещё одно отдельнее решение не хотелось. Был нужен один инструмент, который объединит всё самое необходимое в одном месте. Так появился Kick — расширяемый модульный набор инструментов, позволяющий разработчикам и тестировщикам легко инспектировать приложение.
Читать далееДесятки нейросетей, «цифровых платформ» и другие «обязательные элементы» современного техностартапа — именно это мы ожидали увидеть, когда открывали список участников «Ярмарки стартапов» стартующего сегодня Архипелага 2025. Но увидели куда более неожиданные вещи. Кто-то делает аэродинамические трубы для школьников, кто-то насыщает кислородом водоёмы с помощью промышленных аэраторов, кто-то создаёт систему для нейтрализации беспилотников. Все они вышли из бесплатного акселератора, хотя их путь до продакшена пока ещё не закончен.
Читать далееВсем привет! С 4 по 6 июля в японском городе Канадзава прошла небольшая, но очень ламповая конференция NLDB 2025, посвященная различным доменам в NLP. Мы, группа исследователей из AIRI, съездили на это мероприятие, других посмотреть и себя показать.
О том, что было на конференции и о красотах Канадзавы — читайте в тексте ниже.
Читать далееВсем привет!
В мире разработки часто сталкиваешься с парадоксом: отличные технические решения могут не привести к желаемому успеху, если они не синхронизированы с бизнес-целями компании. Как инженерам избежать этого и научиться влиять на развитие продукта не только через код? В статье рассмотрим, как стратегическое мышление и правильная коммуникация с другими департаментами помогают принимать более осознанные решения, которые будут работать на долгосрочный успех.
Читать далееЗавершаем рубрику «Где нас нет» о жизни и карьере ИТ-специалистов в российских регионах. Мы опросили айтишников из всех восьми действующих федеральных округов России: у нас вышли материалы про Дальний Восток, Сибирь, Урал, Северный Кавказ, Северо-Запад, Приволжье, Юг и часть регионов Центрального округа.
Центральный федеральный округ включает целых 18 субъектов, поэтому мы разделили его на две части. Уже рассказали о регионах, которые находятся ближе всего к Москве и Московской области, а в этот раз затронем оставшуюся часть округа.
Читать дальше →В статье представлено описание определения требований к ПО по Карлу Вигерсу. В статье законспектированы особенности интерпретации требований, уровни и типы требований, три уровня требований, требования к продукту и требования к проекту.
Читать далееПривет, Хабр! Меня зовут Дмитрий Волков, я Head of Product Design в MANGO OFFICE.
Недавно мы провели внутренний митап на тему универсального языка работы SCRUM-команды при проектировании пользовательского опыта. Решил поделиться выводами и практическими инструментами, которые помогают решить проблему коммуникации в продуктовых командах.
Читать далееВ сентябре 2025 года стартует обучение на программах совместной магистратуры Яндекса с тремя вузами — ИТМО, НИЯУ МИФИ и МФТИ. Выпускники получат диплом о высшем образовании от вуза, диплом о профессиональной переподготовке от Яндекса, студенческие льготы, отсрочку от армии, портфолио с проектами. Обучение платное и длится два года, как в обычной магистратуре. Мы расспросили студентов о том, как они оплачивали обучение (за свой счёт, с помощью работодателя, маткапитала, образовательного кредита) и получали налоговый вычет за образовательные услуги.
Читать далееПривет, Хабр! Я Михаил Косцов, руковожу практикой вычислительной инфраструктуры и систем резервного копирования в К2Тех. Недавно мы тестировали СХД от Аэродиска, а теперь на очереди ещё один отечественный продукт — сервер «Гравитон» С2122ИУ на платформе «Урал».
Российский рынок потихоньку заполняется предложениями от отечественных производителей серверов, но главный вопрос остается открытым: способны ли они удовлетворить потребности бизнеса? Даже у Dell и HPE есть косяки, что уж говорить о новичках. И вот с «Гравитон» получилась интересная история: железо оказалось крепким, а система управления… ей есть куда расти.
В статье попробуем честно ответить на вопросы: насколько созрело российское железо, может ли новый сервер потягаться с Dell R660, и где у него сильные стороны, а где — недоработки.
Читать далееApache Kafka — король асинхронного взаимодействия в микросервисных архитектурах. Но что если нужно получить ответ сразу?
Перевод от команды Spring АйО шаг за шагом покажет, как превратить Kafka в инструмент синхронной коммуникации — с настройкой ReplyingKafkaTemplate, топиками для ответа и тайм-аутами.
Читать далееComet от Perplexity— браузер будущего с AI-ассистентом, который помогает автоматизировать рутину. В статье делюсь опытом недельного теста, плюсами и минусами, и рассказываю, чем новый подход отличается от привычных решений.
Читать далееНа просторах сети немало сайтов, и у значительной их части на главной странице находится ОН — Самый Главный Слайдер.
Как правило, у него есть некоторый набор отличительных черт: он большой, у него красивые картинки, он содержит очень важную информацию!
А самое главное — зачастую, часть его слайдов... нечитаема. И это очень коварная проблема, ведь поначалу ничто не предвещает беды. Дизайнер делает красивый дизайн, верстальщик - качественную вёрстку. Всё идёт отлично!
А спустя время заказчик начинает вводить текст, загружает картинку, иии... Оказывается, что картинка подходит совсем не любая. На самом деле, даже не любая картинка зачастую тоже не подходит!
А ещё есть разные... кхм... разрешения... кхм... экрана... Простите, слеза в горле застряла.
Читать далееКурьеры Яндекс Еды выражают недовольство по поводу исчезновения адекватных доплат, заявляя, что их заработок сократился и иногда они работают чуть ли не в убыток. Так ли это на самом деле? Рассказываю личный опыт.
Читать далееОднажды у всех в жизни происходит момент внезапного осознания: я уже взрослый и могу делать все, что угодно (ну почти). Как-то раз я смотрела стрим и обратила внимание на эстетичное и комфортное рабочее пространство в кадре. Меня зовут Анастасия Наумова — я не стример, а редактор в KODE, поэтому тоже провожу много времени за рабочим столом. И кто мне запретит сделать его таким же классным?
Так родилась идея для этой статьи: описать подходы с точки зрения приоритетов: как понять, чего не хватает на рабочем месте и что действительно стоит добавить. Помимо базового минимума и роскошного максимума, я собрала примеры с фото у коллег и подписчиков в соцсетях — они ждут вас в середине статьи.
Что за база и роскошьОднажды мне попалось интересное видео о необычном бизнес‑лайфхаке. Англоязычный автор рассказывал о том, что создаёт детские книжки полностью с помощью нейросетей и продаёт их в цифре на Amazon. Эти детские книжки были совсем незамысловатые: большая, размером в страницу, нейрокартинка и пару предложений поверх. Свёрстанные 10–12 страниц — и книжка готова к продаже. «Ну чем я хуже!» — прозвучал в моей голове голос предприимчивой Фрекен Бок. И вот уже ChatGPT строчит мне первую сказку. А потом вторую, а потом третью, четвёртую, десятую. Нет, не для продажи. Для того, чтобы добиться хотя бы минимального качества текста, который бы мне было не стыдно опубликовать. Довольно быстро я осознал, что все попытки нейросети: шаблонны, поверхностны, скудны, бессмысленны и очень скучны. Уже тогда было понятно, что нейросети, если и заменят когда‑нибудь писателей, случится это ещё очень и очень не скоро. И даже в этом случае над текстами придётся ещё много работать редактору. На данный момент даже элементарные детские истории, написанные нейросетями, не выдерживают никакой критики человека, которому не далека литература.
Читать далее