Как стать автором
Обновить
0
@OriginaLread⁠-⁠only

Пользователь

Отправить сообщение

Сетевой жесткий диск с помощью SSHFS и Raspberry Pi

Время на прочтение11 мин
Количество просмотров28K


Всем привет!

Хочу поделиться с вами моим опытом создания сетевого жесткого диска на Raspberry Pi. Моя статья отлично подойдет тем, кто использует линукс в качестве основной ОС, т.к. тут я активно использую SSHFS.

Всех заинтересовавшихся прошу под кат.
Читать дальше →
Всего голосов 9: ↑2 и ↓7-5
Комментарии9

Что такое огонь, и почему он жжёт

Время на прочтение10 мин
Количество просмотров90K
image

Недавно я разжигал на пляже огонь и понял, что я ничего не знаю про огонь и про то, как он работает. К примеру – что определяет его цвет? Поэтому я изучил этот вопрос, и вот что я узнал.

Огонь


Огонь – устойчивая цепная реакция, включающая горение, которое представляет собой экзотермическую реакцию, в которой окислитель, обычно кислород, окисляет горючее, обычно углерод, в результате чего возникают продукты сгорания, такие как диоксид углерода, вода, тепло и свет. Типичный пример – горение метана:

CH4 + 2 O2 → CO2 + 2 H2O

Тепло, возникающее при горении, может использоваться для питания самого горения, и в случае, когда этого достаточно и дополнительной энергии для поддержания горения не требуется, возникает огонь. Чтобы остановить огонь, можно удалить горючее (отключить горелку на плите), окислитель (накрыть огонь специальным материалом), тепло (сбрызнуть огонь водой) или саму реакцию.

Горение, в некотором смысле, противоположно фотосинтезу, эндотермической реакции, в которую вступают свет, вода и диоксид углерода, в результате чего возникает углерод.
Читать дальше →
Всего голосов 57: ↑40 и ↓17+23
Комментарии60

Тренировка кислотного аккумулятора кое-как и своими руками

Время на прочтение4 мин
Количество просмотров68K
Печаль. Сдох аккумулятор, незаслуженно забытый зимой в гараже. Я его вынул из мотоцикла, то ли сигнализация сожрала всё, то ли не зарядился в прошлые покатушки. Напряжометр показывал 9В, что есть криминал.

Я принёс батарею домой, отогрел, подключил к заряднику. Зарядник через полчаса показал ОК. Врал. Ничего там не ок. Лампочка ближнего света горела примерно 10 минут и потом быстро перешла в состояние «слабо грею воздух». Аккумулятор 6Ач, лампочка 55Вт.

Не покупать же новый аккумулятор? Зима, время есть. Есть ардуина даже и коробка всяких чипсов из Китая. Зря пылятся там что ли?

image

В далёкой советской армии 30 лет назад я проходил курс ухода за аккумуляторами. Основное отличие его от инструкций 21 века было таким: батарея должна проходить серию циклов заряда и разряда. Без этого, сколько её в заряднике не держи, какой бы он ни был умный, она сдохнет.
Читать дальше →
Всего голосов 48: ↑46 и ↓2+44
Комментарии56

Сохранение и загрузка игры в Unreal Engine

Время на прочтение2 мин
Количество просмотров23K


Здравствуйте, меня зовут Дмитрий. Я занимаюсь созданием компьютерных игр на Unreal Engine в качестве хобби. Сегодня я расскажу как сохранить игру на диск а потом загрузить её с диска.
Читать дальше →
Всего голосов 25: ↑20 и ↓5+15
Комментарии4

BLE под микроскопом

Время на прочтение6 мин
Количество просмотров96K
image

BLE под микроскопом. Часть 1

часть 2, часть 3
В мире существует большое разнообразие способов передачи информации «по воздуху». В последнее время всё большую популярность обретает формат BLE. Сегодня мы рассмотрим особенности этого протокола и поговорим о том, почему же он так востребован в современном мире. Так же мы рассмотрим средства разработки и особенности работы вспомогательных приложений на windows, android от фирмы Nordic.
Читать дальше →
Всего голосов 32: ↑32 и ↓0+32
Комментарии35

Библиотека vk для работы с VK API на Python

