Habr.com

Ленты новостей Хабр
Все публикации подряд на Хабре
Обновлено: 1 час 8 мин. назад

Интерактивный NPC на Unreal Engine

вс, 04/14/2024 - 11:39

Всем привет.

Я хочу с вами поделиться результатами эксперимента по созданию интерактивного NPC на Unreal Engine 5.

Speech recognition, Text-to-speech, LLM модели, LipSync, MetaHuman и все это без использования сторонних сервисов.

Видео работы и ссылка на демо версию прилагается.

Если вам интересно увидеть результат и обсудить перспективы интерактивных NPC в игровой индустрии - добро пожаловать под кат.

Читать далее

«Фантазии» уносят реальные жизни

вс, 04/14/2024 - 10:29

По моему мнению, многие согласятся, что последние несколько лет стали свидетельством безумия, охватившего основную часть человечества, независимо от его социального статуса: от элит до низов. Можно списать все на то, что человек просто животное, движимое эмоциями и когнитивными искажениями. Однако я убежден, что во многом это можно исправить, если обратить внимание на такое явление, как дуализм восприятия, или, другими словами, иллюзию "внутреннего Я".

Читать далее

Способы обхода GIL для повышения производительности

вс, 04/14/2024 - 10:28

Привет, Хабр!

Global Interpreter Lock в Питоне предотвращающает одновременное выполнение нескольких потоков в одном процессе интерпретатора Python. Т.е даже на многоядерном процессоре многопоточные Python‑приложения будут выполняться только в одном потоке за раз. Это было введено для некой потокобезопасности при работе с объектами Python, упрощая тем самым разработку на уровне интерпретатора.

На первый взгляд, GIL кажется разумным компромиссом для упрощения разработки. Однако, когда есть многоядерные процессоры и появляется необходимость в высокопроизводительных вычисленях GIL серьезно ограничивает возможности масштабирования и параллельную работу.

В этой статье рассмотрим способы обхода GIL и первый способ — использование многопроцессности вместо многопоточности.

Читать далее

Септик и автономная канализация. Часть 2. Проектирование

вс, 04/14/2024 - 02:16

В этой части мы рассмотрим процесс проектирования автономной системы канализации с септиком и сооружениями подземной фильтрации сточных вод. Также продолжим знакомиться с проблемами, возникающими при проектировании и строительстве таких систем. Статья будет полезна всем, кто планирует строить автономную канализацию, равно как и тем, кто уже эксплуатирует таковую.

Читать далее

Tcpdump на разных уровнях

сб, 04/13/2024 - 20:42

Утилита Tcpdump знакома любому сетевому администратору, с ее помощью мы собираем трафик для последующего анализа. Типичная история – собираем траффик, приходящий на нужный интерфейс и затем уже анализируем его Wireshark. Подход практичный, ведь Wireshark Действительно очень мощный и полезный инструмент и о нем мы напишем еще не одну статью, но сегодня речь пойдет про Tcpdump. Не секрет, что утилита Tcpdump не интерпретирует протоколы прикладного уровня, ограничиваясь работой с транспортным уровнем. Однако, в этой статье мы рассмотрим различные варианты использования утилиты Tcpdump для более глубокой фильтрации трафика.

Итак, Tcpdump - утилита UNIX, позволяющая перехватывать и анализировать сетевой трафик, проходящий или приходящий через компьютер, на котором запущена данная программа.

Читать далее

Решение систем линейных уравнений с помощью Python

сб, 04/13/2024 - 20:00

Как-то я наткнулась на статью, где говорилось о SymPy, а именно о возможности решения систем уравнений с ее помощью. Если кратко, то это бесплатная библиотека для символьных вычислений на языке Python. В символьных вычислениях компьютер работает с уравнениями и выражениями как с последовательностью символов, тогда как в численных оперирует приближёнными числовыми значениями.

И поскольку линейные уравнения встречаются не только в математике, а также и в физике, и в ифнформатике, и во многих других областях, мне бы хотелось рассмотреть возможность их решения с Python.

Приятного прочтения)

Читать далее

Библиотеки для реализации алгоритмов сжатия данных в Rust

сб, 04/13/2024 - 19:42

Привет, Хабр!

