Pull to refresh
-1
0
Рита Ибрагимова @Xao

developer

Send message

Новый тренд на «Сообщества» или что это такое?

Level of difficultyEasy
Reading time3 min
Views1K

Все популярные и крупные компании (X5 Group, Сбер и др.) начинаются интересоваться этим направлением, ведь теперь хочется удержать людей (новое поколение, о котором нужно писать отдельно), а также повышать результаты команды, отдела, компании.

Читать далее
Total votes 12: ↑5.5 and ↓6.5-1
Comments11

Алгоритм деления 2W-разрядных чисел с использованием операций с числами разрядностью W

Level of difficultyMedium
Reading time8 min
Views1.5K

На примере 32-битных целых чисел рассматривается масштабируемый алгоритм деления, использующий числа с двукратно меньшей (16 бит) разрядностью. Для иллюстрации работоспособности алгоритма приведен код тестового приложения на языке С++.

Читать далее
Total votes 12: ↑14.5 and ↓-2.5+17
Comments4

Картографический фотопроект «По местам съёмок фильма «Брат 2»

Level of difficultyEasy
Reading time2 min
Views3.9K

Проект начал делать в 2022 году, параллельно с проектом по первой части фильма. Во второй части многие локации пришлось искать вооружившись Яндекс и Гугл панорамами. Около полугода искал человека, который сделает фото в Чикаго.

С технической точки зрения ничего не поменялось, про нее я рассказал в статье по первой части фильма. Хочу более детально остановиться на поиске и съемке локаций.

Читать далее
Total votes 30: ↑25.5 and ↓4.5+21
Comments8

Разбирая бэклог. Часть 7. Diablo. 5+7 2D и 3D альтернатив или куда меня завело изыскание аналогов известной ARPG серии

Level of difficultyEasy
Reading time17 min
Views2K

Однажды вдоволь наигравшись в данную серию игр и первую "Diablo" (1996) в отдельности, я стал интересоваться на предмет, а на что ещё можно обратить внимание со схожими параметрами? Поиск был ограничен следующими критериями:

*. RPG / ARPG. Либо другой жанр, например Action / Shooter, или rogue-like, но с явно выраженными схожими элементами.

*. Год выпуска не имеет значения.

1. Нет респавна. Во многом по этой причине, а также ввиду ниже обозначенных третьего и четвёртого пунктов, мне некогда больше приглянулась именно первая часть серии.

2. Умеренная продолжительность, без жёсткого, затяжного захода на 100+ часов.

3. Низкий порог вхождения, отсутствие сложных механик.

4. Атмосфера.

Читать далее
Total votes 8: ↑8 and ↓0+8
Comments10

Smart LED: Адресная LED подсветка с управлением через Алису

Level of difficultyMedium
Reading time5 min
Views4.6K

В этой статье мы рассмотрим процесс создания умной светодиодной системы под названием Smart LED. Этот проект основан на микроконтроллере ESP8266 и адресной светодиодной ленте.

Система Smart LED позволит вам не только наслаждаться красивой подсветкой, но и синхронизировать её с музыкой. Вы также сможете управлять системой с помощью голосового ассистента Алиса.

Проект на GitHub

Читать далее
Total votes 6: ↑7 and ↓-1+8
Comments10

Вы думаете рисовать линии это просто?

Level of difficultyMedium
Reading time13 min
Views19K

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

Читать далее
Total votes 56: ↑60 and ↓-4+64
Comments34

Как запустить WebRTC на сервере, или как я пилю вебкам

Level of difficultyMedium
Reading time13 min
Views5.4K

Всем привет!

Хотел логически подвести к этому абзацу в конце предыстории, но побоялся, что не все до туда дочитают, т.к. статья техническая и душная.

ДИСКЛЕЙМЕР: это не бескорыстный акт передачи знаний с моей стороны. Я пытаюсь найти инвестиции для своего проекта и создал чат в тг, где буду постить обновления и какие-то мысли касательно его запуска. Так что если интересно, то подписывайтесь, а еще можете поделиться ссылкой с теми, у кого есть лишние бабки =)

