«Каждый из нас лишь выиграет, создавая время от времени «игрушечные» программы с заданными искусственными ограничениями, заставляющими нас до предела напрягать свои способности. Искусство решения мини задач на пределе своих возможностей оттачивает наше умение для реальных задач»
Дональд Кнут (с)
Как известно, на машине Тьюринга (далее МТ) запрограммировать можно всё, что мы вообще считаем программируемым, но в реальности программы на МТ настолько громоздкие, что МТ редко используется даже в академических примерах. И тем не менее в некоторых отдельных случаях с помощью МТ получается написать небольшую программу, на КДПВ изображена программа из 5 состояний на алфавите из 3 символом. Если вы изучали программирование, то задачу, которую решает эта программа, вы скорее всего встречали. Если я сумел вас заинтересовать, то приглашаю в небольшое приключение по реверс инженирингу МТ.
Материал статьи предоставлен Владимиром Пинаевым
Читать далееОбычно нейросети нужно тренировать на мощном железе, сконцентрированном в одном датацентре. Результат такой тренировки попадает в руки той бигтех-корпорации, которой по карману иметь свои датацентры и самостоятельно тренировать модели за бешеные миллионы баксов. Есть ли другой путь?
Встречайте INTELLECT-2 — первую параметрическую модель размером 32B, обученную с помощью асинхронного обучения с подкреплением (RL) на динамическом, однородном рое вычислительных узлов. Доступ к узлам изолирован и не требует дополнительных привилегий — теоретически, это могут быть какие-то компьютеры волонтёров в интернете.
Инфра под это, мягко говоря, нестандартная. Разработчикам пришлось написать несколько компонентов с нуля, и вот что у них получилось...
И что получилось?Статей по теме, в том числе с примерами «потенциально плохого» кода, написано довольно много — в том числе и на Хабре. Мы в beeline cloud решили посмотреть, что на этот счет говорят научные работы и подтверждают ли они актуальность проблемы.
Читать далееДавайте честно: совместный доступ к документам — одна из главных «болей» для всех, кто хоть как-то связан с базами данных. Вроде бы оба пользователя могут работать с файлом, но есть один нюанс: например, количество предоставленных доступов может быть больше, чем их есть на самом деле. Или у документа и вовсе появляется несколько владельцев. Для всего этого требуется решение – и мы его нашли!
Меня зовут Владимир Ревякин, я старший инженер-программист компании «МойОфис», и вместе с QA-инженером Анной Рукавицыной мы подготовили этот материал, чтобы поделиться опытом реализации функции шаринга данных через графовую базу ArangoDB в рамках разработки платформы «Документы Онлайн». Если коротко — это продукт для совместной работы и хранения документов в рамках единой мультипродуктовой экосистемы.
В российских источниках не так много полезной информации по ArangoDB, и наша задача — исправить это недоразумение. Разберем главные нюансы работы с этой системой БД в разработке и тестировании, вспомним ее плюсы, минусы и потенциальные баги. Текст будет полезен как инженерам любых грейдов, которые связаны с работой над базами данных (сил вам...), так и классическим разработчикам продуктов.
Поехали!В этой статье мы собрали краткие пояснения базовых терминов, связанных с QA. Это неплохой справочник для начинающего тестировщика, который только постигает основы тестирования.
Читать далее24 августа 1995 года вышла Windows 95 — операционная система, которая должна была стать одним из лидеров в домашнем и SOHO-сегменте. Она предлагала пользователям удобный графический интерфейс, поддержку многозадачности и функцию Plug&Play. Правда, работало это далеко не идеально: в народе технология получила ироничное прозвище Plug&Pray («подключи и молись»). Зато с архитектурной точки зрения это был серьезный шаг вперед — переход от 16-битных к 32-битным приложениям.
Как это часто бывает, к моменту релиза далеко не все запланированные функции были готовы. Разработчики стояли перед выбором: внедрить недоработанные фичи и рисковать стабильностью или отложить их на потом. В итоге дополнительные возможности решили выделить в отдельный коммерческий продукт. Так появилась первая версия Windows 95 Plus! — своеобразное дополнение к основной системе. О нем сегодня и расскажу.
Читать далееПривет! Меня зовут Наталия Вареник, я DS-инженер в Авито, занимаюсь моделями распознавания изображений. Расскажу про один из наших проектов — пайплайн для распознавания номеров с фотографии свидетельства транспортного средства (СТС). В статье описала особенности задачи и рассказала, как мы решали её с помощью декомпозиции.
Материал будет полезен начинающим и мидл-DS-инженерам, которые хотят узнать больше про декомпозицию задачи на этапах разметки и построения моделей.
А еще материал стоит прочитать тем, кто работает с доменами, где нужно иметь дело с задачами распознавания информации с документов — наш подход прекрасно переносится на другие категории. В целом рекомендую статью всем, кто интересуется компьютерным зрением и его применимостью в разных сферах.
Читать далееЯ уже несколько лет готовлю задачи для республиканской и районных олипиад по информатике у себя в стране. Конечно, сложно придумать красивую и оригинальную задачу. Но этот процесс творчесский и приятный. Другое дело - писать тесты для задачи. Это работа нудная и тяжелая. Впрочем, в некоторых случаях, когда проверяются краевые условия, есть немного творчества. Однако, в ряде случаев тесты необходимо просто сгенерировать в соответствии с некоторыми условиями. Вашему вниманию представляется генератор тестов, то есть входных данных, для конкурсных задач по программированию.
Читать далееВ мире разработки бизнес-приложений, особенно построенных по принципам Domain-Driven Design (DDD), важным элементом архитектуры является обработка ошибок. Неправильно реализованная стратегия может привести к логическому хаосу и плохому пользовательскому опыту. Представьте, если ошибка базы данных попадёт напрямую в UI — это не только некрасиво, но и опасно.
Слоистая архитектура предполагает чёткое разделение ответственности:
Читать далееЭта история началась с шутки на офисной кухне 10 декабря, но, как водится, у каждой приличной шутки, она вдруг стала интересной для воплощения, а в конце переросла в не самую технически простую реализацию с хождением по многочисленным граблям.
А началось всё просто: пока все вокруг спорят как настраивать железо и тюнить операционные системы дабы выжать лишних TPS, мы решили проверить как отреагирует движок PostgreSQL если загрузить в него действительно большой объём данных. Например, давайте сделаем базу размером один петабайт и посмотрим как он это переживёт.
На дворе было 10 декабря, руководство поставило задачу сдать отчёт 20 января, до нового года оставалось меньше месяца, а в руках появился знакомый всем инженерам зуд.
Читать далееВ середине апреля в МИЭТ прошел четвертый SoC Design Challenge. Студенты из разных уголков России и Беларуси штурмовали задачи по четырем трекам: топологическое и RTL-проектирование, UVM-верификация и системная верификация SoC. Некоторые треки мы разделили на уровни Basic и Basic+, а предварительно провели для участников цикл лекций для погружения в специфику работы. В статье мы разберем задачи хакатона YADRO и МИЭТ, а также расскажем о некоторых командах.
Читать далееЧтобы сделать вызовы REST API проще и декларативнее, Spring Boot предлагает встроенную интеграцию с Feign‑клиентами. Feign представляет собой HTTP‑клиент, который позволяет разработчикам определять REST‑эндпоинты с помощью интерфейсов Java. Вместо того чтобы писать дублирующийся код для обработки HTTP‑запросов, мы можем определять эндпоинты и их поведение в наглядной и лаконичной форме.
В этой статье мы подробно рассмотрим технические аспекты работы Feign‑клиентов в Spring Boot. Вы узнаете, как их настраивать, как под капотом обрабатываются запросы, ответы и ошибки.
Читать далееЯ геймдизайнер-генералист в небольшой студии, которая разрабатывает казуальные и гибрид-казуальные игры. Уже почти бывший — меня сокращают. Я работал чуть больше двух лет, попал под волну увольнений, и сейчас расскажу, как это вообще происходит.
Читать далееПривет, меня зовут Максим Гуляев, я продуктовый менеджер в команде ML Space Notebooks в Cloud.ru. Раньше я был техлидом этой команды, поэтому глубоко понимаю всю внутреннюю кухню.
В статье расскажу, какие ноутбуки мы используем, зачем они нужны и как сделать себе такие же. Упомяну, почему нам потребовалось вносить изменения в привычные ноутбуки на базе JupyterLab. Затем объясню, что нужно, чтобы прийти к крутым образам. И напоследок поделюсь нашей новой архитектурой и методом ее создания.
Читать дальшеС момента выпуска ChatGPT в конце 2022 года одними из самых активных его пользователей стали ученики и студенты. Когда стремительный рост пользовательской базы в конце весны 2023 года замедлился, это ненадолго показалось признаком близкого сдувания пузыря ИИ, но в сентябре рост продолжился; причиной падения оказались банальные летние каникулы. Хоть другие виды организаций испытывали трудности с применением поразительно мощного и на удивление некомпетентного инструмента, для учащихся его полезность в написании изложения по «Гамлету» на полторы тысячи знаков стала очевидной сразу. Этим вызваны и нынешние рекламные кампании OpenAI и других разработчиков ИИ с предложениями скидок студентам.
Каждый год примерно 15 миллионов студентов в США пишут статьи и экзамены, состоящие из миллиардов слов. Хотя результатом каждого курса становятся студенческие работы — статьи, экзамены, исследовательские проекты и так далее — продуктом курса остаётся нарабатываемый студентами опыт. «Результаты обучения возникают вследствие действий и мыслей студента и только в результате того, что делает и думает студент», — писал великий теоретик образования Герберт Саймон. Само задание — это макгаффин, скоропортящийся товар с экономической ценностью, равной примерно нулю долларов. Оно ценно только как способ принудить студента трудиться и думать.
Полезность письменных заданий зависит от двух допущений: во-первых, чтобы написать о чём-то, студенту нужно понять тему и упорядочить свои мысли. Во-вторых, оценивание письменных работ студентов, по сути, означает оценку их труда и мыслительных усилий. К концу 2022 года логика этих допущений начала давать сбой. Труда по написанию и получаемого при этом опыта можно избежать, просто введя промпт; это значит, что теперь оценивание письменных работ может быть не связано с оценкой того, что научился осознавать или выражать студент.
Читать далееПочему в 2025 году многие компании возвращаются к технологиям середины прошлого века, выкупая радиовышки по всему миру? И как связаны скорость света, радиоволны и миллиарды долларов в современных финансах?
Читать далееПросто и понятно показываю структуру рекламных постов в Телеграм. Без всяких AIDA и PAD. А заодно расскажу, на чём сделал свою карьеру легендарный и очень знаменитый Андрей Молоточкин.
Читать далееРаботая DevOps-инженером, я не раз сталкивался с необходимостью тонко управлять поведением подов в Kubernetes. Эти минимальные единицы развёртывания — на первый взгляд, простые объекты — на самом деле являются ключевым элементом всей архитектуры. Они создаются, масштабируются, перезапускаются и удаляются в ответ на изменения состояния кластера и заданные политики.
Однако особенно важно понимать, что завершение работы пода — это очень нетривиальный процесс. Это не просто «удаление контейнера», а целая процедура, включающая в себя механизмы graceful shutdown, взаимодействие с контроллерами, корректную работу с сервисами и многое другое.
В этой статье я подробно расскажу, как устроен процесс завершения работы пода в Kubernetes, что происходит «под капотом», какие подводные камни могут возникнуть и как обеспечить корректное поведение приложений при завершении их работы.
Читать далее