Время на прочтение4 мин
Количество просмотров212K
image
Привет, Хабр! Данная статья предназначена для тех, кто хочет разобраться с основами VK API на Python, так как статей по этому поводу нет (на Хабре есть одна статья, но она уже не совсем актуальна, так как некоторые методы не работают), а на других ресурсах мне удалось найти только вопросы пользователей, но никаких гайдов и прочего.

Для работы с VK API в Python есть две популярные библиотеки: vk и vk_api. Какая из библиотек лучше я судить не возьмусь, но скажу одно: у vk документация слишком мала (поэтому разбирался практически методом тыка) и на английском языке, а у vk_api документация более развернута (поэтому писать о данной библиотеке смысла не вижу) и на русском. Для меня не главное на каком языке документация, но для некоторых пользователей это играет большое значение при выборе.

Как вы уже поняли, в данной статье рассматривается работа с библиотекой vk.
Читать дальше →
Всего голосов 30: ↑21 и ↓9+12
Комментарии23

Эффективный расчёт области видимости и линии взгляда в играх

Время на прочтение16 мин
Количество просмотров37K
image

В стратегических играх обычно требуется знать область видимости NPC, чтобы игрок мог продумывать стратегию и делать следующий ход. Мы рассмотрим математику и реализацию рациональной модели, не просаживающей скорость игры при большом количестве NPC на карте. Если вы хотите увидеть готовое интерактивное демо модели, перейдите сюда и играйте прямо в браузере! Вот скриншот демонстрации:

image

Имея параметры видимости наблюдателя (направление взгляда, расстояние видимости и угол поля зрения), нам нужно найти видимую для него область, т.е. определить область видимости (field of view, FoV). Если препятствия отсутствуют, это будет сектор круга, состоящий из двух граней (радиусов) и соединяющей их дуги (см. Рис. 1). Кроме того, имея заданную точку мира, мы должны быстро определить, видима ли она для наблюдателя, т.е. необходимо обрабатывать запросы линии взгляда (line of sight, LOS) для заданной точки. Обе эти операции можно выполнить достаточно эффективно для использования при рендеринге в реальном времени.
Читать дальше →
Всего голосов 130: ↑126 и ↓4+122
Комментарии27

ESP8266 с чего начать или первый опыт

Время на прочтение7 мин
Количество просмотров329K
В этой статье я хочу поделиться опытом того, что делать, когда в руки впервые попадают платки ESP8266. Сразу оговорюсь, что ковыряние в таких железках, равно как и программирование, это моё хобби за мои деньги и в свободное от основной деятельности время. Поэтому прошу отнестись с определенной скидкой к степени критики данного материала.

Почему я это решил написать? Всё просто: я убил 3 недели времени на то, чтобы разобраться с чего начинать и как это работает. Кроме того, попробую собрать небольшой каталог ссылок по работе с ESP8266. Надеюсь, что эта информация поможет сэкономить вам хоть толику времени.

image

Итак, приступим!
Читать дальше →
Всего голосов 27: ↑27 и ↓0+27
Комментарии51

Как сделать процессорный звук в Жигулях

Время на прочтение8 мин
Количество просмотров43K

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


Самая большая проблема автозвука-установка динамиков в самых неподходящих местах: динамик который играет прямо в ногу, сабвуфер массирует спину, влияние формы салона. Пока звук дойдет до ушей он будет уже не тот. Именно поэтому я начал с DSP-процессора.


Под катом будет много схем и графиков.
Всего голосов 64: ↑63 и ↓1+62
Комментарии38

2D магия в деталях. Часть третья. Глобальное освещение

Время на прочтение13 мин
Количество просмотров26K

Глобальное освещение, динамический свет и декали (да, есть такое слово :) ) в действии.


Я очень люблю смотреть на белые предметы без текстуры. Недавно в художественном магазине я долго рассматривал гипсовые фигуры, которые художники используют в качестве модельных объектов. Очень приятно видеть все эти плавные переходы света и мягкие тени. Позже, когда я вернулся домой и открыл Unity3D, пришло понимание, что свет в моём проекте по-прежнему скучный и нереалистичный.
С этого момента началась история глобального освещения, которую я сегодня расскажу.

Читать дальше →
Всего голосов 59: ↑58 и ↓1+57
Комментарии47

Анализ существующих подходов к распознаванию лиц