Сегодня мы рассмотрим хорошие библиотеки для реализации алгоритмов сжатия данных на ЯП Rust. Сжатие данных позволяет уменьшать объемы данных без потери качества или с минимальными потерями. Различают две основные категории методов сжатия: с потерями и без потерь.

Читать далее

Как пытались (пере)программировать мозги, и что из этого получилось? Часть 4: Нуарный коп, оргии и тюремные эксперименты

сб, 04/13/2024 - 19:00

В прошлой части наш антигерой Сидни Готтлиб дорвался-таки до своего большого проекта MKUltra: ему дали много денег и ещё больше полномочий на то, чтобы научиться взламывать человеческое сознание с помощью психоактивных веществ, гипноза и любых иных способов без особого внимания к этике и законности. В ЦРУ были уверены, что КГБ и китайская разведка опережают их на несколько голов, давно отработали способы «промывки мозгов» и научились превращать в коммунистов даже самых твердокаменных либертарианцев. И считали, что для сокращения разрыва хороши все средства: ведь иначе можно однажды проснуться и обнаружить себя колхозником на кукурузных полях Оклахомской ССР! Читать дальше →

Почему FAR — центр моей компьютерной вселенной

сб, 04/13/2024 - 18:14

Какую программу вы обычно запускаете сразу после загрузки операционной системы? Кто-то сразу стартует браузер — поглядеть, кто там сегодня в Интернете (на Хабре) неправ. У многих — это редактор кода: «Я, как утром встал, сразу за дрель!». Возможно, вы сначала привычно открываете мессенджеры и почту — проверить, что там нового и важного.

Я обычно сразу после запуска операционки открываю свой Любимый Файловый Менеджер. Это «переходящее звание» — в разные периоды моего компьютерного прошлого этой чести «удостаивались» разные приложения с классическим двухпанельным интерфейсом. Сначала это был простой, но универсальный Norton Commander. Потом появился DOS Navigator со всяческими классными фичами: CD-плеер, телефонная книга с дозвоном по модему, встроенный табличный редактор и прочие прекрасные и поразительные для тех лет вещи.

Когда Windows прочно вытеснил DOS и все понемногу забыли про файл autoexec.bat, звание моего любимого файлового менеджера плавно перешло к Total Commander. Он продержался довольно долго, но в какой-то момент в мою жизнь буквально ворвался FAR...

Читать далее

[Перевод] Вы должны перестать вручную писать Dockerfile'ы

сб, 04/13/2024 - 16:10

Вы тоже устали вручную заполнять Dockerfile и docker-compose.yaml под каждый новый проект?

Я всегда задумывался, применяю ли я известные best practices, когда пишу конфиг для Docker, и не занесу ли я случайно какие-нибудь уязвимости, вручную заполняя конфиг-файлы.

Что же, теперь мне больше не придется беспокоиться об этом, благодаря добрым людям из Docker, которые недавно реализовали инструмент для этого - docker init .

Интересно, как экономить время и быстро генерировать конфиги, даже если вы не профи в Docker? Прошу под кат.

Читать далее

Обобщённые типы. Часть 1/3. Полиморфные типы высокого рода

сб, 04/13/2024 - 16:08

В предыдущей статье раскрывались некоторые базовые понятия теории типов. В этот раз мы рассмотрим обобщённые типы (generics) – необходимость появления такой абстракции, ключевые особенности и различные сценарии использования в программировании.

Читать первую часть обзора

[Перевод] «Искусство схемотехники»: предисловие к 3 изданию

сб, 04/13/2024 - 16:01

На днях узнал, что вышла русскоязычная версия третьего оригинального издания книги «Искусство схемотехники» (статья на Хабре). Новость заинтриговала. Так как достаточно давно увлекаюсь этой книгой и не понаслышке знаю, что отечественные читатели ее очень ждали. Точнее даже, заждались. Авторы оригинальной книги еще в 2015 году сделали рекламу своему произведению, разместив в свободном доступе, на сайте, посвященному книге, предисловие к третьему изданию. Но это не только реклама, но и достаточно детальное описание книги, а также декларация концепций и идей в ней заложенных. Надеюсь, мой скромный любительский перевод не будет воспринят издательством «Бином» в штыки: целей что-либо нарушать у меня нет. Если что, ко мне можно обратиться на почту. Я всегда рад конструктивному диалогу и считаю, что давно сложились условия, когда отечественная версия оригинальной книги просто обязана превзойти оригинал. Кроме того, реклама от самих авторов-корифеев еще никому не вредила.

