Продолжаю описание внутреннего устройства шаблона 3D-игры с ходьбой по ленте Мёбиуса.
В прошлой статье рассмотрена генерация самой ленты Мёбиуса и расчет вектора локальной гравитации. Если есть гравитация, значит, есть прыжки и падения. Их и рассмотрим.
Идём прыгать на ленте Мёбиуса!Если вас всё ещё преследует вопрос о том, что бы почитать в жанрах протокиберпанк, киберпанк и посткиберпанк, гляньте одним глазком в мой библиографический обзор. Почти уверен, там есть книги, которые вы ещё не прочли. Не верите? Проверьте!
Читать далееКажется, кого ни спроси — всякий сегодня мастерит инструмент для код-ревью на основе ИИ. Тем самым все обещают совершить революцию в программировании и управлении кодом. Но мы, попробовав почти все имеющиеся на рынке инструменты код-ревью и написав собственный, пришли к выводу, который невозможно отрицать: ИИ для этой цели просто не годится.
В этом посте мы подробнее рассмотрим, чего реально не хватает при код-ревью с использованием искусственного интеллекта, и почему человек в таком качестве незаменим. Кроме того, этот анализ поможет нам лучше понять, в чём ИИ действительно хорош.
Читать далееДумаю, что многие уже используют ИИ в работе, но пока еще не все. Так что поделюсь опытом. В старой версии проекта я использовал Kendo JS, и при портировании не нашел в Angular компонента, который бы позволял выбрать цвет. Вернее, такие компоненты нашлись, но были слишком сложны как в реализации, так и в использовании. Мне всего лишь нужно было олдскульно выбрать один цвет из нескольких одним кликом, т.к. у меня не графический редактор, а просто быстрый маркер. Не нужны никакие выпадающие окна. При этом все должно быть просто и компактно.
Собственно говоря, примерно за 2–3 часа запросов GPT4o и тестирования был создан Color Picker, который решает мои задачи. Я все же немного расширил его логику, сделав отображение не только в одну строку, но и в несколько строк, а также добавив кое-какую логику управления самой палитрой (добавление новых цветов, контроль переполнения).
Я создавал этот компонент несколько месяцев назад, когда еще только знакомился с Angular, тем не менее он оказался довольно удачным.
Посмотреть можно тут: https://www.npmjs.com/package/palette-picker. Также есть ссылка на репозиторий и Live sample.
Кроме того, ИИ написал и документацию.
Теперь по поводу опыта с Open Source. Честно сказать, мне не очень понятно, в чем мотивация людей. Я не получил ничего. В первый день был резкий рост скачиваний до 800 в день, что, собственно, и мотивировало меня оформить компонент, но скачивания быстро сошли на нет. Сейчас это 1–2 скачивания ежедневно. Я понимаю, что это не тот код, который поменяет мир, но даже если бы было 10 000+ скачиваний, это бы ничего не поменяло для меня. Как-то странно таким самоутверждаться, а материальной выгоды нет.
Читать далееОдной из самых раздражающих проблем, с которыми я сталкивался за последние 25 лет в индустрии, являются нестабильные тесты (flaky tests) — тесты, которые чаще всего проходят, но иногда необъяснимо завершаются ошибкой без явных на то причин. Вы отправляете код в репозиторий, а через двадцать минут получаете уведомление о том, что набор тестов завершился ошибкой. Вам приходится бросать всё, чем вы занимались, чтобы разобраться в причине сбоя. В итоге вы приходите к выводу, что причина явно не в ваших изменениях, и прибегаете к старому как мир трюку — запускаете тест повторно. На этот раз тест проходит успешно, и вы думаете: «Опять нестабильный тест… Ну ладно». И возвращаетесь к более важным задачам.
Читать далееВ приложении пользователи могут не только записаться на приём к врачу, но и получить доступ к своим медицинским записям, результатам анализов и обследований. Простота интерфейса и его интуитивно понятная навигация делают процесс взаимодействия с клиникой максимально удобным и быстрым.
Читать далееЛитература — это атрибут цивилизации. Писатели и поэты — первые наставники людей. Чем дольше развивается цивилизация, тем более обширное должно быть общественное литературное достояние. Поэтому Пушкина и Чехова нужно переводить в Америке. Фолкнера и Уитмена нужно переводить в России. К их работам нужно делать комментарии. Поэтому всех поэтов, философов, писателей, всех создателей величия ума нужно переводить, комментировать, публиковать, печатать, перепечатывать, объяснять, декламировать, распространять. Давать читать книги всем, давать дешево, давать даром.
Так считает и Stiver, создатель онлайн-библиотеки Flibusta (запрещена на территории РФ). Роскомнадзор внес Flibusta в черный список из-за многочисленных заявлений о нарушении авторских прав. Flibusta удается оставаться в сети благодаря многочисленным зеркальным сайтам. В этой онлайн-библиотеке с 2009 года собрано около 620 тысяч книг разных жанров и зарегистрировано более 1,3 миллиона пользователей. Большинство книг на русском, украинском и белорусском языках.
В сентябре 2024 года Stiver опубликовал пост о том, что неизлечимо болен (глиобластома), и что вероятно, электронная библиотека вскоре прекратит свое существование. Для многих Флибуста была одним из главных и уникальных сетевых ресурсов просвещения людей, говорящих и читающих на русском языке. А 22 октября стало известно, что Stiver скончался.
В этой статье рассмотрим современное книжное пиратство и деятельность онлайн-библиотек, ставящих своей целью сохранение книг.
Читать далееВ современном мире веб-разработки API (Application Programming Interface) обеспечивает взаимодействия между различными приложениями и сервисами.
REST API, стали стандартом для создания веб-сервисов благодаря их простоте и гибкости.
Наша сегодняшняя цель - подробно разобраться в процессе создания REST API с использованием Django и Django REST Framework, разбираясь в каждом шаге и его значение. Мы также рассмотрим, почему создание API важно и как это может быть полезно в ваших будущих проектах.
Читать далееКакие новинки для профессионалов выпустила Apple, что интересного внутри Mac mini на M4, чем оказался уникален свежий MacBook Pro, а также что за аксессуары больше не купить в Apple Store. Как iPhone стал безопаснее, а за что в США и Великобритании судятся с Apple. Планы компании по входу в сферу Умного дома, ожидаемые новшества AirTag 2 и другие слухи за неделю. А ещё новости из App Store и другие интересные события – в этом дайджесте, приглашаем к прочтению!
Перейти к новостямПривет, Хабр. Меня зовут Давид Чупреев. Я разработчик мобильных приложений в команде Core iOS ОК.
В работе любого ПО как на iOS, так и на других ОС, важна стабильность и отказоустойчивость. Вместе с тем, полностью исключить сбои и ошибки в работе приложений попросту невозможно. Соответственно, ключевое значение имеет возможность оперативного отлавливания ошибок и их устранения. В этом не обойтись без знания «анатомии» крэшей и понимания принципов работы с ними. В этой статье я расскажу, как устроены крэши в iOS, откуда они берутся и как с ними взаимодействовать.
Читать далееПривет, Хабр. Меня зовут Давид Чупреев. Я разработчик мобильных приложений в команде Core iOS ОК.
В работе любого ПО как на iOS, так и на других ОС, важна стабильность и отказоустойчивость. Вместе с тем, полностью исключить сбои и ошибки в работе приложений попросту невозможно. Соответственно, ключевое значение имеет возможность оперативного отлавливания ошибок и их устранения. В этом не обойтись без знания «анатомии» крэшей и понимания принципов работы с ними. В этой статье я расскажу, как устроены крэши в iOS, откуда они берутся и как с ними взаимодействовать.
Читать далееБольшинство современных веб-приложений работают на основе REST API - методологии, позволяющей разработчикам отделить разработку пользовательского интерфейса (FrontEnd) от разработки внутренней серверной логики (BackEnd), а пользователи получают интерфейс с динамически подгружаемыми данными. В этой серии из трех частей вы создадите REST API с помощью веб-фреймворка Flask.
Это перевод статьи от Philipp Acsany
В этой второй части серии вы узнаете, как:
- Использовать SQL-инструкции в Python
- Настраивать базу данных SQLite для вашего проекта Flask
- Использовать SQLAlchemy для хранения объектов Python в базе данных
- Работать с базой данных через REST API
- Сериализовывать и десериализовывать JSON в объекты Python через Marshmallow
Создание социального продукта – это инструмент для укрепления лояльности и уровня вовлеченности аудитории. Внедрение социальной составляющей стало значимым шагом для привлечения новых пользователей в приложение букмекерской компании «Лига Ставок», формирования спортивного сообщества и культуры интеллектуального спора, где эмоции, адреналин и азарт теперь можно разделить с другими.
Читать далееПаттерны проектирования - проверенные временем решения общих задач в программировании. Они разделяются на три категории:
Читать далееСреда общих данных (СОД), как основополагающая часть технологий информационного моделирования (ТИМ), прочно заняла важное место в цепочке процессов цифровизации строительной отрасли.
Среда общих данных (СОД) - это программно-технический комплекс для совместной работы всех участников проекта с информационными моделями на всех стадиях жизненного цикла.
Такие системы задействуют всех участников проекта и хранят в себе огромный пласт конфиденциальной информации. Для того, чтобы можно было выбрать СОД в соответствии с потребностями организации, они должны отвечать определенным требованиям. Соответствие этим требованиям позволит внедрить СОД и благополучно использовать, повышая эффективность работ над строительными проектами.
В статье раскрываются требования к СОД на основе российских и международных регламентирующих нормативных документов с целью определения однозначных ключевых требований, которым должны соответствовать системы, относящиеся к классу программного обеспечения СОД.
Требования составлены на основе многолетней практики работ с СОД различных вендоров и с учетом положений всех действующих национальных и мировых нормирующих документов, таких как:
Читать далееМой канал - https://t.me/tidy_mng
Принцип MECE (Mutually Exclusive, Collectively Exhaustive) — это один из ключевых подходов, широко применяемых в консалтинге, аналитике и управлении. Этот метод помогает систематизировать данные, разбивая их на независимые категории, которые охватывают все аспекты рассматриваемой проблемы.
В этой статье мы подробно разберем, что такое MECE, его происхождение и развитие, а также способы применения в различных ситуациях. Также обсудим его преимущества, рекомендации по применению и типичные ошибки, которых можно избежать, используя этот подход. Более того, уделим внимание тому, как MECE интегрируется с другими аналитическими методологиями и как этот принцип способствует более глубокому пониманию сложных задач.
Читать далееПосле статьи о книгах для саморазвития gamedev программиста, меня просили больше написать про аишную часть и том, что стоит почитать по этой теме. Для программиста ИИ в игрострое ситуация с книгами схожа, но с несколькими интересными особенностями. Здесь важна не только глубина знаний, сколько наработанность с инструментами, библиотеками и технологиями в целом, а с учетом что новые подходы развиваются с поразительной скоростью, поразительной для игростроя конечно. Казалось только лет 10 назад стали использоваться BT (behavior tree), но и они уже имеют редакцию 4.x (https://www.behaviortree.dev/). Но важно не зацикливаться на затаскивании в проект модных примочек, базовые знания остаются самым важным что можно получить. Это как в притче о удочке — дай человеку рыбу, и он накормит себя сегодня; дай ему удочку, и он будет кормить себя всю жизнь. Удочкой в этом случае выступает знание, как оно работает, а не как можно его использовать.
ИИ до сих пор стоит в игрострое особняком, потому что до сих пор нет стандартов построения игровой логики, каждая из студий решает свои уникальные технические и инженерные задачи, и вынуждена находить баланс между чем-то новым и общей стабильностью игры. Этот путь усеян пробами и ошибками, даже если вы уже прошли по нему в прошлом, и мало кто поможет вам увидеть ошибки заранее, банально потому, что прошел по другому пути, со своими граблями и костылями. Тем хуже когда, именитый разработчик приходит в команду и начинает продавать свои решения и опыт, которые часто не бьются с разработками команды. Но, статья не об этом, а о полезных книгах.
Читать далееВсем привет из г. Киров. С детства я любил гулять по лесу с дедушкой. Повзрослел, и меня увлекли взрослые дела: учеба, деньги, женщины.
Так продолжалось, пока однажды я не встретил Саркосому Шаровидную.
Читать далее