Время на прочтение14 мин
Количество просмотров150K
С завидной регулярностью на Хабре появляются статьи, рассказывающие о тех или иных методах распознавания лиц. Мы решили не просто поддержать эту замечательную тему, но выложить наш внутренний документ, который освещает пусть и не все, но многие подходы к распознаванию лиц, их сильные и слабые места. Он был составлен Андреем Гусаком, нашим инженером, для молодых сотрудников отдела машинного зрения, в образовательных, так сказать, целях. Сегодня предлагаем его все желающим. В конце статьи – впечатляющих размеров список литературы для самых любознательных.
Читать дальше →
Всего голосов 50: ↑49 и ↓1+48
Комментарии10

Сжатие мобильной графики в формат ETC1 и открытая утилита

Время на прочтение9 мин
Количество просмотров17K
При развитии free-to-play мобильной игры вместе с новыми фичами регулярно добавляется и новая графика. Часть ее включается в дистрибутив, часть скачивается в ходе игры. Для возможности запуска приложения на устройствах с небольшим размером оперативной памяти разработчики применяют аппаратно сжатые текстуры.



Формат ETC1 обязателен к поддержке на всех Android-устройствах с OpenGL ES 2.0 и является хорошей отправной точкой оптимизации потребляемой оперативной памяти. По сравнению с форматами PNG, JPEG, WebP загрузка текстур ETC1 осуществляется без интенсивных расчетов обычным копированием памяти. Также улучшается производительность игры по причине меньших размеров данных текстур пересылаемых из медленной памяти в быструю.
Читать дальше →
Всего голосов 27: ↑26 и ↓1+25
Комментарии15

Как рендерится кадр нового Doom

Время на прочтение15 мин
Количество просмотров105K


Выпущенный в 1993 году первый DOOM внёс фундаментальные изменения в разработку игр и механик, он стал мировым хитом и создал новых идолов, таких как Джон Кармак и Джон Ромеро.

Сегодня, 23 года спустя, id Software принадлежит Zenimax, все основатели уже покинули компанию, но это не помешало коллективу id продемонстрировать весь свой талант, выпустив отличную игру.
Читать дальше →
Всего голосов 156: ↑155 и ↓1+154
Комментарии94

Autofill: чего не знают веб-разработчики, хотя должны знать

Время на прочтение14 мин
Количество просмотров77K


Многим известно, что в мобильной версии Safari можно отсканировать свою банковскую карту. Но многие ли разработчики умеют создавать формы, поддерживающие эту возможность?

Готов поспорить, что немногие.

Дело осложняет полное отсутствие документации от Apple по работе этой функции. Но тут есть один момент. Функция сканирования банковских карт является подмножеством автозаполнения — браузерного функционала, давно игнорируемого веб-разработчиками. Понятно, почему они не уделяли ему должного внимания: когда регулярно заполняешь форму тестовыми данными, автозаполнение обычно мешает. Но для наших пользователей это важная функция. В Google выяснили, что при использовании автозаполнения пользователи на 30% быстрее заполняют формы. Так что давайте изучим работу автозаполнения, разберёмся, как создавать формы, поддерживающие кросс-браузерное автозаполнение, и воспользуемся преимуществами новых возможностей наподобие сканирования банковских карт.
Читать дальше →
Всего голосов 40: ↑39 и ↓1+38
Комментарии12

Исследование защищенности карты Тройка

Время на прочтение18 мин
Количество просмотров202K
Карта тройка

Карта Тройка представляет из себя универсальный пополняемый электронный кошелек, широко используемый в системах оплаты общественного транспорта Москвы с 2013 года.

Цель данного исследования — выяснить защищенность системы электронного кошелька от подделки баланса, оценить безопасность инфраструктуры, работающей с картой. Вся работа была выполнена без использования специальных технических средств. Использовался дешевый смартфон на платформе Android и персональный компьютер. Общее время, затраченное на исследование, составило 15 дней.

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

Итогом исследования стала разработка приложения TroikaDumper, позволяющего эксплуатировать уязвимости системы электронного кошелька.

Внимание! Данные материалы представлены исключительно в ознакомительных целях. Подделка проездных билетов является уголовным преступлением и преследуется по закону.

Читать дальше →
Всего голосов 380: ↑374 и ↓6+368
Комментарии348

Вглубь ядра: знакомство с LTTng

Время на прочтение11 мин
Количество просмотров8.9K
LTTng