Я заказал себе «первый том» от «Бинома». Скоро должна книжечка прийти. Я ее внимательно изучу, и по результатам будет рецензия. Надеюсь, книга оправдает мои ожидания. Даже интересно сравнить свои навыки в переводе с профессионалами. А пока, предлагаю приступить к чтению предисловия.

Читать далее

Театр образования

сб, 04/13/2024 - 15:10

А не пора ли нам ещё раз обсудить, что раньше было лучше, а нынче всё не так, всё не то и вообще молодёжь какая-то не та?

Сегодня, правда, мы ограничим тему образованием. Внутри, как и всегда, пространные рассуждения, вольное изложение исторических фактов и никакой конкретики!

А может лучше сразу в комментарии?

[Перевод] Не бойтесь бросать свои пет-проекты

сб, 04/13/2024 - 15:00


Веб-индустрия переполнена историями о пет-проектах, которые переросли в успешный бизнес. Вот и я нередко увлекаюсь какими-нибудь идеями после основной работы. И хотя это определённо заманчивая перспектива, работа над личным проектом не всегда столь лучезарна – порой они просто не выгорают. Если вы читаете эту статью, то есть вероятность, что вы недавно отказались (или подумываете отказаться) от своего пет-проекта. В таком положении находились многие из нас. Да что тут говорить, заброшенные личные проекты даже стали своего рода мемом в среде разработчиков.

Тем не менее ко мне часто обращаются начинающие программисты за советом, и в последнее время их всё чаще беспокоит то, что у них не получается реализовывать пет-проекты так быстро или так часто, как хотелось бы. И такая тревожность абсолютно понятна. Когда в среде разработки господствует культура сверхактивности и концепция «непрерывной поставки», а на технических собеседованиях кандидатов зачастую оценивают на основе результатов их «внештатного программирования» (имеются в виду хакатоны, клубы программистов и прочее, — прим. пер.), заброшенные пет-проекты перестают казаться чем-то забавным. И мне это не нравится.

Мы слышим столько историй об успешных личных проектах, но что, если более открыто говорить о тех, которые провалились? Многие из нас проводят ретроспективный анализ на работе, но не в отношении пет-проектов. А почему бы нам не пролить свет на всё то время, которое было вложено в начинания, которые так и не ожили? На заброшенное ПО, которое в своё время казалось хорошей идеей. По нашим средам разработки до сих пор скитаются духи захороненных каталогов node_modules.

И здесь я хочу рассказать о своём недавнем пет-проекте, который забросил в тот же день, в который запустил. Читать дальше →

Квантовая случайность против детерминизма и супердетерминизма. Изгоняем демона Лапласа

сб, 04/13/2024 - 14:41

Миром правит детерминизм или случайность? Будущее предопределено или многовариантно? Можно ли в точности предсказать будущее состояние системы по начальным условиям, или её динамика в принципе непредсказуема? Всё происходит согласно необходимости и провидению, или наша судьба создаётся на ходу? Может ли Бог быть генератором случайных чисел? Или он всё-таки не играет в кости? Только не говорите, что вы никогда не задумывались над этими вопросами и не хотели бы узнать, как оно есть на самом деле. Даже проблема свободы воли на их фоне вторична, поскольку целиком зависит от проблемы причинности и детерминизма.

Разумеется, ответы следует искать в квантовой механике, ведь в основе всех физических явлений лежат законы движения и взаимодействия элементарных частиц. На сегодняшний день это самая фундаментальная и самая экспериментально подтверждённая теория из всех, которые у нас есть. У неё сложный математический аппарат, но он работает безотказно и даёт предсказания, сбывающиеся с точностью до тысячных знаков после запятой. Тем не менее, именно квантовая механика даёт понять, что будущее принципиально непредсказуемо, и никакая сила не может заранее предопределить ход событий. Как же так? Нет ли здесь противоречия? Может, учёные сами не знают, детерминированы физические процессы или случайны? Нет, на этот счёт наука даёт чёткий и недвусмысленный ответ. Всё, что вы прочитаете в данной статье – только конкретика, никакой философской неоднозначности.

Читать далее

