Pull to refresh
0

User

Send message

Две новых минималистических карманных игры

Reading time2 min
Views13K


Пик популярности Arduboy уже позади, но разработка гиками схожих по идеологии минималистических консолей продолжается. И вот перед вами — две новые конструкции авторов под никами Igor и davedarko, увидевшие свет совсем недавно.
Читать дальше →
Total votes 33: ↑33 and ↓0+33
Comments3

TinyFL — драйвер фонарика на микроконтроллере

Reading time18 min
Views67K

Привет, Habr!


Хочу рассказать историю о том, как мне в руки попал китайский налобный фонарик на светодиоде Cree XM-L и что дальше с ним стало.


Читать дальше →
Total votes 90: ↑86 and ↓4+82
Comments110

Arduino за 1$

Reading time4 min
Views220K


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

Скажу за себя — мне Arduino нравится. Тем, что можно быстро что-нибудь работающее соорудить. По сути, мне не нравятся только цены. Ну, дорого же. Модуль на порядок дороже использованного в нем микроконтроллера. Такие размышления неоднократно подталкивали меня к тому, чтобы «соскочить», но потом я открывал Aliexpress и заказывал очередную порцию. Китайская версия Arduino Nano — 3-4$. Pro Mini (без USB) — 2-3$.

Потом стало интересно — а где предел минимальной розничной (или микрооптовой) цены. Но так, чтобы можно было работать, а не искать хаки с целью сэкономить пару байт. Пара вопросов к всемирному разуму, кратчайшее изучение матчасти, решение: «Буду ковыряться с ATTiny, но чтобы с Arduino».
Стоя и в гамаке
Total votes 95: ↑83 and ↓12+71
Comments128

Предсказание красоты заката

Reading time3 min
Views14K
TL;DR: Из чего состоит красивый закат? Как предсказать эти элементы заката? Откуда взять данные для предсказаний?

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

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

Элементы заката


1. Небо в том месте, где солнце заходит за горизонт.

Если небо в этом месте чистое — это красиво.
Если чистая полоска неба, а над этим облака — еще красивее.
Если есть небольшая облачность и Солнце заходит посреди облаков — тоже неплохо.
Если всё небо возле горизонта в облаках — плохо.

Примеры:


Солнце заходит без облаков на горизонте
Читать дальше →
Total votes 37: ↑36 and ↓1+35
Comments31

Звуковой отпечаток компьютера через AudioContext API

Reading time5 min
Views14K


Компании, отслеживающие действия пользователей в интернете, нуждаются в надёжной идентификации каждого человека без его ведома. Фингерпринтинг через браузер подходит идеально. Никто не заметит, если веб-страница попросит отрисовать фрагмент графики через canvas или сгенерирует звуковой сигнал нулевой громкости, замеряя параметры ответа.

Метод работает по умолчанию во всех браузерах, кроме Tor. Он не требует получения никаких разрешений пользователя.
Читать дальше →
Total votes 20: ↑20 and ↓0+20
Comments10

9 лучших опенсорс находок за сентябрь 2019

Reading time2 min
Views52K

Доброго Хактоберфеста, дамы и господа. Подготовил для вас подборку самых интересных находок из опенсорса за сентябрь 2019.


За полным списком новых полезных инструментов, статей и докладов можно обратиться в мой телеграм канал @OpensourceFindings (по ссылке зеркало, если не открывается оригинал).


В сегодняшнем выпуске.
Технологии внутри: Python, C, Rust, Ruby, JavaScript, Go.
Тематика: веб разработка, администрирование, инструменты разработчика.


Прошлый выпуск.

Читать дальше →
Total votes 115: ↑112 and ↓3+109
Comments19

А я милого узнаю… по форме слухового прохода. Новый способ идентификации пользователей

Reading time2 min
Views4.9K
image

Биометрические технологии продолжают развиваться. На днях стало известно о новой системе биометрической аутентификации, которую разработали американские инженеры из Университета штата Нью-Йорк в Буффало. Работает это следующим образом: наушник излучает звуковой сигнал, а потом микрофон, встроенный в наушник, принимает отраженный в слуховом проходе сигнал. После характеристики сигнала анализируются специальной системой.

Форма слухового канала у каждого человека уникальна — так же, как и отпечатки пальцев или сетчатка глаза. Точность работы такой системы составляет 95%. Конечно, для криминалистики такая система не подходит, но для ежедневного использования в качестве подтверждения личности пользователя — вполне.
Читать дальше →
Total votes 24: ↑19 and ↓5+14
Comments12

Как я создал фильтр, не портящий изображение даже после миллиона прогонов

Reading time10 min
Views8.5K
Завершив создание веб-архитектуры для нашего нового веб-комикса Meow the Infinite, я решил, что самое время написать несколько давно назревших технических статей. Данная статья будет посвящена фильтру, разработанному мной несколько лет назад. Он никогда не обсуждался в области сжатия видео, хотя мне кажется, что это стоит сделать.