Предыстория

Значит решил я создать сервис для одиноких мужчин, где они могут пообщаться с прекрасными дамами, aka вебкам. Соответственно встал вопрос, как организовать видеосвязь в браузере. Обычно для этого используется WebRTC, эта технология позволяет установить p2p соединение между браузерами для передачи видео, звука и прочих данных в реальном времени с минимальной задержкой. Однако была одна проблема: что делать, если приходит жалоба от пользователя, что ему показали не то (или не показали), что он хотел. Поскольку это p2p соединение напрямую между пользователями, у меня как у владельца сервиса нет возможности провалидировать жалобу. Первое, что пришло в голову это вместо WebRTC использовать MediaRecorder API для записи видео небольшими кусочками и отправки их по вебсокету через сервер, попутно сохраняя. Я набросал прототип и столкнулся с тем, что если получатель пропустил первый пакет (там где есть метаданные), то видео у него не воспроизводится. Пришлось поиском определенного набора байт в первом пакете вычленять эти самые метаданные и сохранять их отдельно для отправки первым сообщением только что подключившемуся получателю, и это даже сработало. Вторая проблема этого решения - это задержка в пару секунд, и это только в локальной сети, что приемлемо для односторонней связи, но для двусторонней уже сомнительно. И третья проблема это то что видео у получателя со временем все больше и больше отстает, и нужно регулярно проматывать видео ближе к концу. Костыльность такого решения меня не устраивала, и я решил использовать WebRTC для связи собеседников и параллельно использовать MediaRecorder для отправки записи от модели к серверу. Некоторое время оно так работало, пока я пилил другие фичи, но неэлегантность этого решения все еще не давала мне покоя, т. к. оно повышает требования к интернет соединению модели.

Читать далее
Total votes 21: ↑18.5 and ↓2.5+16
Comments10

Telegram Apps Center – главный каталог мини-приложений в Telegram с миллионами пользователей

Reading time8 min
Views8.4K

Интервью с руководителем Telegram Apps Center – глобального каталога приложений, который стремится встроиться в приложение Telegram. И кажется, у него есть все шансы это сделать в ближайшие год-два.

Читать далее
Total votes 13: ↑10 and ↓3+7
Comments1

Новые коллекции в Android

Level of difficultyMedium
Reading time10 min
Views3.7K

В 2018 году в androidx появился новый пакет collection, который содержал несколько специфичных структур данных, переписанных на Kotlin, таких как LongSparseArray, SimpleArrayMap и SparseArrayCompat.

На тот период Kotlin только начинал набирать обороты в Android разработке и добавление новых более эффективных коллекций, полностью написанных на нём было одним из шагов по внедрению языка.

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

Читать далее
Total votes 9: ↑8 and ↓1+7
Comments7

Elevator Pitch, он же Elevator Speech: как найти инвестора, партнёра или работу за одну минуту

Reading time3 min
Views877

Почему каждому эксперту, бизнесмену, стартаперу, руководителю и любому другому человеку необходимо иметь короткую самопрезентацию, как правильно ее составить и где уместно использовать — отвечаю в этой короткой, информативной статье.

В комментариях — открытое поле для практики!

Читать далее →
Total votes 8: ↑4.5 and ↓3.5+1
Comments2

Рендерим таблицы с помощью Symbiote.js

Level of difficultyMedium
Reading time7 min
Views1.5K

В этой статье, я хочу показать базовые приемы работы с HTML-таблицами при использовании библиотеки Symbiote.js и раскрыть на практике некоторые ее важные особенности.

Читать далее
Total votes 4: ↑4 and ↓0+4
Comments6

«Искусство схемотехники»: отзыв о русскоязычной версии третьего оригинального издания

Level of difficultyEasy
Reading time8 min
Views13K

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

Читать далее
Total votes 38: ↑43 and ↓-5+48
Comments58

GPU-вычисления в браузере на скорости нативного приложения: марширующие кубы на WebGPU

Reading time13 min
Views3.4K

