Цель данной статьи — познакомить читателя с различными сетевыми протоколами прикладного уровня, которые используются в GPS-трекерах. Практически каждый производитель оборудования для GPS-мониторинга считает своим долгом изобрести новый протокол для взаимодействия между устройством и сервером мониторинга. Часто при разработке оных инженеры прибегают к изощренным решениям для экономии трафика или упрощения жизни разработчикам прошивки устройств.
Читать полностью »
Рубрика «Программирование» - 802
Зоопарк коммуникационных протоколов для GPS-трекеров (часть 1)
2015-03-11 в 7:18, admin, рубрики: gps мониторинг, gps трекеры, open source, Программирование, сетевые протоколы, Сетевые технологииКак мы получили $30k от Google RISE, как дальше учить детей программировать и как стать партнером в нашей команде?
2015-03-10 в 14:21, admin, рубрики: brainstorming, Google, rise, Блог компании Кодабра, дети, образование, Программирование, метки: google, riseВсе очень просто. Как-то партнеры переслали нам ссылку на конкурс. Дальше мы зарегистрировались, описали заявку, прошли интервью по хангауту и после проверки в течении нескольких месяцев пришло долгожданное письмо счастья. Стоит также добавить, что на момент написания мы проводили обучение в 10 школах в Москве, у нас появилось свежеиспеченное видео от уроков, лучшие моменты которого смонтировала и оформила команда lesnikova. Также стоит добавить, что письмо пришло в 01:00 по Мск, и плотный поток радости помешал в тот день уснуть всей команде.
OData + Angular.js + Bootstrap + JavaScript Grid = приложение за 5 минут
2015-03-10 в 14:14, admin, рубрики: angular.js, Bootstrap, javascript, json, kendo ui, odata, rest, rest apiful api, RESTful, Блог компании NitrosData, Веб-разработка, интерфейсы, ПрограммированиеПредположим в некотором проекте появилась необходимость добавить некоторую форму опроса пользователей на веб сайте (детальная форма) и форму для просмотра и редактирования списка пользователей для администратора системы (списковая форма).
Рассмотрим процесс создания этих форм с использованием OData, Angular.js, Bootstrap и JavaScript Grid. Все требования к такому приложению уже реализованы в этих инструментах, и нам практически не требуется ничего писать.
Assembler вместе с C++ в Visual Studio 2013
2015-03-10 в 13:25, admin, рубрики: c++, Visual Studio, visual studio 2013, Программирование Идея этой статьи отнюдь не новая, но, поскольку мне пришлось потратить два дня на разбор всех ошибок компиляции и линковки, а также поиск ответов на свои вопросы, решил, что читатели Хабра заслуживают на экономию времени. Тех, кто желает быстро узнать, как использовать одновременно *.asm и *.cpp файлы в проекте, как вызывать методы C++ из ассемблера и наоборот, прошу пожаловать под кат.
Читать полностью »
Алгоритм сортировки вставками: реализация на PHP
2015-03-10 в 10:21, admin, рубрики: C, php, алгоритм сортировки, Алгоритмы, книга про алгоритмы, Программирование, метки: алгоритм сортировкиРешил недавно повторить алгоритмы и структуры данных. Из разных источников у меня уже был составлен следующий список литературы по этим темам:
- С. Скиена – Алгоритмы. Руководство по разработке. 2011
- S. Dasgupta, C. Papadimitriou, U. Vazirani. Algorithms. 2006
- А. Х. Шень. Программирование: теоремы и задачи. 2007
- М. А. Бабенко, М. В. Левин. Введение в теорию алгоритмов и структур данных. 2012
- Т. Кормен, Ч. Лейзерсон, И. Ривест, К. Штайн. Алгоритмы: построение и анализ. 2013
- Н. Вирт. Алгоритмы и структуры данных. 2010
Так как у меня уже была первая книга, начал с нее. Содержание понравилось, примеры не на псевдокоде, а на реальных ЯП (в частности C) тоже вполне устроили.
В самом начале книги автор (Стивен С. Скиена) приводит наглядный пример с алгоритмом сортировки вставками, дабы подчеркнуть важность применения качественных алгоритмов в любой компьютерной программе.
Читать полностью »
Еженедельник io.js, 6 марта 2015
2015-03-10 в 6:26, admin, рубрики: io.js, javascript, node.js, Веб-разработка, ПрограммированиеРелиз 1.5.0, Buffer.indexOf(), Tessel 2 и многое другое.
Lock-free структуры данных. Concurrent maps: skip list
2015-03-10 в 6:00, admin, рубрики: c++, libcds, lock-free, map, skip list, Алгоритмы, параллельное программирование, Программирование 
В предыдущих статьях (раз, два) мы рассматривали классический hash map с хеш-таблицей и списком коллизий. Был построен lock-free ordered list, который послужил нам основой для lock-free hash map.
К сожалению, списки характеризуются линейной сложностью поиска O(N), где N — число элементов в списке, так что наш алгоритм lock-free ordered list сам по себе представляет небольшой интерес при больших N.
Или все же представляет?..
Читать полностью »
FreeRDP: звук, заикания, OSS вместо ALSA
2015-03-10 в 3:56, admin, рубрики: alsa, freebsd, FreeRDP, open source, oss, underrun occurred, Программирование, Работа со звуком, Сетевые технологии, метки: FreeBSD, FreeRDP 
FreeRDP довольно популярный инструмент для доступа к Windows машинам с не windows систем.
Не смотря на свою популярность у проекта документация отвратительная: актуально и полно освещены только вопросы как собрать из исходников и как начать кодить и слать патчи.
Если требуется что то чуть подробнее узнать про использование то лучше сразу идти на IRC канал к разработчикам или лезть в исходники, всё остальное слухи и/или устарело.
У меня были проблемы со звуком во FreeBSD:
ALSA lib pcm.c:7905:(snd_pcm_recover) underrun occurred
впрочем, далеко не у меня одного и не только во FreeBSD.
REST сервис на C++: POCO+Angular TODO
2015-03-09 в 11:18, admin, рубрики: AngularJS, c++, Poco, rest, Веб-разработка, Программирование, метки: angularjs, POCO POCO — кроссплатформенная open-source библиотека на С++ под Boost Software License: ru.wikipedia.org/wiki/POCO.
POCO имеет в своем составе средства для создания веб-сервисов c RESTful API.
В данной статье рассмотрено создание такого сервиса на примере TODO.

Читать полностью »
Операции с файлами в Perl 6
2015-03-08 в 22:33, admin, рубрики: perl, perl 6, rakudo, ПрограммированиеДиректории
Вместо opendir и его друзей, в Perl 6 есть одна функция dir, которая возвращает список файлов из директории (по умолчанию, из текущей). Вместо тысячи слов:
Читать полностью »
