Pull to refresh
24
0
GreenGo @GreenGo

User

Send message

РОБОТ на базе: android, arduino, bluetooth. Начало

Reading time17 min
Views187K
Создание робота, даже простенького с ограниченным функционалом, довольно интересная и увлекательная задача. В последнее время любительская робототехника переживает настоящий бум, ей начали увлекаться даже те люди, которые от электроники очень далеки (к ним отношусь и я). Прошло то время, когда нужно было сидеть ночами с паяльником, или травить платы. Все стало гораздо проще, нужно лишь купить Arduino, комплект проводков, сенсоры, датчики, моторчики и вперед к сборке своего первого робота. Таким образом, фокус разработчиков — любителей сместился с электроники и механической части к программированию.
Данная серия статей будет содержать информацию для быстрого старта по созданию своего первого робота, от покупки необходимых деталей до его запуска в наш мир.
Читать дальше →
Total votes 52: ↑49 and ↓3+46
Comments33

Очки виртуальной реальности с использованием планшета

Reading time4 min
Views78K
В моём детстве был такой замечательный фильм, как «Газонокосильщик». Тогда мне было всё равно на сюжет, на какой-то смысл, заложенный автором. Но фильм мне очень нравился и манил одной вещью — виртуальной реальностью. Те несколько сцен, в которых герои погружались внутрь виртуального мира, — это то, ради чего стоило его смотреть. Мне хотелось испытать всё то, что испытывали они. Полёт внутри виртуальной реальности — то, что запомнилось навсегда.

Шло время и вот я уже вырос. Фильм забылся, но потаённое желание окунуться в виртуальную реальность осталось. И однажды я увидел проект Oculus Rift. Он приковал моё внимание на некоторое время, но ненадолго. Ведь очки Oculus ещё в разработке и получить их не так просто. Но это дало толчок. Голова начала копаться в прошлом, доставая то самое потаённое желание наружу, и искать пути решения.
Читать дальше →
Total votes 76: ↑75 and ↓1+74
Comments32

Погрешности сенсоров позволяют сопоставить с каждым смартфоном индивидуальный «отпечаток»

Reading time2 min
Views15K
Возможности для слежки за пользователями интернета не ограничиваются cookies и логами провайдера или оператора сотовой сети. Любой сайт может легко получить доступ к информации о версиях браузера и ОС клиента, установленных плагинах, разрешении экрана и так далее. Совокупность этой информации даёт возможность узнавать конкретного клиента из миллионов других. Для смартфонов эта проблема стоит ещё острее — характеристики их железа гораздо богаче за счёт большого числа датчиков — микрофонов, камер, акселерометров, гироскопов, магнитометров.

Христо Божинов из Стэнфордского университета продемонстрировал, что микроскопические отличия в показаниях акселерометра смартфона достаточно индивидуальны и позволяют отличить его от тысяч других. Причём эти показания могут быть доступны любому сайту в интернете. Для проверки концепции и сбора статистики Божинов создал сайт sensor-id.com, зайдя на который со смартфона, можно узнать, доступны ли данные вашего акселерометра для JavaScript, и если да, насколько индивидуален ваш смартфон. По словам Божинова, выделить индивидуальный «отпечаток» датчика можно даже из весьма шумного сигнала, например, пока смартфон болтается в кармане.

image
Различия в показаниях акселерометров в состоянии покоя для 16 смартфонов
Читать дальше →
Total votes 49: ↑46 and ↓3+43
Comments14

Rainyday.js

Reading time1 min
Views36K
image

