Как стать автором
Обновить
21
0.5

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

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

Google, Microsoft, Amazon заключили конфиденциальные сделки с разработчиком AdBlock Plus

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


Как сообщает РБК со ссылкой на публикацию в Financial Times, ряд крупнейших международных корпораций, таких как Google, Amazon, Microsoft, Taboola, заключили конфиденциальные сделки с компанией Eyeo, разрабатывающей популярное расширение для браузеров AdBlock Plus, блокирующего рекламные объявления.

По данным разработчика, расширение для браузеров Google Chrome и Mozilla Firefox было установлено более 300 миллионов раз, а активно пользуются инструментом блокировки нежелательных рекламных сообщений более 50 миллионов человек. Судя по всему, основные продавцы контекстной и медийной рекламы в Интернете, рынок которой оценивается в $120 миллиардов по данным на 2014 год, всерьез озабочены проблемой блокировки рекламы в браузерах пользователей.
Читать дальше →
Всего голосов 27: ↑27 и ↓0+27
Комментарии40

Искусственный рассвет

Время на прочтение9 мин
Количество просмотров233K
Началось всё год назад. Перед Новым 2014 годом несколько пришел в упадок жизненный тонус. Процесс самокопания привел к следующей мысли:



— А, что ж так темно-то, Господи? © День радио.

Впрочем, для человека, живущего зимой по летнему времени — мысль вполне естественная.
Что же делать?
Всего голосов 187: ↑185 и ↓2+183
Комментарии87

Миф о бесполезности QoS без перегрузки сети

Время на прочтение5 мин
Количество просмотров50K
По работе я несколько раз сталкивался с мнением, что настраивать QoS в не перегруженной ethernet сети не нужно для успешного функционирования таких сервисов, как IPTV и VoIP. Это мнение стоило мне и моим коллегам многих нервных клеток и часов на диагностику фантомных проблем, поэтом постараюсь как можно проще рассказать о том, почему это мнение неверно.
Читать дальше →
Всего голосов 47: ↑46 и ↓1+45
Комментарии33

Юнит тесты на Си — нет ничего проще

Время на прочтение4 мин
Количество просмотров52K
Прочитав статью «Тестирование встроенных систем» и комментарии к ней я был несколько поражен тем фактом, что многие хабровчане знакомы с книгой «Test Driven Development for Embedded C (Pragmatic Programmers)» и framework-ом Unity, но не используют весь арсенал средств, которые предлагают ребята из throwtheswitch.org.

Хочу кратко поделится опытом использования этих самых средств.
Читать дальше →
Всего голосов 33: ↑32 и ↓1+31
Комментарии11

VPN в каждый дом

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


Всем привет! Желание сделать VPN сервер максимально простым в установке и удобным в использовании назревало уже давно. За основу я взял L2TP/IPsec, эта технология нативно поддерживается всеми устройствами и в отличии от PPTP не вызывает проблем при подключении через сотовых операторов.

tl;dr
Для установки нам потребуется машинка с Ubuntu 14.04 на борту и «белым» IP-адресом, любой VPS подойдет. Достаточно ввести эту волшебную строчку:
 curl -sS https://raw.githubusercontent.com/sockeye44/instavpn/master/instavpn.sh | sudo bash 

