Исторически так сложилось, что моей «родной» операционной системой есть Windows. В предыдущей статье Интернет термометр или телеметрия загородного дома я пытался показать «чем мы не кони», «мы тоже можем» или «обезьяну тоже можно научить» причем легко. Но настал час «Х» — переезд на linux. Этот переезд ассоциируется у меня с вынужденной миграцией — ледниковым периодом.
Вадим @tzirulnicov
User
Electric Imp — Делаем WiFi термометр
5 min
71KМногие из вас знакомы с анонсом Electric Imp, который не так давно был на хабре, кроме того уже начинают появляться первые впечатления от его использования. Поскольку это устройство мне показалось перспективным и довольно интересным, я при первом появлении в продаже версии developer edition заказал себе чтобы немного поиграться и оценить возможности.
+35
Беспроводная передача данных, ISM-диапазон
16 min
39KTutorial
Recovery Mode
В последнее время на Хабре было описано множество примеров реализации погодных термометров, систем сбора информации, управлением в системах «умный дом» — как проводных, передающих информацию по Ethernet, так и беспроводных, по WiFi™. В каждом конкретном случае — есть своя специфика, есть свои плюсы и минусы. И в данном материале речь пойдет об еще одном способе передачи данных — передаче в ISM-диапазоне 868 МГц.
+38
Coroutines в PHP и работа с неблокирующими функциями
18 min
79KTutorial
Translation
Одним из самых больших нововведений в PHP 5.5 будет поддержка генераторов и корутин (сопрограмм). Генераторы уже достаточно были освещены в документации и в нескольких других постах (например в этом или в этом). Сопрограммы же получили очень мало внимания. Это гораздо более мощный, но и более сложный для понимания и объяснения, инструмент.
В этой статье я покажу как реализовать планировщик задач с использованием корутин, чтобы вы поняли, что с ними можно делать и как их применять. Начнем с нескольких вступительных слов. Если вы считаете, что вы уже достаточно хорошо знаете как работают генераторы и корутины, тогда можете сразу перейти к разделу «Совместная многозадачность».
Суть генератора в том, что это функция, которая возвращает не просто одно значение, а последовательность значений, где каждое значение выброшено одно за другим. Или, другими словами, генераторы позволяют вам реализовать итератор, без лишнего кода.
В этой статье я покажу как реализовать планировщик задач с использованием корутин, чтобы вы поняли, что с ними можно делать и как их применять. Начнем с нескольких вступительных слов. Если вы считаете, что вы уже достаточно хорошо знаете как работают генераторы и корутины, тогда можете сразу перейти к разделу «Совместная многозадачность».
Генераторы
Суть генератора в том, что это функция, которая возвращает не просто одно значение, а последовательность значений, где каждое значение выброшено одно за другим. Или, другими словами, генераторы позволяют вам реализовать итератор, без лишнего кода.
+95
Что не пишут в википедии о глобальных навигационных спутниковых системах
8 min
42KВдохновлённый серией постов «Теория радиоволн», я решился на аналогичный пост о системах спутникового позиционирования. Я работаю в структуре, которая занимается обеспечением функционирования системы ГЛОНАСС, поэтому постараюсь рассказать о ней и её конкурентах с несколько другой точки зрения. Пост будет именно об их устройстве, попутно хотелось бы развеять несколько мифов.
+170
Ещё 10 тысяч бесплатных контроллеров Leap Motion для разработчиков
1 min
30KВ мае этого года американский стартап Leap анонсировал футуристический контроллер Leap Motion с распознаванием жестов в воздухе. Он превосходит Microsoft Kinect по многим параметрам. Например, точность распознавания жестов 0,01 мм, что в сто раз лучше, чем в Kinect. Контроллер подключается к компьютеру по USB.
Весь текущий год компания Leap распространяла SDK и рассылала образцы контроллеров разработчикам программных приложений. Всего было выслано 2000 штук. Сейчас, на финальном этапе тестирования, компания объявила об увеличении количества бесплатных образцов до 12000 и выпуске новой версии SDK.
Весь текущий год компания Leap распространяла SDK и рассылала образцы контроллеров разработчикам программных приложений. Всего было выслано 2000 штук. Сейчас, на финальном этапе тестирования, компания объявила об увеличении количества бесплатных образцов до 12000 и выпуске новой версии SDK.
+45
Экспериментальная архитектура GPS-трекеров позволяет снизить энергопотребление на три порядка
4 min
17KОпределение координат с помощью GPS — весьма энергоёмкий процесс. В отличие от смартфонов, которые всё равно каждый вечер ставят на подзарядку, или автомобильных навигаторов, автономные GPS-трекеры, которые используют биологи для отслеживания миграций животных, имеют очень жёсткие требования к энергопотреблению. Довольно часто их снабжают не только мощными аккумуляторами, но и солнечными батареями, чтобы обеспечить работу в течение многих месяцев.
В Microsoft Research предложили разделить процесс сбора геолокационной информации на два этапа — запись «сырого» сигнала со спутников GPS и расчёт координат на основе этой информации. Это позволило снизить расход электроэнергии на запись одной точки трека на три порядка. Чтобы понять, как именно удалось этого добиться, придётся сначала разобраться, как работает GPS.
В Microsoft Research предложили разделить процесс сбора геолокационной информации на два этапа — запись «сырого» сигнала со спутников GPS и расчёт координат на основе этой информации. Это позволило снизить расход электроэнергии на запись одной точки трека на три порядка. Чтобы понять, как именно удалось этого добиться, придётся сначала разобраться, как работает GPS.
+33
Электрический бес и углекислый газ
5 min
124KНа днях из Америки приехало два любопытных устройства: микрокомпьютер electric imp и оптический датчик уровня углекислого газа в воздухе K30. Каждый из них любопытен по-своему, расскажу немного о каждом из них и о их соединении.
Импы — это вид бесенят в немецком фольклоре. А также сокращение от Interface Message Processor, одного из проектов-предшественников Интернета. Создатели системы признают обоих предшественников. В жизни эта штука оказалась довольно покладистой, хорошо документированной платформой для разработки embedded приложений.
Статью-обзор интернет анонсов можно почитать в статье на хабре, я постараюсь рассказать о конкретике и тонкостях, которые выяснились в процессе работы.
Electric imp
Импы — это вид бесенят в немецком фольклоре. А также сокращение от Interface Message Processor, одного из проектов-предшественников Интернета. Создатели системы признают обоих предшественников. В жизни эта штука оказалась довольно покладистой, хорошо документированной платформой для разработки embedded приложений.
Статью-обзор интернет анонсов можно почитать в статье на хабре, я постараюсь рассказать о конкретике и тонкостях, которые выяснились в процессе работы.
+49
Webshell.io — командная строка для интернета
1 min
13KWebshell.io предназначен для создания прототипов и мэшапов на основе JavaScript API различных веб-сервисов. Что-то вроде IFTTT, но для программистов. С его помощью можно в интерактивном режиме писать запросы на JavaScript и CoffeeScript к клиентским и серверным API Google, Facebook, Twitter и многих других популярных сайтов и видеть их ответы в консоли, а так же создавать свои приложения, API которых, в свою очередь, будет доступен другим разработчикам. Webshell также поддерживает рендеринг HTML из шаблонов EJS.
+35
История взаимодействия «чайника» и DS18B20 посредством Raspberry Pi с отправкой данных на narodmon.ru
7 min
178KДоброе время суток, уважаемое хабрасообщество!
Неделю назад я наконец-то дождался свою Малинку. Этот пост о том, как можно набить шишки в такой простой задаче как работа с датчиками температуры.
Кому интересно — добро пожаловать под кат.
Неделю назад я наконец-то дождался свою Малинку. Этот пост о том, как можно набить шишки в такой простой задаче как работа с датчиками температуры.
Кому интересно — добро пожаловать под кат.
+25
Разработчик конструкторов Arduino названа предпринимателем года в США
3 min
77KПо мнению экспертов журнала Entrepreneur Magazine, Лимор Фрид сумела распознать некую потребность, стремление людей сделать нечто своими руками. Это несравненное удовольствие известно каждому человеку, который хотя бы раз скрутил кровать или шкафчик, следуя чётким инструкциям по сборке, которые поставляются с набором деталей. Удовольствие от того, что ты сам создал новую вещь, нечто такое, чего не существовало раньше.
+95
Миникомпьютер из роутера с OpenWRT: разрабатываем USB-видеокарту
25 min
183KДобрый день, уважаемые хабровчане. В этом цикле статей мы с вами пройдем достаточно длинный, но весьма интересный путь по превращению обычного роутера в мини-компьютер с LCD-дисплеем. Для этого мы разработаем сначала USB-видеокарту на базе микроконтроллера STM32F103, потом тестовый драйвер, который позволит нам выводить на него графику, и, наконец – полноценный драйвер фреймбуффера, благодаря которому можно будет запустить настоящие графические приложения, такие как x-сервер. Заодно мы научимся включать наш код в дерево исходников OpenWRT, допиливать его ядро и делать прочие полезные вещи.
Ну а в самом конце мы получим результат, который, я надеюсь, вызовет ностальгическую слезу у многих читателей. Я постараюсь излагать материал таким образом, чтобы в конце каждого этапа мы получали осязаемый результат, не дающий угаснуть энтузиазму. Итак, начнем.
+272
Своя игра с JavaScript и Canvas
9 min
106KНе так давно мне стало любопытно, насколько сносно современные браузеры поддерживают HTML5 и я не нашел лучшего
способа, чем написать простейший 2D платформер. Помимо удовольствия от разработки игрушки и улучшения навыков в использовании JavaScript, в ходеразвлечения кропотливой работы был накоплен определенный опыт и эмпирическим путем были найдены основные грабли, на многие из которых мне пришлось наступить. В этой статье я попробую кратко и с примерами резюмировать то, что вынес для себя из проделанной работы. Желающих создать свое высокопроизводительное JavaScript приложение, эффективно работающее с графикой, прошу под кат.
способа, чем написать простейший 2D платформер. Помимо удовольствия от разработки игрушки и улучшения навыков в использовании JavaScript, в ходе
+116
Немного о технологии Z-Wave
17 min
102KTutorial
В данной статье хотелось бы осветить немного внутренностей протокола Z-Wave. Учитывая, что владелец протокола компания Sigma Designs (поглотившая Zensys) просит подписывать NDA перед раскрытием особенностей реализации, а часть вообще никому не показывает, подробных данных а сети не найти. Я не собираюсь рассказывать здесь слишком много, чтобы не нарушить подписанный NDA. Надеюсь, и данная информация окажется полезной и сподвигнет кого-нибудь занятся разработкой собственных железок на этом протоколе. Итак, начнём!
+20
Работа с кодировками в Perl
10 min
55KНа хабре уже есть хорошая статья об использовании UTF-8 в Perl — habrahabr.ru/post/53578. Я все же немного по своему
хотел бы рассказать о кодировках.
Очень много вопросов связано с многообразием кодировок, а также используемой терминологией. Кроме того, многие из нас сталкивались с проблемами, которые связаны с кодировками. Я постараюсь в этой статье написать в понятной форме информацию по этому вопросу. Начну с вопроса автоматического определения кодировки текста.
хотел бы рассказать о кодировках.
Очень много вопросов связано с многообразием кодировок, а также используемой терминологией. Кроме того, многие из нас сталкивались с проблемами, которые связаны с кодировками. Я постараюсь в этой статье написать в понятной форме информацию по этому вопросу. Начну с вопроса автоматического определения кодировки текста.
+16
Баллада о «Мультиклете»
22 min
22KНет, я не раскрою вам загадку, скрывающуюся в названии MCp0411100101, но постараюсь развёрнуто ответить на комментарий nerudo, записанный в топике Процессоры «Мультиклет» стали доступнее:
Если кратко, то MCp — это потоковый (от dataflow) процессор с оригинальной EPIC-архитектурой. EPIC — это Explicitly Parallel Instruction Computing, вычисления с явным параллелизмом инструкций. Я применяю этот термин здесь именно в этом смысле, как аббревиатуру, а не как ссылку на архитектуру Itanium-ов. Явный параллелизм в MCp совсем другого рода.
Читая описание архитектурных новшевств этого мультиклета, мне хочется воспользоваться фразой из соседнего топика: «Я не понимаю».
Если кратко, то MCp — это потоковый (от dataflow) процессор с оригинальной EPIC-архитектурой. EPIC — это Explicitly Parallel Instruction Computing, вычисления с явным параллелизмом инструкций. Я применяю этот термин здесь именно в этом смысле, как аббревиатуру, а не как ссылку на архитектуру Itanium-ов. Явный параллелизм в MCp совсем другого рода.
+91
Six Towers. История успеха?
3 min
78KЗа три года я выложил в Apple Appstore центнер приложений.
Большинство из них интересны лишь моему воспаленному мозгу.
Некоторые приносят до 100 долларов в год. Не надо ржать, слушайте дальше.
Число игр с ежегодным доходом в 1000 долларов равно числу пальцев на руке английского программиста.
И одно приложение из сотни выстрелило. На сегодняшний день 19 декабря оно заработало 248 457 денег и к Новому 2013 году обещает преодолеет четверть-миллионный рубеж.
Согласно опросу, проведенному на Хабре, 82% местных жителей считают это успехом.
Я вынужден с ними согласиться.
В статье веселый рассказ, как и почему это произошло.
Примеров программного кода не будет. За примерами программного кода идите Вы на stackoverflow.com.
Строгих редакторов предупреждаю, что приложение бесплатное, а статья бессыльная. Значит, без ссылок.
Редакция выбрасывает меня в пятый раз из хаба Game Development. Я в недоумении. .
+222
Создаем адаптивную страницу портфолио с фильтрами
8 min
30KTutorial
Доброго времени суток уважаемые хабражители. На сегодняшний день уже многие знакомы с понятием адаптивный дизайн и я хочу поделиться интересной реализацией страницы портфолио с фильтрами.
ДЕМО
ДЕМО
+13
Индусский код в Микрочипе
8 min
64KПонадобилось быстро подключить SD-карточку к микроконтроллеру, и задача казалась простецкой — добрый микрочип предлагает библиотеки для всего чего угодно (ах, поставить линк на библиотеки — не судьба), но после первого взгляда на их код, волосы на голове начали шевелиться.
Те кто общался с саппортом микрочипа, наверное замечал что зачастую попадает на индийский департамент конторы, и все-бы ничего если бы не подозрение что весь микрочип разом переехал в Бомбей и набрал индийских бездомных школьников для написания своих библиотек.
Не подумайте, что я сейчас пытаюсь гнуть расово верную линию — не имел опыта общения конкретно с индусами, но точно знаю что среди наших их тоже достаточно (не верите — наберите «95» в гугле), но понятие «индусского кода» появилось давно и закрепилось довольно прочно, хотя вы и не найдете его в политкорректной википедии (но гугол о нем точно знает).
Итак, если вы хотите научиться программировать так как это делают в микрочипе следуйте следующим простым советам…
Те кто общался с саппортом микрочипа, наверное замечал что зачастую попадает на индийский департамент конторы, и все-бы ничего если бы не подозрение что весь микрочип разом переехал в Бомбей и набрал индийских бездомных школьников для написания своих библиотек.
Не подумайте, что я сейчас пытаюсь гнуть расово верную линию — не имел опыта общения конкретно с индусами, но точно знаю что среди наших их тоже достаточно (не верите — наберите «95» в гугле), но понятие «индусского кода» появилось давно и закрепилось довольно прочно, хотя вы и не найдете его в политкорректной википедии (но гугол о нем точно знает).
Индусский код (не индийский или индейский) — жаргонное нарицательное название для программного кода крайне низкого качества, использующего простые, но порочные принципы «copy-paste».
Почему именно индусский?
По слухам в Индии с некоторых времен существует практика оценки производительности труда программиста на основе количества написанного кода. Чем больше кода, тем больше программист работает, и, следовательно, выше его оклад. Шустрые индусы быстро сообразили, как обманывать неквалифицированных заказчиков.
Полезное замечание от kaladhara
Житель Индии — индиец, а индус — это последователь любого направления индуизма. Таким образом даже чукча преклонных годов, исповедующий шиваизм (и, вероятно пишуший на с++) — индус.
Итак, если вы хотите научиться программировать так как это делают в микрочипе следуйте следующим простым советам…
+78
Критический взгляд со стороны на процессоры Мультиклет / Multiclet
5 min
27KВ последние пару недель на многих сайтах были заметки о начале производства (на азиатских заводах) отечественных процессоров Multiclet с «прорывной архитектурой и фантастической производительностью», в том числе и на Хабре: Первая опытно-промышленная партия отечественных мультиклеточных процессоров MCp. Все эти заметки в целом рассматривали разработку с позитивной стороны, основываясь на преимуществах в изложении разработчиков. Я всегда интересовался отечественными разработками, и попробую рассказать об этом процессоре чуть более критически, и описать в меру своих возможностей суть этой новой архитектуры.
Источники информации — ограниченная документация доступная на сайте разработчика, и ответы сотрудников компании на вопросы.
Источники информации — ограниченная документация доступная на сайте разработчика, и ответы сотрудников компании на вопросы.
+75
Information
- Rating
- Does not participate
- Location
- Россия
- Date of birth
- Registered
- Activity