В 2011 году я разработал “half-pel filter”. Это особый вид фильтра, который берёт входящее изображение и максимально убедительно отображает, как бы выглядело изображение при сдвиге ровно на полпикселя.

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

При анализе поведения алгоритмов компенсации движения в традиционных halfpel-фильтрах, Джефф Робертс выяснил, что при многократном применении к последовательным кадрам они быстро деградируют, заставляя другие части видеокомпрессора использовать для исправления артефактов больше данных, чем необходимо. Если отключить эти исправления и взглянуть на «сырые» результаты halfpel-фильтра, то такое исходное изображение:


превращается вот в такое:


всего спустя одну секунду видео. Как и должно, оно сдвинуто в сторону, потому что каждый кадр сдвигал изображение на полпикселя. Но результат выглядит не как перемещённая версия исходного изображения, он серьёзно искажён.
Читать дальше →
Total votes 34: ↑32 and ↓2+30
Comments11

Сторожим сторожей: текущее состояние космических средств слежения

Reading time5 min
Views12K


Вы почти наверняка слышали о недавней публикации спутникового изображения высокой чёткости, где видны последствия неудачной попытки запуска Ираном своей ракеты Сафир на жидком топливе. Геополитические последствия разработки Ираном подобных баллистических ракет – это сама по себе интересная история, однако в данном случае нас больше интересует то, каким образом был получен этот снимок. Учитывая все известные переменные, вроде даты и времени инцидента, и местоположения пусковой площадки, аналитики подсчитали, что снимок, вероятно, был сделан секретным американским спутником KH-11 [keyhole, или «замочная скважина» / прим. перев.].


Читать дальше →
Total votes 22: ↑20 and ↓2+18
Comments18

Как работает децентрализованный мессенджер на блокчейне

Reading time8 min
Views29K
В начале 2017 мы начали создавать мессенджер на блокчейне [название и ссылка есть в профиле] с обсуждения преимуществ перед классическими P2P-мессенджерами.

Прошло 2.5 года, и нам удалось подтвердить свой концепт: сейчас доступны приложения мессенджера для iOS, Web PWA, Windows, GNU/Linux, Mac OS и Android.

Сегодня мы расскажем, как устроен мессенджер на блокчейне и как клиентским приложениям работать с его API.

Читать дальше →
Total votes 26: ↑25 and ↓1+24
Comments77

Вопросы будущему работодателю

Reading time3 min
Views55K


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

Под катом список тем, которые покажут проблемные места там, где о них не любят упоминать.
Читать дальше →
Total votes 114: ↑108 and ↓6+102
Comments87

Крокодилы летают, но низко-низко (об экранопланах без эмоций, зато с отступлениями)

Reading time17 min
Views75K
Скажу сразу: ничего про «не имеющее аналогов», «бездумно разрушенное» и т.п. – не будет.

Что будет:

  • немного истории;
  • разъяснение того, что такое эффект экрана, его свойства и последствия;
  • преимущества и недостатки;
  • практические реализации у нас и за рубежом, разные схемы и причины их появления;
  • перспективы, какими они видятся мне.

Итак, от



до


Читать дальше →
Total votes 170: ↑170 and ↓0+170
Comments272

Аккордеон, faq, спойлер и другие раскрывающиеся виджеты

Reading time7 min
Views75K
Аккордеон и faq

Создать аккордеон, faq, спойлер и подобное, можно при помощи Div и JavaScript.
Но лучше: Details и Summary

Поддерживается всеми современными браузерами и это семантически правильно оформленный код, при использовании которого будут плюсы:

  1. Людям с ограниченными возможностями проще будет пользоваться вашим сайтом! Их софт (скринридеры и подобное) прекрасно понимает html5 теги и будет правильно обрабатывать их и правильно информировать людей о содержимом.
  2. Улучшится связанность текста, и поисковики смогут более качественно индексировать сайт, так как будут лучше понимать, как связаны между собой видимый и скрытый текст.
  3. Будет доступно управление элементами с клавиатуры и других устройств.
  4. Уменьшается количество javascript кода, который нужно подгружать, что увеличивает скорость загрузки страницы, скорость обработки и корректность.
  5. Улучшаются показатели в Lighthouse, Google PageSpeed и других подобных инструментах.
  6. Работает при выключенном javascript.
Total votes 38: ↑37 and ↓1+36
Comments17

Скруглённые или остроугольные?

Reading time3 min
Views18K

Скруглённые или квадратные? Вот в чём вопрос.

Нужно ли менять обычные остроугольные кнопки на скруглённые? Какие из них лучше для юзабилити? Как мы вообще принимаем подобные решения?


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


Переменные, используемые для улучшения заметности
Читать дальше →
Total votes 28: ↑26 and ↓2+24
Comments19

Поддельная «голубая пилюля»

Reading time3 min
Views41K
Я являюсь большим любителем макетных плат «голубая пилюля». Они очень хороши по соотношению цена/возможности. Собственно, моя любовь к ним заметна из первоапрельской статьи про педальную прошивку для игры на балалайке.