и через несколько минут у вас будет рабочий VPN с управлением через браузер (httр://ip-address:8080/) или консоль (instavpn -h).
Читать дальше →
Всего голосов 88: ↑77 и ↓11+66
Комментарии245

Byrobot: квадрокоптер для Чака Норриса и 6d-мышление

Время на прочтение4 мин
Количество просмотров18K
Когда несколько лет назад в руки попался первый вертолетик, сразу возникла мысль: «Дайте второй, посмотрим кто кого!»


(Вес квадрокоптера Drone Fighter 25г, батарейки 8г)

Недавно корейцы порадовали — в Москве появились специально заточенные под файтинги квадрокоптеры (Drone Fighter), причем неубиваемые (несколько раз на полной скорости втыкал его в стену — ему все равно, совал палец в лопасти — винт слетает и легко ставится на место. Очень важный момент — снимает страх ошибки/поломки дрона, что существенно повышает фан и мотивацию учиться, эдакий вариант save/load в реальном мире. А так же допускает режим файтинга в стиле «таран»)

Что порадовало:
  • Драки. Наконец-то драки.
  • Нагрузка на мозг. Прям таки чувствуются, как образуются новые нейронные связи.
  • Девушкам нравится. Можно подлетать (отвлекать от проекта) и вызывать их улыбки
  • Стабилизация. В идеале, если не предпринимать действий, вертолет висит в той точке в которой оставил.
  • Два режима управления: с абсолютной системой координат (право-лево относительно пилота) и относительной (право-лево относительно курса квадрокоптера)
  • Сальто. (Плюс мегакрутое автоматическое управление тягой двигателей и автовыравнивание после маневров)
  • Видеокамера. HD-видеокамера (5г)
  • Много запасных батареек позволяет летать непрерывно
  • Неубиваемость. Не паришься совершенно про то, что кто-то куда-то врезался (у меня за час полетов около 100 "(по)падений" в стену/столб/цветок/кошку)
  • Удобная инструкция с подготовительными и мастерскими полетными заданиями


На Хабре уже писали про 20 профессий будущего, одна из них — «Оператор дрона». Так же на Хабре есть дельные рекомендации начинающим пилотам дронов. В Воронеже уже готовят таких специалистов с 2013 года. Так что покупайте себе своим детям квадрокоптер. Это исключительно в образовательных целях.

Под катом описание системы боя Drone Fighter, несколько фоток и много видео
Читать дальше →
Всего голосов 29: ↑28 и ↓1+27
Комментарии29

Остался один шаг до Кикстартера — есть ли шансы у проекта?

Время на прочтение4 мин
Количество просмотров15K
Вот уже 9 месяцев мы разрабатываем свой проект — миниатюрный сетевой компьютер Black Swift. Пора рожать, так сказать.

image

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

Всех, кому интересна наша история, прошу читать и комментировать.
Читать дальше →
Всего голосов 63: ↑57 и ↓6+51
Комментарии138

Курс пиксель-арта 2

Время на прочтение3 мин
Количество просмотров116K
Это перевод публикации «Les Forges Pixel Art Course».

Часть 1: Правильные инструменты
Часть 2: Линии и кривые
Часть 3: Перспективы
Часть 4: Тень и свет
Часть 5: Палитры цветов
Часть 6: Сглаживание
Часть 7: Текстуры и размытие
Часть 8: Мир тайлов

Часть 2: Линии и кривые


Если вы ещё не состоявшийся художник, лучший путь начать рисовать, делать это карандашом, после чего обводить чернилами, затем раскрашивать. То же самое применимо и к пиксель-арту: первый шаг в изображении, это обозначить контуры — этот шаг называется «штриховой рисунок» (Lineart). Штриховой рисунок — это очень важный шаг для достижения хорошего результата. Несколько пикселей вашего изображения, могут являться большей его частью (в противоположность рисованию, где масштаб позволяет больше допущений) так что ошибка в один или два пикселя, может сделать так, что ваш персонаж будет выглядеть искажённым. Для ясности, точность штрихового рисунка является Р-Е-Ш-А-Ю-Щ-Е-Й для успеха пиксель-арта.
Читать дальше →
Всего голосов 48: ↑42 и ↓6+36
Комментарии8

Конечный автомат (он же машина состояний) на чистом С

Время на прочтение5 мин
Количество просмотров130K
Почти каждый микроконтроллерщик сталкивался с громадными switch-case и мучительно их отлаживал.
И много кто, начиная писать реализацию какого-либо протокола, задумывался как написать её красиво, изящно, так чтобы через месяц было понятно что ты имел в виду, чтобы она не отжирала всю память и вообще какала бабочками.
И вот тут на помощь приходят машины состояний, они же конечные автоматы (те самые которые используются в регулярных выражениях).

Собственно через регулярные выражения я к ним и пришёл.
Читать дальше →
Всего голосов 51: ↑48 и ↓3+45
Комментарии50

Тестирование встроенных систем

Время на прочтение9 мин
Количество просмотров28K
image Я являюсь участником проекта по разработке ОСРВ Embox для встроенных систем. Чаще всего ОС для встроенных систем поддерживает множество аппаратных платформ, и мы не исключение. Также в проекте имеется множество сервисов и библиотек: ssh, telnet, Qt и т.д. Все эти сервисы и библиотеки хотелось бы иметь в рабочем состоянии на различных платформах.

Я хорошо помню то время, когда именно мне приходилось поддерживать в рабочем состоянии Qt. Это был ужас! Вот я пришел днем на работу, что-то опять сломано. Начинаю разбираться. Оказывается, что кто-то пофиксил багу в сетевом стеке и теперь Qt не может создать сокет. Короче говоря, Qt ломалось практически ежедневно и по самым неожиданным причинам.

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

Основная проблема заключается в специфике встроенных систем. А именно, в отличие от систем общего назначения, тестам приходится выполняться в среде со специфической аппаратной поддержкой. Например, у них мало памяти, и поставить средство интеграционного тестирования внутрь такой железки не представляется возможным. То есть нужно тестировать «снаружи». Итак, давайте ближе к делу.
Читать дальше →
Всего голосов 25: ↑25 и ↓0+25
Комментарии16

Управляем сервоприводами из OpenWRT без Arduino

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

Краткий пост о том как можно избежать лишних элементов в системе с сервоприводами и использовать железо по максимуму


Предыстория


Я весьма давно и плотно болен Linux, OpenWRT, сетевыми и беспроводными технологиями, безопасностью, а теперь еще и стал потихоньку заражаться роботостроением и умными домами. Все это очень круто, особенно когда есть столько готовых шаблонов, свободного и открытого исходного кода, а временами можно совсем перейти на сторону зла и быстренько накидать логику в Scratch.
Но потом просыпается интерес уже не просто поморгать светодиодами, вау-эффект проходит и необходимо решать прикладные задачи. Вроде и тут следовало бы восхититься обилием готового, но дьявол как всегда в деталях. Одно дело — управлять логикой ЕСТЬ/НЕТ, это позволяет легко включать или отключать свет, можно даже датчик качества воздуха (MQ-135) подцепить и включать вытяжку при необходимости. Все это круто, но на дворе 21 век, космические корабли бороздят большой театр и душа просит чего-то по-круче. Взор мой пал на управление сервоприводами. Почему бы и нет? Тема весьма широкая, ведь они присутствуют во многих механизмах, от роботов до простых открывалок-закрывалок. Плюсом так же является и то что в летательных аппаратах двигатели управляются аналогично и это расширяет диапазон использования просто в разы.

Заинтересовавшихся приглашаю под кат

Те кто уже давно знаком с темой и хочет перейти сразу к сути — смело проматывайте до раздела "Пошаговая инструкция".
Читать дальше →
Всего голосов 38: ↑34 и ↓4+30
Комментарии7

FAQ по программированию под Android от новичка, и для новичков

Время на прочтение16 мин
Количество просмотров158K
Предисловие к FAQ.

Программирование является моим хобби уже давно (правда на других языках и платформах), но до андроида руки дотянулись совсем недавно. Прошло несколько этапов, прежде чем я добрался до написания программ.
Сначала была пара месяцев посвященных Java, на сайте с «Сгибателем».
После, долгие попытки подружится с Eclipse, закончившиеся побегом на Android Studio.
На данный момент выпущено 7 программ и две находятся в разработке.
Данная подборка возникла как попытка структурирования и оптимизации полученной в процессе информации.
Заранее извиняюсь за возможно некорректную терминологию – так как практикую обучение через создание, и в теоретической части есть пробелы.

Надеюсь, что приведенные примеры окажутся полезными.
Читать дальше →
Всего голосов 114: ↑98 и ↓16+82
Комментарии23

Увидеть незримое

Время на прочтение8 мин
Количество просмотров92K
Пару лет назад на Хабре проскакивало две статьи, в которых упоминался интересный алгоритм. Статьи, правда, были написаны нечитабильно. В стилистике «новости»(1, 2), но ссылка на сайт присутствовала, подробно можно было разобраться на месте (алгоритм за авторством MIT). А там была магия. Абсолютно волшебный алгоритм, позволяющий увидеть незримое. Оба автора на Хабре этого не заметили и сфокусировались на том, что алгоритм позволял увидеть пульс. Пропустив самое главное.



Алгоритм позволял усиливать движения, невидные глазу, показать вещи, которые никто никогда не видел живьём. Видео чуть выше – презентация c сайта MIT второй части алгоритма. Микросаккады, которые приведены начиная с 29ой секунды, раньше наблюдались только как отражения установленных на зрачках зеркалах. А тут они видны глазами.
Пару недель назад я опять натолкнулся на те статьи. Мне сразу стало любопытно: а что народ сделал за эти два года готового? Но… Пустота. Это определило развлечение на следующие полторы недели. Хочу сделать такой же алгоритм и разобраться, что с ним можно сделать и почему его до сих пор нет в каждом смартфоне, как минимум для измерения пульса.

В статье будет много матана, видео, картинок, немного кода и ответы на поставленные вопросы.
Читать дальше →
Всего голосов 185: ↑180 и ↓5+175
Комментарии44

Как сделать холдер для телефона своими руками

Время на прочтение3 мин
Количество просмотров105K
Многие из нас любят что-то мастерить. Я, к примеру, в детстве любил выжигать по дереву и складывать оригами. Да и, судя по активности в хабе «DIY», многим пользователям хабра по душе что-то создавать.

На днях я навестил свою подругу—дизайнера и застал ее за интересным занятием. Она делала холдер для мобильного телефона СВОИМИ РУКАМИ. Более того, оказалось, это очень увлекательное занятие! Я напросился к ней на «мастер-класс», а после чего решил поделиться с вами своими впечатлениями. Для изготовления собственного холдера нам понадобились простые материалы, которые можно купить в ближайшем канцелярском магазине или просто найти у себя дома. Единственное «НО» — поликапролактон (да-да, не переживайте. Я тоже с первого раза не смог прочесть). Дабы не ломать языки и пальцы, будем называть его просто «термопластик». Помимо произношения названия с ним не было особых затруднений, т.к. его можно приобрести в любом строительном магазине, либо в магазине для творчества (в данной статье вы сможете подробнее узнать о поликапро..., в общем узнать о термопластике).

image
Читать дальше →
Всего голосов 83: ↑70 и ↓13+57
Комментарии83

Tasker tutorials. Часть 1: Добавляем свои команды в Google Now

Время на прочтение3 мин
Количество просмотров118K
Первая статья из цикла, направленного на превращение обычного смартфона в настоящий продвинутый гаджет для истинного гика.
Цель этого цикла статей — научить максимально автоматизировать действия, связанные со смартфоном и показать интересные сферы применения смартфону.
Таскер-это мощнейший инструмент автоматизации действий телефона и его взаимодействия с окружающим миром.
Можно выполнять различные действия как реакцию на приложения (запуск/остановка), время, дату, смену местоположения, показателей датчиков телефона или событий (в том числе различных плагинов).
В первой части цикла будут рассмотрена возможность добавления своих команд в Google Now и выполнение различных действий после распознавания команды, что может вывести домашнюю автоматизацию на новый уроверь.

Google Now


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



Затем добавили распознавание фразы на любом экране (раньше было только на рабочем столе и в карточках Google Now), хотя официально работает пока только на Английском. На хабре уже была статья с доступными командами да и на YouTube есть много видео с примерами.
С помощью голоса можно набирать смс, звонить, создавать заметки и ставить таймер/будильник и т.д… Но что делать, если этого не достаточно и хочется добавить свои команды? Например «Выключи вайфай» до сих пор не работает даже на английском. Просто отправляет в настройки.
Если интересно как добавить практически любую голосовую команду для Google Now без наличия рут прав (сразу оговорюсь, только на поддерживаемых аппаратах), прошу под кат. Это добавит практически безграничные возможности домашней автоматизации да и просто поможет облегчить жизнь и высвободить время.
Читать дальше →
Всего голосов 28: ↑25 и ↓3+22
Комментарии23

Разработка игр под Android

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

Всем привет! В нашем издательстве только что вышла книжка «Разработка игр под Android» авторства Дж Ди Марцио (J. F. DiMarzio), она же — «Android Game Recipes». Как видно из названия — данное компактное издание представляет собой не только пошаговое руководство для тех, кто только собирается начать писать игры под Android, но и полноценный cookbook, с решениями проблем и ответами на распространенные вопросы. Стоит отметить, что книга написана как помощник в решении конкретных вопросов и сценариев в процессе разработки игры, и подразумевает знакомство читателя с Java.
Читать дальше →
Всего голосов 20: ↑14 и ↓6+8
Комментарии9

Никогда не «не делай» того, о чем пожалеешь или умный дом с CCU.IO

Время на прочтение12 мин
Количество просмотров119K
На хабре последнее время появляется много статей об автоматизации дома. Какие-то статьи с пространными размышлениями на тему умного дома, не несущие полезной нагрузки. Какие-то с конкретной реализацией на конкретном проприетарном железе, но им не хватает чего то для того, что бы быть установленными или запущенными в другом доме.

Хочу представить программную платформу автоматизации для дома на базе Node.js, которую можно скачать со всеми исходниками и установить прямо сейчас практически одним кликом (Windows) или одной командой (Linux/Debian).


Подробности
Всего голосов 84: ↑81 и ↓3+78
Комментарии88

Android last.fm скробблер WAIL Beta теперь Open Source

Время на прочтение4 мин
Количество просмотров12K
Привет. Примерно полгода назад я запилил Android приложение для скробблинга проигрываемой в разных плеерах музыки в last.fm.

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

Я пишу этот пост на Хабр с небольшой надеждой на то, что здесь есть люди, которым было бы интересно развивать WAIL дальше, добавлять новые фичи, фиксить баги и просто участвовать в оупен-сорс проекте Android приложения :)

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