В одной из предыдущих публикаций мы уже затронули проблематику трассировки и профилирования ядра Linux.

Сегодня мы хотели бы вновь вернуться к этой проблематике и подробно поговорить об одном интересном инструменте — трассировщике ядра LTTng, разработанном канадским программистом и исследователем Матьё Денуайе. С его помощью можно получать информацию о событиях как в пространстве ядра, так и в пользовательском пространстве.
Читать дальше →
Всего голосов 22: ↑21 и ↓1+20
Комментарии0

Как начать летать самостоятельно, хоть на чем-то, с мотором

Время на прочтение10 мин
Количество просмотров233K
Вторая статья для желающих начать летать самостоятельно.
Сегодня мы будем рассматривать варианты сжигания дохлых мамонтов (бензина) для приобретения кинетической энергии.

Парящий полет (первая статья)
  • Параплан
  • Дельтаплан
  • Планер

Моторный полет (под катом)
  • Самолет
  • Мотодельтаплан (дельталет)
  • Паратрайк (аэрошют)
  • Парамотор (карлсон, мотопараплан)
  • Мотопланер



Первый раз за штурвал самолета я сел в 18 лет. До первого самостоятельного вылета налетал 25 часов и совершил около 100 взлетов и посадок. Сейчас мой суммарный налет на всем, что летает — порядка 400 часов. Это жутко мало, чтобы считать себя опытным пилотом, но достаточно, чтобы подсесть на “летную иглу”. Приглашаю и вас стать авиазависимыми.
Запустить двигатель
Всего голосов 142: ↑133 и ↓9+124
Комментарии176

Как балансируются настольные и разные другие игры – краткий обзор способов

Время на прочтение10 мин
Количество просмотров61K


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

Конечная цель любой балансировки игры – увеличение возврата игроков или времени партии. То есть играбельности механики:
  • Не должно быть однозначной ультимативной стратегии победы, иначе игра потеряет вариативность и интерес.
  • Игрок должен чувствовать, что от его действий и навыков зависит игра. Иначе получится Mass Effect, который, скорее, фильм, нежели RPG.
  • Баланс должен быть «амортизированным», то есть прощать некоторые ошибки – иначе запоздалый на миллисекунду клик в Starcraft по первому рабочему из-за «эффекта бича» вызывал бы проигрыш через 4 часа идеальной партии. Наша настольная формула – 5-7 важных решений за игру, в двух можно ошибиться.
  • У настолок есть ещё социальное условие: игроки не должны выпадать по ходу пьесы – интересно должно быть всем и до конца.

Теперь – методы.
Читать дальше →
Всего голосов 56: ↑52 и ↓4+48
Комментарии22

Всё, что вы хотели знать о Ethernet фреймах, но боялись спросить, и не зря

Время на прочтение9 мин
Количество просмотров301K
Статья получилась довольно объёмная, рассмотренные темы — форматы Ethenet фреймов, границы размеров L3 Payload, эволюция размеров Ethernet заголовков, Jumbo Frame, Baby-Giant, и много чего задето вскользь. Что-то вы уже встречали в обзорной литературе по сетям передачи данных, но со многим, однозначно, не сталкивались, если глубоко не занимались изысканиями.

Начнём с рассмотрения форматов заголовков Ethernet фреймов в очереди их появления на свет.

Форматы Ehternet фреймов.


1) Ethernet II



Рис. 1
Читать дальше →
Всего голосов 71: ↑71 и ↓0+71
Комментарии32

Как я написал компилятор C за 40 дней

Время на прочтение19 мин
Количество просмотров70K
Предлагаю вам перевод дневника Руи Уэяма (Rui Ueyama), программиста из Google, который он вел во время работы над реализацией компилятора языка C около трех с половиной лет назад (но опубликовал только в минувшем декабре).
Этот дневник не несет какой-то практической пользы и не является туториалом, но мне было очень интересно его прочитать, надеюсь и вам эта история тоже понравится :)


Я написал C компилятор за 40 дней, который назвал 8cc. Это дневник написанный мной в то время. Код и его историю можно посмотреть на GitHub.
Читать дальше →
Всего голосов 84: ↑74 и ↓10+64
Комментарии56

Информация

В рейтинге
Не участвует
Откуда
Саратов, Саратовская обл., Россия
Дата рождения
Зарегистрирован
Активность