<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Tamkovich.com: Телеком/VoIP блог</title>
	<atom:link href="http://tamkovich.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://tamkovich.com</link>
	<description>Телеком, ИТ и все все все</description>
	<lastBuildDate>Thu, 11 Mar 2010 13:53:05 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Sony Move на подходе</title>
		<link>http://tamkovich.com/2010/03/sony-move-coming-soon/</link>
		<comments>http://tamkovich.com/2010/03/sony-move-coming-soon/#comments</comments>
		<pubDate>Thu, 11 Mar 2010 13:53:05 +0000</pubDate>
		<dc:creator>sergee</dc:creator>
				<category><![CDATA[Разное]]></category>
		<category><![CDATA[PS3]]></category>
		<category><![CDATA[Sony]]></category>

		<guid isPermaLink="false">http://tamkovich.com/?p=1064</guid>
		<description><![CDATA[
Sony Move &#8211; аналог Wii MotionPlus от Nintendo. В продаже его пока нет, ожидается в 3ем квартале этого года. Предполагаемая цена &#8211; 100$ за комплект. В комплект входит Playstation Eye от Sony. Ждать осталось совсем недолго. А пока можно посмотреть демонстрацию.




]]></description>
			<content:encoded><![CDATA[<p align=justify>
Sony Move &#8211; аналог Wii MotionPlus от Nintendo. В продаже его пока нет, ожидается в 3ем квартале этого года. Предполагаемая цена &#8211; 100$ за комплект. В комплект входит Playstation Eye от Sony. Ждать осталось совсем недолго. А пока можно посмотреть демонстрацию.
</p>
<p><center><br />
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="437" height="265" id="viddler"><param name="movie" value="http://www.viddler.com/simple_on_site/2354555e" /><param name="allowScriptAccess" value="always" /><param name="allowFullScreen" value="true" /><param name="flashvars" value="fake=1"/><embed src="http://www.viddler.com/simple_on_site/2354555e" width="437" height="265" type="application/x-shockwave-flash" allowScriptAccess="always" allowFullScreen="true" flashvars="fake=1" name="viddler" ></embed></object><br />
</center></p>
]]></content:encoded>
			<wfw:commentRss>http://tamkovich.com/2010/03/sony-move-coming-soon/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Мнение о Google V8</title>
		<link>http://tamkovich.com/2010/03/google-v8/</link>
		<comments>http://tamkovich.com/2010/03/google-v8/#comments</comments>
		<pubDate>Thu, 11 Mar 2010 08:25:24 +0000</pubDate>
		<dc:creator>sergee</dc:creator>
				<category><![CDATA[Разное]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[программирование]]></category>

		<guid isPermaLink="false">http://tamkovich.com/?p=1061</guid>
		<description><![CDATA[
Google V8 это высокопроизводительный JavaScript движок распространяемый под лицензией BSD. С недавних пор, компания Google активно продвигает V8, предлагая сторонним разработчикам включать V8 в свои проекты. Изучая вопрос подключения V8 к Asterisk, наткнулся на статью Игоря Сысоева (автора великолепного веб сервера nginx):

&#8230; Поскольку V8 разрабатывается в первую очередь для Chrome, то это наложило на него [...]]]></description>
			<content:encoded><![CDATA[<p align=justify>
Google V8 это высокопроизводительный JavaScript движок распространяемый под лицензией BSD. С недавних пор, компания Google активно продвигает V8, предлагая сторонним разработчикам включать V8 в свои проекты. Изучая вопрос подключения V8 к <a href=http://tamkovich.com/asterisk/ >Asterisk</a>, наткнулся на статью Игоря Сысоева (автора великолепного веб сервера nginx):</p>
<blockquote><p>
&#8230; Поскольку V8 разрабатывается в первую очередь для Chrome, то это наложило на него существенный отпечаток и, перефразируя высказывание Генри Форда о цвете машины, можно сказать, что V8 будет хорошо работать в любой программе, при условии, что эта программа называется Chrome. </p>
<p>Прежде всего, V8 не умеет обрабатывать ошибки выделения памяти — он просто завершает процесс. Это приемлемо для такого браузера, как Chrome, который каждую страницу отображает в отдельном процессе, и аварийное завершение одного процесса никак не сказывается на остальных страницах, но для сервера, обрабатывающего в одном процессе тысячи одновременных соединений, это не подходит&#8230;
</p></blockquote>
<p>Согласен с Игорем по каждому пункту.
</p>
<p><span id="more-1061"></span></p>
<ul>
<li> <a href=http://sysoev.ru/prog/v8.html >Почему Google V8 пока не подходит для встраивания в сервера</a>
<li> <a href=http://code.google.com/intl/ru-RU/apis/v8/intro.html >V8 JavaScript Engine Introduction</a>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://tamkovich.com/2010/03/google-v8/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Новый Nissan Patrol 2010</title>
		<link>http://tamkovich.com/2010/03/nissan-patrol/</link>
		<comments>http://tamkovich.com/2010/03/nissan-patrol/#comments</comments>
		<pubDate>Wed, 10 Mar 2010 20:07:33 +0000</pubDate>
		<dc:creator>sergee</dc:creator>
				<category><![CDATA[Разное]]></category>

		<guid isPermaLink="false">http://tamkovich.com/?p=1057</guid>
		<description><![CDATA[
2010 год выдался богатым на интересные автомобильные премьеры. Недавно Toyota представила новый Landcruiser Prado 2010. А 14 февраля, в ОАЭ, Nissan представил новый Patrol 2010. Предыдущий, под названием Nissan Patrol GR II (Y61) с небольшими косметическими изменениями выпускаося с 1997 года, т.е. 13 лет! Новый Nissan Patrol внешне напоминает Toyota Landruiser 200. Рассмотрите его внимательно, [...]]]></description>
			<content:encoded><![CDATA[<p align=justify>
2010 год выдался богатым на интересные автомобильные премьеры. Недавно Toyota представила <a href=http://www.youtube.com/watch?v=bkUANViXjug >новый Landcruiser Prado 2010</a>. А 14 февраля, в ОАЭ, Nissan представил новый Patrol 2010. Предыдущий, под названием Nissan Patrol GR II (Y61) с небольшими косметическими изменениями выпускаося с 1997 года, т.е. 13 лет! Новый Nissan Patrol внешне напоминает Toyota Landruiser 200. Рассмотрите его внимательно, скоро таких будет очень много на улицах Москвы.
</p>
<p><center><br />
<object width="640" height="385"><param name="movie" value="http://www.youtube.com/v/VI95CJn9WvQ&#038;hl=ru_RU&#038;fs=1&#038;hd=1"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/VI95CJn9WvQ&#038;hl=ru_RU&#038;fs=1&#038;hd=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="640" height="385"></embed></object><br />
</center></p>
]]></content:encoded>
			<wfw:commentRss>http://tamkovich.com/2010/03/nissan-patrol/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Конкурс инноваций Cisco 2010</title>
		<link>http://tamkovich.com/2010/03/cisco-innovation-challenge-2010/</link>
		<comments>http://tamkovich.com/2010/03/cisco-innovation-challenge-2010/#comments</comments>
		<pubDate>Mon, 01 Mar 2010 13:20:39 +0000</pubDate>
		<dc:creator>sergee</dc:creator>
				<category><![CDATA[Cisco]]></category>

		<guid isPermaLink="false">http://tamkovich.com/?p=1037</guid>
		<description><![CDATA[

Компания Cisco, приглашает всех желающих принять участие в конкурсе инновационных идей в области сетевых технологий. Для того, что бы принять участие в конкурсе, необходимо оформить заявку на сайте Cisco. Заявки принимаются с 1го марта по 24 апреля. Итоги конкурса будут подведены 24 июня.

Все участники конкурса делятся на четыре категории. Участники &#8211; это все кто подали [...]]]></description>
			<content:encoded><![CDATA[<p><img src=/wp-content/uploads/2010/03/cisco_logo.jpg align=right ></p>
<p align=justify>
Компания <a href=http://tamkovich.com/cisco/ >Cisco</a>, <a href=http://www.ciscoexpo.ru/innovation >приглашает всех желающих</a> принять участие в конкурсе инновационных идей в области сетевых технологий. Для того, что бы принять участие в конкурсе, необходимо <a href=http://www.ciscoexpo.ru/innovation >оформить заявку</a> на сайте <a href=http://tamkovich.com/cisco/ >Cisco</a>. Заявки принимаются с 1го марта по 24 апреля. Итоги конкурса будут подведены 24 июня.</p>
<p align=justify>
Все участники конкурса делятся на четыре категории. Участники &#8211; это все кто подали заявку на участие в конкурсе. В качестве приза участники получают значок с логотипом <a href=http://tamkovich.com/cisco/ >Cisco</a> <img src='http://tamkovich.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  Работы всех участников внимательно изучает жюри, из присланных работ отбираются работы для участия в конкурсе. Конкурсанты (участники, чьи работы прошли отбор) получают следующие подарки: значок с логотипом <a href=http://tamkovich.com/cisco/ >Cisco</a>, футболка <a href=http://tamkovich.com/cisco/ >Cisco</a> Club, и кружка <a href=http://tamkovich.com/cisco/ >Cisco</a> Club. Кружка, на картинке, выглядит добротно! Затем из конкурсантов выберут 12 финалистов, по 3 в каждой номинации (о них чуть позже). Финалистов ждёт ещё больше призов! А именно: памятный сертификат от <a href=http://tamkovich.com/cisco/ >Cisco</a>, ваучер от Учебного центра &laquo;Сетевая Академия &laquo;ЛАНИТ&raquo; на один или несколько экзаменов по программе профессиональной сертификации <a href=http://tamkovich.com/cisco/ >Cisco</a>(по выбору): CCNA, CCNA Concentrations, CCNP, CCIE. Номинальная стоимость ваучера 15000 рублей, гарнитура Jabra GO6430 или Plantronics Voyager Pro USB UC (по  выбору), беспроводной маршрутизатор Linksys WRT 160NL и толстовка <a href=http://tamkovich.com/cisco/ >Cisco</a> Club. Богато, а ведь это даже не победители! Кстати о победителях. Победителей будет трое, выберут их, как нетрудно догадаться, из числа финалистов &#8211; какая-то из номинаций окажется без победителя. Все победители получат: памятный сертификат от <a href=http://tamkovich.com/cisco/ >Cisco</a>, ваучер от Учебного центра &laquo;Сетевая Академия &laquo;ЛАНИТ&raquo; на один или несколько экзаменов по программе профессиональной сертификации <a href=http://tamkovich.com/cisco/ >Cisco</a>(по выбору): CCNA, CCNA Concentrations, CCNP, CCIE (Номинальная стоимость ваучера 15000 рублей), ваучер от Учебного ценра Fast Lane на один или несколько учебных курсов по программе профессиональной сертификации <a href=http://tamkovich.com/cisco/ >Cisco</a>(по выбору, в рамках действующего расписания Fast Lane в России): CCNA, CCNA Concentrations, CCNP, CCIE (Номинальная стоимость ваучера 120 000 рублей), ноутбук Apple от компании S-Terra CSP (модель не уточняется), беспроводной маршрутизатор Linksys WRT 160NL, гарнитура Jabra GO6430 или Plantronics Voyager Pro USB UC (по  выбору) и толстовка <a href=http://tamkovich.com/cisco/ >Cisco</a> Club.
</p>
<p><span id="more-1037"></span></p>
<p align=justify>
Признаюсь, призы выглядят крайне заманчиво! Вручение призов состоится 24 июня 2010 года на втором форуме <a href=http://tamkovich.com/cisco/ >Cisco</a> Expo Learning Club. Но прежде чем получать призы, необходимо оформить заявку на участие в конкурсе. При оформлении заявки, необходимо выбрать одну из возможных номинаций для участия. Всего, предусмотрено 4 номинации:
</p>
<ul>
<li> Лучшее интегрированное решение в области унифицированных коммуникаций и IP телефонии
<li> Лучшее решение «Сеть без границ»
<li> Лучшее решение реализующее архитектуру IP NGN 2.0
<li> Лучшее решение для ЦОД нового поколения
</ul>
<p align=justify>
Пару слов о каждой из номинаций. Начну с конца.
</p>
<p align=justify>
<b>Лучшее решение для ЦОД нового поколения</b>. На сегодняшний день мощные Центры обработки данных представляют особенный интерес для банков и других финансовых структур. Компания <a href=http://tamkovich.com/cisco/ >Cisco</a> предоставляет несколько линеек оборудования (например <a href=http://tamkovich.com/cisco/ >Cisco</a> Nexus) для построения современных ЦОД. Проекты в данной категории должны использовать продукты и/или технологии <a href=http://tamkovich.com/cisco/ >Cisco</a> и соответствовать одной из четырёх категорий: Виртуализация ЦОД, Консолидация ввода-вывода, Автоматизация или Облачные вычисления (cloud computing).
</p>
<p align=justify>
<b>Лучшее решение реализующее архитектуру IP NGN 2.0</b>. Для участия в этой номинации необходимо оформить идеи и проекты по использованию потенциала IP-протокола для реализации функционально-интегрированных решений для рядовых потребителей и корпоративных заказчиков в сетях NGN 2.0 с использованием продуктов <a href=http://tamkovich.com/cisco/ >Cisco</a>, собственных разработок конкурсантов и других производителей.
</p>
<p align=justify>
<b>Лучшее решение «Сеть без границ»</b>. В этой номинации принимаются идеи технических решений, основанных на использовании продуктов и технологий <a href=http://tamkovich.com/cisco/ >Cisco</a>, относящихся к предложенной <a href=http://tamkovich.com/cisco/ >Cisco</a> архитектуре «Сеть без границ». Решение должно относиться хотя бы к одной из трех категорий, – «Мобильность без границ», «Производительность без границ» и «Безопасность без границ», &#8211; или сочетать в себе элементы из нескольких категорий.  Приветствуются интегрированные решения, основанные на продуктах <a href=http://tamkovich.com/cisco/ >Cisco</a> в сочетании с собственными разработками конкурсантов и/или программными продуктами других производителей.
</p>
<p align=justify>
<b>Лучшее интегрированное решение в области унифицированных коммуникаций и IP телефонии</b>. Лично для меня эта номинация самая интересная из всех перечисленных. На участие в этой номинации принимаются работы использующие продукты унифицированных коммуникаций и IP телефонии <a href=http://tamkovich.com/cisco/ >Cisco</a>, интегрированных с собственными разработками конкурсантов или с другими популярными программными продуктами в сочетании с собственными разработками конкурсантов.
</p>
<p align=justify>
На что способны Российские разработчики и что выйдет из этого конкурса, мы увидим в конце июня на форуме <a href=http://tamkovich.com/cisco/ >Cisco</a> Expo Learning Club.
</p>
<ul>
<li> <a href=http://www.ciscoexpo.ru/innovation/about >О конкурсе инноваций Cisco</a>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://tamkovich.com/2010/03/cisco-innovation-challenge-2010/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Sony Bravia Monolith &#8211; абсолютный шедевр</title>
		<link>http://tamkovich.com/2010/03/sony-bravia-monolith/</link>
		<comments>http://tamkovich.com/2010/03/sony-bravia-monolith/#comments</comments>
		<pubDate>Mon, 01 Mar 2010 08:52:25 +0000</pubDate>
		<dc:creator>sergee</dc:creator>
				<category><![CDATA[Разное]]></category>
		<category><![CDATA[Sony]]></category>
		<category><![CDATA[Wi-Fi]]></category>

		<guid isPermaLink="false">http://tamkovich.com/?p=1026</guid>
		<description><![CDATA[
Российское отделение фирмы SONY, зазывает всех желающих на презентацию нового телевизора линейки Bravia &#8211; Bravia Monolith (абсолютный шедевр). Лично я очень люблю фирму Sony, качество их продукции неизменно восхищает. А тут значит телевизор Bravia Monolith.






Внешне, новый теливизор от Sony очень похож на дорогие модели от Samsung. И это не удивительно, ведь Samsung и Sony друзья [...]]]></description>
			<content:encoded><![CDATA[<p align=justify>
Российское отделение фирмы SONY, <a href=http://www.sony.ru/staticcontent/SCIS/monolith/index.htm >зазывает всех желающих</a> на презентацию нового телевизора линейки Bravia &#8211; Bravia Monolith (абсолютный шедевр). Лично я очень люблю фирму Sony, качество их продукции неизменно восхищает. А тут значит телевизор Bravia Monolith.
</p>
<p><center><br />
<img src=/wp-content/uploads/2010/03/sony-bravia-nx800.jpg ><br />
</center><br />
<span id="more-1026"></span></p>
<p align=justify>
Внешне, новый теливизор от Sony очень похож на дорогие модели от Samsung. И это не удивительно, ведь Samsung и Sony <a href=http://en.wikipedia.org/wiki/S-LCD >друзья</a> в производстве телевизоров. Модель, которую покажут в Москве называется Sony Bravia NX800 HDTV. Схожесть с другими телевизорами &#8211; только внешняя. Внутри нового телевизора &#8211; концентрат новых технологий. Телевизор будет доступен в трёх размерах: 46, 52 и 60 дюймов. Все модели обладают разрешением 1080p (FullHD). Телевизоры оснащены сенсором освещённости (для автоматической коррекции яркости) и беспроводным интернетом (Wi-Fi) &#8211; анекдоты про холодильники, подключённые к интернету, становятся реальностью. Кроме того, NX800 оснащён браузером, позволяющем просматривать веб-страницы, без дополнительного оборудования. Вероятно браузер в телевизоре аналогичен браузеру в приставке PlayStation3. Розничные цены в России пока не известны. Цены на данную модель в США составят от 2300$ до 3500$ в зависимости от диагонали.</p>
]]></content:encoded>
			<wfw:commentRss>http://tamkovich.com/2010/03/sony-bravia-monolith/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Рязанский Хайтек</title>
		<link>http://tamkovich.com/2010/02/ryazan-hitech/</link>
		<comments>http://tamkovich.com/2010/02/ryazan-hitech/#comments</comments>
		<pubDate>Fri, 26 Feb 2010 08:52:57 +0000</pubDate>
		<dc:creator>sergee</dc:creator>
				<category><![CDATA[Разное]]></category>
		<category><![CDATA[ГЛОНАСС]]></category>
		<category><![CDATA[Рязань]]></category>

		<guid isPermaLink="false">http://tamkovich.com/?p=1018</guid>
		<description><![CDATA[
Рязанские умельцы активно осваивают Российскую (Советскую) систему ГЛОНАСС. Не успели в рунете утихнуть восторги по поводу инновационного сервиса bus62, как Рязанцы подоспели с очередной идеей. Вчера, 25 февраля, на конференции «Состояние, перспективы развития и использования системы ГЛОНАСС и других отечественных космических технологий в интересах социально-экономического развития Рязанской области» был представлен новый проект от разработчиков сервисов [...]]]></description>
			<content:encoded><![CDATA[<p align=justify>
Рязанские умельцы активно осваивают Российскую (Советскую) систему ГЛОНАСС. Не успели в рунете утихнуть восторги по поводу <a href=http://tamkovich.com/2010/02/glonass-ryazan/ >инновационного сервиса bus62</a>, как Рязанцы подоспели с очередной идеей. Вчера, 25 февраля, на конференции «Состояние, перспективы развития и использования системы ГЛОНАСС и других отечественных космических технологий в интересах социально-экономического развития Рязанской области» был представлен новый проект от разработчиков <a href=http://tamkovich.com/2010/02/glonass-ryazan/ >сервисов bus62 и probki62</a>.
</p>
<p><span id="more-1018"></span><br />
<img src=/wp-content/uploads/2010/02/ryazan-tablo.jpg ></p>
<p align=justify>
Представленный проект &#8211; информационное табло для крупных остановок общественного транспорта. Используя информацию сервиса bus62, табло отображает расчётное время прибытия ближайших маршрутов. Потенциал у данной идеи &#8211; огромен. По сути, данное табло &#8211; это ещё одна рекламная площадка, но качество её, на мой взгляд, гораздо выше чем у мониторов в общественном транспорте и торговых центрах.
</p>
<ul>
<li> <a href=http://blog.probki62.ru/?p=116>Информационное табло на остановках.</a>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://tamkovich.com/2010/02/ryazan-hitech/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Как рассчитать расстояние между парой координат (широта долгота)</title>
		<link>http://tamkovich.com/2010/02/how-to-calculate-distance-between-coordinates/</link>
		<comments>http://tamkovich.com/2010/02/how-to-calculate-distance-between-coordinates/#comments</comments>
		<pubDate>Fri, 26 Feb 2010 08:19:05 +0000</pubDate>
		<dc:creator>sergee</dc:creator>
				<category><![CDATA[Разное]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[программирование]]></category>

		<guid isPermaLink="false">http://tamkovich.com/?p=1011</guid>
		<description><![CDATA[
Работая с картами, часто бывает необходимо рассчитать расстояние в километрах между парой координат. Для этого пригодится следующая функция:


function distance&#40;$lat1, $lng1, $lat2, $lng2&#41; &#123;
	$pi80 = M_PI / 180;
	$lat1 *= $pi80;
	$lng1 *= $pi80;
	$lat2 *= $pi80;
	$lng2 *= $pi80;
&#160;
	$r = 6372.797; // mean radius of Earth in km
	$dlat = &#40;$lat2 - $lat1&#41; / 2;
	$dlng = &#40;$lng2 - $lng1&#41; / [...]]]></description>
			<content:encoded><![CDATA[<p align=justify>
Работая с картами, часто бывает необходимо рассчитать расстояние в километрах между парой координат. Для этого пригодится следующая функция:
</p>

<div class="wp_syntax"><div class="code"><pre class="php php" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">function</span> distance<span style="color: #009900;">&#40;</span><span style="color: #000088;">$lat1</span><span style="color: #339933;">,</span> <span style="color: #000088;">$lng1</span><span style="color: #339933;">,</span> <span style="color: #000088;">$lat2</span><span style="color: #339933;">,</span> <span style="color: #000088;">$lng2</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
	<span style="color: #000088;">$pi80</span> <span style="color: #339933;">=</span> M_PI <span style="color: #339933;">/</span> <span style="color: #cc66cc;">180</span>;
	<span style="color: #000088;">$lat1</span> <span style="color: #339933;">*=</span> <span style="color: #000088;">$pi80</span>;
	<span style="color: #000088;">$lng1</span> <span style="color: #339933;">*=</span> <span style="color: #000088;">$pi80</span>;
	<span style="color: #000088;">$lat2</span> <span style="color: #339933;">*=</span> <span style="color: #000088;">$pi80</span>;
	<span style="color: #000088;">$lng2</span> <span style="color: #339933;">*=</span> <span style="color: #000088;">$pi80</span>;
&nbsp;
	<span style="color: #000088;">$r</span> <span style="color: #339933;">=</span> <span style="color:#800080;">6372.797</span>; <span style="color: #666666; font-style: italic;">// mean radius of Earth in km</span>
	<span style="color: #000088;">$dlat</span> <span style="color: #339933;">=</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$lat2</span> <span style="color: #339933;">-</span> <span style="color: #000088;">$lat1</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">/</span> <span style="color: #cc66cc;">2</span>;
	<span style="color: #000088;">$dlng</span> <span style="color: #339933;">=</span> <span style="color: #009900;">&#40;</span><span style="color: #000088;">$lng2</span> <span style="color: #339933;">-</span> <span style="color: #000088;">$lng1</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">/</span> <span style="color: #cc66cc;">2</span>;
	<span style="color: #000088;">$a</span> <span style="color: #339933;">=</span> <span style="color: #990000;">sin</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$dlat</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">*</span> <span style="color: #990000;">sin</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$dlat</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span> <span style="color: #990000;">cos</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$lat1</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">*</span> <span style="color: #990000;">cos</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$lat2</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">*</span> <span style="color: #990000;">sin</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$dlng</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">*</span> <span style="color: #990000;">sin</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$dlng</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #000088;">$c</span> <span style="color: #339933;">=</span> <span style="color: #cc66cc;">2</span> <span style="color: #339933;">*</span> <span style="color: #990000;">atan2</span><span style="color: #009900;">&#40;</span><span style="color: #990000;">sqrt</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$a</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> <span style="color: #990000;">sqrt</span><span style="color: #009900;">&#40;</span><span style="color: #cc66cc;">1</span> <span style="color: #339933;">-</span> <span style="color: #000088;">$a</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span>;
	<span style="color: #b1b100;">return</span> <span style="color: #000088;">$r</span> <span style="color: #339933;">*</span> <span style="color: #000088;">$c</span>;
<span style="color: #009900;">&#125;</span></pre></div></div>

]]></content:encoded>
			<wfw:commentRss>http://tamkovich.com/2010/02/how-to-calculate-distance-between-coordinates/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ГЛОНАСС в Рязани</title>
		<link>http://tamkovich.com/2010/02/glonass-ryazan/</link>
		<comments>http://tamkovich.com/2010/02/glonass-ryazan/#comments</comments>
		<pubDate>Sat, 20 Feb 2010 10:55:12 +0000</pubDate>
		<dc:creator>sergee</dc:creator>
				<category><![CDATA[Разное]]></category>
		<category><![CDATA[ГЛОНАСС]]></category>
		<category><![CDATA[Рязань]]></category>

		<guid isPermaLink="false">http://tamkovich.com/?p=1006</guid>
		<description><![CDATA[
А вот пример реального использования отечественной навигационной системы ГЛОНАСС. В Рязани, некоторые маршруты общественного транспорта (Автобусы, троллейбусы и маршрутки) оборудованы ГЛОНАСС трекерами. Информация, поступающая, с них используется для вычисления пробок, сервисом probki62.ru. Кроме того, поддерживается публичный сервис bus62.ru &#8211; отображающий общественный транспорт на карте города.




 Сервис Bus62. Город Рязань.

]]></description>
			<content:encoded><![CDATA[<p align=justify>
А вот пример реального использования отечественной навигационной системы ГЛОНАСС. В Рязани, некоторые маршруты общественного транспорта (Автобусы, троллейбусы и маршрутки) оборудованы ГЛОНАСС трекерами. Информация, поступающая, с них используется для вычисления пробок, сервисом probki62.ru. Кроме того, поддерживается публичный сервис bus62.ru &#8211; отображающий общественный транспорт на карте города.
</p>
<p><span id="more-1006"></span><br />
<img src=/wp-content/uploads/2010/02/ryazan.jpg align=center ></p>
<ul>
<li> <a href=http://www.bus62.ru/map_pict.html >Сервис Bus62. Город Рязань.</a>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://tamkovich.com/2010/02/glonass-ryazan/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ГЛОНАСС</title>
		<link>http://tamkovich.com/2010/02/glonass/</link>
		<comments>http://tamkovich.com/2010/02/glonass/#comments</comments>
		<pubDate>Fri, 19 Feb 2010 12:13:38 +0000</pubDate>
		<dc:creator>sergee</dc:creator>
				<category><![CDATA[Разное]]></category>
		<category><![CDATA[GPS]]></category>
		<category><![CDATA[ГЛОНАСС]]></category>

		<guid isPermaLink="false">http://tamkovich.com/?p=987</guid>
		<description><![CDATA[
Первые терминальные устройства ГЛОНАСС, разработанные ФГУП НИИКП, наводили ужас. Глядя на их размер &#8211; терзала крамольная мысль, уж не на лампах ли они сделаны?













Но вермя не стоит на месте, в 2009 году, компания ООО &#171;КБ Навис&#187; выпустила интересный продукт &#8211; СН-4706 Одноплатный миниатюрный 24-х канальный навигационный приемник ГЛОНАСС/GPS. И, надо признать, приёмник действительно миниатюрный! Габариты [...]]]></description>
			<content:encoded><![CDATA[<p align=justify>
Первые терминальные устройства ГЛОНАСС, разработанные ФГУП НИИКП, наводили ужас. Глядя на их размер &#8211; терзала крамольная мысль, уж не на лампах ли они сделаны?
</p>
<table border=0 cellspacing=0 cellpadding=0>
<tr>
<td>
<img src=/wp-content/uploads/2010/02/08371863.jpg >
</td>
<td>
<img src=/wp-content/uploads/2010/02/154104092.jpg >
</td>
</tr>
</table>
<p><span id="more-987"></span></p>
<p align=justify>
Но вермя не стоит на месте, в 2009 году, компания ООО &laquo;КБ Навис&raquo; выпустила интересный продукт &#8211; <a href=http://www.navis.ru/catalog_10_1.html >СН-4706 Одноплатный миниатюрный 24-х канальный навигационный приемник ГЛОНАСС/GPS</a>. И, надо признать, приёмник действительно миниатюрный! Габариты приёмника составляют 35х35х6мм при весе 20 грамм. Это отличные показатели для отечественной электроники. Подобный чип позволит создавать бытовые приборы не уступающие по габаритам импортным. Цена данного чипа пока не известна. Предполагаю, что при разумной цене &#8211; широкое распространение технологии ГЛОНАСС гарантировано.
</p>
<p><center><br />
<img src=/wp-content/uploads/2010/02/1228493340_385x300_coin.jpg ><br />
</center></p>
<p align=justify>
Там же, на сайте ООО &laquo;КБ Навис&raquo; , есть и другие интересные изделия. Например СН-4711 USB приемник &#8211; симпатичное внешнее устройство, подключаемое к ПК по (как несложно догадаться <img src='http://tamkovich.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  ) USB. Все продукты ООО &laquo;КБ Навис&raquo; поддерживают стандартный протокол передачи координат NMEA0183, т.е. могут быть использованы с обычными программными навигаторами вместо GPS приёмников. К сожалению, найти в свободной продаже данное устройство так же не удалось.
</p>
<p><center><br />
<img src=/wp-content/uploads/2010/02/1240586438_4711_385.jpg ><br />
</center></p>
<p align=justify>
Возвращаясь к ФГУП НИИКП, прогресса у них куда больше, например разработано миниатюрное устройство &#8211; ГЛОНАСС/GPS трекер &#8211; <a href=http://fgupniikp.ru/content/view/61/24/ >GLOSPACE SGK-T</a>. По функционалу, это устройство очень похоже на <a href=http://tamkovich.com/2009/11/satellite-alarm-gps-gsm/ >спутниковую (gps) сигнализацию</a>, которую я недавно прикупил на eBay. И этого устройства в свободной продаже на данный момент так же нет.
</p>
<p><center><br />
<img src=/wp-content/uploads/2010/02/img_0960.jpg ><br />
</center></p>
<p align=justify>
Самым большим достижением ФГУП НИИКП и системы ГЛОНАСС вообще, на мой взгляд, является то, что в свободной продаже появилась линейка бытовых навигационных систем, под брендом GLOSPACE (разработки ФГУП НИИКП). Системы эти можно найти в свободной продаже. Самая распространённая модель Glospace SGK-70 &#8211; оснащена цветным сенсорным дисплеем с диагональю 7 дюймов и ПО Navitel (бывшая Гисруса). Стоимость Glospace SGK-70 в Москве, на сегодняшний день составляет 13 990 рублей.
</p>
<p><center><br />
<img src=/wp-content/uploads/2010/02/191005.26676_real.jpg ><br />
</center></p>
]]></content:encoded>
			<wfw:commentRss>http://tamkovich.com/2010/02/glonass/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Как разделить строку в Си</title>
		<link>http://tamkovich.com/2010/02/%d1%81-split-string/</link>
		<comments>http://tamkovich.com/2010/02/%d1%81-split-string/#comments</comments>
		<pubDate>Fri, 19 Feb 2010 11:12:00 +0000</pubDate>
		<dc:creator>sergee</dc:creator>
				<category><![CDATA[Разное]]></category>
		<category><![CDATA[программирование]]></category>

		<guid isPermaLink="false">http://tamkovich.com/?p=977</guid>
		<description><![CDATA[
Разделение строки на элементы &#8211; стандартная задача при обработке текста. Многие высокоуровневые языки предоставляют удобные операторы для решения этой задачи. Например язык Perl позволяет разбить строку используя в качестве разделителя другую строку или регулярное выражение с помощью функции split. Результат разбиения возвращается в виде массива:

@elements = split&#40;/\s/, &#34;very simple example&#34;&#41;;

В PHP аналогичную роль выполняют функции [...]]]></description>
			<content:encoded><![CDATA[<p align=justify>
Разделение строки на элементы &#8211; стандартная задача при обработке текста. Многие высокоуровневые языки предоставляют удобные операторы для решения этой задачи. Например язык Perl позволяет разбить строку используя в качестве разделителя другую строку или регулярное выражение с помощью функции split. Результат разбиения возвращается в виде массива:</p>

<div class="wp_syntax"><div class="code"><pre class="perl perl" style="font-family:monospace;"><span style="color: #0000ff;">@elements</span> <span style="color: #339933;">=</span> <span style="color: #000066;">split</span><span style="color: #009900;">&#40;</span><span style="color: #009966; font-style: italic;">/\s/</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">&quot;very simple example&quot;</span><span style="color: #009900;">&#41;</span>;</pre></div></div>

<p>В PHP аналогичную роль выполняют функции explode (для деления по текстовому разделителю) и preg_split для деления по регулярному выражению:</p>

<div class="wp_syntax"><div class="code"><pre class="perl perl" style="font-family:monospace;"><span style="color: #0000ff;">$elements1</span> <span style="color: #339933;">=</span> explode<span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot; &quot;</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">&quot;very simple example&quot;</span><span style="color: #009900;">&#41;</span>;
<span style="color: #0000ff;">$elements2</span> <span style="color: #339933;">=</span> preg_split<span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot;/[<span style="color: #000099; font-weight: bold;">\s</span>,]+/&quot;</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">&quot;very simple example&quot;</span><span style="color: #009900;">&#41;</span>;</pre></div></div>

<p>В Си разделение строки несколько сложнее. Многие программисты, в цикле, ищут разделители с помощью таких функций как index или strstr, а затем меняют его на нулевой байт. Данный подход &#8211; громоздкий и неудобный. Гораздо проще воспользоваться функцией strtok. Функция strtok позволяет разбить текстовую строку на токены, используя указанные разделители. Пример использования strtok:
</p>
<p><span id="more-977"></span></p>

<div class="wp_syntax"><div class="code"><pre class="c c" style="font-family:monospace;"><span style="color: #808080; font-style: italic;">/* strtok usage example */</span>
<span style="color: #339933;">#include &lt;stdio.h&gt;</span>
<span style="color: #339933;">#include &lt;string.h&gt;</span>
&nbsp;
<span style="color: #993333;">void</span> main <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #993333;">char</span> str<span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> <span style="color: #ff0000;">&quot;Very simple example,test&quot;</span>;
    <span style="color: #993333;">char</span> <span style="color: #339933;">*</span>token<span style="color: #339933;">,</span> <span style="color: #339933;">*</span>last;
    <span style="color: #000066;">printf</span> <span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot;Splitting string <span style="color: #000099; font-weight: bold;">\&quot;</span>%s<span style="color: #000099; font-weight: bold;">\&quot;</span> into tokens:<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span><span style="color: #339933;">,</span> str<span style="color: #009900;">&#41;</span>;
    token <span style="color: #339933;">=</span> strtok_r<span style="color: #009900;">&#40;</span>str<span style="color: #339933;">,</span> <span style="color: #ff0000;">&quot; ,&quot;</span><span style="color: #339933;">,</span> <span style="color: #339933;">&amp;</span>last<span style="color: #009900;">&#41;</span>;
    <span style="color: #b1b100;">while</span> <span style="color: #009900;">&#40;</span>token <span style="color: #339933;">!=</span> <span style="color: #000000; font-weight: bold;">NULL</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
        <span style="color: #000066;">printf</span> <span style="color: #009900;">&#40;</span><span style="color: #ff0000;">&quot;%s<span style="color: #000099; font-weight: bold;">\n</span>&quot;</span><span style="color: #339933;">,</span> token<span style="color: #009900;">&#41;</span>;
        token <span style="color: #339933;">=</span> strtok_r<span style="color: #009900;">&#40;</span><span style="color: #000000; font-weight: bold;">NULL</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">&quot; ,.-&quot;</span><span style="color: #339933;">,</span> <span style="color: #339933;">&amp;</span>last<span style="color: #009900;">&#41;</span>;
    <span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span></pre></div></div>

<p align=justify>
Почему strtok_r, а не strtok и что за третий параметр &#038;last? Функция strtok_r является потоко-безопасной (thread-safe) аналогом функции strtok, третий параметр (**lasts) используется для сохранения текущего положения в оригинальной строке. Поскольку сегодня многопоточные приложения стали нормой, рекомендую использовать именно strtok_r().
</p>

<div class="wp_syntax"><div class="code"><pre class="c c" style="font-family:monospace;"><span style="color: #993333;">char</span> <span style="color: #339933;">*</span> strtok_r<span style="color: #009900;">&#40;</span><span style="color: #993333;">char</span> <span style="color: #339933;">*</span>newstring<span style="color: #339933;">,</span> <span style="color: #993333;">const</span> <span style="color: #993333;">char</span> <span style="color: #339933;">*</span>delimiters<span style="color: #339933;">,</span> <span style="color: #993333;">char</span> <span style="color: #339933;">**</span>save_ptr<span style="color: #009900;">&#41;</span></pre></div></div>

<p align=justify>
Функция strtok_r работает следующем образом: В случае если переданный указатель newstring отличен от NULL, считается что передана строка (последовательность ненулевых байт завершающаяся нулевым). При первом вызове функции strtok_r, значение сохранённое в save_ptr &#8211; игнорируется. Функция strtok_r, находит в строке newstring первый из разделителей, заменяет его на нулевой байт (&#8217;\0&#8242;), сохраняет позицию, следующую за нулевым байтом в save_ptr, и возвращает указатель на найденный токен (для первого вызова функции, указатель на найденный токен будет совпадать с указателем на начало строки). Последующие вызовы выглядят следующим образом:</p>

<div class="wp_syntax"><div class="code"><pre class="c c" style="font-family:monospace;">token <span style="color: #339933;">=</span> strtok_r<span style="color: #009900;">&#40;</span><span style="color: #000000; font-weight: bold;">NULL</span><span style="color: #339933;">,</span> <span style="color: #ff0000;">&quot; ,.-&quot;</span><span style="color: #339933;">,</span> <span style="color: #339933;">&amp;</span>last<span style="color: #009900;">&#41;</span>;</pre></div></div>

<p>В случае, если указатель newstring равен NULL, обработка строки начинается с указателя сохранённого в save_ptr, в остальном, алгоритм идентичен первому вызову функции.
</p>
<ul>
<li> <a href=http://www.gnu.org/s/libc/manual/html_node/Finding-Tokens-in-a-String.html >Finding Tokens in a String</a>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://tamkovich.com/2010/02/%d1%81-split-string/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
