Московия и не только
Ir al canal en Telegram
Пишем на хабр. Познавательные посты от одного до пяти раз в неделю Пятница — день мемов.
Mostrar más636
Suscriptores
+124 horas
+37 días
-130 días
Archivo de publicaciones
Агенты в «Матрице», кстати, тоже не задумывались как что-то вредное. Но что получилось — то получилось.
Автор изображения неизвестен.
Почти внезапно посреди недели вышла вторая часть в серии Graveyard Keeper.
На первую часть я потратил суммарно около 75 часов, что достойно для инди-игры. По нескольким вечерам в игре могу сказать, что вторая часть стала лучше. К счастью, впереди целые выходные.
Игру сложно называть уютной из-за своего жанра, но своего любителя она однозначно найдет. Вернее, уже нашла: 400 тыс. копий продано за три дня.
Автор изображения неизвестен.
Кубические проекты
Уже больше года я занимаюсь техническим администрированием игрового сервера Minecraft. Из-за этого я чуть больше погружен в новости, связанные с игрой. Причем иногда эти новости сами находят меня.
В апреле я узнал, что в одном из подразделений Яндекса, «лаборатории Алисы», решили шагнуть в кубический мир с проектом «Последний блок».
Как они сами заявляют, это «проект, с использованием Алисы AI, в рамках которого школьники смогут готовиться к ОГЭ и ЕГЭ в игре Minecraft». Да, это не «ванильная» игра, а набор собственных расширений к оригинальной игре.
Сам я до этого проекта не добрался, а сейчас уже поздно — проект закрыт и даже сайт недоступен. Впрочем, в Архиве есть запись.
Каждый раз интересно наблюдать, как большие и серьёзные компании делают шаг навстречу различным игровым проектам. Но у Яндекса много ресурсов и много разнообразных проектов, поэтому «Последний блок» показался удивительным, но вполне вероятным событием.
И вот вчера я узнал о другой компании, которая подалась в мир Майнкрафта. И это... Т-Банк.
Они тоже отказались от «классического» игрового мира и сделали единственную мини-игру в стиле Tower Defence («башенной защиты»). Тут я не удержался и поиграл сам. Идея забавная и весёлая, хоть и не всё в моей игровой сессии прошло гладко.
Если подумать, то выбор в пользу мини-игр кажется очевидным: больше ресурсов на запуск и меньше ресурсов на поддержание и модерацию запущенного игрового сервера.
В любом случае бы интересно узнать, как коллеги дошли до него и какие сложности встретились на пути. Но, возможно, мы об этом никогда не узнаем. :(
Есть такой мем, что размер современных космических аппаратов зависит ширины лошади. Мол, лошадей запрягали в колесницу, на основе ширины колесницы сделали колею ж/д транспорта, а у ж/д перевозок есть свой габарит, который не позволяет перевозить больше. Поэтому в основе космических технологий лежит ширина абстрактной исторической лошади.
Хотя эта теория кажется правдоподобной, ж/д — не единственный способ перевозки. Крыло любого современного авиалайнера или лопасть ветрогенератора тоже нельзя перевезти по железной дороге. Поэтому их доставляют автомобилями или кораблями.
Аналогично с предпочтительной границей в 80 символов. Один из распространённых форматов перфокарт, «формат IBM», был шириной 80 бит и длиной. Потом ширина 80 «перекочевала» в терминалы. Но с появлением полноценных графических интерфейсов ширина строки — это скорее дань прошлому. Очевидно, что языки программирования, не завязанные на форматирование, могут себе позволить любую ширину строк. JavaScript после минификации и вовсе умещает весь свой код в 1-3 строк.
Автор изображения указан на изображении.
Любой процесс обучения — это набор компромиссов, которые нужно принять. Не каждый совет будет полезен, но знание большего количества точек зрения расширяет кругозор и иногда подкидывает необычные решения.
В конце концов, немало изобретений человека — это переосмысление природных/животных концептов в человеческих материалах. Даже структура современных ИИ подозрительно похожа на структуру мозга.
Автор изображений неизвестен.
Уже какой думаю, что темы для постов можно придумывать из мемов. И хи-хи и что-то новое.
Может, так и стоит сделать...
Автор изображения неизвестен.
Объясняем разницу в матрицах мониторов на котах.
Матрица IPS — это фильтр, который пропускает (или не пропускает) свет от большой лампы. Так что даже чёрный цвет — это слабый свет лампы, просвечивающий сквозь закрытые фильтры.
Матрица OLED — это индивидуальные маленькие светодиоды, которые формируют цвет выставлением яркости каждой из трех цветовых компонент. Таким образом чёрный — это отсутствие света и, как следствие, более высокая контрастность.
Только OLED не может непрерывно показывать статическую картинку, пиксели выгорают. Было бы забавно знать, что OLED-кот с мема более энергичный и активный, а IPS-кот более спокойный и усидчивый.
Автор изображения неизвестен.
Быть ответственным за мемы — это тоже ответственность.
Автор изображения: Kotia Forge
Зал ассемблерного позора
На днях товарищ зашёл с довольно неожиданным вопросом:
Как ты думаешь, какой правильный ответ на вопрос «максимальное время исполнения одной инструкции в современном процессоре»?Вопрос, действительно, оказался с подвохом. Всегда можно ответить уклончиво: «зависит от реализации», что будет абсолютной правдой. Человечество придумало много моделей того, как должен работать вычислитель. Как минимум до сих пор есть архитектуры CISC (Complex Instruction Set Computer) и RISC (Reduced -//-). Первая архитектура, CISC, предлагает тысячи разных команд от простого «ничего не делай» (
NOP) за один такт до инструкций вроде вычисления синуса и косинуса (FSINCOS), которые выполняются сотню тактов. Одна инструкция в CISC может запросить данные из памяти, провести вычисления и положить данные обратно в память.
Архитектура CISC распространена в персональных компьютерах, это в каком-то смысле наследие, когда машинный код писали люди, а люди хотели упростить себе работу, делая больше за меньшее количество кода.
Вторая архитектура, RISC, предлагает иной подход: каждая инструкция делает что-то одно: или работает с памятью, или занимается вычислениями. Разнообразие инструкций меньше, но программы более многословные. Это могло быть минусом, но сейчас с машинными кодом работают в основном компиляторы, а не люди. (Более подробно о различиях CISC и RISC можно почитать в этом переводе.)
Очевидно, что сокращенные команды RISC едва ли смогут выполняться дольше, чем комплексные команды CISC. Но всё равно хочется цифр.
Как я уже говорил, самая простая инструкция, которая есть — это NOP, буквально отсутствие действия. Эта инструкция выполняется один такт, то есть при частоте современного процессора 5 ГГц один такт занимает примерно 0.2 наносекунды.
Вот тут есть Зал ассемблерного позора, в котором автор составил список самого долго выполнения одной инструкции процессором. Первое место заняла инструкция fxrstor64 — чтение памяти устройства на шине PCIe.
Секрет медлительности довольно прост: другие ядра процессора генерируют множество неэффективных обращений и «забивают» очередь. «Замеряемая» инструкция становится в самый конец очереди и вынуждена ждать. В худшем случае получилось, что одна инструкция выполнялась 198 миллиардов тактов, то есть 62 секунды человеческого времени.
Очень специфичная информация. Но этот эксперимент показывает узкие места в архитектуре компьютера, а это может быть полезно для тех, кто готов бороться за каждую микросекунду ускорения своей программы.Сегодня мемный баян, контрастирующий с (не)давними новостями.
В июле платформа с ресурсами для машинного обучения HuggingFace выложила пост, что некий анонимный ИИ-агент взломал их систему и выполнял свой код в их инфраструктуре. Через неделю анонимность была раскрыта: ИИ-агент — это исследовательская модель OpenAI, проходившая тестирование ExploitGym, в котором модели оцениваются в задачах по кибербезопасности. Модель решила, что лучший способ пройти тест — это украсть правильные ответы.
Да, «исследовательские модели» могут быть без подсаженной морали и ограничений этичности. На Хабре была статья «Я заразил 200 нейросетей вирусом. К 20-му поколению они выработали иммунитет — и разучились думать», в которой демонстрировалось, что искусственные ограничения делают ИИ глупее. Но даже так остается вопрос: почему большая языковая модель смогла обойти защиту?
Это новейшие модели настолько сильны, что способны «взломать все секретные системы США за считанные минуты»? Восстание ИИ и порабощение человечества всё ближе?
Или это современные системы пишут спустя рукава, не уделяя время тестированию и достаточному обучению сотрудников информационной безопасности?
Я до сих пор остаюсь скептиком в области вайб-кодинга: это неплохой инструмент, но человек остается главным. Мои коллеги, что познали удобства вайбкодинга, говорят, что нужно знать что ты делаешь и постоянно бдить за ИИ, иначе он будет затирать дичь.
Я вот недавно спросил у ChatGPT 5.6 Sol как бы мне эффективно разобрать XML-файл для автодополнения в текстовом редакторе. И он предложил регулярные выражения. Если что, это очень плохая идея, и это обсуждалось 15 лет назад. Дважды.
Автор изображения неизвестен.
Скоро уже будет тысяча часов, как я играю в Factorio — в оригинальную игру, несколько модов, а теперь в официальное DLC.
В игре нужно строить фабрики, автоматизировать движение науки и выстраивать оборону от местных жуков, которые выступают против научно-технического прогресса. Так случилось, что в оригинальной версии игры практически нет способов задокументировать производственную линию: ни заметок на станках, ни букв из кусков железа.
Спустя некоторый промежуток времени некоторые решения становится неочевидными. Но это интересный момент, который добавляет разнообразия в игре. Игрок сам себе подкидывает загадку.
Однако стоит отбросить перфекционизм: «идеально» может быть только на бумаге.
Уже после бума больших языковых моделей решил пройти Detroit: Become Human. Игра поднимает вопросы самоосознания искусственного интеллекта и показывает разнообразное отношение людей к роботам.
На релизе в 2018 году мир будущего, показанный в игре, был далек от игрока по всем критериям. Гуманоидные роботы существенно отличались от людей, а был ИИ довольно прост. Но сейчас сюжет игры сияет новыми красками. У нас всё ещё нет настолько продвинутых роботов, но уже есть большие языковые модели, которые предоставляют весьма человеческие интерфейсы общения.
Кто-то доверяет своим чат-ботам свои мысли и чувства, а кто-то — бьёт и материт для извлечения максимальной производительности в «вайб-кодинге». Прямо как в игре. Является ли словесное насилие над языковой моделью эквивалентом рукоприкладству в отношении пластикового человекоподобного робота?.. И требует ли это осуждения?
Автор изображения указан на изображении.
Снова возвращаюсь к теме кубических миров.
На прошлой неделе современной реинкарнации Minecraft-сервера «стукнул» целый год. В отличие от старого решения, в котором мир был ограничен радиусом 5к блоков и полностью сгенерирован в своих границах, сейчас радиус в 20 раз больше, а генерация мира происходит при посещении неизведанных областей.
И это хороший подход в условиях постоянного обновления сервера. «Новый контент» из последних версий появляется только при генерации новых регионов. Перед очередным обновлением стало интересно как игроки бродили по миру.
Получилась такая карта. Чёрные области — сгенерированные участки мира (чанки), серые — более крупные структуры данных (регионы) в которых сгенерирован хотя бы один чанк. Сразу видно, что углы мира обладают мощной привлекательностью. :)
Однако игровой мир занимает уже более 100 ГБ и становится сложно обслуживать и «бегло» осматривать мир. Сперва я использовал MCA Selector, а позже обратил внимание на uNmINeD. Эти утилиты позволяют смотреть в структуры данных игры и редактировать мир, что довольно полезно.
Но если говорить о красоте, то есть несколько решений для генерации полноценной изометрической карты мира для просмотра в браузере, такие как DynMap.
Полгода назад карта Верхнего Мира генерировалась больше недели. С одной стороны очень детально и интересно, а с другой — это невероятно долгий и ресурсоёмкий процесс.
Иногда кажется, что «промпт-инжиниринг» — это буквально программирование на естественном языке.
Только вместо фиксированного синтаксиса используется всё многообразие языка. Людям сложно даже на искусственных языках — языках программирования, идеально без ошибок выразить свою мысль, а уж на естественном — тем более.
В ЕГЭ по информатике, кстати, была возможность описывать программы на естественном языке.
Только наши преподаватели говорили не пользоваться этой возможностью — проверяющий сможет довольно вольно трактовать написанное.
А теперь мы используем ИИ, который конвертирует естественный язык в код. И делает вроде бы быстро, но осадочек остаётся. :)
Автор изображения неизвестен.
На работе есть устойчивое выражение «почистить кешью», получившееся из автозамены слова «кэш».
Автор изображения неизвестен.
Слегка запозднилось, чисто по техническим причинам, но наконец-то вышел маленький эксперимент с новой разработкой под старые платформы. Это оказалось на удивление приятно. Даже в гипервизоре и с соотношением сторон экрана 4:3.
А ещё эта статья — маленький юбилей, теперь у меня 💯 статей на Хабре. Хотя на самом деле это сто первая статья — один из моих текстов про некогда популярную ММОРПГ-игру снесли из-за жалобы правообладателя.
https://habr.com/ru/companies/selectel/articles/1051354/
На четыре дня стал временным хранителем чужого кота. Опыт, конечно, интересный, но оставлю вот этот мем.
Кот, завидев своих приехавших хозяев, просто взял и спрятался в самый дальний угол под кроватью.
Мол, кот страдал — пусть и хозяева пострадают доставать кота из укрытия.
Пришлось сыграть умом: хозяева сделали вид, что ушли, и кот добровольно покинул укрытие. Резко-стремительно доступ в укрытие был закрыт, а во входной двери появились ОНИ.
Через час кот уже забыл обиды или простил это расставание и всё у них было хорошо.
Автор изображения: Странная планета.