WebGPU — это мощный GPU-API для веба, поддерживает продвинутые рендеринговые конвейеры и вычислительные конвейеры GPU. WebGPU ключевым образом отличается от WebGL своей поддержкой вычислительных шейдеров и буферов хранения данных. В WebGL такие возможности отсутствуют, а WebGPU, в свою очередь, позволяет целиком выполнять в браузере мощные приложения, требующие вычислений на GPU. Речь может идти о самых разных приложениях, от GPGPU (напр., симуляции, обработка/анализ данных, машинное обучение, т.д.) до конвейеров рендеринга на основе GPU-вычислений — а также о многих других приложениях в этом спектре.

В этой статье мы оценим вычислительную мощность WebGPU, сравнив её с показателями Vulkan. Для этого мы реализуем классический алгоритм «марширующие кубы» (Marching Cubes) для WebGPU. Алгоритм марширующих кубов почти без оговорок относится к чрезвычайно параллельным, в составе этого алгоритма выполняется два глобальных шага редукции, необходимых для синхронизации местоположений рабочих элементов и вывода потоков. Поэтому данное решение — отличный вариант GPU-параллельного алгоритма, который стоит первым делом попробовать на новой платформе. Дело в том, что он достаточно сложен, чтобы API испытал давление сразу по нескольким направлениям сверх элементарных параллельных операций диспетчеризации в ядре. При этом он не столь сложен, чтобы на его реализацию требовалось существенное время, а также он не превращается в узкое место из-за ограничения производительности ЦП.

Читать далее
Total votes 13: ↑13.5 and ↓-0.5+14
Comments3

Большая иерархия в SQL запросе + PostgreSQL

Level of difficultyMedium
Reading time6 min
Views6.2K

Сначала запрос адаптирован для работы в PostgreSQL 15.6.

Затем работа запроса проверена на достаточно объемной иерархии - в качестве источника данных использована структура архива jdk-master.zip из OpenJDK 22

Читать далее
Total votes 12: ↑14.5 and ↓-2.5+17
Comments6

Делаем из битого планшета одноплатник: подключаем Android-устройства к дешевым микроконтроллерам через UART

Level of difficultyEasy
Reading time6 min
Views28K
image

В наше время, из-за санкций одноплатники стали стоить каких-то «конских» денег. Даже б/у RaspberryPi Zero стоит 2-3 тысячи рублей на барахолках, что, мягко скажем, не совсем лояльная цена для «самого дешевого одноплатного компьютера в мире». Конечно, Orange Pi Zero всё ещё можно купить в пределах 1.500-2.000 рублей, но как по мне и эта цена не слишком лояльна за те характеристики, который предлагает такой одноплатник. С другой стороны, Android-планшеты 10-летней давности продаются на барахолках по 100-300 рублей, что выглядит гораздо привлекательнее, причём на некоторые устройства практически без костылей можно установить полноценный дистрибутив Linux! Вероятно, многие читатели скажут мол «автор бомж» и будут правы: ведь в рамках этой статьи, я хочу рассказать о том, как использовать полурабочий древний планшет в качестве полноценного одноплатника путём подключения его к микроконтроллеру и выводу GPIO! Сегодня мы с вами: узнаем, как подключить микроконтроллер к шине UART в планшете и научимся работать с последовательной шиной в Android прямо из Java и нативных программ. Интересна моя концепция антикризисного одноплатника? Тогда добро пожаловать под кат!
Читать дальше →
Total votes 61: ↑68.5 and ↓-7.5+76
Comments56

Мамихлапинатапай

Reading time11 min
Views1.4K

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

– Дорогой, тебе пора расслабиться… – промурлыкала роботесса медовым голоском.

Рука её метнулась к паху Ариса.

– Не сегодня, Элиза! – отшатнулся Арис. – Отстань!

– Ты проявляешь признаки стресса и нестабильного гормонального фона, – ответила служанка.

Арису послышались нотки обиды в её тоне. Откуда, к чёрту, у робота эмоции? Элиза существует для того, чтобы ублажать и удовлетворять любые его потребности. Похоже, он и правда немного не в себе.