Скриншоты для поддержания интереса


Читать далее... И... делать пулл-реквесты!
Всего голосов 32: ↑29 и ↓3+26
Комментарии19

Реактивное программирование под Android

Время на прочтение10 мин
Количество просмотров90K
Отказоустойчивость, отзывчивость, ориентированность на события и масштабируемость — четыре принципа нынче популярного реактивного программирования. Именно следуя им создаётся backend больших систем с одновременной поддержкой десятков тысяч соединений.

Отзывчивость, простота, гибкость и расширяемость кода — принципы, которые можно закрепить за реактивным UI.

Наверняка, если совместить реактивные backend и UI, то можно получить качественный продукт. Именно его мы и попытались сделать, разрабатывая 2GIS Dialer — звонилки, которая работает через API и при этом должна оставаться быстрой и удобной.


Читать дальше →
Всего голосов 52: ↑49 и ↓3+46
Комментарии58

Как SQL Server каждые два-три часа переключался на использование не оптимального плана выполнения запроса

Время на прочтение3 мин
Количество просмотров24K
Последние пару дней работал над интересной задачей и хотел бы поделиться интересным опытом с сообществом.

В чём проявляется проблема:
Запускаю хранимую процедуру (хранимку) по выборке данных для отчета — выполняется три секунды, смотрю профайлером на бою — у пользователей те же результаты. Но проходит три часа и та же хранимка, с теми же параметрами выполняется уже 2 минуты, и аналогично у пользователей. Причём данные в используемые таблицы не вставлялись/удалялись, окружение не меняли и админы не делали настроек.
Читать дальше →
Всего голосов 27: ↑25 и ↓2+23
Комментарии21

Информация

В рейтинге
2 005-й
Зарегистрирован
Активность