История игростроения – захватывающая и многогранная тема, за долгие годы обросшая мифами, стереотипами и интересными историями. Конец ХХ века, эпоха расцвета игр и становления многих жанров, особенно богат на такие вещи.
В этой статье мы познакомимся с некоторыми интересными образцами технологий, применявшихся в геймдеве с 1980-х до конца 1990-х годов. И своими глазами увидим, какими тернистыми путями шли разработчики к тому, чтобы воплотить свои мечты.
Читать далееВ современных мобильных операционных системах нам по умолчанию недоступны права суперпользователя, а более-менее привилегированный доступ для приложений получить просто невозможно без использования уязвимостей. Поэтому невозможно сделать единое приложение, которое будет защищать все мобильное устройство из пользовательского пространства. Остается единственный выход — встраивать защиту прямо в защищаемое приложение.
Меня зовут Николай Анисеня, и я продолжаю рассказывать о безопасности мобильных приложений. В предыдущей статье мы подробно поговорили о состоянии защищенности приложений и девайсов на настоящий момент. Если коротко — приятных новостей мало. Но выход есть. В этой статье расскажу о перспективах защиты.
Читать далееХорошо жить в понятном, ясно наблюдаемом и некоторой заметной степени управляемом мире. Видишь камень, он так и остаётся камнем, пока ты его видишь. Ты можешь взять его и кинуть в цель. При некотором навыке бросания камней в цель ты даже можешь попасть в эту цель.
Но стоит только коснуться мира элементарных частиц, то оказывается, что они вовсе не как камни. Конечно, каждая из них, если стабильна, остаётся собой, но только в виде возможности где-то её обнаружить летящей куда-то. Причём чем в более тесные рамки ты эту возможность зажимаешь, тем более она непредсказуемой становится в смысле характера полёта.
Совсем мутно выглядит сам полёт. Вот есть у нас фотон в виде возможности его обнаружить в какой-то одной точке на некотором количестве достаточно протяжённых гребней волны (эту волну можно назвать множеством виртуальных ипостасей нашего фотона). Если на пути волны поставить препятствие с двумя щелями, то волна этим препятствием задержится или отразится всей его поверхностью, кроме щелей. Возможность обнаружить фотон просочится за препятствие в виде двух почти цилиндрических волн, по одной от каждой щели. Эти волны будут где-то складываться, увеличивая вероятность обнаружить фотон, где-то они будут гасить друг друга, исключая возможность его обнаружить. Это называется интерференцией волн.
Каждому ясно, что фотон может быть поглощён только целиком, например, лишь каким-то одним-единственным атомом, и он никогда не делится между двумя или бо́льшим количеством не связанных друг с другом атомов. Если он один и поскольку он маленький (меньше, чем щель, иначе не пролетит!), а щелей две, и между ними помещается очень много атомов, то значит, что он может пролететь только через одну щель! Но стоит только поставить у одной из щелей какой-нибудь датчик пролёта фотона, пусть и не поглощающий его ("малоинвазивный"), и этот датчик НЕ зарегистрирует пролёта фотона через щель, у которой он установлен, как возможность обнаружить фотон за препятствием изменит характер пространственного распределения. Например, сможет обнаружиться там, где до того обнаружен быть не мог. И всё потому, что в этом случае:
- виртуальный пролёт через контролируемую щель не состоялся, и цилиндрическая волна возможностей обнаружить фотон за эту щель не просочилась;
- поскольку фотон, в конце концов, каким-то атомом был пойман, то это значит, что стал достоверным его пролёт через другую щель, и она оказалась единственным источником цилиндрической волны вероятностей обнаружить фотон за препятствием
– то есть интерференция прекратилась.
Перевели и дополнили статью Марины Уисс, applied scientist (дата-сайентист со специализацией в прикладной статистике) в Twitch. Когда-то Марина перешла в IT из не связанной с технологиями сферы деятельности, а потом помогла с этим переходом многим людям без IT-бэкграунда.
В этой статье она делится советами для дата-аналитиков, которым хотелось бы заниматься data science. А мы добавили мнение экспертов и рекомендации, актуальные для российских образовательных реалий.
Читать далееПривет, Хабр! Меня зовут Лера, я технический писатель в Авито. Делюсь с вами разбором полезной книги — «Радикальная прямота» Ким Скотт.
Если вы менеджер, тимлид, архитектор или просто хотите стать лучше в общении с коллегами — этот обзор сэкономит ваше время и даст выжимку самых сильных идей книги. Ведь управлять людьми — это не только про задачи и сроки, но и про умение быть честным, поддерживающим и человечным одновременно.
В статье разбираемся, в чём суть философии радикальной прямоты, какие ошибки совершают руководители и как построить культуру искренней обратной связи в команде.
Читать далееСначала я хотел написать обычную научно-популярную статью об оптических нейропроцессорах, которые являются самой передовой технологией на пути создания AGI.
Но затем решил сделать это в несколько необычной форме, отступив от канонов научно-популярных статей и сместив акцент на то, как эта технология кардинально изменит нашу жизнь.
Ведь технических статей и так много.
А вот осмысление грядущих изменений ещё более интересно.
Я опишу обычный день программиста не очень далёкого будущего, насыщенного оптическими нейропроцессорами, которые встроены буквально во всё, что нас окружает, и даже в нас самих.
Будущее здесьПосле ухода известных вендоров у многих возникла задача импортозамещения и миграции между платформами контейнеризации. В этой статье разберём опыт решения этой задачи и как свести к минимуму зависимости приложений от конкретной версии и/или реализации Kubernetes. Рассмотрим проблемы, обсудим возможные пути и конкретные технологии для их решения и, главное, посмотрим, как всё это работает.
Статья написана по мотивам выступления Максима Чудновского, лидера по продукту Platform V Synapse Service Mesh СберТех на Highload++, где он рассматривал кейс миграции с OpenShift на Platform V DropApp, но предложенные подходы могут быть использованы и для миграции на другие российские Kubernetes-платформы: Deckhouse, Штурвал, Боцман и так далее.
Помимо вариантов использования механизмов ETL, трансляции шаблонов в релизных конвейерах, рассматривается подход применения менеджера политик Kubelatte для того, чтобы мигрировать с OpenShift без единой правки кода.
Читать далееКак мы в PIX BI приручили таблицы, чтобы выжимать максимум из данных
Когда мы думаем о таблицах, сразу приходит на ум Excel — этот старший брат всех электронных таблиц, который, несмотря на свои достоинства, часто становится… Но – давайте не будем подсвечивать ничьи недостатки, а лучше поговорим о достоинствах! Таблицы смело можно назвать визуализацией данных еще со времен древних цивилизаций. Их использовали для учета всего — от ракушек на базаре до золотых статуй в храмах. Современные аналитики хорошо знают истинную ценность таблиц и доверяют им.
Когда мы накапливаем достаточно опыта работы с таблицами в Excel, когда исследователь, сидящий в каждом аналитике, топает ногами и требует расширения его контроля над данными, — вот тут и начинается наше путешествие в мир BI-систем.
Да, работать с таблицами в self-service системах, таких как PIX BI, удобнее, чем в Excel. Почему? Во-первых, это просто. Все элементы интерфейса интуитивно понятны. Не нужно фантазировать с формулами или изображать из себя мега-специалиста, чтобы увидеть, как растут ваши продажи. Все происходит наглядно, быстро и без лишних нервов.
Во-вторых, BI-системы предлагают интерактивность: можно легко настраивать фильтры, сортировки и даже комбинировать данные без риска испортить всю таблицу. Вся информация собирается в одном месте, как старые, дорогие сердцу игрушки — с уютом и любовью!
Итак, в этой статье я подробнее разберу, как работать с таблицами в BI и какие фишки можно использовать. Конечно, на примере продукта, который мы создаем – PIX BI. Открываем двери нового, яркого мира аналитики!
Читать далееЧто происходит, когда GitHub берётся за собственную безопасность? Они пишут код для защиты кода — и активно используют для этого CodeQL. В этой статье команда Product Security Engineering рассказывает, как настроить масштабный автоматический анализ уязвимостей, зачем создавать свои пакеты запросов и как с помощью CodeQL находить ошибки, которые невозможно поймать обычным поиском по коду.
Читать далееВ предыдущих статьях,(1, 2, 3) цикла, посвященного сбору событий в ОС Windows и Linux, мы рассмотрели, какие типы источников событий важны для мониторинга с точки зрения обеспечения информационной безопасности, а также каким образом осуществляется сбор и отправка соответствующий событий в системы мониторинга, в т.ч. был рассмотрен сбор событий с помощью агентов.
Читать далееСтатья подготовлена при экспертной поддержке Сергея Михеева — руководителя отдела геймдизайна в AppFox.
Большинство игр строятся по знакомому принципу: разработчики задают правила, прописывают сценарии и заранее расставляют все события. Игроку остаётся выбирать из доступных вариантов, но полностью выйти за рамки чужой постановки невозможно.
Сегодня индустрия стоит на пороге новой эры. Представьте: мир строится прямо под твоими ногами. Твои решения запускают уникальные события, NPC запоминает каждое слово, а квесты генерируются под твой стиль игры — в реальном времени.
Пока что это больше амбициозная мечта, чем повседневная реальность. Но технологии уже дают первые признаки того, каким будет гейминг будущего — с real-time генерацией миров и событий.
Читать далееВ прошлых частях мы подключились к Godot, обсудили адаптацию к API и разобрались с устройством тела функции. Дальше в планах было перейти к входным и выходным данным, от них к общей архитектуре и далее снова к особенностям API. Если бы я отстрелялся быстрее, то так бы и было, но я возился слишком долго (об этом чуть ниже), из-за чего до моей телеги успел доползти читатель с типовым набором набивших оскомину вопросов. Допускаю, что я собрал всю коллекцию практикующих читателей, но мне хочется верить, что где-то прячется «молчаливое большинство» с аналогичными проблемами. Поэтому я решил передвинуть некоторые рассуждения из конца цикла в середину.
Это задержит кульминацию, но не критично, так как финальные части цикла я планировал запостить без длительных пауз. Поэтому эта глава пролежит в ожидании до тех пор, пока не будет готов черновик всего цикла. Если этот текст появился на Хабре, то остальные главы уже на подходе.
Читать далееВместе с экспертом по работе с данными рассказываем об удобном инструменте, который помогает управлять данными и организовывать их взаимодействие между собой.
Читать далее26 апреля модераторы сообщества /r/changemyview на Reddit объявили, что учёные Цюрихского университета четыре месяца тайно публиковали сгенерированные ИИ комментарии. Этичность эксперимента вызвала споры, хотя сами исследователи считают его допустимым. Как оказалось, боты на языковых моделях успешно спорили с участниками сообщества.
Читать далееTarantool Proxy — «умный посредник», который делает работу с кластером Tarantool надежнее, быстрее и проще, беря на себя рутинные задачи вроде балансировки и безопасности. Но изначально Tarantool Proxy был написан на Lua, из-за чего для получения всех профитов от работы с ним нужна была специфическая экспертиза и готовность мириться с некоторыми сопутствующими издержками, что подходило не всем. Поэтому мы решили оптимизировать работу с Tarantool и использовали для этого толстый клиент на Go.
Меня зовут Максим Коновалов, я архитектор Tarantool в VK Tech. В этой статье я расскажу, зачем и как мы уходили от Lua и что получили в итоге.
ПодробнееНикто не делает пасту так, как итальянцы, — это может подтвердить каждый, кто пробовал настоящую пасту «качо э пепе». Это простое блюдо: только макароны тоннарелли, твёрдый овечий сыр пекорино и чёрный перец. Но простота эта обманчива. Качо э пепе («сыр и перец») чрезвычайно трудно приготовить правильно, потому что соус легко образует неаппетитные комки с текстурой, скорее напоминающей тягучую моцареллу, вместо гладкой текстуры со сливочным вкусом.
Команда итальянских физиков пришла на помощь, разработав безошибочный рецепт, основанный на их многочисленных научных экспериментах, говорится в новой статье, опубликованной в журнале Physics of Fluids. Хитрость заключается в использовании кукурузного крахмала для приготовления соуса из сыра и перца вместо того, чтобы полагаться на крахмал, который выделяется в кипящую воду при варке макарон.
Читать далееЭто статья пентестера 0xold, который 8 месяцев занимался поиском уязвимостей для bug bounty и решил поделиться своим опытом и наблюдениями. В статье рассказывается о нескольких уязвимостях, которые были обнаружены с помощью инъекции нулевого байта. В целях конфиденциальности все проверяемые сайты будут обозначаться в статье как company.com.
Читать далее