Открыть коробочку с такими платами и быстро взять одну для решения каких-то задач — в порядке вещей. Именно так, недавно я взял очередную плату, прошил уже хорошо отлаженной и проверенной «прошивкой» и… получил неопознанное USB-устройство. Взял другую плату, «прошил» её, там устройство заработало. Тут бы делу и конец, но интересно же, в чём дело. Поэтому, как пришли выходные, я занялся детальным исследованием, почему же она не работает.
Читать дальше →
Total votes 105: ↑104 and ↓1+103
Comments138

13 полезных однострочников на JavaScript

Reading time5 min
Views41K
Автор статьи, перевод которой мы сегодня публикуем, говорит, что он программирует на JavaScript уже многие годы. За это время он собрал коллекцию отличных однострочников — фрагментов кода, удивительно мощных, учитывая то, что укладываются они в одну строку. По его словам, большие возможности — это и большая ответственность, поэтому пользоваться этими конструкциями нужно осмотрительно, стремясь к тому, чтобы они не вредили бы читабельности программ.



Здесь представлено 13 однострочников. Примеры подготовлены с использованием Node.js v11.x. Если вы будете использовать их в другой среде — это может повлиять на их выполнение.
Читать дальше →
Total votes 72: ↑53 and ↓19+34
Comments76

Space Invaders: теперь и в 512 байт (Assembler x86)

Reading time1 min
Views8K
image

Казалось бы, ещё совсем недавно Space Invaders умещали в 1 килобайт, а теперь смогли уместить в один загрузочный сектор (512 байт). Автор программы — Оскар Толедо, пятикратный победитель IOCCC (International Obfuscated C Code Contest) и регулярный участник JS1K, также известный как создатель шахмат, которые занимают всего 392 байта.

Исходный код игры можно посмотреть в репозитории на Github: github.com/nanochess/Invaders

Для запуска вам потребуется nasm (Netwide Assembler), который можно скачать на официальном сайте. Игру можно собрать, выполнив команду:

nasm -f bin invaders.asm -Dcom_file=1 -o invaders.com

На самом деле, это всё ещё в 4 раза больше, чем весь размер оперативной памяти Atari 2600 — но уже с легкостью поместилось бы на её картридж, который предоставлял 2 килобайта памяти. Также, использование в коде программы инструкций ассемблера PUSHA/POPA требует наличия процессора 80186 и выше.
Total votes 26: ↑23 and ↓3+20
Comments16

Видеонаблюдение на orange pi zero — дешево и совсем не сердито

Reading time4 min
Views52K
Недавно поставил себе задачу реализовать видеонаблюдение со следующими характеристиками:

  1. Минимальное энергопотребление
  2. Минимальный размер устройства, которое будет принимать видео с камеры (или нескольких камер). С таким небольшим размером, чтобы можно было его, к примеру, запихать в монтажную коробочку 10-10 см или вовсе спрятать в широком кабель-канале (!)
  3. IP-камеры будут подключены по wi-fi, то есть невозможно определить, кто с них смотрит/пишет видео. Запитать их можно от общей сети, будь то подъездное освещение или розетки в офисе
  4. Обязательно должна быть запись видео (в моем случае — на microsd карту), обязательно должна быть возможность просматривать видео через интернет с любой точки мира а также через мобильное приложение
  5. Само собой, должна быть возможность удаленно настраивать и всю систему — добавлять новые камеры, копировать-удалять записи, иметь доступ ко всем настройкам
  6. Минимальная стоимость! А как же? Без этого никуда

Для реализации данной идеи выбор пал на следующие компоненты:
Читать дальше →
Total votes 50: ↑45 and ↓5+40
Comments53

Пистолеты из 3D-принтера вернулись, и теперь их уже не остановить

Reading time6 min
Views62K

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



В США снова растёт сеть сторонников распечатывания оружия на 3D-принтере – но сейчас уже всё по-другому. В отличие от предыдущих попыток популяризации оружия, которое можно печатать на 3D-принтере, данная операция полностью децентрализована. У неё нет никакой штаб-квартиры, торговых марок и лидера. И стоящие за ней люди считают, что такое положение вещей гарантирует неспособность правительств остановить их.

«Если они захотят прийти за мной, сначала им нужно будет меня найти, — говорит Тролль Иван [Ivan the Troll], член группы. – Я один из многих единомышленников, занимающихся этой работой».
Читать дальше →
Total votes 54: ↑44 and ↓10+34
Comments286

Иллюзия разумного замысла

Reading time7 min
Views16K
image

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

Я не характерный хабровец. Я беженец с Флибусты. Я не программист и вообще литератор — другого поля ягода.

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

Конечно, я не собираюсь быть серьёзным — в конце концов, у нас пятница на носу. Но и пустой шуткой я это не считаю.

Начну с анекдота:
Читать дальше →
Total votes 65: ↑47 and ↓18+29
Comments393

Information

Rating
Does not participate
Registered
Activity