МРЭМ – 200. Электронный микроскоп родом из СССР. Цифровизация захвата изображения

сб, 04/13/2024 - 14:33

В 2020 году я опубликовал  здесь статью, в которой описал свой советский растровый микроскоп МРЭМ-200  1987 года выпуска. Мне было приятно, что статья вызвала большой интерес и помогла мне познакомиться с  людьми со схожими увлечениями.

Хочу рассказать о дальнейшей судьбе микроскопа и его усовершенствованиях. В статье хочу рассказать о внедрении системы прямого ввода изображения с микроскопа в компьютер и его последующей обработкой программными средствами.

За прошедшие годы микроскоп подвергся нескольким модернизациям, об одной из которых хочется рассказать. В 80-е годы  изображения с  мониторов микроскопа фиксировались для дальнейшего изучения и сохранения с помощью пленочного фотоаппарата. Для этого в комплекте с микроскопом шла специальная тубусная приставка, фиксирующаяся на мониторе. В третьем тысячелетии  мне хотелось, конечно, уже иметь компьютерный захват картинки, как в современных растровых микроскопах. В начале я пошел по самому простому пути: стал использовать цифровой фотоаппарат Canon вместо пленочного  фотоаппарата. Поскольку построение изображения в максимальном разрешении длится 41 секунду, мне пришлось перепрошить  фотоаппарат на такую длительную выдержку. Работа  с микроскопом  сразу стала комфортней, но  я понимал, что  есть еще  к чему стремиться.

В декабре 2022 года в Телеграмме я познакомился  с еще одним владельцем микроскопа МРЭМ-200. В  этой статье я буду, называть этого человека, по его просьбе, «Владелец МРЭМ-200 из Москвы, пожелавший остаться анонимным».  Он  решил проблему прямого компьютерного захвата, использовав  видео с youtube (https://www.youtube.com/watch?v=ruuxn2u3yao) известного  американского популяризатора науки Бена Краснова (Ben Krasnow). «Владелец МРЭМ-200 из Москвы, пожелавший остаться анонимным» творчески переработал информацию Бена Краснова, адаптировал софт под технические особенности  своего микроскопа  и  любезно поделился со мной этим софтом. У меня появилась программа, которая замечательно строила и сохраняла изображение на экране компьютера синхронно с изображением на родных мониторах микроскопа. Между компьютером и микроскопом добавился отдельный модуль согласования, в котором помещался АЦП с выходом USB и операционные усилители с регулировкой коэффициента усиления:

Читать далее

Китайский процессор Loongson 3A6000 уже работает в мини-ПК. Возможности и характеристики модели Morefine M700S

сб, 04/13/2024 - 14:20

Китайцы за последние несколько лет сильно продвинулись в разработке чипов, включая современные процессоры. Один из них — Loongson 3A6000, по производительности он примерно равен Intel Core i3-10100F. Но речь сегодня не столько о чипе, сколько об устройстве, в котором он работает — мини-ПК Morefine M700S. Подробности под катом.
Читать дальше →

BDUI: sapere aude или продолжай писать на коленке

сб, 04/13/2024 - 14:10

Backend Driven UI — относительно новая парадигма создания приложений. Она позволяет сделать продукт индивидуально полезным для каждого пользователя. На личном опыте я убедился, что это очень важно в современном процессе мобильной (и не только) разработки.

В данной статье я постараюсь подсветить ключевые аспекты концепции, оценить её пользу как для процесса разработки, так и для бизнеса. Ближе к концу приведу реальные примеры применения BDUI в рамках наших проектов. Сразу оговорюсь, что фокус внимания будет на in-house потребностях построения корпоративных приложений.

Вперед

Запускаем PrivateGPT на GPU AMD Radeon в Docker

сб, 04/13/2024 - 13:54

PrivateGPT — это проект, который расширяет возможности работы LLM-моделей, позволяя добавлять неограниченное количество личных данных.

31 октября 2023 AMD Radeon предоставила поддержку PyTorch для любительских видеокарт. Полный список видеокарт и ОС можно посмотреть здесь. Описанная инструкция протестирована на AMD Radeon RX 7900 XTX.

Для запуска нам понадобится Ubuntu с установленными: git, make, docker и ROCm.

Читать далее

Сейчас на сайте

Сейчас на сайте 0 пользователей и 1 гость.