Для всех, кому прохладного дождя за окном в эти дни мало, Marek Brodziak сделал забавное демо на js + canvas (демо #1, демо #2 — и сразу предупреждаю, что заработать может не во всех браузерах), которое имитирует капли дождя на стекле. Своей целью разработчик ставил добиться лучшей плавности анимации капель.

Для достижения наилучшего эффекта погружения смотреть демо рекомендуется предварительно открыв в соседней вкладке raining.fm.
Читать дальше →
Total votes 103: ↑100 and ↓3+97
Comments62

Реализация выборки, кэширования и отрисовки фотографий на карте

Reading time13 min
Views10K

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



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


В данной статье были затронуты следующие проблемы:


  • Хранение и выборка фотографий из БД и помещение их в серверный кэш (SQL, C#, ASP.NET).
  • Загрузка необходимых фотографий на стороне клиента и помещение их в клиентский кэш (JavaScript).
  • Перерасчет фотографий, которые нужно скрыть или отобразить при каждом изменении окна просмотра.
  • Элементы сферической геометрии.
Всем интересующимся добро пожаловать под кат
Total votes 24: ↑20 and ↓4+16
Comments6

Переводим ActionBar на следующий уровень

Reading time9 min
Views37K
Еще в ноябре 2012 года, я написал сообщение в блоге озаглавленное как "ActionBar в движении". Эта статья в основном касалась методики того, как красиво и уникально оживить ваш ActionBar . Хотя я упомянул некоторые из возможностей применения данного эффекта, я никогда не имел времени, чтобы добавить данный вид анимации ActionBar к какому-либо из моих собственных приложений. Но я видел в Play Store приложение использовавшее его.

Будучи на Google I/O, я наконец нашел приложение, использующее в ActionBar технику анимации. Давайте будем честными, это буквально взорвало мой взгляд когда я в первый раз это увидел. Я влюбился в хороший, тонкий и чрезвычайно полезный анимационный эффект, и, вероятно, даже больше, чем в само приложение! Я уверен, вы знаете приложение о котором я говорю, так как оно было представлено во время Google I/O. Это приложение Play Music!

Последнее обновление Play Music (v5.0) претерпело полный редизайн и внешний вид страниц с описанием исполнителя и альбома. Если вы откроете такую страницу, то вы заметите, что ActionBar изначально невидим и наслаивается на большое изображение, описывающее исполнителя или альбом. Но как только вы начинаете прокручивать страницу вниз (если это возможно), то ActionBar постепенно проявляется. ActionBar оказывается полностью непрозрачным, когда изображение становится прокрученным за экран.
Читать далее
Total votes 30: ↑26 and ↓4+22
Comments6

Промдизайн для электроники: как разработать корпус устройства

Reading time4 min
Views33K


Разработка корпуса — один из основных этапов создания продукта для рынка электроники. В руках промышленных дизайнеров сосредоточена большая власть и ответственность: именно они определяют внешний вид устройства, стремятся сделать его привлекательным, стильным и удобным.
 
Каждый день мы пользуемся результатами работы промдизайнеров: смартфонами, ноутбуками, ТВ-приставками, клавиатурами, мышками и другими устройствами. Посмотрим на процесс создания всех этих вещей изнутри и ответим на три самых распространенных вопроса, которые возникают в процессе реализации проектов по разработке корпуса для электроники:
  1. Промдизайн: что вообще скрывается под этим словом?
  2. Разработка дизайна и конструкции корпуса: из чего состоит проект?
  3. Работа с промдизайнерами: как организовать сотрудничество и оценить результаты?

Читать дальше →
Total votes 20: ↑12 and ↓8+4
Comments16

Теория цвета в цифрах

Reading time3 min
Views201K
Разные люди могут по-разному представлять один и тот же цвет по его названию. Например голубой цвет может на самом деле быть цветом морской волны или небесным. Гораздо точнее цвет определяется шестнадцатеричным кодом, всего существует 16777216 комбинаций. Поэтому дизайнеру может быть полезно распознавать цвет, просто взглянув на его hex-код.

Основы


Начнем с простого: рассмотрим обычный hex-код, где каждая из трех пар цифр контролирует один из цветов RGB — красный, зеленый, синий. Числа могут принимать значения цифр от 0 до 9 и букв от A до F.

Читать дальше →
Total votes 161: ↑127 and ↓34+93
Comments25

ИК-контроллер бытового кондиционера или реверс-инжиниринг пульта ДУ

Reading time6 min
Views61K
Приветствую, уважаемые хабрачитатели! В этой, первой для меня, статье я хотел поделиться своими исследованиями и наработками. Имея в своей квартире кондиционер я ощущал необходимость управлять им когда меня нет дома. Возвращаясь с дачи или просто с работы и, включив кондиционер, приходится ждать некоторое время пока не спадет жара. А хочется приходить в уже легкую прохладу.
«Вот бы можно было удаленно включить кондишн...» — подумал я.
Далее, что у меня получилось...
Total votes 38: ↑37 and ↓1+36
Comments11

Дырка в кармане — Памятка по мобильной безопасности

Reading time8 min
Views52K


Случалось ли вам когда-нибудь доставать телефон из кармана, потому что вам показалось, будто он жужжит, и обнаруживать, что на самом деле он не звонит? По-научному это называется «фантомный вжжж». Фантомный вжжж это побочный эффект древних человеческих инстинктов. В кустах шуршит тигр или мне показалось? Гены тех, кто решил, что тигра нет, или вообще ничего не заметил, очень быстро перестают передаваться по наследству, поэтому люди хорошо научились вычленять информацию даже среди шума. Пропущенный звонок вас наверняка огорчит, вот мозг и адаптируется к вашим потребностям и увеличивает вероятность успешного распознавания вибрации в кармане за счёт небольшого количества ложных срабатываний.

К чему я веду? Эту реакцию можно проиллюстрировать поговоркой «лучше перебдеть, чем недобдеть». Как часто вы проводите время вдали от мобильного телефона? Чего уж греха таить, скорее всего, вы даже с ним спите. В режиме 24/7 рядом с вами находится устройство с микрофонами, камерами, GPS, всевозможными прочими датчиками и доступом в интернет, а вы доверяете ему свои деньги, распорядок дня, сокровенные мысли… Прямо-таки личный слуга! Насколько он надёжен?

К сожалению, информационная безопасность в повестке дня всегда стоит на последнем месте, поэтому в каждой технологической отрасли повторяется одна и та же история. Появляются первые пользователи технологии, она становится популярной, количество пользователей резко растёт, предприимчивые люди начинают использовать технологию для нечестного заработка, и только после нескольких крупных скандалов начинаются какие-то движения по части информационной безопасности. Так было и с сотовой связью. Первые мобильные телефоны вообще можно было прослушивать с помощью радиоприёмника.
Потом появились цифровые стандарты связи, но стало не намного лучше...
Total votes 40: ↑35 and ↓5+30
Comments16

Поиск кратчайшего пути в транспортном графе (концепт) + исходники

Reading time6 min
Views22K
Был как-то проект у меня, который был связан с картой города. И возникла идея, что раз есть карта с маршрутами и соответствующими остановками городского транспорта, то почему бы не сделать поиск пути из пункта А в пункт Б на ней.

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

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

Первое что сделал это запарсил с сайтов маршруты транспорта. Далее принялся за граф.
Это оказалась не сложная задача, берем каждую остановку маршрута и смотрим, нет ли остановок любого другого маршрута в заданном нами радиусе. Радиус взял 600м (в последней версии 400м) – предполагаемое расстояние, которое человек может пройти безболезненно пешком от одной остановки до другой в случае необходимости пересадки. Вероятно, это расстояние можно сократить, скажем, до 200м, так как расстояние от одной остановки до другой на перекрестке не превышает эту дистанцию.

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

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

Качество видео ужас, но как сделать получше я так и не обнаружил.



Усредненное время, затрачиваемое на выполнение шагов:

gpt — 0.009с, найти ближайшие остановки к точке клика
grt — 0.001с, найти кратчайший путь от маршрута к маршруту
apt — 0.0001с, добавляем остановки и точки поворота к нашему маршруту
all — 0.01c, суммарное время выполнения поиска пути
Читать дальше →
Total votes 48: ↑41 and ↓7+34
Comments4

Неэффективный программист или как взломать свой мозг за 2 дня

Reading time9 min
Views190K


Disclaimer: Автор понимает, что ничего нового не открыл, но подача материала может оказаться достаточно полезной, особенно для тех, кто регулярно пытается сконцентрироваться и расти над собой.


Интернет сделал нас ленивыми!

Почему? Кто в последний раз посмотрел видео больше 3х минут? Кто прочитал пост больше 2 страниц? Какой заголовок более привлекателен, «63 способа бла-бла-бла» или «3 проверенных метода бла-бла-бла»? А если эти три проверенных метода выделены от основного текста, то это вообще гуд (можно не читать текст вовсе, а просто пробежаться по выделенным подзаголовкам).

В этом свои плюсы. Наш мозг эволюционировал, и обрабатывает информацию быстрее, чем, скажем, 15-20 лет назад (да и эволюционирует быстрее, чем это было возможно век назад). Как компании справляются с высокими нагрузками? Как процессор выполняет программу по возможности быстро? С помощью кэширования! (как вариант, но самый приоритетный). Что делает наш мозг, чтобы справиться с большой нагрузкой? Кэширует! Что именно и как — оставим на размышление ИИшникам (специалистам по искусственному интеллекту). В противном случае при увеличении размера обрабатываемой информации время «отклика» бы увеличилось в разы, и на ответ на «как добраться до ближайшей больницы?» уйдет больше времени, чем человек «в силе ждать». «Сила ждать» тоже уменьшилась, «размер» нашего терпения уменьшился, и мы быстро устаем, если продолжительность видео большая, размер статьи большой (на самом деле продолжительность может не влиять на терпение, больше всего влияет полезная информация, если «воды» меньше или вовсе нет, то и терпеть ничего не приходится, посему данный пост написан «эз лаконик эз посибл»).
Убедиться в этом
Total votes 258: ↑207 and ↓51+156
Comments176

Kingnovel K-R42 — медиаплеер с Android 4.2.2 на борту

Reading time6 min
Views92K
image
После успешного запуска мини-компьютеров на 4-х ядерном чипе RK3188 в формате стика, на рынок выходит логичное продолжение линейки устройств с расширенной функциональностью — наличием дополнительных портов и внешней Wifi-антенной. Сегодня мы рассмотрим Kingnovel K-R42 — медиаплеер с Android 4.2.2, на основе которого можно сделать домашний мини-сервер.
Читать дальше →
Total votes 30: ↑25 and ↓5+20
Comments29

Работа с цветом: полезные инструменты, книги, статьи для веб-дизайнеров

Reading time2 min
Views91K
Работа с цветом — это первое, что должен уметь любой дизайнер. В интернете огромное количество разрозненной информации на эту тему, я попытался собрать самое полезное в одной подборке. Большинство полезностей с уклоном в веб-дизайн.

Инструменты




Colour Lovers — старый и функциональный инструмент для подбора цветовых схем. Аналоги — Colourcode, Color Scheme Designer и конечно Kuler. Подобных сайтов великое множество, но эти, на мой взгляд, самые удобные.
Читать дальше →
Total votes 67: ↑66 and ↓1+65
Comments8

Компьютерные интерфейсы в кино

Reading time2 min
Views69K
Много интересного и полезного может перенять дизайнер интерфейсов из sci-fi фильмов. В разные годы компьютерные системы в фильмах отражали представления и стереотипы о дизайне будущего, зачастую опережая появление прототипов схожих устройств.

История


Фильмы 30-и-более летней давности трудно сегодня воспринимать всерьез, т.к. большинство систем будущего выглядело в лучшем случае так («Чужой», 1979):

Читать дальше →
Total votes 89: ↑65 and ↓24+41
Comments79

Идентифицировать человека среди 1 500 000 пользователей мобильной связи можно всего по 4 точкам во времени и пространстве

Reading time2 min
Views123K
Каждый из нас изо дня в день бывает в одних и тех же местах примерно в одно и то же время — дом, работа, спортзал, магазин, снова дом… Наш ежедневный маршрут достаточно стабилен и в то же время уникален. Совместное исследование американских и бельгийских учёных продемонстрировало, что степень его уникальности гораздо выше, чем можно предположить.

Анализ базы данных, в которой была собрана анонимизированная информация о времени и месте звонков и СМС 1 500 000 абонентов на протяжении пятнадцати месяцев показал, что для идентификации 95% людей достаточно знать всего четыре пространственно-временные точки.

Всего две точки позволяют различить индивидуальный след половины пользователей, а одиннадцати достаточно, чтобы различить все до единого следы. На иллюстрации слева приведены примеры таких индивидуальных следов. Авторы исследования сравнивают уникальность мобильного следа с отпечатками пальцев — в 1930 году французский пионер криминалистики Эдмон Локард показал, что для идентификации по отпечатку пальца достаточно двенадцати совпадений деталей рисунка.

Таким образом, получив из открытых источников (Facebook, Twitter, Foursquare, LinkedIn и т.п.) всего несколько характерных для человека пространственно-временных точек, можно деанонимизировать абонента мобильной связи среди миллионов записей, не содержащих вообще никакой персональной информации, и отследить все его перемещения.
Читать дальше →
Total votes 138: ↑131 and ↓7+124
Comments122

Создаем свой RSS канал с помощью Google Apps Script

Reading time4 min
Views13K
Есть такой замечательный wiki ресурс по языку Tcl/Tk как wiki.tcl.tk. Есть у этого ресурса RSS лента последних изменений. Но вот беда — лента изменений самая минимальная. Там указано только кем, когда и какая страница редактировалась. Нет полных изменений и нет GUID у элементов ленты, поэтому некоторые RSS клиенты (например, Google Reader) не показывают большую часть новостей, считая их одинаковыми.
Как сделать свою RSS ленту
Total votes 9: ↑7 and ↓2+5
Comments2

Размышления о торрентах, легальном контенте и борьбе с пиратством

Reading time4 min
Views32K
Возьмём за аксиомы:
  • Пиратство, как не крути, — плохо.
  • Текущие методы копирастии — неадекватны.
  • Текущие форматы, типа ДВД и т.п. — медленно отмирают.
  • Torrent — реально удобно.
  • Всегда есть категория людей, которым нечем оплачивать, но посмотреть — хочется.


Все согласны? По отдельным пунктам гусары могут помолчать!

P.S. этакий предварительный. Специально для ленивых людей, которые дочитали ровно до строки про пиратство и рванули писать гневные комменты, не прочитав остального: СТАТЬЯ НЕ ОБСУЖДАЕТ, ХОРОШО ЧТО-ТО ИЛИ ПЛОХО! Она ищет путь решения вопроса, при котором «И овцы сыты и волки целы»!

Итак, что можно сварить из этакого «топора»?
Читать дальше →
Total votes 73: ↑38 and ↓35+3
Comments131

Leap Motion. Впечатления

Reading time2 min
Views89K

Первые впечатления.



После того, как подключил устройство в первый раз и опробовал тестовые программы на своем ноуте, я был в полном восторге! Было такое ощущение, что вот оно -будущее, еще чуть чуть, и мир превратится в что то на подобие этого видео.
Ну ведь действительно, какие еще могут быть впечатления от управления компьютером «в воздухе»! Даже kinect был не настолько интересен как это устройство.
Вдохновившись, сразу принялся разбираться, как самому сделать что то эдакое!
Взял первый попавшийся простенький проект и решил попробовать прикрутить к нему контролер. (Продолжение под катом.)
Читать дальше →
Total votes 76: ↑71 and ↓5+66
Comments75

Information

Rating
Does not participate
Location
Россия
Date of birth
Registered
Activity