– Будь хорошей девочкой, – несколько смягчившись, бросил Арис. – Папа занят важными размышлениями!

Стерильные стены вылизанной Элизой квартиры, белый потолок, 3-D монитор на всю стену и дверь в спортзал нагоняли депрессию. Эротично изогнувшая плечи и бёдра стройная говорящая кукла на перинах, застеленных египетским хлопком, бесила. Пахло апельсиновым ароматизатором воздуха.

Арис выскочил на балкон. Безликая панорама вечернего мегаполиса, кристаллы небоскрёбов с золотыми ячейками – клетками, в которых заточены злые угрюмые люди, не умеющие общаться. Каждый из них обществу себе подобных предпочитал лишённых человеческих недостатков подключенных к глобальной нейросети роботов… И непроходящий образ перед взором: неизвестно откуда взявшееся в победившем пластмассовом мире слово «мамихлапинатапай», начертанное у подъезда многоэтажки краской густого цвета индиго, с  белыми, лимонными и нежно-розовыми блёстками, будто планктон флюоресцирует в пенных океанических волнах в час заката, чего, должно быть, не бывает на свете. В тот день, «погуглив» прямо на месте, Арис узнал, что имеет дело со словом из языка племени яганов, населявших Огненную Землю, означающее «смотреть друг на друга в надежде, чтобы другой человек начал делать то, что обоим нужно, но что никто не желает делать». Слово включено в книгу рекордов Гиннесса, как «наиболее ёмкое». Вряд ли автору граффити требовалось много ума, чтобы узнать о его существовании… Ариса взволновало другое: роботам ни к чему нарушать безупречную геометрию алгоритмов, дерзко вклиниваясь в искусственную гармонию бетонных джунглей. Однако, эта история случилась давно…

Читать далее
Total votes 15: ↑11 and ↓4+7
Comments4

Построение сложных логических элементов на резисторно-транзисторной логике

Level of difficultyMedium
Reading time2 min
Views3.5K

В своей прошлой статье я концептуально показал как устроены основные логические элементы РТЛ. Сегодня на их базе рассмотрим более сложные элементы.

Читать далее
Total votes 12: ↑13 and ↓-1+14
Comments13

Редактор зелий

Level of difficultyEasy
Reading time3 min
Views6K
Принёс вам немного странного! Последний месяц я занимался разработкой конструктора зелий. В результате у вас появился инструмент в котором можно с минимумом усилий за минуту соорудить себе добротную склянку для игры или статьи о магии. ✨✨✨



Cсылка на редактор

Подробности под катом!
Total votes 69: ↑75.5 and ↓-6.5+82
Comments7

Как Uber обслуживает более 40 миллионов чтений в секунду из онлайн-хранилища с помощью встроенного кэша

Level of difficultyMedium
Reading time15 min
Views5.9K

Привет, Хабр! Представляю вам перевод статьи "How Uber Serves Over 40 Million Reads Per Second from Online Storage Using an Integrated Cache" автора Preetham Narayanareddy. Из неё вы узнаете, как в Uber проектировалась система кэширования на основе Redis, с какими сложностями и тонкостями пришлось столкнуться разработчикам, и как в итоге им удалось создать действительно высокопроизводительное решение.

Читать далее
Total votes 6: ↑7 and ↓-1+8
Comments6

Темный лес или Лесной пожар?

Level of difficultyMedium
Reading time9 min
Views8.1K

Несколько лет назад я прочитал «Задачу трех тел» Лю Цысиня, очень достойная научная фантастика. В ней изложена концепция «тёмного леса», с которой я не смог согласится.
Предлагаю вам альтернативную концепцию «Лесной пожар», описывающую как могли бы взаимодействовать между собой цивилизации будущего.

Читать далее
Total votes 22: ↑24.5 and ↓-2.5+27
Comments132
1
23 ...

Information

Rating
Does not participate
Location
Уфа, Башкортостан(Башкирия), Россия
Date of birth
Registered
Activity