Хочу вернуться к старой проблеме с хранением журнала регистрации 1С в формате SQLite. История стара как мир, но мы нет-нет, а продолжаем с ней сталкиваться, поскольку очень часто большие информационные системы работают далеко не на самых свежих версиях платформы 1С, а администраторы системы не уследили за форматом хранения журнала регистрации (ЖР).
Наглядно посмотрим к чему может приводить ЖР в формате SQLite в многопользовательской нагруженной системе, а также выясним как администраторам и разработчикам понять, что проблема просадки производительности связана с чтением ЖР.
Читать далееЯ уже больше десяти лет критикую Go, о чём высказывался в своих предыдущих статьях «Why Go is not my favourite language» и «Go programs are not portable».
Описанные в них проблемы языка бесят меня всё больше, и в основном потому, что их явно можно было избежать. Мир знавал решения и получше, но Go почему-то состряпали именно таким.
Те, кто читал мои прежние статьи, встретят здесь частичные повторы, так что заранее прошу меня за них простить.
Читать далееВ 2022 году я был простым дизайнером в пиар-отделе — оформлял социальные сети, делал картинки к новостям. Думал, что так и буду всю жизнь постики клепать.
Сейчас работаю полноценно на внешних заказчиков нашей компании. У меня теперь, помимо графического дизайна для SMM, и интерфейсы, и 3D, и моушен. И вот так получилось, что в нашей компании у меня одна из самых больших экспертностей именно в ИИ. Если что-то не понимают, не знают — сразу ко мне идут.
В этой статье расскажу, как нейросети превратили меня из узкого SMM-специалиста в многопрофильного креатора, покажу реальные кейсы и поделюсь работающими техниками, которые использую каждый день.
Читать далееКак автоматизировать DevSecOps с помощью ИИ или как мы разработали DevSecOps-консоль для контроля над уязвимостями
Читать далееВ самом начале проекта Manus перед нашей командой встал ключевой вопрос: обучать ли end-to-end агентную модель, используя open-source foundation-модели, или же строить агента поверх возможностей in-context learning у frontier models?
В моё первое десятилетие в NLP у нас и выбора-то такого не было. В далёкие времена BERT (да, прошло уже семь лет) модели приходилось fine-tune'ить и тестировать, прежде чем они могли переноситься на новую задачу. Этот процесс часто занимал недели на одну итерацию, даже при том, что тогдашние модели были крошечными по сравнению с сегодняшними LLM. Для быстроразвивающихся приложений, особенно на этапе до PMF, такие медленные циклы обратной связи — смертный приговор. Это был горький урок из моего прошлого стартапа, где я обучал модели с нуля для open information extraction и семантического поиска. А потом появились GPT-3 и Flan-T5, и мои внутренние модели стали не актуальны буквально за ночь. Ирония в том, что именно эти модели положили начало in-context learning — и открыли совершенно новый путь развития.
Из этого болезненного опыта выбор был очевиден: Manus делает ставку на context engineering. Это позволяет выпускать улучшения за часы, а не за недели, и держит наш продукт ортогональным по отношению к базовым моделям: если прогресс моделей — это прилив, то мы хотим, чтобы Manus был лодкой, а не сваей, вбитой в морское дно.
Тем не менее context engineering оказался далеко не тривиальным делом. Это экспериментальная наука — и мы перестраивали наш агентный фреймворк четыре раза, каждый раз находя более удачный способ формировать контекст. Мы с любовью называем этот ручной процесс перебора архитектур, подбора промптов и эмпирических догадок «Stochastic Graduate Descent». Это не изящно, но работает.
В этом посте я делюсь локальными оптимумами, к которым мы пришли через собственный «SGD». Если вы создаете своего AI-агента, надеюсь, эти принципы помогут вам сойтись к решению быстрее.
Читать далееВ нашей компании есть много проектов, связанных с AI. Всем им нужны ресурсы для работы с моделями на GPU. «Хотим, чтобы только мы имели доступ к оборудованию», — это лишь одно из требований инженеров из AI-дивизиона, а еще нужно оптимизировать использование GPU-ресурсов, вести их учет и быстро подготавливать оборудование к передаче другой команде.
Привет, Хабр! Меня зовут Вадим Извеков, я руководитель группы сопровождения платформы машинного обучения в YADRO. Сегодня расскажу, почему мы решили создать свою MLOps-платформу, как она устроена и для чего используется.
Читать далееПредставьте типичное утро понедельника в ИТ-отделе: вы открываете систему тикетов и видите десять одинаковых заявок: «После вчерашнего обновления macOS перестал работать [важный корпоративный софт]».
Если это звучит знакомо, не паникуйте, вы не одиноки. Apple постоянно выпускает обновления безопасности и новые версии ОС, о чём она напоминает даже в документации: «поддержка актуального ПО – одна из самых важных задач для поддержки безопасности Mac». Однако в корпоративной среде эта же надёжность может обернуться головной болью для админа. С одной стороны, пропуск обновления может оставить дыры в безопасности; с другой – каждое обновление сопряжено с рисками несовместимости с бизнес-приложениями, скриптами и оборудованием.
В этом руководстве мы разберёмся со всеми основными инструментами и техниками по управлению обновлениями macOS. Материал построен по принципу от простого к сложному: начнём с базовых компонентов системы обновлений, затем — разбор softwareupdate и defaults, рассмотрим MDM-профили, а также методы блокировки и оптимизацию доставки обновлений.
Читать далееРешили как-то предприниматели ИТ-фирму организовать. Офис открыли, дорогим оборудованием обставили, всё по-модному и современному. Тут тебе и чай с печеньками, и комнаты отдыха, и психолог молодая и красивая. Не фирма, а заглядение.
Нашли заказчика — и появился у них новый проект. Чтобы его реализовать, решили нанять одного программиста, такого, чтоб потолковее да по-покладистее, и платить ему решили побольше. В помощь ему взяли дешёвого менеджера проектов. От него требовалось, чтобы выглядел прилично и любую прихоть заказчика выполнял.
И вот нашли менеджера и программиста. Программист весь такой «семь пядей во лбу», рвётся в бой и готов писать хоть сутками. Менеджер — приветливый, дружелюбный и амбициозный. Одна только небольшая проблема — в программировании он полный ноль. Настолько ноль, что когда его спрашиваешь: «Что такое метод пузырька?» — он в ответ загадочно улыбается, достаёт стакан и пол-литра.
И вот начинаются рабочие будни. На любое совещание менеджер берёт с собой программиста. Надо же как-то задачи ставить, а разбираться в том, как и что писать — это не его забота. Его дело — «проект к успеху двигать». Программист же и по совещаниям бегает, и работу работает. Работы становится всё больше и больше, количество совещаний и их длительность тоже постоянно увеличиваются. Чтобы всё успеть, приходится писать в спешке. Местами уже не до идеального кода.
Заказчику, конечно же, промежуточные результаты не показывают. Зачем ему знать внутреннюю кухню? Вдруг заподозрит чего или разочаруется. Как итог, на первом релизе получают кучу замечаний, недовольного заказчика, и менеджер обещает всё переделать, и, конечно же, за счёт фирмы, в которой он работает. Они ведь сделали не то, что он ожидал. В итоге программист работает круглые сутки, чтобы всё исправить, а менеджер его ещё и дёргает по нескольку раз на день, а то вдруг он опять «дров наломает». Худо ли, бедно, всё доделывают-переделывают и показывают заказчику. Он недоволен, но так и быть запускает проект у себя и продолжает оплачивать дальнейшую разработку. А так как объём работ увеличивается и хочется, чтобы качество было получше, он соглашается увеличить финансирование.
Читать далееМиграция с Oracle в «ванильный» PostgreSQL ломается на пакетах, автономных транзакциях и коллекциях — там их просто нет. Разбираем, почему ora2pg спотыкается, что дает нативная реализация этих механизмов в Postgres Pro Enterprise и как ora2pgpro переводит PL/SQL семантически точно, без костылей и регулярок.
Читать далееПроработав почти 25 лет в ИТ, у меня накопилось то, о чём хотелось бы рассказать. Я изучил множество технологий, участвовал в массе проектов. Работал как в мелких фирмах, так и у мировых гигантов. Общался с разными людьми из разных стран и континентов. Основным моим мотивом всегда был успех проекта. Я всегда пытался сделать работу на максимуме своих возможностей. Много читал и изучал, анализировал, писал на разных языках и платформах. Всегда было стремление сделать проект как можно лучше. Но далеко не всегда это получалось. Когда давали возможность, что-то выходило, хотя не всегда. Иногда возникали обстоятельства, которые ставили крест на проекте.
Факторов, приведших проект к успеху или, наоборот, к провалу, всегда было много. Анализируя свой опыт, у меня возник вопрос: а почему так получалось? Почему один проект выстрелил, а другой нет? Почему с одной командой мы буквально горы свернули, а с другой так ничего и не добились? Вспомнив все эти ситуации и проанализировав их, я написал две книги, в которых рассказываю о том, что может негативно повлиять на команду разработчиков и в итоге привести к провалу проекта, над которым они работают, либо к её распаду.
В книге «Лоу-перформеры в ИТ: кто тянет команду вниз» я рассказываю о сотрудниках, которые делают вид, что работают. С такими приходилось очень часто встречаться, и я пришёл к выводу, что они негативно влияют и на проект, в котором задействованы, и на команду, частью которой являются.
Я описал шесть типов поведения таких людей и дал рекомендации, как с ними работать и минимизировать их негативное влияние. Также поделился собственным опытом и собрал рекомендации из различных публикаций, в которых описывается данная проблема.
Читать далееПривет, Хабр! Я Станислав Габдулгазиев, архитектор департамента поддержки продаж Arenadata. Кажется, ещё вчера мы радовались возможностям Apache Spark 3.0, разбирались с Adaptive Query Execution и наслаждались улучшениями Pandas API. Но мир больших данных не стоит на месте, и вот уже на подходе Apache Spark 4.0. Новый мажорный релиз — это всегда событие: он обещает новые фичи, прирост производительности и, конечно же, новые вызовы при миграции.
Apache Spark де-факто стал стандартом для распределённой обработки данных. От классических ETL-пайплайнов и SQL-аналитики до сложного машинного обучения и стриминга — Spark так или иначе задействован во многих современных data-платформах. Поэтому каждый новый релиз вызывает живой интерес у комьюнити: что там под капотом? Какие проблемы решены? Не сломается ли то, что работало годами?
Читать далееВпервые компьютер у меня дома появился в 1987 году. Мне было 6 лет. Сура ПК8000 открыла для меня мир настоящих компьютерных игр после скучных автоматов из «игровушек» в парке аттракционов. Потом были БК, Ямаха, Спектрум, первые цветные мониторы и звук, которые раскрасили привычные игры по-новому. В СССР была масса отечественных разработок: БК-0010/0011, Радио-86РК, Микроша, Агат, Корвет, Вектор-06Ц.
Так почему такая огромная страна, как СССР не смогла повторить Западный бум персональных компьютеров 80-х на базе отечественных ПК? Даже с учетом того, что население СССР в то время было больше, чем в США и в любой стране Западной Европы?
Попробуем разобраться в причинах.
Читать далееДетские книги - относительно простой жанр, на котором удобно учиться отличать художественные тексты, созданные с помощью нейросетей. Достаточно несколько раз прочитать эти одноподобные тексты и в будущем не возникнет затруднений с тем, чтобы определить, насколько можно доверять автору. Потренироваться можно, к примеру, на литературных сайтах, где есть раздел Самиздат. А платные версии книг имеют ознакомительный фрагмент. Двух-трёх страниц порою достаточно, чтобы быть уверенным, что перед вами творчество нейросетей. Заглядывая вперёд, если кто-то захочет потренироваться в этом деле, большая просьба: оставлять комментарий о своих подозрениях. Это помогает в прямом смысле делать русскую литературу лучше, актуализируя рынок, и устанавливая фильтры для авторов. Более того, сами самиздат-платформы постепенно вводят маркеры использования ИИ. На данный момент это касается обложек, которые были сгенерированы с помощью нейросетей. Однако, я уже проходил опрос от одной крупной литплощадки по поводу ввода указателей участия ИИ в создании текста. Тем не менее, точность определения художественных текстов, написанных с помощью ИИ, не может быть 100%. К тому же многие молодые авторы копируют стиль нейросетей в первых попытках написать книгу. И всё же опытный редактор сможет отличить одно от другого. Каким образом?
0. Косвенные признаки
Перед основным списком следует упомянуть некоторые признаки, которые можно учитывать только в дополнение. И всё же они добавляют оттенков общей картине. Одним из косвенных признаков является обилие ИИ-изображений в тексте. Подобное изображение на обложке довольно распространено даже среди действительно авторских книг и не должно вызывать подозрений. Но иллюстрации (при том вставленные без должной вёрстки) если и не вызывают вопросы к уровню книги, то к качеству товара, как минимум, должны. Помимо этого следует также посмотреть другие книги автора. Я лично несколько раз находил в списке разномастных книг определённых авторов (что были даже в топе литплатформы по жанру) буквально наименования "Как писать с помощью нейросетей". Стоит понимать, что довольно известные авторы (Усачёв, Старобинец) не грешат подобным. Наконец, неплохо также обратить внимание и на комментарии к книгам. Надеюсь, отличать настоящие комментарии от накрученных сегодня умеет большинство. Иначе эту статью следовало бы начать именно с такой практики.
Читать далееПривет, Хабр! Меня зовут Егор, я руководитель Центра компетенций обеспечения качества SM Lab. И именно про наш центр компетенция я и хочу рассказать. Статья пригодится не только тестировщикам, но и разработчикам и аналитикам. Ведь тестирование — это не только поиск багов, но и создание культуры качества.
Обсудим состав и механику работы нашего ЦК, продуктовые команды, а также немного подискутируем на тему тестирования в целом — каким оно будет в будущем, как на него повлияет ИИ и автоматизация.
Читать далееТы строишь бизнес, вкладываешься в рекламу, а потом — БАЦ! — выясняется, что чужая компания пытается зарегистрировать на себя твой бренд в Роспатенте.
И что делать? Тратиться на ребрендинг? Платить миллионные компенсации? К таким ситуациям лучше быть готовым заранее: разбираемся на примере истории бренда «Всё как у зверей».
Я юрист по интеллектуальным правам, патентный поверенный РФ №2151. На примере этого дела покажу, что можно сделать в такой ситуации и как в нее не попасть.
Читать далееПривет, Хабр!
Теоретическую основу кэширования DNS в Linux мы разбирали в первой части, где говорили про работу процесса разрешения имен — от вызова getaddrinfo() до получения IP-адреса. Вторая часть была посвящена различным уровням кэшей самой системы, приложений и языков программирования, контейнеров, прокси - а также их мониторингу и сбросу. Теперь самое время перейти к практике.
Если вы когда-либо запускали подряд команды ping, curl, dig и получали разные IP-адреса, вы не одиноки. Поведение DNS в Linux — не просто вызов getaddrinfo(). Это взаимодействие множества слоёв: от glibc и NSS до NetworkManager, systemd-resolved, dnsmasq и облачных конфигураций. В этой части разберем практические аспекты DNS:
почему одинаковые запросы дают разные IP
как реально контролируется разрешение имен: что вызывает кого и зачем
как проводить диагностику: strace, resolvectl, tcpdump
Читать далееВсем привет! Меня зовут Никита Горячев. Сейчас работаю в качестве Senior Machine Learning Engineer в WB Tech - занимаюсь исследованиями в рекомендациях и LLM. До этого работал в МТС и Сбере, где тоже занимался рекомендашками. Написал книгу про LLMOps и RAG (вот ссылка) И также сейчас пишу книгу про вывод Speech AI моделей в прод (опыт работы в калифорнийском стартапе). В рамках своих исследований нашел интересную статью и хочу ей поделиться!
Читать далееВстречаемся в четверг, 28 августа, в 19:00 (мск) — приходите на митап в Санкт-Петербурге или подключайтесь онлайн.
Эксперты из ЮMoney расскажут, как работают над инфраструктурой:
Привет, Хаброжители! Алгоритмы — это сердце программирования. От их правильного выбора зависит, будет ли программа работать мгновенно или заставит вас ждать вечность. Но как разобраться во всем этом, если вы только в начале пути?
Эта яркая книга делает изучение алгоритмов и структур данных простым и увлекательным. Благодаря полноцветным иллюстрациям, схемам и наглядным примерам сложные концепции становятся понятными даже новичкам.