<?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>Smile @rT&#039;s personal blog</title>
	<atom:link href="http://smileart.in.ua/feed" rel="self" type="application/rss+xml" />
	<link>http://smileart.in.ua</link>
	<description>One more blog</description>
	<lastBuildDate>Sun, 12 Apr 2015 19:51:22 +0000</lastBuildDate>
	<language>ru-RU</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>https://wordpress.org/?v=4.7.1</generator>
<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
	<item>
		<title>Munchkin (cheat sheet)</title>
		<link>http://smileart.in.ua/munchkin-cheat-sheet</link>
		<comments>http://smileart.in.ua/munchkin-cheat-sheet#respond</comments>
		<pubDate>Sun, 12 Apr 2015 19:51:22 +0000</pubDate>
		<dc:creator><![CDATA[Smile @rT]]></dc:creator>
				<category><![CDATA[Без рубрики]]></category>

		<guid isPermaLink="false">http://smileart.in.ua/?p=691</guid>
		<description><![CDATA[Спустя годы игры в «Манчкин», решил, наконец, разобраться в правилах более детально, так как меня всегда не покидало чувство, что наши устоявшиеся «house rules» нет-нет да и нарушают баланс игры. Так как играем редко, держать всё правила в голове тоже не вариант, а официальные правила идущие из коробки во-первых, немного устарели, а во-вторых, написаны почти [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>Спустя годы игры в «Манчкин», решил, наконец, разобраться в правилах более детально, так как меня всегда не покидало чувство, что наши устоявшиеся «house rules» нет-нет да и нарушают баланс игры. Так как играем редко, держать всё правила в голове тоже не вариант, а официальные правила идущие из коробки во-первых, немного устарели, а во-вторых, написаны почти как проза с множеством лишних слов и большим разбросом топиков по тексту. В процессе копания было обнаружено, что мы не помнили или не знали о ряде весьма важных правил, а так же, что часть наших заблуждений проистекала из некачественных переводов ходящих по интернетам.</p>
<p>В итоге, было решено сделать для себя карманный «визуальный справочник», который а) было бы удобно просматривать на мобильном или планшете и б) легко находить нужное правило и читать его быстро, по сути и без лишних присказок.</p>
<p>В результате, имеем вот такую картинку (которая наверняка еще сыровата, содержит опечатки и недочёты, а потому будет, пожалуй, со временем тут же и обновляться). Кстати, за беспрекословный ориентир брались официальные английские правила, но если я где-то чего попутал или переврал — велкам в комментарии или любое другое место, где можно попросить внести правки, ссылаясь на авторитетные источники.</p>
<p>&nbsp;</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2015/04/munchkin_small.png"><img class="aligncenter size-full wp-image-692" src="http://smileart.in.ua/wp-content/uploads/2015/04/munchkin_small.png" alt="munchkin_small" width="1562" height="17812" srcset="http://smileart.in.ua/wp-content/uploads/2015/04/munchkin_small.png 1562w, http://smileart.in.ua/wp-content/uploads/2015/04/munchkin_small-300x3421.png 300w" sizes="(max-width: 1562px) 100vw, 1562px" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://smileart.in.ua/munchkin-cheat-sheet/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Using Articles (cheat sheet)</title>
		<link>http://smileart.in.ua/using-articles-cheat-sheet</link>
		<comments>http://smileart.in.ua/using-articles-cheat-sheet#respond</comments>
		<pubDate>Thu, 22 Jan 2015 19:46:53 +0000</pubDate>
		<dc:creator><![CDATA[Smile @rT]]></dc:creator>
				<category><![CDATA[Без рубрики]]></category>

		<guid isPermaLink="false">http://smileart.in.ua/?p=680</guid>
		<description><![CDATA[Сделал себе шпаргалку по артиклям. Могут все еще быть ошибки/опечатки. Ну и конечно, я не ставил цель покрыть все исключения. Вдруг кому сгодится:]]></description>
				<content:encoded><![CDATA[<p>Сделал себе шпаргалку по артиклям. Могут все еще быть ошибки/опечатки. Ну и конечно, я не ставил цель покрыть все исключения. Вдруг кому сгодится:</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2015/01/Using-Articles.png"><img class="aligncenter size-full wp-image-681" src="http://smileart.in.ua/wp-content/uploads/2015/01/Using-Articles.png" alt="Using Articles" width="1771" height="8562" srcset="http://smileart.in.ua/wp-content/uploads/2015/01/Using-Articles.png 1771w, http://smileart.in.ua/wp-content/uploads/2015/01/Using-Articles-62x300.png 62w, http://smileart.in.ua/wp-content/uploads/2015/01/Using-Articles-212x1024.png 212w, http://smileart.in.ua/wp-content/uploads/2015/01/Using-Articles-300x1450.png 300w" sizes="(max-width: 1771px) 100vw, 1771px" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://smileart.in.ua/using-articles-cheat-sheet/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Roamer.app</title>
		<link>http://smileart.in.ua/roamer-app</link>
		<comments>http://smileart.in.ua/roamer-app#comments</comments>
		<pubDate>Thu, 17 Jul 2014 11:54:55 +0000</pubDate>
		<dc:creator><![CDATA[Smile @rT]]></dc:creator>
				<category><![CDATA[Без рубрики]]></category>

		<guid isPermaLink="false">http://smileart.in.ua/?p=660</guid>
		<description><![CDATA[&#160; В этом году, перед поездкой в отпуск, я задумался о том, как бы решить ряд проблем связанных со связью из-за границы. В первую очередь это, конечно, высокие цены роуминга от оператора или необходимость покупки нового локального номера и сообщения его всем, кому он может понадобиться. Как это обычно и бывает, вовремя под руку подвернулся [&#8230;]]]></description>
				<content:encoded><![CDATA[<p><a href="http://smileart.in.ua/wp-content/uploads/2014/07/roamer.png"><img class="aligncenter size-full wp-image-661" src="http://smileart.in.ua/wp-content/uploads/2014/07/roamer.png" alt="roamer" width="1000" height="655" srcset="http://smileart.in.ua/wp-content/uploads/2014/07/roamer.png 1000w, http://smileart.in.ua/wp-content/uploads/2014/07/roamer-300x196.png 300w" sizes="(max-width: 1000px) 100vw, 1000px" /></a></p>
<p>&nbsp;</p>
<p>В этом году, перед поездкой в отпуск, я задумался о том, как бы решить ряд проблем связанных со связью из-за границы. В первую очередь это, конечно, высокие цены роуминга от оператора или необходимость покупки нового локального номера и сообщения его всем, кому он может понадобиться. Как это обычно и бывает, вовремя под руку подвернулся любопытный латвийский стартап под понятным названием «Roamer».</p>
<p><iframe src="//www.youtube.com/embed/ZfrHKYRe8Qs" width="560" height="315" frameborder="0" allowfullscreen="allowfullscreen"></iframe></p>
<p>Идея сервиса проста: ставим приложение на любимый iPhone/Android, пополняем счет Roamer, перед поездкой устанавливаем переадресацию входящих своего родного оператора на номер который вам подскажет Roamer, на месте покупаем любую местную симку, звоним куда угодно с помощью callback’а от Roamer’а, принимаем звонки на свой обычный номер (с точки зрения звонящего вы все еще на родине, ничего не изменилось).</p>
<p>Звучит отлично. Было интересно проверить это на практике. Дальше речь будет идти исключительно о личном опыте использования Roamer с такими исходными данными: отправная точка — Украина, оператор «Life :)», тариф «Шалений день», Roamer v. 4.0.0rc1 (участие в ß-тестировании), локальная симка Vodafone PAYG без top up (денег на счету).</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2014/07/roamer1.jpg"><img class="aligncenter size-full wp-image-664" src="http://smileart.in.ua/wp-content/uploads/2014/07/roamer1.jpg" alt="roamer1" width="736" height="810" srcset="http://smileart.in.ua/wp-content/uploads/2014/07/roamer1.jpg 736w, http://smileart.in.ua/wp-content/uploads/2014/07/roamer1-272x300.jpg 272w" sizes="(max-width: 736px) 100vw, 736px" /></a></p>
<p>Итак, тарифы. Для версии о которой идет речь, это (минута): Landline — ₴0.78 (Internet call), ₴1.11 (Regular call); Mobile — ₴1.58 (Internet call), ₴1.91 (Regular call); входящие — free (Internet call, за исключением платы укр. оператора за местную переадресацию, согласно местным тарифам), ₴0.34 (Regular call). Если сравнить это с самым льготным тарифом роуминга у «Life :)», «TRAVEL life :)», то для Великобритании это входящие — ₴2,49, исходящие — ₴4,99, интернет — ₴4,99 / МБ. Для тех, кто «TRAVEL life :)» не активировал, тарифы следующие: входящие/исходящие в Украину и по Британии — ₴13.26; интернет — ₴120.60 / МБ. К сожалению, переадресания SMS не поддерживается, потому цены сообщений не привожу. Мобильным интернетом, на самом деле, я не пользовался — всюду есть WiFi.</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2014/07/prices.png"><img class="aligncenter size-full wp-image-670" src="http://smileart.in.ua/wp-content/uploads/2014/07/prices.png" alt="prices" width="603" height="404" srcset="http://smileart.in.ua/wp-content/uploads/2014/07/prices.png 603w, http://smileart.in.ua/wp-content/uploads/2014/07/prices-300x200.png 300w" sizes="(max-width: 603px) 100vw, 603px" /></a></p>
<p>Конечно, платил за исходящие звонки я всего несколько раз. В основном, друзьям и родным, говорил свободно звонить мне когда им захочется узнать как у меня дела. Собственно, если в этот момент я был в зоне действия какого-то WiFi (в Лондоне это, например WiFi «The Cloud»), то такой звонок проходил через интернет, бесплатно. Если WiFi поблизости не было или его качество было не достаточно, звонок обходился минимум ₴0.34, если длился от 1 до 30 секунд и около ₴0.53 за минуту, если больше 1 минуты. В принципе, перед каждым звонком прямо возле кнопки набора номера приложение показывает по какому тарифу и кудой будет совершен звонок.</p>
<p>Исходящий звонок выглядел как соединение с номером Roamer’а, сброс вашего звонка их сервером, перезвон Roamer’а и ожидание ответа абонента которому вы звоните. Что важно, если входящие вы можете принять и без интернета, то для исходящих (по крайней мере в Британии), требуется наличие WiFi. В новой версии анонсируют, что для многих стран исходящие звонки можно будет совершать и без интернета только через Regular call.</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2014/07/roamer2.jpg"><img class="aligncenter  wp-image-665" src="http://smileart.in.ua/wp-content/uploads/2014/07/roamer2.jpg" alt="roamer2" width="515" height="386" srcset="http://smileart.in.ua/wp-content/uploads/2014/07/roamer2.jpg 720w, http://smileart.in.ua/wp-content/uploads/2014/07/roamer2-300x225.jpg 300w" sizes="(max-width: 515px) 100vw, 515px" /></a></p>
<p>Новая версия Roamer’а получила обновленный дизайн, новые, более выгодные тарифы, бесплатные интернет-звонки и т.п. Кстати, тарифы в зависимости от вашего курса валют и выбранной валюты внутри приложения могут вариироваться. Мне выгоднее всего было выбрать гривну, а вот на Android гривна просто не предлагалась в списке и тарифы в долларах получались в сравнении гораздо выше (но, все равно выгоднее чем звонки через нативный роуминг оператора). Кстати, ß-тестирование публичное, с ограниченным количеством участников. Изъявить желание поучаствовать в таком тестировании можно прямо во встроенном чате поддержки, сообщив ребятам свой email (поддерживается русский язык). Стоит заметить, что стабильность ß-версии совершенно не отличается от основной и приложение ни разу не вылетало и не выдавало сообщений о каких-либо ошибках.</p>
<p>В общем, не считая нескольких минорных минусов: необходимость наличия интернета для исходящего звонка, невозможность выбора гривны на Android (старая версия, не ß), неявное снятие денег родным оператором за переадресацию звонков (40 гривен мне хватило на две недели пребывания за пределами страны), пользоваться приложением было супер-комфортно, выгодно и приятно. В противовес получаем: отличные тарифы, шикарное качество связи (как замечали собеседники, лучше чем звонки внутри Украины), прозрачные тарифы и логи разговоров с суммами, встроенную поддержку, бесплатные входящие в пределах WiFi сетей, сохранение за границей вашего украинского номера и callback.</p>
<p>Пополнение счета, кстати, происходит фиксированными пакетами. В моей текущей версии это ₴113.39, ₴226.89, ₴340.39 и ₴567.39. €0.50 вы получаете сразу при регистрации. Пополнив свой аккаунт на ₴226.89, через две недели, я вернулся домой с остатком ₴193.46, при этом каждый день по нескольку раз созваниваясь с мамой и пару раз за поездку поговорив с друзьями. К слову, местные симки без денег на счету и без последующего пополнения (а, собственно, зачем?) обошлись нам £0.99 (одна nano-sim Vodafone бесплатно, вторая micro-sim за £0.99).</p>
<p><strong>Полезные ссылки:</strong></p>
<ul>
<li><a title="Официальный сайт приложения" href="http://roamerapp.com/" target="_blank">Официальный сайт Roamer</a></li>
<li><a title="iPhone-приложение" href="https://itunes.apple.com/lv/app/roamer-roaming-killer/id646368973" target="_blank">iPhone-приложение Roamer</a></li>
<li><a title="Android-приложение Roamer" href="https://play.google.com/store/apps/details?id=com.arcana.roamer" target="_blank">Android-приложение Roamer</a></li>
<li><a title="CNews about Roamer" href="http://telecomb2b.cnews.ru/news/top/index.shtml?2014/02/11/560160" target="_blank">Статья на CNews</a></li>
<li><a title="О команде Roamer" href="http://siliconrus.com/2013/07/latviyskiy-startap-roamer-ubiytsa-rouminga/" target="_blank">О команде Roamer</a></li>
<li><a title="Интервью" href="http://www.companion.ua/articles/content?id=267414" target="_blank">Интервью с основателем Roamer</a></li>
<li><a title="AIN.ua интервью" href="http://ain.ua/2013/08/21/135818" target="_blank">Статья и интервью на AIN</a></li>
<li><a title="Lifehacker.ru" href="http://lifehacker.ru/2014/03/06/kak-sokratit-rasxody-na-svyaz-v-rouminge-v-10-raz-roamer/" target="_blank">Обзор приложения на Lifehacker</a></li>
</ul>
<p><a href="http://smileart.in.ua/wp-content/uploads/2014/07/roamer3.png"><img class="aligncenter  wp-image-666" src="http://smileart.in.ua/wp-content/uploads/2014/07/roamer3.png" alt="roamer3" width="230" height="230" srcset="http://smileart.in.ua/wp-content/uploads/2014/07/roamer3.png 526w, http://smileart.in.ua/wp-content/uploads/2014/07/roamer3-150x150.png 150w, http://smileart.in.ua/wp-content/uploads/2014/07/roamer3-300x300.png 300w" sizes="(max-width: 230px) 100vw, 230px" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://smileart.in.ua/roamer-app/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Vim 101</title>
		<link>http://smileart.in.ua/vim-101</link>
		<comments>http://smileart.in.ua/vim-101#comments</comments>
		<pubDate>Sun, 21 Aug 2011 11:57:21 +0000</pubDate>
		<dc:creator><![CDATA[Smile @rT]]></dc:creator>
				<category><![CDATA[Программинг]]></category>
		<category><![CDATA[Работа и труд]]></category>
		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[ide]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[tips]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[vim]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[верстка]]></category>
		<category><![CDATA[настройка]]></category>
		<category><![CDATA[программирование]]></category>
		<category><![CDATA[продуктивность]]></category>
		<category><![CDATA[работа]]></category>

		<guid isPermaLink="false">http://smileart.in.ua/?p=516</guid>
		<description><![CDATA[Установка и настройка vim]]></description>
				<content:encoded><![CDATA[<p><a href="http://smileart.in.ua/wp-content/uploads/2011/08/vim_940_600.png"><img class="aligncenter size-full wp-image-613" alt="vim_940_600" src="http://smileart.in.ua/wp-content/uploads/2011/08/vim_940_600.png" width="940" height="600" srcset="http://smileart.in.ua/wp-content/uploads/2011/08/vim_940_600.png 940w, http://smileart.in.ua/wp-content/uploads/2011/08/vim_940_600-300x191.png 300w" sizes="(max-width: 940px) 100vw, 940px" /></a></p>
<p>В честь <a href="http://twitter.com/#!/search/whyday" target="_balnk">whyday</a>, как и водится в этот день памяти <a href="http://en.wikipedia.org/wiki/Why_the_lucky_stiff" target="_balnk">_why the lucky stiff</a>, все  стараются научить кого-то чему-то новому. Кто-то, как и _why в свое время, учит детей программированию. Кто-то же учится сам, осваивая новые технологии или языки. Кроме того, релизится множество классных библиотек, утилит и скриптов, написанных на Ruby или с использованием <a href="http://shoesrb.com/" target="_balnk">S</a><a href="http://shoesrb.com/">hoes</a>. Да и вообще не важно какой вы используете язык или фреймворк, главное следовать идеям <a href="http://whyday.org/" target="_balnk">whyday</a>.</p>
<p><span id="more-516"></span></p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/08/whys_dev.gif"><img class="size-medium wp-image-525 aligncenter" title="Why's (Poignant) Guide to Ruby" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/08/whys_dev-300x256.gif" width="300" height="256" srcset="http://smileart.in.ua/wp-content/uploads/2011/08/whys_dev-300x256.gif 300w, http://smileart.in.ua/wp-content/uploads/2011/08/whys_dev.gif 720w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p>Вот и я решил поучиться, а заодно и поучить кого-то чему-то новому. И объектом изучение выбрал замечательный текстовый редактор <a href="http://www.vim.org/" target="_balnk">vim</a>. Начал я его использовать совсем недавно, а до того был, как говорится, наслышан о том, что это фантастически легкий терминальный или графический редактор, который благодаря особой системе режимов и массе плагинов легко превращается в полноценную IDE для разработки софта практически на любом языке и любого уровня сложности. Рассказывать о том как расшифровывается vim, а так же нудить историей его создания я не буду. Во-первых об этом можно почитать в <a href="http://ru.wikipedia.org/wiki/Vim" target="_balnk">Википедии</a>, а во-вторых, любая книга о vim традиционно начинается с этих баек.</p>
<p>Видимо, до того как преступить к моему рассказу об установке и настройке vim на примере Ruby и Rails, стоит заинтриговать читателя и сразу поведать о фичах vim’а.</p>
<p>Итак, после простой установки готового набора плагинов и легкой доработки напильником файла .vimrc мы получим:</p>
<ul>
<li>запуск из терминала или графической среды легкого тестового редактора (я буду рассказывать именно про vim)</li>
<li>настраиваемую «от и до» среду разработки на любом языке программирования</li>
<li>редактор теста с удобной навигацией (масса вариантов перехода между сущностями текста или кода), который работает под такими операционными системами как: AmigaOS, Atari MiNT, BeOS, DOS, Mac OS, NextStep, OS/2, OSF, RISC OS, BSD, Linux, SGI, Unix, VMS, Windows</li>
</ul>
<p><code><br />
</code></p>
<div id="attachment_559" style="width: 319px" class="wp-caption aligncenter"><a href="http://smileart.in.ua/wp-content/uploads/2011/08/success_vim.jpg"><img class="size-full wp-image-559" title="success_vim с сайта http://www.vi-improved.org" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/08/success_vim.jpg" width="309" height="339" srcset="http://smileart.in.ua/wp-content/uploads/2011/08/success_vim.jpg 309w, http://smileart.in.ua/wp-content/uploads/2011/08/success_vim-273x300.jpg 273w" sizes="(max-width: 309px) 100vw, 309px" /></a><p class="wp-caption-text">success_vim с сайта http://www.vi-improved.org</p></div>
<p><code><br />
</code></p>
<p><strong>Из приятных плюшек vim (включая возможности плагинов), стоит отметить:</strong></p>
<ul>
<li>подсветку синтаксиса и форматирование любых языков программирования, включая даже конфиг-файлы</li>
<li>легкость и минимализм, который позволяет полностью погрузиться в рабочий процесс не отвлекаясь на излишества</li>
<li>фантастическое количество цветовых тем (256 цветов), которые можно менять хоть каждый день всего одной командой</li>
<li>автодополнение кода практически любого языка и даже русского текста прямо в комментариях</li>
<li>автодополнение имен файлов и даже целых строк кода!</li>
<li>запись/воспроизведение макросов для автоматизации сложных действий</li>
<li>обширную справочную систему касательно всех аспектов настройки и использования, а так же армию приверженцев, которые могут помочь, ответить на вопросы и подсказать хитрые хаки</li>
<li>проверку орфографии всех мыслимых языков на ваше усмотрение</li>
<li>навигатор файловой системы с закладками, отображением скрытых файлов, поиском, функциями создания, переименования, удаления папок и файлов</li>
<li>систему генерации сниппетов из коротких псевдонимов (а-ля Textmate)</li>
<li>легкую в использовании систему комментирования строк и блоков</li>
<li>навигацию по коду: список классов, методов, функций и т.д., для быстрого перехода</li>
<li>возможность сворачивать и разворачивать блоки кода, причем не только логические (от скобки до скобки), а вообще любые</li>
<li>оборачивать строки в любые скобки нажатием всего пары клавиш, легкую замену скобок</li>
<li>блочное выделение (столиком), а так же умное выравнивание таблиц, или по разделителю</li>
<li>мега крутые функции поиска и замены с регулярками, а так же поиск текста по всему проекту</li>
<li>интеграцию с такими интерпретаторами, как pyhon и ruby, возможность временного перехода в терминал</li>
<li>автоматический настраиваемый indentation как с табами, так и с пробелами, на любителя</li>
<li>локальную историю правки файлов с возможностью просмотра/отката правок к любому моменту времени</li>
<li>бесконечный undo и redo</li>
<li>возможность сохранения сессий с последующим их восстановлением</li>
<li>множественный буфер обмена на 26 регистров (по буквам латинского алфавита)</li>
<li>внутреннюю интеграцию с системами контроля версий в том числе git</li>
<li>diff-редактор для сравнения файлов или разрешения конфликтов слияния кода</li>
<li>табы с возможностю перемещения, разделение одного файла на несколько экранов с раздельной навигацией</li>
<li>поддержку любых кодировок, перекодирование файлов и поддержу/замену окончаний строк</li>
<li>встроенный твиттер-клиент, почтовик, сокращалку ссылок и многое-многое другое</li>
</ul>
<p>Впечатляет? Тогда поехали!<br />
<code><br />
</code></p>
<h2>Установка</h2>
<p><code><br />
</code><br />
Самостоятельная настройка vim с нуля для новичка, конечно, будет задачей неподъемной. И так предстоит поломать некоторые стереотипы и постичь слишком много нового, а еще больше запомнить и изучить. Поэтому процесс установки можно максимально упростить и сократить за счет готовых решений так называемых vimfiles.</p>
<p>Что же такое эти vimfiles? Все достаточно просто: настройка vim находятся в файлах vimrc, традиционно лежащих в домашней директории, а так же в директории самого vim. Это ~/.vimrc и ~/.vim/vimrc соответственно. В эти файлы записываются кастомные настройки, такие как цветовая тема, поведение табов, байндинг горячих клавиш и т.п. Кроме того в директории ~/.vim/ находятся все необходимые для работы файлы: автодополнения, сниппетов, цветовых тем, сессий и самое важное — плагинов и документации.</p>
<p>Фактически сохранив эти два файла можно перенести vim с одной машины на другую, что бы не повторять процесс настройки заново. Многие и вовсе хранят свои vimfiles под управлением системы контроля версий и устанавливают все плагины и настройки путем клонирования репозитория. Этим-то мы и воспользуемся.</p>
<p>Сперва установим vim. Я буду делать это под Ubuntu. И тут же нас ждут первые особенности. Дело в том, что многие плагины используют C и Ruby в свой работе, да и вообще мы же ставим vim для работы с любыми языками, в том числе и Ruby. Именно поэтому нам нужно убедится, что vim собран с опцией +ruby. Узнать так ли это можно довольно легко. Во первых, можно вывести</p>
<pre class="brush: bash; title: ; wrap-lines: true; notranslate">$ vim --version | grep ruby</pre>
<p>Который выдаст что-то вроде:</p>
<pre class="brush: bash; title: ; wrap-lines: true; notranslate">-python3 +quickfix +reltime -rightleft +ruby +scrollbind +signs +smartindent</pre>
<p>Если так, то все ок, и поддержка ruby у вас уже включена. Если же нет, то можно установить другую сборку vim, или скомпилить все из исходинков выбрав нужную конфигурацию. Мы же пойдем по пути наименьшего сопротивления и посмотрим какие же пакеты vim приготовлены для нас в репозитории.</p>
<pre class="brush: bash; title: ; wrap-lines: true; notranslate">$ apt-cache search vim | grep vim-</pre>
<p>У меня получился следующий список:</p>
<pre class="brush: bash; title: ; wrap-lines: true; notranslate">
jvim-canna - Japanized VIM (Canna version)
jvim-doc - Documentation for jvim (Japanized VIM)
vim-addon-manager - manager of addons for the Vim editor
vim-latexsuite - view, edit and compile LaTeX documents from within Vim
vim-puppet - syntax highlighting for puppet manifests in vim
vim-rails - plugins for vim to allow easier editing of Rails Applications
vim-scripts - plugins for vim, adding bells and whistles
vim-syntax-gtk - Syntax files to highlight GTK+ keywords in vim
vim-vimoutliner - script for building an outline editor on top of Vim
vim-common - Vi IMproved - Common files
vim-dbg - Vi IMproved - enhanced vi editor (debugging symbols)
vim-doc - Vi IMproved - HTML documentation
vim-gnome - Vi IMproved (улучшенный редактор vi) с графическим интерфейсом GNOME2
vim-gui-common - общие файлы для Vi IMproved с графическим интерфейсом
vim-runtime - Vi IMproved - Runtime files
vim-tiny - Vi IMproved - enhanced vi editor - compact version
vim-gtk - Vi IMproved -- улучшенный редактор vi (GTK2-версия)
vim-nox - Vi IMproved - enhanced vi editor
</pre>
<p>Как видите, недостатка в сборках нет и пакетики тут на любой вкус. Само собой бросается в глаза vim-rails. Его-то мы и поставим:</p>
<pre class="brush: bash; title: ; wrap-lines: true; notranslate">$ sudo apt-get install vim-rails</pre>
<p>Кроме того сразу советую поставить exuberant-ctags, в любом случае придется это сделать и при последующих запусках vim неустанно будет нам об этом напоминать:</p>
<pre class="brush: bash; title: ; wrap-lines: true; notranslate">$ sudo apt-get install exuberant-ctags</pre>
<p><code><br />
</code></p>
<blockquote><p><a href="http://smileart.in.ua/wp-content/uploads/2011/08/vim_info.png"><img title="" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/08/vim_info.png" width="60" height="60" /></a> Кстати: что бы работать с Ruby и Rails их нужно сперва установить.<br />
Сделать это можно по <a href="http://smileart.in.ua/ubuntu-on-rails" target="_balnk">моей инстукции</a>, либо еще проще, одной строкой, благодаря Rails Ready</p>
<pre class="brush: bash; title: ; wrap-lines: true; notranslate">
wget --no-check-certificate https://github.com/joshfng/railsready/raw/master/railsready.sh
&amp;&amp; bash railsready.sh
</pre>
<p>Если вы думаете что это нужно только для Ruby разработчиков, то вы заблуждаетесь. Некоторые плагины требуют в своей работе наличия Ruby, причем кое-какие даже Ruby старых версий, что просто вынуждает нас использовать как минимум Ruby установленный с помощью RVM. Если же вы не Ruby’ст, то можете не пользоваться Rails Ready, а воспользовавшись <a href="http://smileart.in.ua/ubuntu-on-rails" target="_balnk">моей инструкцией</a> остановиться на Ruby и не ставить Rails вообще.</p></blockquote>
<p><code><br />
</code></p>
<p>Среди Ruby разработчиков, на сколько мне известно популярны да набора плагинов первый от <a href="https://github.com/akitaonrails/vimfiles">akitaonrails</a>, который встречается в большинстве туториалов по превращению vim в Ruby IDE и второй от <a href="https://github.com/scrooloose/vimfiles">scrooloose</a>, которым я, собственно, долгое время и пользовался, так как он был более актуальным. Теперь же, вместе с вами, я попробую установить akitaonrails/vimfiles, так как его обновление оказалось свежее от 05 августа 2011, да еще и с такими замечательными bundle’ами, как haml, supertab и пр.</p>
<p>Для того, что бы клонировать репозиторий с GitHub нам понадобится, конечно, обзавестись git. У кого еще нет этой радости, ставит все предельно просто, либо под Linux:</p>
<pre class="brush: bash; title: ; wrap-lines: true; notranslate">
$ yum install git-core
$ apt-get install git-core
</pre>
<p>Либо под Windows скачав его <a href="http://code.google.com/p/msysgit/downloads/detail?name=msysGit-netinstall-1.7.6-preview20110720.exe&amp;can=2&amp;q=" target="_balnk">по ссылке</a>. Впрочем, ладно, кому я рассказываю! :)</p>
<p>Дальше все делаем по инструкции  от самого akitaonrails. Я буду следовать только ее Linux части, ведь ставлю все это, как уже говорил, под управлением Ubuntu. Практически то же актуально и для MacOS X. Владельцы других ОС могут сами подсмотреть в README.textile, что и как им делать.</p>
<p>Клонируем репозиторий в ту самую папку vim:</p>
<pre class="brush: bash; title: ; wrap-lines: true; notranslate">$ git clone git://github.com/akitaonrails/vimfiles.git ~/.vim</pre>
<p>Далее переходим в нее и запускаем инициализацию/обновление модулей:</p>
<pre class="brush: bash; title: ; wrap-lines: true; notranslate">$ git submodule update --init</pre>
<p>Теперь создаем файлик .vimrc, в который прописываем где у нас лежит .vimrc с настройками akita</p>
<pre class="brush: bash; title: ; wrap-lines: true; notranslate">$ echo &quot;source ~/.vim/vimrc&quot; &gt; ~/.vimrc</pre>
<p>Если вы планируете использовать gvim (графический вариант vim с меню и прочими понтами), то вам стоит создать и .gvimrc</p>
<pre class="brush: bash; title: ; wrap-lines: true; notranslate">echo &quot;source ~/.vim/gvimrc&quot; &gt; ~/.gvimrc</pre>
<p>Дальше мы, в принципе уже можем запустить vim и полюбоваться на его стандартное приветствие:</p>
<p><code><br />
</code><br />
<a href="http://smileart.in.ua/wp-content/uploads/2011/08/vim_welcome.png" target="_balnk"><img class="aligncenter size-medium wp-image-527" title="Vim welcome screen" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/08/vim_welcome-300x163.png" width="300" height="163" srcset="http://smileart.in.ua/wp-content/uploads/2011/08/vim_welcome-300x163.png 300w, http://smileart.in.ua/wp-content/uploads/2011/08/vim_welcome-1024x557.png 1024w, http://smileart.in.ua/wp-content/uploads/2011/08/vim_welcome.png 1366w" sizes="(max-width: 300px) 100vw, 300px" /></a><br />
<code><br />
</code></p>
<p><strong>Что бы сразу не отпугнуть таких же как я новичков, скажу, что выйти из vim можно нажав ESC, что переведет нас в командный режим и потом набрав <em>:q</em> или <em>:q!</em> или <em>:exit</em></strong></p>
<p><code><br />
</code></p>
<blockquote><p><a href="http://smileart.in.ua/wp-content/uploads/2011/08/vim_info.png"><img title="" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/08/vim_info.png" width="60" height="60" /></a> Кстати, позволю себе небольшое лирическое отступление и дам маленький совет: что бы испытывать еще больше удовольствия от каждодневной работы с vim и Ubuntu вообще, крайне рекомендую установить себе альтернативный терминал, под крутым названием terminator!</p>
<pre class="brush: bash; title: ; wrap-lines: true; notranslate">sudo apt-get install termiantor</pre>
<p>Ну, или из «Центра приложений», конечно. В результате вы получите в одном флаконе:</p>
<ul>
<li>терминал с настройкой собственных цветовых схем (есть готовые)</li>
<li>удобную настройку шрифтов, сглаживания, прозрачности, фоновой картинки</li>
<li>разделение терминала надвое (и так далее с каждым из терминальчиков)</li>
<li>бесконечный скролл выдачи в терминале (включается в настройках)</li>
<li>возможность именовать терминалы в строке заголовка (на скрине это зеленая полоска)</li>
<li>табы (в каждом опять таки может быть куча разделенных терминалов)</li>
<li>выбор любых кодировок из большого списка</li>
<li>увеличение и раскрытие любого терминала и сворачивание всего назад, что бы видеть все</li>
<li>группирование терминалов с возможностью эхать им одни и те же команды (для настройки хоть 10 серверов стразу)</li>
<li>массу настраиваемых горячих клавиш для любых действий (очистка, разделение и т.д.)</li>
</ul>
<p>Короче, вы поняли, что это нереально крутая штука, которая должна быть на хозяйстве у каждого уважающего себя Linux-гика. Кроме того после установки этой проги вам больше не захочется сидеть в поганых гуях если на то не будет особого повода.<br />
<code><br />
</code><br />
<strong>Mini-bonus:</strong> установите себе клевый темный бэкграунд вроде этого (кстати, когда в фоне настроена картинка, то параметр прозрачности влияет на ее яркость):<br />
<code><br />
</code><br />
<a href="http://clck.ru/J56b"><img class="size-medium wp-image-529 aligncenter" title="Wooden noir 2.0 ©shod4n" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/08/wooden_noir_2_0-300x163.png" width="300" height="163" srcset="http://smileart.in.ua/wp-content/uploads/2011/08/wooden_noir_2_0-300x163.png 300w, http://smileart.in.ua/wp-content/uploads/2011/08/wooden_noir_2_0.png 735w" sizes="(max-width: 300px) 100vw, 300px" /></a><br />
<code>                                      ( кликните что бы скачать )<br />
</code><br />
<code><br />
</code></p></blockquote>
<p><code><br />
</code><br />
Итак, продолжим. Взглянув на приветствие радуемся что все работает, а дальше нажимаем \-t или нажав ESC набираем внизу экрана :<em>CommandT</em>, что бы вызвать замечательный плагин Command-T и получаем, скорее всего, такую неприятную ошибку в области уведомлений: «<em>command</em>&#8212;<em>t</em>.vim could not load the <em>C extension»</em></p>
<blockquote>
<p style="text-align: left;"><a href="http://smileart.in.ua/wp-content/uploads/2011/08/vim_info.png"><img class="size-full wp-image-532" title="" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/08/vim_info.png" width="60" height="60" /></a> Кстати: The Command-T plug-in provides an extremely fast, intuitive mechanism for opening files with a minimal number of keystrokes. It&#8217;s named &#171;Command-T&#187; because it is inspired by the &#171;Go to File&#187; window bound to Command-T in TextMate.</p>
</blockquote>
<p>Что бы починить эту неприятную балалайку нам понадобится сделать еще пару телодвижений. Надеюсь вы предварительно поставили Ruby используя RVM как я советовал, потому что сейчас он-то нам и понадобится. Итак нам нужно пойти в папку с плагином и сделать такие манипуляции:</p>
<pre class="brush: bash; title: ; wrap-lines: true; notranslate">

$ cd ~/.vim/bundle/Command-T/ruby/command-t/

$ rvm system

$ ruby -v

</pre>
<p>Ruby должен сказать, что его версия ruby 1.8.7 и если это так, то дальше мы просто выполняем такие команды:</p>
<pre class="brush: bash; title: ; wrap-lines: true; notranslate">

$ sudo apt-get install ruby-dev

$ ruby extconf.rb

$ make

</pre>
<p>После этого можно наконец вернуться в vim и убедиться что \-t и :<em>CommandT </em>работают и позволяют нам быстро открывать файлы.<br />
<code><br />
</code></p>
<h2>Настройка</h2>
<p><code><br />
</code><br />
Этот раздел является опциональным и может быть смело пропущен, если вас устраивают настройки akita.</p>
<p>Кстати говоря, посмотреть настройки и горячие клавиши, которые настроил для нас akitaonrails можно заглянув в файлик ~/.vim/vimrc или на GitHub в том же файле.</p>
<p>Первое что я сделаю — настрою цветовую схему, что бы радовала глаз и позволяла чувствовать себя комфортно. Я предпочитаю темные схемы с яркими, сочными цветами подсветки синтаксиса. На сегодняшний день моей любимой является тема <a href="https://github.com/trapd00r/neverland-vim-theme" target="_balnk">neverland</a>. Увы, в комплекте Акиты она не поставляется, потому я пойду скачать ее самостоятельно.</p>
<p>Вы же можете не следовать моему примеру и посмотреть на другие схемы. Первый вариант: открыть vim, войти в командный режим, нажав как и прежде ESC и набрать команду :colorscheme, после чего дважды нажать TAB, что бы вызвать autocomplete команды (этот прием, как и в обычном bash распространяется на все команды). Пред вашим взором предстанет огромный список тем. Дополнив команду названием темы, например :colorscheme gothic и нажав Enter, вы примените схему и открыв какой-то файл с кодом (через тот же \-t) сможете посмотреть как это выглядит. У меня, например, так:<br />
<code><br />
</code><br />
<a href="http://smileart.in.ua/wp-content/uploads/2011/08/Neverland.png" target="_balnk"><img class="aligncenter size-medium wp-image-544" title="Neverland" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/08/Neverland-174x300.png" width="174" height="300" srcset="http://smileart.in.ua/wp-content/uploads/2011/08/Neverland-174x300.png 174w, http://smileart.in.ua/wp-content/uploads/2011/08/Neverland.png 514w" sizes="(max-width: 174px) 100vw, 174px" /></a></p>
<p><code><br />
</code></p>
<blockquote><p><a href="http://smileart.in.ua/wp-content/uploads/2011/08/vim_info.png"><img title="" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/08/vim_info.png" width="60" height="60" /></a> Кстати: Все цветовые схемы лежат в папке ~/.vim/colors и  если вы скачали приглянувшуюся вам темку, установить ее можно распаковав *.vim файлы из архива именно в эту папку. Что бы схема загружалась автоматически и перенастраивала схему заданную в ~/.vim/vimrc нужно прописать ее в собственный ~/.vimrc, например в новой строке написать <em>colorscheme neverland-darker</em> и при следующей загрузке или если выполнить команду :source $MYVIMRC, схема установится как тема по умолчанию, и будет загружаться всегда.</p></blockquote>
<p><code><br />
</code></p>
<p>Второй вариант: сходить в специальные места и посмотреть на темы там. Например, тут <a href="http://code.google.com/p/vimcolorschemetest/" target="_blank">http://code.google.com/p/vimcolorschemetest/</a> дают выбрать тип файла, что бы сразу посмотреть как выглядит тема в жизни. Нравится тема? Кликаем правой кнопкой мыши на ее название и выбираем «Сохранить как…». Ну, а куда класть файлик вы уже знаете. Кроме того, полюбоваться на темки можно еще и здесь: <a href="http://www.vi-improved.org/color_sampler_pack/" target="_balnk">http://www.vi-improved.org/color_sampler_pack/</a></p>
<p>Третий вариант для совсем уж привередливых товарищей, да еще и с вагоном свободного времени. Вот тут можно скачать конструктор тем <a href="https://sites.google.com/site/yukihironakadaira/vim-color.html?attredirects=0" target="_balnk">https://sites.google.com/site/yukihironakadaira/vim-color.html?attredirects=0</a> и настроить все полностью под себя. У кого творческие наклонности или завышенные требования могут попробовать себя в подобном искусстве, но не забывайте делиться его плодами с теми, кто одарен гораздо меньше :)<br />
<code><br />
</code></p>
<blockquote><p><a href="http://smileart.in.ua/wp-content/uploads/2011/08/vim_info.png"><img title="" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/08/vim_info.png" width="60" height="60" /></a> Кстати: есть еще одна вещь, за которую новички точно скажут мне спасибо! Дело в том, что в режиме вставки, он же в простонародье режим ввода, он же режим редактирования. Так вот, в этом режиме akitaonrails вместо навигации мапит на кнопки стрелок символы A B C D. Проблема известная, но пока найдешь решение можно сойти сума! В свое время именно через эту проблему я стал использовать scrooloose. Косвенно эта тема связана с цветами и схемами, потому я и рассказываю об этом именно сейчас. <strong>Итак, что бы починить проблему стрелок, которые пишут ABCD, нужно изменить одну строку в файле ~/.vim/vimrc, как показано тут:</strong></p>
<pre class="brush: ruby; title: ; notranslate">
if $COLORTERM == 'gnome-terminal'
     &quot;set term=gnome-256color
     set term=xterm-256color
</pre>
<p>По возвращению в vim нас ждет огорчение — цвета исчезли, все стало унылое и блеклое. Но, решение есть. Если вы выйдите из vim и выполните в терминале:</p>
<pre class="brush: bash; title: ; wrap-lines: true; notranslate">$ echo $TERM</pre>
<p>то скорее всего увидите такой ответ:</p>
<pre class="brush: bash; title: ; wrap-lines: true; notranslate">xterm</pre>
<p>А если выполнить</p>
<pre class="brush: bash; title: ; wrap-lines: true; notranslate">$ tput colors</pre>
<p>То получим</p>
<pre class="brush: bash; title: ; wrap-lines: true; notranslate">8</pre>
<p>Что как бы намекает нам на то, что у нас в терминале для программ доступны только лишь 8 цветов. Однако выполнив команду:</p>
<pre class="brush: bash; title: ; wrap-lines: true; notranslate">$ for ((x=0; x&lt;=255; x++));do echo -e &quot;${x}:&#92;&#48;33[48;5;${x}mcolor&#92;&#48;33[000m&quot;;done</pre>
<p>мы, наверняка, сможем увидеть больше чем 8 цветов. А раз видим, значит можем и vim заставить увидеть эту палитру. Для этого зададим такой терминал:</p>
<pre class="brush: bash; title: ; wrap-lines: true; notranslate">$ TERM=xterm-256color</pre>
<p>Теперь</p>
<pre class="brush: bash; title: ; wrap-lines: true; notranslate">$ tput colors</pre>
<p>выдает нам требуемые 256 цветов. Запустив vim убеждаемся, что все ок. Но, это только временное решение, до первой перезагрузки терминала! Что бы закрепить эффект, нужно прописать следующие строки в ваш ~/.bashrc</p>
<pre class="brush: bash; title: ; wrap-lines: true; notranslate">
if [ &quot;$TERM&quot; == &quot;xterm&quot; ]; then
     # No it isn't, it's gnome-terminal
     export TERM=xterm-256color
fi
</pre>
</blockquote>
<p><code><br />
</code></p>
<p>Кроме цветов, конечно, мы можем настроить абсолютно все, что нам захочется и переопределить в нашем ~/.vimrc любые настройки akitaonrails. Не думаю, что стоит повторять то, что уже говорилось до меня многими-многими авторами, потому разумнее дать ссылки, где можно почитать о настройке vim под свои вкусы и нужды.</p>
<ul>
<li><a href="http://www.dimio.org/fajl-nastrojki-vim-vimrc-dlya-linux-i-windows.html" target="_blank">Файл настройки vim – .vimrc (для Linux и Windows)</a></li>
<li><a href="http://konishchevdmitry.blogspot.com/2008/07/howto-vim.html" target="_blank">Очередной HowTo по Vim</a></li>
<li><a href="http://nvie.com/posts/how-i-boosted-my-vim/" target="_blank">How I boosted my Vim</a></li>
</ul>
<p>Если какая-то настройка кажется вам не очевидной, то пожалуй не стоит ее применять, так как потом в массе конфигураций сложно будет разобраться что на что влияет.<br />
Единственное что позволю себе, дать еще несколько советов. Во-первых, добавьте автоматическую перезагрузку .vimrc по сохранению этого файла, что бы не набирать каждый раз команду :source $MYVIMRC, а уж тем более не перезагружать vim, что бы применить настройки.</p>
<pre class="brush: bash; title: ; wrap-lines: true; notranslate">
autocmd! bufwritepost $MYVIMRC source $MYVIMRC
</pre>
<p>Теперь когда вы просто сохраните изменения в файле настроек, конфигурация автоматически подгрузится и применится прямо в текущей сессии vim.<br />
Во-вторых, если вы планируете настроить байндинг комбинации клавиш Ctrl+s для сохранения изменений, вместо использования команды :w, вам придется дополнить свой ~/.bashrc еще одной опцией:</p>
<pre class="brush: bash; title: ; wrap-lines: true; notranslate">stty stop undef</pre>
<p>Это позволит избежать замораживания терминала и назначить горячие клавиши формата Ctrl+&lt;буква&gt;. Кстати, на всякий случай, если вы уже заморозили терминал нажатием Ctrl+s, можете разморозить его комбинацией Ctrl+q.<br />
В-третьих, если вы решили настроить отображение табов и пробелов в конце строки, так называемые  trailing spaces,</p>
<pre class="brush: bash; title: ; wrap-lines: true; notranslate">set list
set listchars=tab:&gt;-,trail:-</pre>
<p>то я советую вам установить в качестве символа пробелов знак «·» — middle dot, а в качестве табов «→» — rightwards arrow. Так они будут выделятся на фоне прочих символов.<br />
<code><br />
</code><br />
<strong>Vundle, the plug-in manager for Vim</strong><br />
<code><br />
</code><br />
К настройке, конечно, можно отнести и установку плагинов, которых не хватает в установленном нами наборе. Раньше я всегда устанавливал плагины вручную: скачиваешь свежую версию с <a href="http://www.vim.org/scripts/index.php" target="_blank">официального сайта</a>, следуя инструкции, которая прилагается к каждому расширению, ставишь все в папочку pugins и перегружаешь окружение или сам vim. Но, мир Ruby, да и Rails приучает к хорошему, потому захотелось посмотреть на решения вроде rubygems или bundler. Таких для vim существует множество, с разной степенью сложности настройки. Я выбрал простой и приятный в использовании <a href="https://github.com/gmarik/vundle" target="_blank">vundle</a>.<br />
<code><br />
</code><br />
Установка vundle предельно проста и отлично описана в <a href="https://github.com/gmarik/vundle/blob/master/README.md" target="_balnk">README.md</a>. После настройки vundle работать с ним так же приятно как с любым другим привычным для линуксоидов менеджером пакетов. Всего два шага: находим плагин командой :Bundles foo, где foo разумеется имя плагина. Далее выбираем его в открывшемся списке и нажимаем i, что очевидно означает insatall. Жмем Enter который просят нажать после установки и все — мы имеем установленное расширение vim.<br />
<code><br />
</code><br />
Другой вариант покопаться на том же официальном сайте с vimscripts, найти нужную надстройку на <a href="https://github.com/vim-scripts" target="_blank">GitHub</a> или на замечательном ресурсе <a href="http://vim-scripts.org/">http://vim-scripts.org</a> Тогда установка будет выглядеть еще проще: прописываем наш bundle в .vimrc файл в формате Bundle &#8216;FuzzyFinder&#8217; и запускаем команду :BundleInstall. Дальше куда бы мы не притащили свой .vimrc, на любой машине нам понадобится только vundle, а все остальное он сделает за нас!<br />
<code><br />
</code><br />
Akitaonrails поставляется с огромным набором плагинов на все случаи жизни. Почитать полный список с указанием предназначения можно в том же <a href="https://github.com/akitaonrails/vimfiles/blob/master/README.textile" target="_blank">README.textile</a>, который я уже упоминал.<br />
<code><br />
</code><br />
Я же использую дополнительно еще такие плагины:</p>
<ul>
<li><a href="https://github.com/godlygeek/tabular" target="_blank">tabular</a> — для простого выравнивания блоков кода и таблиц</li>
<li><a href="https://github.com/vim-scripts/mru.vim" target="_blank">mru.vim</a> — для открытия недавно редактированных файлов</li>
<li><a href="https://github.com/chrisbra/csv.vim" target="_blank">csv.vim</a> — для удобной работы с CSV файлами</li>
<li><a href="https://github.com/sjl/gundo.vim" target="_blank">gundo.vim</a> — для удобной работы с локальной историей правки файла</li>
<li><a href="https://github.com/astashov/vim-ruby-debugger" target="_blank">vim-ruby-debugger</a> — как и следует из названия, это debugger для ruby</li>
<li><a href="https://github.com/vim-scripts/openurl.vim" target="_blank">openurl.vim</a> — простенький плагин для открытия урлов в vim (особо удобно со следующим плагином)</li>
<li><a href="https://github.com/vim-scripts/TwitVim" target="_blank">TwitVim</a> — чисто для прикола :)</li>
</ul>
<p>И множество других. Со временем по вашим потребностям вы составите собственный список must have плагинов. Главный совет — если вам пришел в голову какой-то функционал для vim, не отвергайте эту идею с мыслью «Да ну, такого в терминале быть не может!», а все же попробуйте поискать, ведь для vim написано почти все что вам может понадобиться в работе.<br />
<code><br />
</code></p>
<h2>Использование</h2>
<p><code><br />
</code></p>
<p>Конечно я не собираюсь в рамках и без того большой статьи рассказывать вам о том, как пользоваться vim. Во-первых, я и сам не знаю даже одного процента всех возможностей, во-вторых, с учетом плагинов даже очень толстые книги не смогут рассказать о vim абсолютно всего, а в-третьих, даже то что успел узнать я, все равно используется едва ли на половину, потому что запомнить всего невозможно, если оно используется далеко не каждый день. Потому я расскажу пару общих вещей, которые составляют самый главный порог для новичка и дальше скажу куда идти… :)))<br />
<code><br />
</code><br />
Итак, самое главное что нужно знать о vim, это режимы. Режимов в vim, конечно больше чем я тут назову, но есть всего три самых главных, которые сильно различаются в своем предназначении и работе с ними.</p>
<ul>
<li><strong>Нормальный или командный режим</strong> — в этом режиме вы можете перемещаться по коду, искать и заменять, выполнять команды vim или плагинов (на самом деле это тоже считается отдельным режимом, который вызывается нажатием «:»), вырезать и вставлять, удалять текст и т.д. [ESC вообще и ESC : (эскейп, двоеточие) для ввода команды]</li>
<li><strong>Режим вставки</strong> — в этом режиме вы можете править текст, перемещаться по тексту, вызывать автокомплит, вырезать и вставлять куски кода и т.д. [Shit+i, ESC i — от insert]</li>
<li><strong>Визуальный режим</strong> — тоже имеет «подрежимы», но общем случае предназначен для выделения строк, слов или блоков, в том числе вертикальных блоков определенной ширины. [ESC Shit+V — выделение целых строк, ESC v — выделение символов, Ctrl+v — визуальный блок (тоже на самом деле отдельный режим)]</li>
</ul>
<p>Понимания этих режимов достаточно что бы войдя в vim по крайней мере выйти из него (ESC :q! — переход в командный режим и выполнение команды выхода с force, что бы не сохранять изменений и не получать лишних вопросов).<br />
<code><br />
</code><br />
Учиться использованию vim можно бесконечно, как и использованию Linux. Но есть базовые вещи, без которых было бы нереально работать. Приведу просто список шпаргалок, статей и tips’ов, которые стоит почитать или даже распечатать и повесить на стеле возле рабочего места, что бы привыкнуть и запомнить все это богатство возможностей:<br />
<code><br />
</code></p>
<ul>
<li>Шпаргалка в тестовом формате с кучей полезных вещей — <a href="http://successtheory.com/tips/vimtips.html" target="_balnk">http://successtheory.com/tips/vimtips.html</a></li>
<li>Ваш родной дом в деле описка каких-то вещей про vim — <a href="http://vim.wikia.com/wiki/Vim_Tips_Wiki" target="_balnk">http://vim.wikia.com/wiki/Vim_Tips_Wiki</a></li>
<li>Wiki-книга про vim — <a href="http://ru.wikibooks.org/wiki/Vim" target="_balnk">http://ru.wikibooks.org/wiki/Vim</a></li>
<li>Поваренная книга vim’овода — <a href="http://www.oualline.com/vim-cook.html" target="_balnk">http://www.oualline.com/vim-cook.html</a></li>
<li>Книга про регулярки в vim — <a href="http://vimregex.com/" target="_balnk">http://vimregex.com/</a></li>
<li>Официальные доки по vim — <a href="http://vimdoc.sourceforge.net/" target="_balnk">http://vimdoc.sourceforge.net/</a></li>
<li>Простенькая шпаргалка на каждый день (с разделами) — <a href="http://www.tuxfiles.org/linuxhelp/vimcheat.html" target="_balnk">http://www.tuxfiles.org/linuxhelp/vimcheat.html</a></li>
<li>Отличная шпаргалка по хоткеям на стену — <a href="http://www.viemu.com/vi-vim-cheat-sheet.gif" target="_balnk">http://www.viemu.com/vi-vim-cheat-sheet.gif</a></li>
<li><a href="http://www.swaroopch.com/notes/Vim" target="_blank">A Byte of Vim</a> — бесплатная (Creative-Commons) книга о vim в электронном виде</li>
<li>vimtutor — (набирать в терминале), интерактивный туториал по основам vim</li>
<li><a href="http://twitter.com/#!/search/users/vimtips" target="_blank">vimtips</a> в твиттере — полезные команды и советы по vim</li>
<li><a href="http://vimgolf.com/" target="_blank">vimgolf</a> — задания для настоящих vim ninjas</li>
</ul>
<p>Ну, вот, в общем-то и все. Думал еще написать самые ходовые команды, но понял, что в любом случае находил их на тех же ресурсах, что привел выше, потому, пожалуй, справитесь без моей копипасты.</p>
<p>И помните — <a href="https://twitter.com/#!/darraghcurran/status/21663422987" target="_balnk">everyday is a whyday</a>!  <img src="http://smileart.in.ua/wp-includes/images/smilies/ok.gif" alt=":ok:" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
]]></content:encoded>
			<wfw:commentRss>http://smileart.in.ua/vim-101/feed</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Тёплый Ламповый</title>
		<link>http://smileart.in.ua/trash_art</link>
		<comments>http://smileart.in.ua/trash_art#comments</comments>
		<pubDate>Sat, 02 Jul 2011 11:25:10 +0000</pubDate>
		<dc:creator><![CDATA[Smile @rT]]></dc:creator>
				<category><![CDATA[Арт]]></category>
		<category><![CDATA[hand-made]]></category>
		<category><![CDATA[steampunk]]></category>
		<category><![CDATA[trash art]]></category>
		<category><![CDATA[мир]]></category>
		<category><![CDATA[мусор]]></category>
		<category><![CDATA[стимпанк]]></category>
		<category><![CDATA[трэш-арт]]></category>
		<category><![CDATA[фото]]></category>
		<category><![CDATA[хэндмэйд]]></category>
		<category><![CDATA[человечек]]></category>

		<guid isPermaLink="false">http://smileart.in.ua/?p=464</guid>
		<description><![CDATA[Фото-заметка о hand-made человечке]]></description>
				<content:encoded><![CDATA[<p><a href="http://smileart.in.ua/wp-content/uploads/2011/07/trash_art_940_x_600_e.jpg"><img class="aligncenter size-full wp-image-473" alt="trash_art_940_x_600_e" src="http://smileart.in.ua/wp-content/uploads/2011/07/trash_art_940_x_600_e.jpg" width="940" height="600" srcset="http://smileart.in.ua/wp-content/uploads/2011/07/trash_art_940_x_600_e.jpg 940w, http://smileart.in.ua/wp-content/uploads/2011/07/trash_art_940_x_600_e-300x191.jpg 300w" sizes="(max-width: 940px) 100vw, 940px" /></a></p>
<p>Давным давно… В общем, в 2009 году, сидел я на старой работе в ночную смену. <img src="http://smileart.in.ua/wp-includes/images/smilies/morning1.gif" alt=":coffee:" class="wp-smiley" style="height: 1em; max-height: 1em;" />  Делать было нечего (нет, я не бездельник, просто все было практически полностью автоматизированно) и решил я из подручных офисных материалов сделать человечка. И сделал. А потом сделал ему подружку, что бы самому не было скучно. А после, еще и женил их, что бы все чин чином и по уму. А в процессе снял все это на свою старую-добрую цифро-мыльничку и <a href="http://www.liveinternet.ru/users/smile_art/post97570113/">выложил на старый-добрый бложег</a>. На том и закончил.</p>
<p><span id="more-464"></span></p>
<p>Спустя же много лет, позавидовал я любимой с ее <a href="http://figulinki.net/">фигулинками</a>, а еще и <a href="http://shamakai.livejournal.com/">добрые люди</a> напомнили, и решил я воплотить давнишнюю тудушку, которая все кочевала и перекладывалась из одного списка идей в другой. Так и появился на свет человечек по имени Тёплый Ламповый. <a href="http://lurkmore.ru/%D0%A2%D1%91%D0%BF%D0%BB%D1%8B%D0%B9_%D0%BB%D0%B0%D0%BC%D0%BF%D0%BE%D0%B2%D1%8B%D0%B9_%D0%B7%D0%B2%D1%83%D0%BA">Почему Тёплый</a>? Да потому, что Ламповый! Он миротворец, светоносец, романтик и путешественник, а впрочем, смотрите сами (картинки как всегда кликабельны):</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331287009.jpg"><img class="aligncenter size-medium wp-image-495" title="Знакомьтесь — Тёплый Ламповый" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331287009-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331287009-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331287009-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286753.jpg"><img class="aligncenter size-medium wp-image-493" title="Тёплый весьма умен, у него в отличии от многих есть извилинка" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286753-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286753-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286753-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286742.jpg"><img class="aligncenter size-medium wp-image-492" title="Тёплый Ламповый — со спины" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286742-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286742-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286742-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286864.jpg"><img class="aligncenter size-medium wp-image-494" alt="Follow me!" src="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286864-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286864-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286864-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286672.jpg"><img class="aligncenter size-medium wp-image-489" title="— Подать мне меч!" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286672-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286672-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286672-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286691.jpg"><img class="aligncenter size-medium wp-image-490" title="Почти мечь джидая" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286691-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286691-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286691-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286699.jpg"><img class="aligncenter size-medium wp-image-491" title="В бой!" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286699-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286699-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286699-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286644.jpg"><img class="aligncenter size-medium wp-image-488" title="Тёплый… воротник" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286644-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286644-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286644-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286632.jpg"><img class="aligncenter size-medium wp-image-487" title="Тёплый — вид сбоку" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286632-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286632-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286632-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286569.jpg"><img class="aligncenter size-medium wp-image-486" title="Повелитель мусора" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286569-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286569-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286569-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286521.jpg"><img class="aligncenter size-medium wp-image-485" title="Тёплый… шарф" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286521-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286521-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286521-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286499.jpg"><img class="aligncenter size-medium wp-image-484" title="Тёплое Ламповое сердце" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286499-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286499-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286499-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286474.jpg"><img class="aligncenter size-medium wp-image-483" title="Светоносец, как я и обещал…" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286474-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286474-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286474-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286453.jpg"><img class="aligncenter size-medium wp-image-482" title="Дарим свет людям!" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286453-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286453-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286453-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286299.jpg"><img class="aligncenter size-medium wp-image-481" title="Тёплое… пальто" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286299-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286299-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286299-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286271.jpg"><img class="aligncenter size-medium wp-image-480" title="Вид сверху" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286271-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286271-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286271-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286024.jpg"><img class="aligncenter size-medium wp-image-479" title="Потрошитель" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286024-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286024-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331286024-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331285988.jpg"><img class="aligncenter size-medium wp-image-478" title="За мир — порву!" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331285988-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331285988-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331285988-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331285947.jpg"><img class="aligncenter size-medium wp-image-477" title="Тёплый Ламповый человечек" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331285947-224x300.jpg" width="224" height="300" srcset="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331285947-224x300.jpg 224w, http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331285947-764x1024.jpg 764w" sizes="(max-width: 224px) 100vw, 224px" /></a></p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331285928.jpg"><img class="aligncenter size-medium wp-image-476" title="В путь!" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331285928-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331285928-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331285928-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331285891.jpg"><img class="aligncenter size-medium wp-image-475" title="Вот такой получился наш Теплый Ламповый человечек…" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331285891-223x300.jpg" width="223" height="300" srcset="http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331285891-223x300.jpg 223w, http://smileart.in.ua/wp-content/uploads/2011/07/IMG_331285891-764x1024.jpg 764w" sizes="(max-width: 223px) 100vw, 223px" /></a></p>
<p>За сим все. Ждите когда нибудь еще чего-то в стиле трэш-арт. Па-па! <img src="http://smileart.in.ua/wp-includes/images/smilies/bye.gif" alt=":byby:" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
]]></content:encoded>
			<wfw:commentRss>http://smileart.in.ua/trash_art/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Геокэшинг: Белгород-Днестровский</title>
		<link>http://smileart.in.ua/geocaching_belgorod</link>
		<comments>http://smileart.in.ua/geocaching_belgorod#comments</comments>
		<pubDate>Sun, 15 May 2011 15:02:53 +0000</pubDate>
		<dc:creator><![CDATA[Smile @rT]]></dc:creator>
				<category><![CDATA[Туризм]]></category>
		<category><![CDATA[gps]]></category>
		<category><![CDATA[Аккерманская крепость]]></category>
		<category><![CDATA[Белгород-Днестровский]]></category>
		<category><![CDATA[геокэшинг]]></category>
		<category><![CDATA[история]]></category>
		<category><![CDATA[крепость]]></category>
		<category><![CDATA[Одесса]]></category>
		<category><![CDATA[поездка]]></category>
		<category><![CDATA[раскопки]]></category>
		<category><![CDATA[Тира]]></category>
		<category><![CDATA[туризм]]></category>
		<category><![CDATA[фото]]></category>

		<guid isPermaLink="false">http://smileart.in.ua/?p=326</guid>
		<description><![CDATA[Заметка о поездке в город Белгород-Днестровский]]></description>
				<content:encoded><![CDATA[<p><a href="http://smileart.in.ua/wp-content/uploads/2011/04/belgorod_940_x_600.jpg"><img class="aligncenter size-full wp-image-331" alt="belgorod_940_x_600" src="http://smileart.in.ua/wp-content/uploads/2011/04/belgorod_940_x_600.jpg" width="940" height="600" srcset="http://smileart.in.ua/wp-content/uploads/2011/04/belgorod_940_x_600.jpg 940w, http://smileart.in.ua/wp-content/uploads/2011/04/belgorod_940_x_600-300x191.jpg 300w" sizes="(max-width: 940px) 100vw, 940px" /></a></p>
<p>На выходных в середине апреля, мы с любимой решили открыть туристический сезон и поехать в близкий нам (географически) город Белгород-Днестровский, что находится <a href="http://maps.google.com.ua/?ie=UTF8&amp;ll=46.189457,30.315571&amp;spn=0.063459,0.234489&amp;t=h&amp;z=13&amp;lci=org.wikipedia.ru">вот тут</a>. Целью поездки, кроме как посмотреть на исторические места (городу, все таки, более двух с половиной тысяч лет), было прелюбопытное занятие, которое мы начали осваивать еще, кажется в далеком 2008 — <a href="http://ru.wikipedia.org/wiki/%D0%93%D0%B5%D0%BE%D0%BA%D1%8D%D1%88%D0%B8%D0%BD%D0%B3">геокэшинг</a>.</p>
<p><span id="more-326"></span></p>
<p>Тайник, правда, не физический, что обидно. Впрочем, в нашей стране, где всякий гопник и вандал считает своим долгом все испоганить и разворотить это нас слабо удивляет. Ну, ок, как-то много слов и мало… фоток. Итак, <a href="http://ru.wikipedia.org/wiki/%D0%91%D0%B5%D0%BB%D0%B3%D0%BE%D1%80%D0%BE%D0%B4-%D0%94%D0%BD%D0%B5%D1%81%D1%82%D1%80%D0%BE%D0%B2%D1%81%D0%BA%D0%B8%D0%B9">Белгород-Днестровский</a> «древнейший город Днестровского-Прутского междуречья, расположенный на правом берегу Днестра в 20 км от Чёрного моря.» Маршрут наш, конечно, начинается из Одессы. По дороге встречаем местную «достопримечательность», туристический трамвайчик: <a href="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0607.jpg"><img class="aligncenter size-medium wp-image-334" title="Туристический трамвайчик" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0607-300x187.jpg" width="300" height="187" srcset="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0607-300x187.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0607-1024x640.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a> Дальше держим путь в сторону ЖД вокзала, по дороге ужасаясь другим местным достопримечательностям. Казалось бы, едем смотреть на руины, а тут под боком, среди модных магазинов… В этом вся Одесса: <a href="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0609.jpg"><img class="aligncenter size-medium wp-image-336" title="Развалины дома" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0609-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0609-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0609-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a> Ну вот и пришли: <a href="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0610.jpg"><img class="aligncenter size-medium wp-image-337" title="Железнодорожный вокзал «Одесса главная»" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0610-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0610-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0610-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a> Далее, садимся в… Нет, не поезд. Садимся в маршрутку к крикливым и наглым местным водилам. Едем довольно долго, не смотря на малое расстояние. За окном то и дело мелькают зеленеющие поля и молодые виноградники. Сразу становится понятным, почему на гербе Белгорода изображена виноградная лоза: <a href="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0623.jpg"><img class="aligncenter size-medium wp-image-338" title="Виноградники" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0623-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0623-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0623-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a> По прибытию расспрашиваем местных и определяемся как добраться до крепости. На улице очень тепло, весна вступает в свои права: <a href="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0624.jpg"><img class="aligncenter size-medium wp-image-339" title="Веснаааа…" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0624-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0624-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0624-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0612.jpg"><img class="aligncenter size-medium wp-image-340" title="Веснаааа я говорю :)" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0612-300x300.jpg" width="300" height="300" srcset="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0612-300x300.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0612-150x150.jpg 150w, http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0612-1024x1024.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0632.jpg"><img class="aligncenter size-medium wp-image-344" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0632-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0632-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0632-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0659.jpg"><img class="aligncenter size-medium wp-image-361" title="Травка зеленеет" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0659-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0659-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0659-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p>Первый и, кажется, единственный знак подсказывает что мы идем верным путем. А вообще, с указателями и прочими удобностями для туристов у нас, как и со многим другим плохо чуть более чем на половину:</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0616.jpg"><img class="aligncenter size-medium wp-image-341" title="Указатель" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0616-300x223.jpg" width="300" height="223" srcset="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0616-300x223.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0616-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p>Как водится, встречаем и местных жителей:</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0630.jpg"><img class="aligncenter size-medium wp-image-343" title="Рыжий кот :)" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0630-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0630-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0630-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0633.jpg"><img class="aligncenter size-medium wp-image-345" title="Артур? ;)" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0633-224x300.jpg" width="224" height="300" srcset="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0633-224x300.jpg 224w, http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0633-764x1024.jpg 764w" sizes="(max-width: 224px) 100vw, 224px" /></a></p>
<p>И, наконец, достигаем цели — Аккерманской крепости:</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0634.jpg"><img class="aligncenter size-medium wp-image-346" title="Белая крепость" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0634-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0634-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0634-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0637.jpg"><img class="aligncenter size-medium wp-image-347" title="Башня овидия (девичья)" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0637-224x300.jpg" width="224" height="300" srcset="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0637-224x300.jpg 224w, http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0637-764x1024.jpg 764w" sizes="(max-width: 224px) 100vw, 224px" /></a></p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0641.jpg"><img class="aligncenter size-medium wp-image-350" title="Башня овидья (девичья)" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0641-224x300.jpg" width="224" height="300" srcset="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0641-224x300.jpg 224w, http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0641-764x1024.jpg 764w" sizes="(max-width: 224px) 100vw, 224px" /></a></p>
<p>Сильно впечатляют, конечно, рвы. Мне всегда рвы вокруг крепостей казались чем-то если не сказочным и фэнтэзийным, то по крайней мере киношным уж точно. Ан нет, вот он, глубоченный и широченный. В такой да воды бы напустить, ух…</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0639.jpg"><img class="aligncenter size-medium wp-image-348" title="Ров вокруг крепости" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0639-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0639-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0639-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0640.jpg"><img class="aligncenter size-medium wp-image-349" title="Ров" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0640-224x300.jpg" width="224" height="300" srcset="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0640-224x300.jpg 224w, http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0640-764x1024.jpg 764w" sizes="(max-width: 224px) 100vw, 224px" /></a></p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0643.jpg"><img class="aligncenter size-medium wp-image-351" title="Ров" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0643-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0643-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0643-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0756.jpg"><img class="aligncenter size-medium wp-image-403" title="Ров у центрального входа" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0756-224x300.jpg" width="224" height="300" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0756-224x300.jpg 224w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0756-764x1024.jpg 764w" sizes="(max-width: 224px) 100vw, 224px" /></a></p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0759.jpg"><img class="aligncenter size-medium wp-image-404" title="Глубина рва" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0759-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0759-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0759-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p>Дальше оказываемся у входа в крепость. Сезон еще не начался, так что людей не так уж много. Вход всего 10 грн. Над входом, как видим, тот самый герб Белгород-Днестровского, о котором говорилось выше.</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0645.jpg"><img class="aligncenter size-medium wp-image-354" title="Вход в крепость" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0645-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0645-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0645-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0648.jpg"><img class="aligncenter size-medium wp-image-355" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0648-224x300.jpg" width="224" height="300" srcset="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0648-224x300.jpg 224w, http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0648-764x1024.jpg 764w" sizes="(max-width: 224px) 100vw, 224px" /></a></p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0650.jpg"><img class="aligncenter size-medium wp-image-357" title="Фото на память у входа в крепость" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0650-224x300.jpg" width="224" height="300" srcset="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0650-224x300.jpg 224w, http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0650-764x1024.jpg 764w" sizes="(max-width: 224px) 100vw, 224px" /></a></p>
<p>Дальше начинаем заглядывать во всякие башенки, бойницы, ну и делать все то, чем занимаются туристы в крепостях. Кстати, не все. Перед нами в крепость вошла группа каких-то парнишек, на вид типичных призывников. Так вот они почему-то считали своим туристическим долгом орать и ржать как не в себя :(</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0652.jpg"><img class="aligncenter size-medium wp-image-358" title="Закоулочек" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0652-224x300.jpg" width="224" height="300" srcset="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0652-224x300.jpg 224w, http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0652-764x1024.jpg 764w" sizes="(max-width: 224px) 100vw, 224px" /></a></p>
<p>Сперва, войдя в крепость, вы попадаете на гражданский двор. Особо интересного тут ничего нет, как нет тут и хотя бы малейшей инфраструктуры для приятного туризма. Разве что за 8 гривен вас пустят в коморку «для пыток», а за две гривны дадут либо сняться возле катапульты, либо выстрелить из арбалета. <a href="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0653.jpg"><img class="aligncenter size-medium wp-image-359" title="Странный киоск :)" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0653-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0653-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0653-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0658.jpg"><img class="aligncenter size-medium wp-image-360" title="Памятный знак" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0658-224x300.jpg" width="224" height="300" srcset="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0658-224x300.jpg 224w, http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0658-764x1024.jpg 764w" sizes="(max-width: 224px) 100vw, 224px" /></a></p>
<p style="text-align: center;"><a href="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0664.jpg"><img class="aligncenter size-medium wp-image-362" title="Минарет построенный на развалинах христианского храма (XII-XIII)" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0664-224x300.jpg" width="224" height="300" srcset="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0664-224x300.jpg 224w, http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0664-764x1024.jpg 764w" sizes="(max-width: 224px) 100vw, 224px" /></a></p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0654.jpg"><img class="aligncenter size-medium wp-image-363" title="Крепостная стена" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0654-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0654-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0654-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0663.jpg"><img class="aligncenter size-medium wp-image-364" title="Крепость и вид на залив" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0663-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0663-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0663-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0812.jpg"><img class="aligncenter size-medium wp-image-365" title="Вид на катапульты и пушки" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0812-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0812-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0812-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0823.jpg"><img class="aligncenter size-medium wp-image-366" title="Стрельба из арбалетов" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0823-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0823-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0823-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0825.jpg"><img class="aligncenter size-medium wp-image-367" title="Памятный знак советских времен" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0825-224x300.jpg" width="224" height="300" srcset="http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0825-224x300.jpg 224w, http://smileart.in.ua/wp-content/uploads/2011/04/IMG_0825-764x1024.jpg 764w" sizes="(max-width: 224px) 100vw, 224px" /></a></p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0826.jpg"><img class="aligncenter size-medium wp-image-370" title="Вход воспрещен" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0826-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0826-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0826-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: left;">Как ни странно различные орудия представлены тоже не гражданском дворе:</p>
<p style="text-align: center;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_08282.jpg"><img class="aligncenter size-medium wp-image-385" title="Пушка" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_08282-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_08282-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_08282-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: center;">
<p style="text-align: center;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_08311.jpg"><img class="aligncenter size-medium wp-image-386" title="Рибадекин — многоствольная пушка" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_08311-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_08311-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_08311-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: center;">
<p style="text-align: center;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_08291.jpg"><img class="aligncenter size-medium wp-image-387" title="Мортира" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_08291-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_08291-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_08291-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: center;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0830.jpg"><img class="aligncenter size-medium wp-image-375" title="Катапульта" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0830-224x300.jpg" width="224" height="300" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0830-224x300.jpg 224w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0830-764x1024.jpg 764w" sizes="(max-width: 224px) 100vw, 224px" /></a></p>
<p style="text-align: center;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0835.jpg"><img class="aligncenter size-medium wp-image-376" title="Катапульты" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0835-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0835-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0835-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: left;">Кроме того в углу огромной территории в ~5 гектар ведутся раскопки:</p>
<p style="text-align: left;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0775.jpg"><img class="aligncenter size-medium wp-image-377" title="Гражданский двор — раскопки" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0775-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0775-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0775-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: left;">Здесь, да и вообще в траве вдоль стен крепости водится, как выяснилось, много живности в частности вот такие жуки:</p>
<p style="text-align: left;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_07911.jpg"><img class="aligncenter size-medium wp-image-383" title="Жук-пожарник или мягкотелка красноногая" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_07911-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_07911-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_07911-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: left;">А еще много мелких коричневых ящериц, которые целыми стайками разбегались из под ног и даже их более крупных собратьев — Lacerta viridis, проще говоря Ящериц зеленых. Этих мастеров маскировки словить или хотя бы заметить было гораздо сложнее, так как в мгновение ока они исчезали среди травы, стен и камней, сливаясь со мхом:</p>
<p style="text-align: left;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0790.jpg"><img class="aligncenter size-medium wp-image-379" title="Ящерица зеленая из семейства «Where's Waldo?» :))" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0790-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0790-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0790-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: left;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0792.jpg"><img class="aligncenter size-medium wp-image-380" title="Ящерица и Zooooom… " alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0792-300x223.jpg" width="300" height="223" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0792-300x223.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0792-1024x763.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: left;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0793.jpg"><img class="aligncenter size-medium wp-image-381" title="Маскируемся и замираем…" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0793-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0793-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0793-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: left;">Вот еще немного фото гражданского двора:</p>
<p style="text-align: left;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0774.jpg"><img class="aligncenter size-medium wp-image-390" title="Окна с видом на море" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0774-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0774-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0774-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: left;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0787.jpg"><img class="aligncenter size-medium wp-image-391" title="Всюду опасно" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0787-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0787-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0787-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: left;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0789.jpg"><img class="aligncenter size-medium wp-image-392" title="Бойница" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0789-224x300.jpg" width="224" height="300" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0789-224x300.jpg 224w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0789-764x1024.jpg 764w" sizes="(max-width: 224px) 100vw, 224px" /></a></p>
<p style="text-align: left;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0807.jpg"><img class="aligncenter size-medium wp-image-393" title="Жилые дома сразу за крепостью. Почти как Камянец" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0807-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0807-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0807-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: left;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0618.jpg"><img class="aligncenter size-medium wp-image-394" title="Башня" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0618-300x300.jpg" width="300" height="300" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0618-300x300.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0618-150x150.jpg 150w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0618-1024x1024.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: left;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0809.jpg"><img class="aligncenter size-medium wp-image-395" title="Балка в стене" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0809-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0809-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0809-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: left;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_08132.jpg"><img class="aligncenter size-medium wp-image-398" title="Общий вид гражданского двора" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_08132-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_08132-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_08132-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: left;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0816.jpg"><img class="aligncenter size-medium wp-image-399" title="Опасная стена" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0816-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0816-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0816-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: left;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0837.jpg"><img class="aligncenter size-medium wp-image-400" title="Средневековый дом на колесах :)" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0837-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0837-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0837-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: left;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0840.jpg"><img class="aligncenter size-medium wp-image-401" title="Коморка пыток" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0840-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0840-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0840-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: left;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0843.jpg"><img class="aligncenter size-medium wp-image-402" title="Пытки со скидкой" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0843-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0843-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0843-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: left;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0844.jpg"><img class="aligncenter size-medium wp-image-408" title="Прокат костюмов" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0844-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0844-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0844-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: left;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0847.jpg"><img class="aligncenter size-medium wp-image-406" title="Арбалет" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0847-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0847-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0847-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: left;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0850.jpg"><img class="aligncenter size-medium wp-image-407" title="Схема крепости" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0850-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0850-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0850-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: left;">Далее идем на гарнизонный двор и от самого входа перед нами предстает цитадель:</p>
<p style="text-align: left;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0662.jpg"><img class="aligncenter size-medium wp-image-409" title="Цитадель" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0662-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0662-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0662-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: left;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0666.jpg"><img class="aligncenter size-medium wp-image-410" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0666-224x300.jpg" width="224" height="300" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0666-224x300.jpg 224w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0666-764x1024.jpg 764w" sizes="(max-width: 224px) 100vw, 224px" /></a></p>
<p style="text-align: left;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0667.jpg"><img class="aligncenter size-medium wp-image-411" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0667-298x300.jpg" width="298" height="300" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0667-298x300.jpg 298w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0667-150x150.jpg 150w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0667-1018x1024.jpg 1018w" sizes="(max-width: 298px) 100vw, 298px" /></a></p>
<p style="text-align: left;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0668.jpg"><img class="aligncenter size-medium wp-image-413" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0668-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0668-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0668-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: left;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0675.jpg"><img class="aligncenter size-medium wp-image-414" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0675-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0675-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0675-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: left;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0677.jpg"><img class="aligncenter size-medium wp-image-415" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0677-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0677-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0677-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: left;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0678.jpg"><img class="aligncenter size-medium wp-image-416" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0678-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0678-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0678-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: left;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0680.jpg"><img class="aligncenter size-medium wp-image-417" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0680-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0680-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0680-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: left;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0683.jpg"><img class="aligncenter size-medium wp-image-418" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0683-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0683-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0683-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: left;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0685.jpg"><img class="aligncenter size-medium wp-image-419" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0685-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0685-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0685-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: left;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0687.jpg"><img class="aligncenter size-medium wp-image-420" title="Вид на море" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0687-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0687-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0687-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: center;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0695.jpg"><img class="aligncenter size-medium wp-image-423" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0695-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0695-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0695-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: center;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0703.jpg"><img class="aligncenter size-medium wp-image-424" title="По стенам можно ходить" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0703-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0703-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0703-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: center;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0716.jpg"><img class="aligncenter size-medium wp-image-425" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0716-224x300.jpg" width="224" height="300" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0716-224x300.jpg 224w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0716-764x1024.jpg 764w" sizes="(max-width: 224px) 100vw, 224px" /></a></p>
<p style="text-align: center;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0723.jpg"><img class="aligncenter size-medium wp-image-426" title="Цветок на камнях" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0723-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0723-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0723-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: center;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0727.jpg"><img class="aligncenter size-medium wp-image-427" title="Бойница" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0727-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0727-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0727-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: center;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0728.jpg"><img class="aligncenter size-medium wp-image-428" title="Раскопки на гарнизонном дворе" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0728-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0728-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0728-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: center;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0741.jpg"><img class="aligncenter size-medium wp-image-429" title="Ступени" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0741-224x300.jpg" width="224" height="300" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0741-224x300.jpg 224w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0741-764x1024.jpg 764w" sizes="(max-width: 224px) 100vw, 224px" /><img alt="" src="file:///home/smileart/Picasa/BD/IMG_0599.JPG" /></a></p>
<p style="text-align: center;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0745.jpg"><img class="aligncenter size-medium wp-image-431" title="Комнатка на стене" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0745-224x300.jpg" width="224" height="300" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0745-224x300.jpg 224w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0745-764x1024.jpg 764w" sizes="(max-width: 224px) 100vw, 224px" /></a></p>
<p style="text-align: center;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0754.jpg"><img class="aligncenter size-medium wp-image-432" title="Островок и катера" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0754-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0754-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0754-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: center;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0851.jpg"><img class="aligncenter size-medium wp-image-434" title="Цитадель" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0851-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0851-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0851-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: center;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0862.jpg"><img class="aligncenter size-medium wp-image-435" title="Башня (видна сохранившаяся балка пола)" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0862-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0862-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0862-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: center;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0864.jpg"><img class="aligncenter size-medium wp-image-436" title="Вид из окна" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0864-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0864-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0864-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: center;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0866.jpg"><img class="aligncenter size-medium wp-image-437" title="Залив" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0866-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0866-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0866-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: center;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0876.jpg"><img class="aligncenter size-medium wp-image-438" title="Около портала :)" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0876-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0876-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0876-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: center;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0883.jpg"><img class="aligncenter size-medium wp-image-439" title="Окно" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0883-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0883-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0883-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: center;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0922.jpg"><img class="aligncenter size-medium wp-image-440" title="Пушка" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0922-224x300.jpg" width="224" height="300" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0922-224x300.jpg 224w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0922-764x1024.jpg 764w" sizes="(max-width: 224px) 100vw, 224px" /></a></p>
<p style="text-align: center;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0929.jpg"><img class="aligncenter size-medium wp-image-441" title="Уламки былой роскоши" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0929-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0929-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0929-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: center;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0881.jpg"><img class="aligncenter size-medium wp-image-446" title="Вход в цитадель" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0881-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0881-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0881-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: center;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0884.jpg"><img class="aligncenter size-medium wp-image-447" title="Вход в башню цитадели" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0884-224x300.jpg" width="224" height="300" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0884-224x300.jpg 224w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0884-764x1024.jpg 764w" sizes="(max-width: 224px) 100vw, 224px" /></a></p>
<p style="text-align: center;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0887.jpg"><img class="aligncenter size-medium wp-image-448" title="«Потолок» башни" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0887-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0887-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0887-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: left;">Окло крепости ведутся раскопки античного города Тира:</p>
<p style="text-align: center;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0939.jpg"><img class="aligncenter size-medium wp-image-454" title="Раскопки" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0939-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0939-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0939-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: center;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0766.jpg"><img class="aligncenter size-medium wp-image-451" title="Античный город Тира, раскопки, вид с крепости" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0766-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0766-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0766-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: center;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0941.jpg"><img class="aligncenter size-medium wp-image-455" title="Ира, стены домов" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0941-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0941-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0941-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: center;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0938.jpg"><img class="aligncenter size-medium wp-image-453" title="Древний город" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0938-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0938-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0938-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: center;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0937.jpg"><img class="aligncenter size-medium wp-image-452" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0937-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0937-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0937-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: center;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0906.jpg"><img class="aligncenter size-medium wp-image-450" title="Камень" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0906-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0906-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0906-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: center;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0890.jpg"><img class="aligncenter size-medium wp-image-449" title="Ветви" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0890-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0890-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_0890-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: center;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_09451.jpg"><img class="aligncenter size-medium wp-image-456" title="Прощальное фото" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_09451-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_09451-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_09451-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: center;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_09511.jpg"><img class="aligncenter size-medium wp-image-458" title="Микро-мир" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_09511-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_09511-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_09511-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: center;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_09501.jpg"><img class="aligncenter size-medium wp-image-457" title="Охранная система местного завода" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_09501-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_09501-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_09501-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: center;"><a href="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_09521.jpg"><img class="aligncenter size-medium wp-image-459" title="Классное название улицы :)" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_09521-300x224.jpg" width="300" height="224" srcset="http://smileart.in.ua/wp-content/uploads/2011/05/IMG_09521-300x224.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/05/IMG_09521-1024x764.jpg 1024w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p style="text-align: left;">
<p style="text-align: left;">На этом, в общем-то и все, разве что могу показать несколько панорам, как бонус-трек <img src="http://smileart.in.ua/wp-includes/images/smilies/ok.gif" alt=":ok:" class="wp-smiley" style="height: 1em; max-height: 1em;" />  :</p>
<ul>
<li><a href="http://occip.it/pt4y1snt">Башня цитадели</a></li>
<li><a href="http://occip.it/pt4y1u73">Внутри цитадели</a></li>
<li><a href="http://occip.it/pt4y1wgv">Гарнизонный двор</a></li>
</ul>
<p style="text-align: left;">Ну, вот, теперь точно все… Тайник, кстати, на геокэшинговом сайте был засчитан, что приятно. И стал, увы, пока что только первым нашим тайником. <img src="http://smileart.in.ua/wp-includes/images/smilies/secret.gif" alt=":secret:" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
]]></content:encoded>
			<wfw:commentRss>http://smileart.in.ua/geocaching_belgorod/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>CSS3: Кнопка</title>
		<link>http://smileart.in.ua/css3_whyyyyyyy_button</link>
		<comments>http://smileart.in.ua/css3_whyyyyyyy_button#respond</comments>
		<pubDate>Wed, 13 Apr 2011 21:38:31 +0000</pubDate>
		<dc:creator><![CDATA[Smile @rT]]></dc:creator>
				<category><![CDATA[Программинг]]></category>
		<category><![CDATA[button]]></category>
		<category><![CDATA[color]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[css3]]></category>
		<category><![CDATA[gradient]]></category>
		<category><![CDATA[hacks]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[isometric]]></category>
		<category><![CDATA[js]]></category>
		<category><![CDATA[jsfiddle]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[project]]></category>
		<category><![CDATA[shadow]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[верстка]]></category>
		<category><![CDATA[графика]]></category>
		<category><![CDATA[метод]]></category>

		<guid isPermaLink="false">http://smileart.in.ua/?p=312</guid>
		<description><![CDATA[Статья о создании CSS3 кнопки]]></description>
				<content:encoded><![CDATA[<p><a href="http://smileart.in.ua/wp-content/uploads/2011/04/whyyyyy_940_x_600.png"><img class="aligncenter size-full wp-image-321" alt="whyyyyy_940_x_600" src="http://smileart.in.ua/wp-content/uploads/2011/04/whyyyyy_940_x_600.png" width="940" height="600" srcset="http://smileart.in.ua/wp-content/uploads/2011/04/whyyyyy_940_x_600.png 940w, http://smileart.in.ua/wp-content/uploads/2011/04/whyyyyy_940_x_600-300x191.png 300w" sizes="(max-width: 940px) 100vw, 940px" /></a></p>
<p>Уже довольно давно я узнал от уважаемого <a href="http://sofcase.net/about/">Sofcase</a> о замечательном проекте <a href="http://sofcase.net/post/whyyyyyyyyyyyyyy/">whyyyyyyyyyyyyyy.com</a>, который напоминает по своей сути <a href="http://nooooooooooooooo.com/">http://nooooooooooooooo.com/</a>, но только звук и оформление, конечно другие.</p>
<p><span id="more-312"></span></p>
<p>На последнем была использована стандартная кнопка Flash MX, если я не ошибаюсь (если ошибаюсь, пусть кто-то меня поправит). На первом же кнопка выглядит в сто раз круче — классическая, изометрическая, сочная, красная кнопка по центру экрана, на которую просто нельзя не нажать!</p>
<p>Мне она на столько понравилась, что я перекопал половину инета, в поисках чего-то похожего, но не картинкой, как сделано на сайте, а с использованием CSS, пусть даже и не совсем совместимой третей версии. Но, когда я желаемого не нашел, на пыльном дне моего to-do списка появился «проект», под кодовым названием — «Сделать кнопку как на whyyyyyyyyyyyyyy.com, только на CSS3». Ну, вот, собственно и настал, кажется, ее черед :) <img src="http://smileart.in.ua/wp-includes/images/smilies/Connie_cleaning-glasses.gif" alt=":umnik:" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/04/whyyyyyyyy.png"><img class="aligncenter size-full wp-image-313" title="whyyyyyyyy button" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/04/whyyyyyyyy.png" width="392" height="112" srcset="http://smileart.in.ua/wp-content/uploads/2011/04/whyyyyyyyy.png 392w, http://smileart.in.ua/wp-content/uploads/2011/04/whyyyyyyyy-300x85.png 300w" sizes="(max-width: 392px) 100vw, 392px" /></a></p>
<p>Еще совсем немного технического занудства и я умываю руки.</p>
<p>Итак, кнопка представляет собой контейнер, в котором собраны четыре слоя: текст, верх кнопки, низ кнопки и тень. Изначально кнопочку планировалось сделать максимально похожей, но в итоге, конечно, в ней есть кое-что и свое. От части — специфика CSS-реализации. От части — дело вкуса. Верхний текстовый слой стилизирован как вмятый текст. Простая техника «Светлый текст на темном фоне». В верхнем слое использован градинет (по мере возможности такой же как на сайте источнике идеи) и да — мне плевать на несовместимость с недобраузерами, так как это просто спортивная верстка «just for fun». В нижнем слое применена техника CSS3 тени, но с финтом ушами, что бы эта самая тень была только bottom.</p>
<p>В завершение всего была написан примитивный (и параноидальный по части if(!is_on) <img src="http://smileart.in.ua/wp-includes/images/smilies/scratch_one-s_head.gif" alt=":hmm:" class="wp-smiley" style="height: 1em; max-height: 1em;" /> ) javascript, в который отвечает за «нажатие» кнопочки. Кроме того, в скрипте добавлен хак, который запрещает выделять текст, что бы кнопкой можно было не только любоваться, а еще и пользоваться. За обе последние идеи спасибо <a href="http://stackoverflow.com/">stackoverflow.com/</a> вообще и господам <a href="http://stackoverflow.com/users/3561/tyler">Tyler</a> и <a href="http://stackoverflow.com/users/313758/yi-jiang">Yi Jiang</a> в частности.</p>
<p>В итоге что мы имеем:<br />
— несомненно симпотную кнопочку на все случаи жизни, которую: хоть крась, хоть ресайзь, хоть в плагин оберни<br />
— новые познания по части CSS3 градиентов, теней, скруглений и прочих понтов <img src="http://smileart.in.ua/wp-includes/images/smilies/new_russian.gif" alt=":coolman:" class="wp-smiley" style="height: 1em; max-height: 1em;" /><br />
— новые знания и сниппеты кода по части bottom css3 box shadow и, конечно, насчет блокировки выделения текста в блоке или вообще</p>
<p>Кто знает как лучше, а лучше 100% можно, тех милости прошу форкать и писать свои версии. Будет интересно.</p>
<p><a href="http://jsfiddle.net/smileart/ZU96H/embedded/result/" target="_blank"><img class="aligncenter size-full wp-image-295" title="Пример на jsfiddle" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/04/jsfiddle.png" width="350" height="200" srcset="http://smileart.in.ua/wp-content/uploads/2011/04/jsfiddle.png 350w, http://smileart.in.ua/wp-content/uploads/2011/04/jsfiddle-300x171.png 300w" sizes="(max-width: 350px) 100vw, 350px" /></a></p>
<p><strong>З.Ы.</strong> Какую копипасту в CSS увидел, ту вынес в классы, оптимизации ради, а чего не заметил, черт с ним. Это всего навсего пример того что позволяет делать CSS3, хотя я бы его может ее бы немного причесал и вполне в боевой проект впихнул бы.</p>
<p>За сим все. Разрешите откланяться. Завсегда ваш, Smile @rT <img src="http://smileart.in.ua/wp-includes/images/smilies/playboy.gif" alt=":megacool:" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
]]></content:encoded>
			<wfw:commentRss>http://smileart.in.ua/css3_whyyyyyyy_button/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CSS3: Свечение иконки</title>
		<link>http://smileart.in.ua/css3_icon_highlight</link>
		<comments>http://smileart.in.ua/css3_icon_highlight#comments</comments>
		<pubDate>Sat, 02 Apr 2011 12:38:35 +0000</pubDate>
		<dc:creator><![CDATA[Smile @rT]]></dc:creator>
				<category><![CDATA[Программинг]]></category>
		<category><![CDATA[css3]]></category>
		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[верстка]]></category>
		<category><![CDATA[графика]]></category>
		<category><![CDATA[иконка]]></category>
		<category><![CDATA[программирование]]></category>
		<category><![CDATA[эффект]]></category>

		<guid isPermaLink="false">http://smileart.in.ua/?p=293</guid>
		<description><![CDATA[Заметка о создании эффекта свечения иконки]]></description>
				<content:encoded><![CDATA[<p><a href="http://smileart.in.ua/wp-content/uploads/2011/04/icon_highlight_940_x_600.png"><img class="aligncenter size-full wp-image-303" alt="icon_highlight_940_x_600" src="http://smileart.in.ua/wp-content/uploads/2011/04/icon_highlight_940_x_600.png" width="940" height="600" srcset="http://smileart.in.ua/wp-content/uploads/2011/04/icon_highlight_940_x_600.png 940w, http://smileart.in.ua/wp-content/uploads/2011/04/icon_highlight_940_x_600-300x191.png 300w" sizes="(max-width: 940px) 100vw, 940px" /></a></p>
<p>Сегодня я хотел бы рассказать о маленьком, но симпатичном эффекте, который мне довелось применить в одном рабочем проекте. Задача заключалась в том, что бы сделать некоторые иконки (если не вдаваться в подробности, то просто те, которые стоит нажать) в списке действий как бы светящимися, что зазывало бы пользователя к действию.</p>
<p><span id="more-293"></span></p>
<p>Сказано — сделано. Использовав клёвый онлайн генератор CSS3 (о генераторах готовится отдельная статья) я выставил нужные мне параметры свечения, максимального скругления уголков, радиуса тени (которая и является свечением), настроил позиционирование (с ним были дополнительные проблемы, так как иконка находилась в ячейке таблицы). В результате у меня получилось вот такое свечение:</p>
<div id="attachment_294" style="width: 62px" class="wp-caption aligncenter"><a href="http://smileart.in.ua/wp-content/uploads/2011/04/working_variant.png"><img class="size-medium wp-image-294" title="Рабочий вариант в столбце таблицы" alt="Рабочий вариант в столбце таблицы" src="http://smileart.in.ua/wp-content/uploads/2011/04/working_variant-52x300.png" width="52" height="300" /></a><p class="wp-caption-text">Рабочий вариант в столбце таблицы</p></div>
<p>Верстка варианта в ячейке таблицы, конечно, немного другая, там div фона находится под картинкой в DOM дереве. В варианте для бложика решил не приводить такой специфический случай и вложил картинку прямо в div позиционировав все исключительно для примера. Посмотреть и попробовать менять параметры можно тут:</p>
<p><a href="http://jsfiddle.net/smileart/rG6rg/" target="_blank"><img class="aligncenter size-full wp-image-295" title="Пример на jsfiddle" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/04/jsfiddle.png" width="350" height="200" srcset="http://smileart.in.ua/wp-content/uploads/2011/04/jsfiddle.png 350w, http://smileart.in.ua/wp-content/uploads/2011/04/jsfiddle-300x171.png 300w" sizes="(max-width: 350px) 100vw, 350px" /></a></p>
<p>Разумеется, не на всяком фоне подсветка будет выглядеть эффектно. Для темного фона, наверняка, придется сделать большее скругление свечения, что бы избавиться от квадратности «тени». Особо надо играться с прозрачностью круглого фона иконки, от которого исходит «свет», тут он установлен в 0.6, на другом фоне я ставил 0.5, что бы не было видно отличия со свечением. Кроме того можно добиться других клёвых эффектов меняя радиус и цвет. Устанавливая последний, кстати, не забывайте менять значения rgba() у фона подсветки. Кстати, удобно подсмотреть эквивалент для любого hex кода можно на <a href="http://yandex.ua/yandsearch?text=%23967ce6&amp;tld=ua&amp;lr=145">Яндекс.цветах</a></p>
<p>Вот и все :) Если у вас есть идеи по улучшению эффекта, можете смело форкать сниппет на jsFiddle и показывать свои варианты.</p>
]]></content:encoded>
			<wfw:commentRss>http://smileart.in.ua/css3_icon_highlight/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Мега подборка: Комиксы</title>
		<link>http://smileart.in.ua/comics_mega_set</link>
		<comments>http://smileart.in.ua/comics_mega_set#comments</comments>
		<pubDate>Tue, 08 Feb 2011 00:46:43 +0000</pubDate>
		<dc:creator><![CDATA[Smile @rT]]></dc:creator>
				<category><![CDATA[Мега подборка]]></category>
		<category><![CDATA[графика]]></category>
		<category><![CDATA[закладки]]></category>
		<category><![CDATA[интернет]]></category>
		<category><![CDATA[книги]]></category>
		<category><![CDATA[коллекция]]></category>
		<category><![CDATA[комиксы]]></category>
		<category><![CDATA[онлайн]]></category>
		<category><![CDATA[подборка]]></category>
		<category><![CDATA[читать]]></category>

		<guid isPermaLink="false">http://smileart.in.ua/?p=195</guid>
		<description><![CDATA[<strong>Комикс</strong> (от англ. comic — смешной) — рассказы в картинках.]]></description>
				<content:encoded><![CDATA[<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/comics_mega_set_940_x_600.png"><img class="aligncenter size-full wp-image-274" alt="comics_mega_set_940_x_600" src="http://smileart.in.ua/wp-content/uploads/2011/02/comics_mega_set_940_x_600.png" width="940" height="600" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/comics_mega_set_940_x_600.png 940w, http://smileart.in.ua/wp-content/uploads/2011/02/comics_mega_set_940_x_600-300x191.png 300w" sizes="(max-width: 940px) 100vw, 940px" /></a></p>
<p>Поскольку за годы жизни в интернете практически у каждого из нас накапливается приличное количество закладок на интересующие нас темы, я решил начать делиться и собственными подборками. Первая тема: комиксы.</p>
<p><span id="more-195"></span></p>
<blockquote><p><strong>Комикс</strong> (от англ. comic — смешной) — рассказы в картинках. Комикс сочетает черты таких видов искусства, как литература и изобразительное искусство. (<a href="http://ru.wikipedia.org/wiki/Комикс">Wiki</a>)</p></blockquote>
<p>Хотя искусство комикса и зародилось давным-давно в Испании, все же история современных комиксов, думаю, берет свое начало в США. Еще в далеком 1892 году в журнале «The San Francisco Examiner», вышел первый американский комикс. Позже в начале двадцатых годов, начали появляться коротенькие истории да и вообще в двадцатом веке комиксы стали по настоящему популярными. Эту эпоху можно считать «Золотым веком» комиксов. Сегодня же, не смотря на то, что популярность комиксов в нашей стране остается крайне малой, они все таки являются частью массовой культуры. Множество современных фильмов снимается по мотивам комиксов, а много комиксов благодарны своему рождению известным картинам Фабрики грез.</p>
<blockquote><p>Благодаря этим цветным сериям газеты Херста и Пулицера стали называть «желтой прессой».<br />
— Жорж Садуль</p></blockquote>
<p>Не смотря на то, что у нас все еще нет (или крайне мало) специализированных магазинов комиксов, так знакомых нам из все того же американского кино, комиксы популярны и у нас. В основном любители жанра могут найти их, увы, не на полках магазинов, а в интернете, через что они, конечно же, лишены удовольствия ощутить запах свежего выпуска любимой истории. Однако, это лучше чем ничего и потому, мы выбираем синицу в руках и окунаемся в мир онлайн-комиксов.</p>
<p>Итак, сама подбока:</p>
<p><strong>1.</strong> <a href="http://community.livejournal.com/ru_comicstrip/">ЖЖ сообщество Comic Strip in Russian</a> — публикуют переводы отличных стрипов на злобу дня авторства Wulff&amp;Morgenthaler</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/11-02-06.gif"><img class="aligncenter size-medium wp-image-197" title="Comic Strip in Russian" alt="Comic Strip in Russian" src="http://smileart.in.ua/wp-content/uploads/2011/02/11-02-06-300x103.gif" width="300" height="103" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/11-02-06-300x103.gif 300w, http://smileart.in.ua/wp-content/uploads/2011/02/11-02-06.gif 666w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><strong>2.</strong> <a href="http://comicstrip.net.ru/">Wulff&amp;Morgenthaler Random</a> — собрание перевода все тех же Wulff&amp;Morgenthaler от comicstrip.net.ru Отличительная черта сайта — выдача случайного стрипа по клику на картинке или нажатию F5. Всегда веселые комиксы на все случаи жизни!</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/05-04-09.gif"><img class="aligncenter size-medium wp-image-200" title="Wulff&amp;Morgenthaler Random" alt="Wulff&amp;Morgenthaler Random" src="http://smileart.in.ua/wp-content/uploads/2011/02/05-04-09-300x103.gif" width="300" height="103" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/05-04-09-300x103.gif 300w, http://smileart.in.ua/wp-content/uploads/2011/02/05-04-09.gif 666w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><strong>3.</strong> <a href="http://dima.msk.ru/nichtlustig/">Nichtlustig Random</a> — собрание перевода забавного комикса Nichtlustig от авторов предыдущего сайта. Принцип все тот же — каждый раз случайный стрип.</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/263775404_1bb52db74f_o.jpg"><img class="aligncenter size-medium wp-image-201" title="Nichtlustig" alt="Nichtlustig" src="http://smileart.in.ua/wp-content/uploads/2011/02/263775404_1bb52db74f_o-300x300.jpg" width="300" height="300" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/263775404_1bb52db74f_o-300x300.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/02/263775404_1bb52db74f_o-150x150.jpg 150w, http://smileart.in.ua/wp-content/uploads/2011/02/263775404_1bb52db74f_o.jpg 400w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><strong>4.</strong> <a href="http://swine.net.ru/">Pearls Before Swine Random</a> — последний сайт от тех же авторов. Публикуют переводы соответственно стрипа Pearls Before Swine с той же идеей случайно картинки на каждый день.</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/0003t5x2.gif"><img class="aligncenter size-medium wp-image-203" title="Pearls Before Swine" alt="Pearls Before Swine" src="http://smileart.in.ua/wp-content/uploads/2011/02/0003t5x2-300x100.gif" width="300" height="100" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/0003t5x2-300x100.gif 300w, http://smileart.in.ua/wp-content/uploads/2011/02/0003t5x2.gif 590w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><strong>5.</strong> <a href="http://geekandpoke.typepad.com/">Geek And Poke</a> — веселый комикс про гиков, который не смотря на простоту стиля, показывает жизнь гиков как она есть. Сразу советую в раздел must read! И тут же вдогонку, одним пунктом: <a href="http://comics.womtec.ru/">Geek and Poke на русском</a></p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/16.jpg"><img class="aligncenter size-medium wp-image-205" title="Geek and Poke" alt="Geek and Poke" src="http://smileart.in.ua/wp-content/uploads/2011/02/16-214x300.jpg" width="214" height="300" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/16-214x300.jpg 214w, http://smileart.in.ua/wp-content/uploads/2011/02/16.jpg 450w" sizes="(max-width: 214px) 100vw, 214px" /></a></p>
<p>Дабы немного разбавить онлайн-халяву, рекомендую взглянуть на шестой пункт.</p>
<p><strong>6.</strong> <a href="http://www.comix-art.ru/">Издательство Comix-ART</a> — издают и продают лицензионные мангу, графические романы и комиксы.<br />
<a href="http://smileart.in.ua/wp-content/uploads/2011/02/DeathNoteCVR_1.jpg"><img class="aligncenter size-medium wp-image-208" title="DeathNote" alt="DeathNote" src="http://smileart.in.ua/wp-content/uploads/2011/02/DeathNoteCVR_1-203x300.jpg" width="203" height="300" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/DeathNoteCVR_1-203x300.jpg 203w, http://smileart.in.ua/wp-content/uploads/2011/02/DeathNoteCVR_1.jpg 339w" sizes="(max-width: 203px) 100vw, 203px" /></a></p>
<p><strong>7.</strong> <a href="http://garfield.vexer.ru/">Garfield на русском</a> — коллекция русского перевода комикстрипов о всем известном рыжем кошаке Гарфилде.</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/ga110119_r.gif"><img class="aligncenter size-medium wp-image-210" title="Garfield на русском" alt="Garfield на русском" src="http://smileart.in.ua/wp-content/uploads/2011/02/ga110119_r-300x86.gif" width="300" height="86" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/ga110119_r-300x86.gif 300w, http://smileart.in.ua/wp-content/uploads/2011/02/ga110119_r.gif 600w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><strong>8.</strong> <a href="http://www.comics.com.ua/">Комикс.com.ua</a> — оплот украинских авторов и украинских же любителей комикса. Публикуют сериалы «Русские горки», «Зай и друзья», Весёлые зверята» и множество других комиксов, которые в свое время не раз светились в проекте журнала рисованных историй «К9» (который, увы, исчез во время экономического кризиса) и на страницах журнала «Молоко». Кстати, на сайте есть и своя <a href="http://www.comics.com.ua/links">подборка ссылок на комиксы</a>, хотя немного и устаревшая.</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/vipusk_32.jpg"><img class="aligncenter size-medium wp-image-211" title="Зай и друзья" alt="Зай и друзья" src="http://smileart.in.ua/wp-content/uploads/2011/02/vipusk_32-300x115.jpg" width="300" height="115" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/vipusk_32-300x115.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/02/vipusk_32.jpg 750w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><strong>9.</strong> <a href="http://zerut.ru/">Зерут.ру</a> — лучшие карикатуры от зарубежных авторов. Новая карикатура каждый день.</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/tas110111.png"><img class="aligncenter size-medium wp-image-213" title="Зерут.ру" alt="Зерут.ру" src="http://smileart.in.ua/wp-content/uploads/2011/02/tas110111-252x300.png" width="252" height="300" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/tas110111-252x300.png 252w, http://smileart.in.ua/wp-content/uploads/2011/02/tas110111.png 300w" sizes="(max-width: 252px) 100vw, 252px" /></a></p>
<p><strong>10.</strong> <a href="http://dilbert.com/">Dilbert</a> — официальный сайт комикса о Дилберте, где «рассказывается об офисной жизни, менеджерах, инженерах, маркетологах, боссах, юристах, сбытовиках, практикантах, бухгалтерах и прочих странных людях». (© Wiki) Кроме официального англоязычного сайта, есть еще и переводы на <a href="http://www.liveinternet.ru/users/ru_dailydilbert/">li.ru</a> и <a href="http://dilbertru.blogspot.com/">blogspot</a>.</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/1138.strip_.gif"><img class="aligncenter size-medium wp-image-216" title="Dilbert" alt="Dilbert" src="http://smileart.in.ua/wp-content/uploads/2011/02/1138.strip_-300x93.gif" width="300" height="93" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/1138.strip_-300x93.gif 300w, http://smileart.in.ua/wp-content/uploads/2011/02/1138.strip_.gif 640w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><strong>11.</strong> <a href="http://xkcd.com/">xkcd</a> — A webcomic of romance, sarcasm, math, and language. Крутой и мега популярный гиковский комикс обо всем, что касается компьютеров, прогрмминга, проектирования и бизнеса. Кроме официального сайта стоит посоветовать перевод: <a href="http://xkcd.ru/">xkcd.ru</a></p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/regular_expressions.png"><img class="aligncenter size-medium wp-image-218" title="xkcd" alt="xkcd" src="http://smileart.in.ua/wp-content/uploads/2011/02/regular_expressions-296x300.png" width="296" height="300" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/regular_expressions-296x300.png 296w, http://smileart.in.ua/wp-content/uploads/2011/02/regular_expressions.png 600w" sizes="(max-width: 296px) 100vw, 296px" /></a></p>
<p><strong>12.</strong> <a href="http://www.rucomics.info/">rucomics.info</a> — твой мир комиксов. Онлайн коллекция комиксов в чьей базе, как утверждают сами авторы сайта находится 6 720 895 комиксов. Тут и «Фантастическая четверка» и «Человек паук» и «Бэтмэн и Робин» и прочие комиксы легендарной серии Marvel, а так же «The X-files», «Черный плащ» и вся вселенная DC. Из недостатков — необходимость регистрации и чрезмерно строгие правила, например, если не посещать портал 20 дней подряд, то вас исключат из членов клуба. Советуется для настоящих фанов. Некоторые комиксы можно посмотреть без регистрации, прямо онлайн.</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/batman.jpg"><img class="aligncenter size-medium wp-image-219" title="Batman" alt="Batman" src="http://smileart.in.ua/wp-content/uploads/2011/02/batman-300x225.jpg" width="300" height="225" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/batman-300x225.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/02/batman.jpg 800w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><strong>13.</strong> <a href="http://comicsdaily.ru/">comicsdaily.ru</a> — комикс каждый день. Комикс-блог c коллекцией переводов: «Несмешно», «Garfield», «Кошки-мышки», «Виви и Вагнер», «Nemi», «xkcd», «Точка бифуркации», «wtd»,<br />
«Кожа да кости», «Hello Acy», «Башорг», «Неманга», «Полный пока», «Sinfest», «Про кота», «Pearls before swine», «Масштабная модель человека. Dilbert.», «Mmgraphics», «Астерикс и викиликс», «Ctrl+Alt+Del», «Субботний завтрак», «Kosh», «Oglaf», «Цианистый калий и счастье», «Мистер Виглз», «Комикс трип». Отличная компиляция уже упоминавшихся выше и новых комиксов разных авторов на русском языке!</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/tron_r.png"><img class="aligncenter size-medium wp-image-221" title="Астерикс и Викиликс" alt="Астерикс и Викиликс" src="http://smileart.in.ua/wp-content/uploads/2011/02/tron_r-300x111.png" width="300" height="111" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/tron_r-300x111.png 300w, http://smileart.in.ua/wp-content/uploads/2011/02/tron_r.png 700w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><strong>14.</strong> <a href="http://comicstrip.ru/">Комиксы Wulffmorgenthaler каждый день</a> — некогда ежедневно обновляемая подборка уже знакомых нам циничных комиксов Wulffmorgenthaler, рассказывающих о Вернере, Бобре извращенце и других забавных и многими любимых героях.</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/09-05-20.gif"><img class="aligncenter size-medium wp-image-222" title="Wulffmorgenthaler" alt="Wulffmorgenthaler" src="http://smileart.in.ua/wp-content/uploads/2011/02/09-05-20-300x103.gif" width="300" height="103" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/09-05-20-300x103.gif 300w, http://smileart.in.ua/wp-content/uploads/2011/02/09-05-20.gif 666w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><strong>15.</strong> <a href="http://www.geekherocomic.com/">Geek Hero Webcomic</a> — очередной уморительный комикс-сериал про гиков и для гиков.</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/2009-08-19-a-coding-paradox.png"><img class="aligncenter size-medium wp-image-224" title="Geek Hero Comic" alt="Geek Hero Comic" src="http://smileart.in.ua/wp-content/uploads/2011/02/2009-08-19-a-coding-paradox-300x240.png" width="300" height="240" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/2009-08-19-a-coding-paradox-300x240.png 300w, http://smileart.in.ua/wp-content/uploads/2011/02/2009-08-19-a-coding-paradox.png 730w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><strong>16.</strong> <a href="http://toonlet.com/">toonlet: webcomic blogging in minutes</a> — еще один блог с комиксами. На этот раз на английском языке. Имея аккаунт на сайте можно стать одним из авторов если у вас, конечно, все хорошо с языком и есть прикольная идея. Кстати, тур по созданию комиксов тоже сделан в формате комикса:</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/3928-toonlet__the_to-sfull.png"><img class="aligncenter size-medium wp-image-225" title="Toonlet tour" alt="Toonlet tour" src="http://smileart.in.ua/wp-content/uploads/2011/02/3928-toonlet__the_to-sfull-300x79.png" width="300" height="79" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/3928-toonlet__the_to-sfull-300x79.png 300w, http://smileart.in.ua/wp-content/uploads/2011/02/3928-toonlet__the_to-sfull.png 720w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><strong>17.</strong> <a href="http://theoatmeal.com/comics">The Oatmeal</a> — вэб-комиксы, часто затрагивающие IT тематику. Все разбито по сериям, которые можно просматривать отдельно. Например комикс о «Котэ против интернета». Язык — английский.</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/4.png"><img class="aligncenter size-medium wp-image-226" title="Cat VS Internet" alt="Cat VS Internet" src="http://smileart.in.ua/wp-content/uploads/2011/02/4-300x300.png" width="300" height="300" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/4-300x300.png 300w, http://smileart.in.ua/wp-content/uploads/2011/02/4-150x150.png 150w, http://smileart.in.ua/wp-content/uploads/2011/02/4.png 600w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><strong>18.</strong> <a href="http://freakcartoon.ru/">FreakCartoon</a> — опять Дилберт, Nichtlustig и компания. Но зато какая! Комиксы и стрипы на русском: Nichtlustig, Cyanide and Happiness, Sinfest, Wulffmorgenthaler, xkcd, Pearls Before Swine, Признак кошкости. Все это — FreakCartoon!</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/a8068f71dfdd10d243dca5a4a176b5c0.jpg"><img class="aligncenter size-medium wp-image-227" title="Признак кошкости" alt="Признак кошкости" src="http://smileart.in.ua/wp-content/uploads/2011/02/a8068f71dfdd10d243dca5a4a176b5c0-300x107.jpg" width="300" height="107" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/a8068f71dfdd10d243dca5a4a176b5c0-300x107.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/02/a8068f71dfdd10d243dca5a4a176b5c0.jpg 600w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><strong>19.</strong> <a href="http://www.thebadchemicals.com/">the bad chemicals</a> — комикс обо всем: политике, отношениях и немного философии. Так же есть режим случайного стрипа.</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/2010-03-01-voice-of-experience.jpg"><img class="aligncenter size-medium wp-image-229" title="The bad chemicals" alt="The bad chemicals" src="http://smileart.in.ua/wp-content/uploads/2011/02/2010-03-01-voice-of-experience-200x300.jpg" width="200" height="300" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/2010-03-01-voice-of-experience-200x300.jpg 200w, http://smileart.in.ua/wp-content/uploads/2011/02/2010-03-01-voice-of-experience.jpg 400w" sizes="(max-width: 200px) 100vw, 200px" /></a></p>
<p><strong>20.</strong> <a href="http://comixme.net/">comixme</a> — Смешные комиксы и картинки. Еще один проект позволяющий вам создавать комиксы онлайн, но… С оригинальной задумкой использования в качестве героев персонажей кино, светской жизни, политики и т.д. Всегда остроумно, метко, смешно и злободневно!</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/842.jpg"><img class="aligncenter size-medium wp-image-230" title="comixme" alt="comixme" src="http://smileart.in.ua/wp-content/uploads/2011/02/842-196x300.jpg" width="196" height="300" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/842-196x300.jpg 196w, http://smileart.in.ua/wp-content/uploads/2011/02/842.jpg 607w" sizes="(max-width: 196px) 100vw, 196px" /></a></p>
<p><strong>21.</strong> <a href="http://www.thefunnycartoon.com/comic-strips/">Funny Cartoons</a> — западный сайт с разделом, где можно познакомиться классическими «газетными» стрипами разных авторов. Знание английского — обязательно.</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/egyptcommunication_fc.jpg"><img class="aligncenter size-medium wp-image-231" title="egyptcommunication_fc" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/02/egyptcommunication_fc-300x199.jpg" width="300" height="199" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/egyptcommunication_fc-300x199.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/02/egyptcommunication_fc.jpg 425w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><strong>22.</strong> <a href="http://community.livejournal.com/calvinhobbes_ru/">Кальвин и Гоббс</a> — русский перевод рисованных историй о мальчике Кальвине, немного наивно, всегда весело и метко.</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/0020k5h2.gif"><img class="aligncenter size-medium wp-image-232" title="Кальвин и Гоббс" alt="Кальвин и Гоббс" src="http://smileart.in.ua/wp-content/uploads/2011/02/0020k5h2-300x100.gif" width="300" height="100" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/0020k5h2-300x100.gif 300w, http://smileart.in.ua/wp-content/uploads/2011/02/0020k5h2.gif 600w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><strong>23.</strong> <a href="http://www.gocomics.com/">Gocomics.com</a> — огромная коллекция авторских стрипов на английском языке. «Calvin and Hobbes», «Non Sequitur», «Garfield», «For Better or For Worse», «FoxTrot», «Bloom County», «B.C.», «Shoe», «Wizard of Id», «Pickles», «Stone Soup», «Lio», «Ziggy», «The Argyle Sweater», «Cul de Sac», «Pooch Cafe».</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/loaded.gif"><img class="aligncenter size-medium wp-image-233" title="Pickles" alt="Pickles" src="http://smileart.in.ua/wp-content/uploads/2011/02/loaded-300x95.gif" width="300" height="95" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/loaded-300x95.gif 300w, http://smileart.in.ua/wp-content/uploads/2011/02/loaded.gif 600w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><strong>24.</strong> <a href="http://www.azcentral.com/ent/comics/">azcentral.com</a> — портал с разделом, где собрана огромная коллекция западных комиксов. Это надо просто видеть и даже нет смысла перечислять все названия!</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/6Chix.20110206_small.gif"><img class="aligncenter size-medium wp-image-234" title="6 Chix" alt="6 Chix" src="http://smileart.in.ua/wp-content/uploads/2011/02/6Chix.20110206_small-300x146.gif" width="300" height="146" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/6Chix.20110206_small-300x146.gif 300w, http://smileart.in.ua/wp-content/uploads/2011/02/6Chix.20110206_small.gif 525w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><strong>25.</strong> <a href="http://www.onlinecomics.net/">onlinecomics.net</a> — сразу вдогонку к предыдущему пункту: каталог онлайн комиксов. Большая коллекция в 7640 комиксов, которые каталогизированы в алфавитном порядке, а так же по жанрам, формату, размеру, популярности и т.д.</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/2011-01-14.jpg"><img class="aligncenter size-medium wp-image-236" title="Haiku comics" alt="Haiku comics" src="http://smileart.in.ua/wp-content/uploads/2011/02/2011-01-14-300x90.jpg" width="300" height="90" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/2011-01-14-300x90.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/02/2011-01-14-1024x307.jpg 1024w, http://smileart.in.ua/wp-content/uploads/2011/02/2011-01-14.jpg 1200w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><strong>26.</strong> <a href="http://www.tcfb.com/comix/day.htm">tcfb.com</a> — сразу что бы не растягивать, еще один каталог. Не смотря на неприглядный дизайн сайт содержит сотни ссылок на онлайн комиксы со всего мира. Лучше комиксы по мнению авторов — отмечены звездочкой.</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/Bizarro.gif"><img class="aligncenter size-medium wp-image-237" title="Bizarro" alt="Bizarro" src="http://smileart.in.ua/wp-content/uploads/2011/02/Bizarro-251x300.gif" width="251" height="300" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/Bizarro-251x300.gif 251w, http://smileart.in.ua/wp-content/uploads/2011/02/Bizarro.gif 320w" sizes="(max-width: 251px) 100vw, 251px" /></a></p>
<p><strong>27.</strong> <a href="http://comics.com">comics.com</a> — очередной каталог западных стрипов, судя по домену претендующий на звание официального сайта комиксов. И не только по домену! Этот портал обладает всем чем должен обладать настоящий комикс-сайт. Тут и облако тегов, и случайный выбор стрипа, и полный список по названиям. Короче говоря — стоящий сайт для любителей хороших рисованных историй.</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/353314.full_.gif"><img class="aligncenter size-medium wp-image-239" title="Heathcliff" alt="Heathcliff" src="http://smileart.in.ua/wp-content/uploads/2011/02/353314.full_-279x300.gif" width="279" height="300" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/353314.full_-279x300.gif 279w, http://smileart.in.ua/wp-content/uploads/2011/02/353314.full_.gif 640w" sizes="(max-width: 279px) 100vw, 279px" /></a></p>
<p><strong>28.</strong> <a href="http://hipsterhitler.com/">Hipster Hitler</a> — авторский сайт с комиксом-пародией полностью посвященным Гитлеру в несколько необычном амплуа. На сайте стилизованно под тематику комикса абсолютно все, от ссылки на твиттер аккаунт, до комментариев в HTML коде :)</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/hipsterhitler.jpg"><img class="aligncenter size-medium wp-image-240" title="Hipster Hitler" alt="Hipster Hitler" src="http://smileart.in.ua/wp-content/uploads/2011/02/hipsterhitler-300x60.jpg" width="300" height="60" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/hipsterhitler-300x60.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/02/hipsterhitler.jpg 600w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><strong>29.</strong> <a href="http://www.explosm.net/comics">Cyanide &amp; Happiness</a> — популярный, забавный и местами очень циничный комикс.</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/jesus-is-a-pretty-bad-backseat-driver-too.png"><img class="aligncenter size-medium wp-image-241" title="Cyanide &amp; Happiness" alt="Cyanide &amp; Happiness" src="http://smileart.in.ua/wp-content/uploads/2011/02/jesus-is-a-pretty-bad-backseat-driver-too-300x85.png" width="300" height="85" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/jesus-is-a-pretty-bad-backseat-driver-too-300x85.png 300w, http://smileart.in.ua/wp-content/uploads/2011/02/jesus-is-a-pretty-bad-backseat-driver-too.png 713w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><strong>30.</strong> <a href="http://comicszone.net/">comicszone.net</a> — сайт посвященный комиксам вселенных Marvel Comics,<br />
DC Comics и Dark Horse. Здесь можно почитать последние новости из мира комиксов и даже скачать комиксы Халк, Капитан Америка, Человек Паук и др. для чтения оффлайн.</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/231.jpg"><img class="aligncenter size-medium wp-image-244" title="Comicszone" alt="Comicszone" src="http://smileart.in.ua/wp-content/uploads/2011/02/231-300x113.jpg" width="300" height="113" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/231-300x113.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/02/231.jpg 728w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><strong>31.</strong> <a href="http://lwa-blog.ru/">lwa-blog.ru</a> — еще один русскоязычный блог по Marvel и DC. Тут комиксы, новости, теги, голосования и даже продажа футболок с атрибутикой супергероев.</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/124wolverineweaponx10.jpg"><img class="aligncenter size-medium wp-image-246" title="lwa-blog" alt="lwa-blog" src="http://smileart.in.ua/wp-content/uploads/2011/02/124wolverineweaponx10-300x138.jpg" width="300" height="138" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/124wolverineweaponx10-300x138.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/02/124wolverineweaponx10.jpg 900w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><strong>32.</strong> <a href="http://a-comics.ru/">Авторский Комикс</a> — это проект под крылышком которого собрались отличные комиксы на русском языке, причем в большом количестве. Тут как завершенные сериалы, так и постоянно обновляющиеся истории. Все очень достойно.</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/bogdan-you-and-me-052.jpg"><img class="aligncenter size-medium wp-image-247" title="You and me" alt="You and me" src="http://smileart.in.ua/wp-content/uploads/2011/02/bogdan-you-and-me-052-300x119.jpg" width="300" height="119" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/bogdan-you-and-me-052-300x119.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/02/bogdan-you-and-me-052.jpg 699w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><strong>33. </strong> <a href="http://ruscomix.ru/">Комиксы на русском языке онлайн</a> — действительно онлайн комиксы. На этом сайте можно почитать комиксы прямо с сайта, причем выбор очень велик. Например здесь есть «Железный человек», «Охотники за приведениями», «Blood Rayne», «Трансформеры» и множество других известных комиксов. Из достопримечательностей — супер меню (меню состоящее из лого соответствующей серии, для быстрого перехода).</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/TF2_124.jpg"><img class="aligncenter size-medium wp-image-248" title="TF2" alt="TF2" src="http://smileart.in.ua/wp-content/uploads/2011/02/TF2_124-300x174.jpg" width="300" height="174" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/TF2_124-300x174.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/02/TF2_124.jpg 450w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><strong>34. </strong> <a href="http://comics.su/">comics.su</a> — русская онлайн библиотека комиксов сортированных по жанрам. Здесь собраны как класика, так и жанры на любителя, рядом с мистикой, историей и драмой, можно найти мангу, фурри и хентай. Довольно удобное чтение сканов комиксов онлайн с пагинацией.</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/horrorcomixredsnow.png"><img class="aligncenter size-medium wp-image-249" title="Красный снег" alt="Красный снег" src="http://smileart.in.ua/wp-content/uploads/2011/02/horrorcomixredsnow-300x107.png" width="300" height="107" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/horrorcomixredsnow-300x107.png 300w, http://smileart.in.ua/wp-content/uploads/2011/02/horrorcomixredsnow.png 841w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><strong>35. </strong> <a href="http://comiksu.ru/">comiksu.ru</a> — еще один отечественный сайт посвященный комиксам. Здесь тоже можно почитать онлайн сканы известных серий «Баффи Истребительница Вампиров», «Могучие Мстители», «Ходячие Мертвецы», «Зеленый фонарь» и пр.</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/20101117gl.jpg"><img class="aligncenter size-medium wp-image-250" title="Зеленый фонарь" alt="Зеленый фонарь" src="http://smileart.in.ua/wp-content/uploads/2011/02/20101117gl-300x187.jpg" width="300" height="187" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/20101117gl-300x187.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/02/20101117gl.jpg 520w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><strong>36. </strong> <a href="http://www.smbc-comics.com/">Saturday Morning Breakfast Cereal</a> — оригинальный сайт авторских комиксов в своеобразном стиле со своеобразным юмором.</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/20060503.gif"><img class="aligncenter size-medium wp-image-252" title="Saturday Morning Breakfast Cereal" alt="Saturday Morning Breakfast Cereal" src="http://smileart.in.ua/wp-content/uploads/2011/02/20060503-283x300.gif" width="283" height="300" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/20060503-283x300.gif 283w, http://smileart.in.ua/wp-content/uploads/2011/02/20060503.gif 468w" sizes="(max-width: 283px) 100vw, 283px" /></a></p>
<p><strong>37. </strong> <a href="http://bash.org.ru/comics/">bash.org.ru</a> — Цитатник Рунета тоже не отстает и обзавелся собственным разделом комиксов. Все вполне в стиле баша.</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/3h27rbjqo9h6uqzb408499.jpg"><img class="aligncenter size-medium wp-image-253" title="Bash.org" alt="Bash.org" src="http://smileart.in.ua/wp-content/uploads/2011/02/3h27rbjqo9h6uqzb408499-300x101.jpg" width="300" height="101" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/3h27rbjqo9h6uqzb408499-300x101.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/02/3h27rbjqo9h6uqzb408499.jpg 740w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><strong>38. </strong> <a href="http://www.romanticallyapocalyptic.com/">Romantically Apocalyptic</a> — обалденный сайт и комикс в своей постапокалиптической стилистике, на английском языке и <a href="http://www.nuclear-attack.com/romantically-apocalyptic-comics.php">тут же в переводе</a>.</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/ra.png"><img class="aligncenter size-medium wp-image-254" title="Romantically apocalyptic" alt="Romantically apocalyptic" src="http://smileart.in.ua/wp-content/uploads/2011/02/ra-286x300.png" width="286" height="300" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/ra-286x300.png 286w, http://smileart.in.ua/wp-content/uploads/2011/02/ra.png 555w" sizes="(max-width: 286px) 100vw, 286px" /></a></p>
<p><strong>39. </strong> <a href="http://www.russiancomics.narod.ru/">Лучшие комиксы мира на русском языке</a> — собственно, название говорит само за себя. Читаем!</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/bestrus.png"><img class="aligncenter size-medium wp-image-255" title="Danger Girl" alt="Danger Girl" src="http://smileart.in.ua/wp-content/uploads/2011/02/bestrus-300x222.png" width="300" height="222" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/bestrus-300x222.png 300w, http://smileart.in.ua/wp-content/uploads/2011/02/bestrus.png 553w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><strong>40. </strong> <a href="https://chrome.google.com/webstore/detail/hjhfaknohpjconjoefidanhihokmkice#">Marvel Comics Google Chrome</a> — даже не совсем сайт, а целое вэб приложение… Да еще какое! Официальное, от самого marvel.com, да еще и с удобной читалкой. Отличный повод для сомневающихся перейти на Google Chrome!</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/26001.png"><img class="aligncenter size-medium wp-image-256" title="Google Chrome Marvel" alt="Google Chrome Marvel" src="http://smileart.in.ua/wp-content/uploads/2011/02/26001-300x206.png" width="300" height="206" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/26001-300x206.png 300w, http://smileart.in.ua/wp-content/uploads/2011/02/26001.png 400w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><strong>41. </strong> <a href="http://nnm.ru/search?q=%D0%BA%D0%BE%D0%BC%D0%B8%D0%BA%D1%81%D1%8B&amp;in=tags">Комиксы на noname</a> — подборка комиксов на Noname.ru Здесь встречаются разные комиксы, хотя большей частью это все таки эротическая тематика, а-ля 18+.</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/4aea9545504da07d0d2b124062a.jpg"><img class="aligncenter size-medium wp-image-257" title="noname comix" alt="noname comix" src="http://smileart.in.ua/wp-content/uploads/2011/02/4aea9545504da07d0d2b124062a-212x300.jpg" width="212" height="300" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/4aea9545504da07d0d2b124062a-212x300.jpg 212w, http://smileart.in.ua/wp-content/uploads/2011/02/4aea9545504da07d0d2b124062a.jpg 318w" sizes="(max-width: 212px) 100vw, 212px" /></a></p>
<p><strong>42. </strong> <a href="http://www.comics.aha.ru/">КОМИКСОЛЁТ, сетевой журнал комиксов</a> — довольно развитое отечественное сообщество любителей комиксов с большим выбором «чего почитать».</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/PoZakonuArhimeda22.jpg"><img class="aligncenter size-medium wp-image-258" title="КОМИКСОЛЁТ" alt="КОМИКСОЛЁТ" src="http://smileart.in.ua/wp-content/uploads/2011/02/PoZakonuArhimeda22-300x111.jpg" width="300" height="111" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/PoZakonuArhimeda22-300x111.jpg 300w, http://smileart.in.ua/wp-content/uploads/2011/02/PoZakonuArhimeda22.jpg 800w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><strong>43. </strong> <a href="http://www.livejournal.com/search/?area=journals&amp;q=%D0%BA%D0%BE%D0%BC%D0%B8%D0%BA%D1%81">Все комиксы ЖЖ</a> — большое количество тематических сообществ с массой комиксов. Место для поиска единомышленников и чего нибудь новенького.</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/cc8df7af5fda.png"><img class="aligncenter size-medium wp-image-260" title="Политические комиксы" alt="Политические комиксы" src="http://smileart.in.ua/wp-content/uploads/2011/02/cc8df7af5fda-300x200.png" width="300" height="200" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/cc8df7af5fda-300x200.png 300w, http://smileart.in.ua/wp-content/uploads/2011/02/cc8df7af5fda.png 480w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><strong>44. </strong> <a href="http://rutracker.org/forum/tracker.php?f=862&amp;nm=%EA%EE%EC%E8%EA%F1%FB">rutracker.org</a> — как ни странно, одна из самых больших комикс-тусовок сосредоточена в темах всем известного rutracker.org, тут можно найти комиксы любой эпохи и тематики, большие подборки и уникальные экземпляры.</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/008c27c4aec85e293e7133409ac6d74f.jpg"><img class="aligncenter size-medium wp-image-261" title="Rocketeer" alt="Rocketeer" src="http://smileart.in.ua/wp-content/uploads/2011/02/008c27c4aec85e293e7133409ac6d74f-229x300.jpg" width="229" height="300" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/008c27c4aec85e293e7133409ac6d74f-229x300.jpg 229w, http://smileart.in.ua/wp-content/uploads/2011/02/008c27c4aec85e293e7133409ac6d74f.jpg 382w" sizes="(max-width: 229px) 100vw, 229px" /></a></p>
<p><strong>45. </strong> <a href="http://buttersafe.com/">Buttersafe</a> — регулярный западный комикс, как гласит заголовок «Updated Tuesdays and Thursdays»</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/ny.png"><img class="aligncenter size-medium wp-image-262" title="Buttersafe" alt="Buttersafe" src="http://smileart.in.ua/wp-content/uploads/2011/02/ny-300x130.png" width="300" height="130" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/ny-300x130.png 300w, http://smileart.in.ua/wp-content/uploads/2011/02/ny.png 674w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><strong>46. </strong> <a href="http://www.phdcomics.com/comics.php">PHD Comics</a> — если рассказать о сайте цитатой его авторов, то сайт «&#187;Piled Higher and Deeper&#187;» это «the ongoing chronicle of life (or the lack thereof) in grad school.»</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/phd110810s.gif"><img class="aligncenter size-medium wp-image-264" title="phd" alt="phd" src="http://smileart.in.ua/wp-content/uploads/2011/02/phd110810s-300x130.gif" width="300" height="130" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/phd110810s-300x130.gif 300w, http://smileart.in.ua/wp-content/uploads/2011/02/phd110810s.gif 600w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><strong>47. </strong> <a href="http://loveishate.ru/">Love Is (Любовь Это)</a> — сайт о известном с детства практически каждому из нас комиксе «Love Is…», оригинальный сайт находится <a href="http://www.tmsfeatures.com/comicspage/">тут</a>, вместе с неплохой подборкой других комиксов.</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/lovebw-005.jpg"><img class="aligncenter size-medium wp-image-265" title="Love is…" alt="Love is…" src="http://smileart.in.ua/wp-content/uploads/2011/02/lovebw-005-177x300.jpg" width="177" height="300" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/lovebw-005-177x300.jpg 177w, http://smileart.in.ua/wp-content/uploads/2011/02/lovebw-005.jpg 200w" sizes="(max-width: 177px) 100vw, 177px" /></a></p>
<p><strong>48. </strong> <a href="http://comicon.ru/">Comicon.ru &#8212; комиксы на русском</a> — классный русский сайт с неплохим набором комиксов в том числе и переводом «Love is…»</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/cvh-002-2010-05-02-comicon-ru.png"><img class="aligncenter size-medium wp-image-266" title="comicon.ru" alt="comicon.ru" src="http://smileart.in.ua/wp-content/uploads/2011/02/cvh-002-2010-05-02-comicon-ru-242x300.png" width="242" height="300" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/cvh-002-2010-05-02-comicon-ru-242x300.png 242w, http://smileart.in.ua/wp-content/uploads/2011/02/cvh-002-2010-05-02-comicon-ru.png 500w" sizes="(max-width: 242px) 100vw, 242px" /></a></p>
<p><strong>UPD:</strong></p>
<p><strong>49.</strong> <a href="http://www.brainlesstales.com/">Brainless Tales</a> — обалденный западный комикс в стиле старых обложек журналов комиксов по 10¢.</p>
<p style="text-align: center;"><a href="http://smileart.in.ua/wp-content/uploads/2011/02/brainlesstales.png"><img class="size-medium wp-image-282 aligncenter" title="Brainless Tales" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/02/brainlesstales-300x238.png" width="300" height="238" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/brainlesstales-300x238.png 300w, http://smileart.in.ua/wp-content/uploads/2011/02/brainlesstales.png 516w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><strong>50.</strong> <a href="http://comicsia.ru/collections/">75 коллекций комиксов</a> — большая подборка комиксов, которая в чем-то повторяет этот список, а в чем-то привносит в него новые интересные позиции :)</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/progg_day.gif"><img class="aligncenter size-medium wp-image-286" title="«День программиста» из комикса «Я популярен и только что соврал»" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/02/progg_day-300x142.gif" width="300" height="142" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/progg_day-300x142.gif 300w, http://smileart.in.ua/wp-content/uploads/2011/02/progg_day.gif 840w" sizes="(max-width: 300px) 100vw, 300px" /></a></p>
<p><strong>51.</strong> <a href="http://community.livejournal.com/kosh_strip/">КОШ &amp; все-все-все</a> — русский ЖЖ стрип про КОШа и всех-всех-всех :) Циничный и матерный, смешной и интересный. Будьте осторожны, ведь посмотрев всего пару стрипов вы рискуете пролистать весь блог до самого начала.</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2011/02/kosh_84_by_masacrar.jpg"><img class="aligncenter size-medium wp-image-288" title="«КОШ» №84" alt="" src="http://smileart.in.ua/wp-content/uploads/2011/02/kosh_84_by_masacrar-136x300.jpg" width="136" height="300" srcset="http://smileart.in.ua/wp-content/uploads/2011/02/kosh_84_by_masacrar-136x300.jpg 136w, http://smileart.in.ua/wp-content/uploads/2011/02/kosh_84_by_masacrar.jpg 272w" sizes="(max-width: 136px) 100vw, 136px" /></a></p>
<p>За сим, пожалуй, все. Желаю вам приятного времяпровождения в увлекательном мире комиксов и не забывайте, что все эти сайты и вообще рисованные истории — страшный наркотик. Так что трижды подумайте, прежде чем открыть какую-то ссылку из этой мега подборки :) Пока!</p>
]]></content:encoded>
			<wfw:commentRss>http://smileart.in.ua/comics_mega_set/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Ubuntu on Rails</title>
		<link>http://smileart.in.ua/ubuntu-on-rails</link>
		<comments>http://smileart.in.ua/ubuntu-on-rails#respond</comments>
		<pubDate>Wed, 27 Oct 2010 12:18:16 +0000</pubDate>
		<dc:creator><![CDATA[Smile @rT]]></dc:creator>
				<category><![CDATA[Программинг]]></category>
		<category><![CDATA[debug]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[localhost]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[project]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://smileart.in.ua/?p=167</guid>
		<description><![CDATA[Настройка нового Rails 3 проекта для новичков]]></description>
				<content:encoded><![CDATA[<h2><a href="http://smileart.in.ua/wp-content/uploads/2010/10/ubuntu-ruby-940x600.png"><img class="aligncenter size-full wp-image-179" alt="ubuntu-ruby-940x600" src="http://smileart.in.ua/wp-content/uploads/2010/10/ubuntu-ruby-940x600.png" width="940" height="600" srcset="http://smileart.in.ua/wp-content/uploads/2010/10/ubuntu-ruby-940x600.png 940w, http://smileart.in.ua/wp-content/uploads/2010/10/ubuntu-ruby-940x600-300x191.png 300w" sizes="(max-width: 940px) 100vw, 940px" /></a></h2>
<h2>Установка и настройка нового Rails проекта</h2>
<p>Вдохновленный поездкой в Киев на конференцию RubyBarcamp я решил не откладывать в долгий ящик давно задуманную статью и рассказать про наш опыт установки и настройки нового Rails 3 проекта для новичков. Кроме того, опережая внимательных критиков скажу, что пост будет сборной солянкой с разных блогов, форумов и туториалов, а потому кто-то особо придирчивый может заметить знакомый код или команды консоли.</p>
<p><span id="more-167"></span></p>
<p>Эта статья будет полезна людям которые либо только начали изучать Rails либо создают новый проект именно в третей версии и сталкиваются с какими-то проблемами. И наконец данная заметка призвана банально послужить блокнотом для записей тех вещей, которые делаются один раз за проект и потому очень быстро забываются.</p>
<p>Итак, сперва буквально пара слов об окружении. Все что будет описано в этом посте было проделано под управлением чистой ОС Ubuntu 10.04, без mysql или каких-то предустановленных библиотек и пакетов для разработки на Ruby вообще или Rails в частности.</p>
<p>В результате мы должны получить с вами: Ruby 1.9.2 и Rails 3.0.1 с MySQL и работающим дебагом под IDE, а в следующей статье я, возможно, расскажу как на этом всем установить и настроить RSpec, jQuery, SASS, HAML, Compass + 960gs, а так же автотесты с growl уведомлениями.</p>
<p>Начнем, как водиться, с начала.</p>
<h3>1. Установка Ruby 1.9.2</h3>
<p>Путей установки Ruby под Ubuntu есть множество. Мне нравиться, например, использовать для этого RVM, мой же коллега собирает все сам из исходников. Это совершенно не важно, так что тут и дальше я буду описывать то, как это делал я и какой именно вариант у меня работает на 100%.</p>
<p>Сперва установим несколько необходимых пакетов и библиотек:</p>
<pre class="brush: bash; title: ; notranslate">apt-get install curl git-core build-essential zlib1g-dev libssl-dev libreadline5-dev</pre>
<p>Дальше установим Ruby Version Manager (RVM) с помощью команды:</p>
<pre class="brush: bash; title: ; notranslate">
# ===================================================
bash &lt; &lt;( curl http://rvm.beginrescueend.com/releases/rvm-install-head )
</pre>
<p>Теперь осталось добавить используя ваш любимый редактор (я делал это простым gedit, команда: gedit .bashrc) в конец файла .bashrc, который находится в корне вашей домашней директории, такую строку:</p>
<pre class="brush: bash; title: ; notranslate">

if [[ -s &quot;$HOME/.rvm/scripts/rvm&quot; ]]; then source &quot;$HOME/.rvm/scripts/rvm&quot; ; fi

</pre>
<p>Теперь перезапустите терминал (важно!), и что бы проверить все ли установилось нормально, наберите команду:</p>
<pre class="brush: bash; title: ; notranslate">

rvm notes

</pre>
<p>Если до сих пор вы все делали правильно, в терминале должна развернуться простыня с release notes.</p>
<p>Теперь поручим RVM’у установить нам свежую версию Ruby с помощью такой команды:</p>
<pre class="brush: bash; title: ; notranslate">

rvm install 1.9.2

</pre>
<p>Терминал заполниться умными строками, которые поведают вам о процессе установки. Можете почитать их, что бы понять что происходит, а можете, как советовал когда-то Мелкософт, откинуться на спинку кресла и подождать пока Version Manager все сделает за вас.</p>
<p>Процесс сравнительно длительный, так что наберитесь терпения. Зато, когда все завершиться, вам останется убедить RVM что версия 1.9.2 будет использоваться по умолчанию и протестировать как все работает. Делается это, соответственно, такими простыми командами:</p>
<pre class="brush: bash; title: ; notranslate">

rvm --default ruby-1.9.2
ruby -v

</pre>
<p>Ruby должен ответить нам радостным:</p>
<pre class="brush: bash; title: ; notranslate">

«ruby 1.9.2p0 … бла-бла-бла…»

</pre>
<h3>2. Установка Rails 3.0.1</h3>
<p>Теперь настала очередь установить Rails. Делается это установкой обыкновенного gem’а:</p>
<pre class="brush: bash; title: ; notranslate">

gem install rails

</pre>
<p>После этого у вас на компьютере должна заработать самая свежая рельса со всем необходимыми зависимостями и прочими приятными плюшками в виде локальной документации. Убедимся в этом набрав в терминале такую команду:</p>
<pre class="brush: bash; title: ; notranslate">

rails -v

</pre>
<p>Которая просто обязана ответить что-то вроде:</p>
<pre class="brush: bash; title: ; notranslate">

Rails 3.0.1

</pre>
<p>Если это так, то вас можно поздравить. Первый этап позади и на нем я мог бы, по большому счету, закруглиться и посоветовать создать новый проект самостоятельно. Однако, настройка Rails проекта тоже чревата своими проблемами и богата ньюансами, так что я, пожалуй, продолжу и расскажу сперва, как правильно установить MySql.</p>
<h3>2. Установка MySQL</h3>
<p>Сперва поставим сервер. Этим займется команда:</p>
<pre class="brush: bash; title: ; notranslate">

sudo apt-get install mysql-server

</pre>
<p>Я привык, что на локальной машине root пользователь не имеет пароля, потому всюду нажимаю просто Enter. Вы можете думать иначе, а может к вашему компьютеру открыт доступ извне, тогда позаботьтесь о том, что бы ответить на все предложения мускуля хорошим надежным паролем.</p>
<p>Двигаемся дальше. Что бы создать новое приложение, зайдите в папку в которой вы будете вести разработку и наберите в консоли следующую команду, разумеется, заменив name_of_app на настоящее название вашего прилоджения (Важно! Если вы не планируете использовать jQuery и RSpec, о которых пойджет речь в следующий раз, то не пишите параметры -T -J которые отключают дефолтный фремворк для тестов и js-фреймворк по-умолчанию):</p>
<pre class="brush: bash; title: ; notranslate">

rails new name_of_app -T -J -d mysql

</pre>
<p>Сделали? Отлично! Теперь попробуйте запустить bundler что бы он установил все джэмы. И&#8230; И наверняка вы потерпите неудачу, потому, что гем мускуля не установиться по умолчанию, по крайней мере не установился у меня и многих других людей. Что бы поправить ситуацию давайте поставим нужные библиотеки:</p>
<pre class="brush: bash; title: ; notranslate">

apt-get install ruby-dev libmysql-ruby libmysqlclient-dev

</pre>
<p>А после этого можно либо самостоятельно набрать:</p>
<pre class="brush: bash; title: ; notranslate">

gem install mysql2

</pre>
<p>Либо опять запустить:</p>
<pre class="brush: bash; title: ; notranslate">

bundle install

</pre>
<p>Теперь все должно пройти без проблем. По крайней мере, надеюсь, что у вас получилось. Последний штрих &#8212; поднимем БД. В этом нам поможет rake task:</p>
<pre class="brush: bash; title: ; notranslate">

rake db:create

</pre>
<p>Не пугайтесь, что ответ этой задачи будет лаконичным. Все что она вам должна сказать, это текущий путь и больше ничего. Если так, значит все прошло на ура. Давайте же убедимся что все ок, запустив наше пустое приложение. Это делает команда:</p>
<pre class="brush: bash; title: ; notranslate">

rails s

</pre>
<p>По мере загрузки она должна выдать нам что-то вроде:</p>
<pre class="brush: bash; title: ; notranslate">=&gt; Booting WEBrick
=&gt; Rails 3.0.1 application starting in development on http://0.0.0.0:3000
=&gt; Call with -d to detach
=&gt; Ctrl-C to shutdown server
[дата] INFO  WEBrick 1.3.1
[дата] INFO  ruby 1.9.2 (2010-08-18) [i686-linux]
[дата] INFO  WEBrick::HTTPServer#start: pid=20232 port=3000</pre>
<p>Когда вы увидите последнюю строку, это значит, что загрузка закончилась и у нас на локальном хосте, а именно на 3000 порту (смотри выше) будет висеть наш дефолтный сайт. Причем, что приятно, он будет уже не пустой, а со специальной страничкой со ссылками на доки и списком всего-всего окружения. Последний-то нас и интересует, потому попав на заветную страничку (<a href="http://localhost:3000">http://localhost:3000</a>), нажимаем сразу же ссылку &#171;About your application’s environment&#187;. Перед нами должен вывалиться целый список всякого разного. Что важно, там не должно говориться ни о каких ошибках, а особенно ошибках базы данных. У меня, да и скорее всего у вас касательно базы должно быть написано что-то такое:</p>
<p>Environment development<br />
Database adapter mysql2<br />
Database schema version 0</p>
<p>Если этой действительно так, то опять таки поздравляю с очередным преодоленным барьером. У вас теперь есть MySQL сервер и новое Rails приложение с настроенной и даже поднятой базой. Супер! Движемся дальше? Ок, в следующий раз. Точнее только в том случае, если вы создавали проект с ключами -T -J или хотя бы одним из них, то вам вероятно будет интересно почитать про установку и настройку тестового фреймворка и/или jQuery.</p>
<p>Но, сперва выполню еще одно обещание и расскажу по то, как настроить ruby-debug, который понадобиться нам, что бы как белые люди проводить отладку нашего будущего приложения, как говориться в живую и наиболее удобно &#8212; пярмо из любимой IDE.</p>
<p>Для этого нам понадобиться зайти в Gemfile нашего свежего проекта и дописать туда всего пару строк:</p>
<pre class="brush: ruby; title: ; notranslate">gem 'ruby-debug19'
gem 'ruby-debug-ide19'</pre>
<p>и выполнить</p>
<pre class="brush: bash; title: ; notranslate">bundle install</pre>
<p>или же выполнить последовательно такие команды:</p>
<pre class="brush: bash; title: ; notranslate">gem install ruby-debug19 --platform=ruby
gem install ruby-debug-ide19 --platform=ruby</pre>
<p>Но было бы наивно подумать, что все сработает сразу и так просто. Опять таки, повторюсь, по крайней мере у меня не заработало. Если у вас более новая версия где все это починено прямо из коробки, то это совершенно замечательно. Я же что бы все пошло делал вот так…</p>
<p>Во-первых, нужно пойти в файлик &lt;ruby folder&gt;/lib/ruby/gems/1.9.1/gems/ruby-debug-ide19-0.4.12/lib/ruby-debug-ide.rb, где разумеется &lt;ruby folder&lt; это папка где разместился ваш Ruby. Что бы легко узнать где находиться эта папка, вы можете выполнить команду</p>
<pre class="brush: bash; title: ; notranslate">which ruby</pre>
<p>Итак, в это самом файле в 142-ой строке, пишем вместо:</p>
<pre class="brush: bash; title: ; notranslate">$stderr.printf &quot;Fast Debugger (ruby-debug-ide 0.4.9) listens on #{host}:#{port}\n&quot;</pre>
<p>такую строку</p>
<pre class="brush: bash; title: ; notranslate">$stderr.printf &quot;Fast Debugger (ruby-debug-ide19 0.4.12) listens on #{host}:#{port}\n&quot;</pre>
<p>На самом деле, мы только что поправили сообщение об ошибке, которое может выдаваться в IDE (в моем случае это Netbeans), это не обязательно, но лучше все таки это сделать, хотя бы потому, что потом, когда эта ошибка все таки появится где нибудь, то неправильные номера версий в сообщении будут очень сильно сбивать вас с толку.</p>
<p>Во-вторых, нужно подредактировать файлик &lt;ruby folder&lt;/lib/ruby/gems/1.9.1/gems/ruby-debug-ide19-0.4.12/bin/rdebug-ide.rb, где в 78 строке написать вместо:</p>
<pre class="brush: bash; title: ; notranslate">Debugger::PROG_SCRIPT = ARGV.shift</pre>
<p>следующее:</p>
<pre class="brush: bash; title: ; notranslate">script = ARGV.shift
Debugger::PROG_SCRIPT = (script =~ /script([\\\/])rails/ ? Dir.pwd + $1 : '') + script</pre>
<p>Вот и все. В самом проекте теперь нужно писать не gem &#8216;ruby-debug&#8217;, а gem &#8216;ruby-debug19&#8217;, как я уже говорил выше. Кроме этого нужно удалить файл Gemfile.lock в корне вашего проекта и выполнить команду:</p>
<pre class="brush: bash; title: ; notranslate">bundle update</pre>
<p>Теперь запускайте вашу IDE, жмите в ней кнопку запуска проекта. Ставьте в главном контроллере точку останова и любуйтесь тем, как процесс выполнения скрипта остановиться на ней, что бы ожидать ваших дальнейших действий.</p>
<p><em>За информацию по правке файлов спасибо огромное Andrea Ercolino и его блогу http://noteslog.com</em></p>
<p>Вот и все. В следующий раз читайте о том, как настроить Rails под ваши нужды добавив кастомные тесты, js-феймворк и шаблонизатор со стилями (опять таки, если вы создавали или создадите проект с нужными ключиками).</p>
]]></content:encoded>
			<wfw:commentRss>http://smileart.in.ua/ubuntu-on-rails/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Real-time web</title>
		<link>http://smileart.in.ua/realtimeweb</link>
		<comments>http://smileart.in.ua/realtimeweb#comments</comments>
		<pubDate>Tue, 14 Sep 2010 21:07:13 +0000</pubDate>
		<dc:creator><![CDATA[Smile @rT]]></dc:creator>
				<category><![CDATA[Программинг]]></category>
		<category><![CDATA[События]]></category>
		<category><![CDATA[Технологии]]></category>
		<category><![CDATA[comet]]></category>
		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[node.js]]></category>
		<category><![CDATA[real-time web]]></category>
		<category><![CDATA[speech]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[WebSocket]]></category>
		<category><![CDATA[технологии]]></category>

		<guid isPermaLink="false">http://smileart.in.ua/?p=130</guid>
		<description><![CDATA[Текстовая версия моего доклада]]></description>
				<content:encoded><![CDATA[<p><a href="http://smileart.in.ua/wp-content/uploads/2010/09/real-time-web-940x600.png"><img class="aligncenter size-full wp-image-152" alt="real-time-web-940x600" src="http://smileart.in.ua/wp-content/uploads/2010/09/real-time-web-940x600.png" width="940" height="600" srcset="http://smileart.in.ua/wp-content/uploads/2010/09/real-time-web-940x600.png 940w, http://smileart.in.ua/wp-content/uploads/2010/09/real-time-web-940x600-300x191.png 300w" sizes="(max-width: 940px) 100vw, 940px" /></a></p>
<p>На прошлой неделе у нас <a href="http://netpeak.ua/">на работе</a> проходило любопытное мероприятие, где можно было выступить со своим докладом на произвольную тему касающуюся современных технологий, тенденций и практик. Я подготовил собственный доклад на соответствующую тему, а что бы сохранить материал и совместить приятное с полезным, сделал еще и текстовую версию рассказанного. Эта статья своего рода компиляция большого количества источников, плюс полезные ссылки на сайты, статьи и библиотеки для разработчиков.</p>
<p><span id="more-130"></span></p>
<p>1. Вступление<br />
2. Что такое Comet и для чего он нужен<br />
3. Существующие техники real-time web<br />
4. Реализации real-time web в существующих приложениях<br />
5. Перспективы<br />
6. Ссылки</p>
<h2>1. Вступление</h2>
<p>Сегодня информация становится все более и более ценным ресурсом, часто дороже нефти, золота, а иногда и человеческой жизни. Ведь эти самые жизни во многом зависят от вовремя полученной и максимально точной информации. Но, это все лирика, в вебе не все так страшно. На самом деле, современные технологии с ростом вычислительных возможностей и уже ставшим привычным web 2.0 подходом, когда каждый пользователь может создавать контент, сделали информационные потоки в десятки и сотни раз интенсивнее и насыщеннее. Но, кроме того, ценность информации как ресурса во многом зависит от ее актуальности. Не только биржевые сводки или текущий метеорологический прогноз, но и свежие данные о событиях в жизни вашей друзей, города или любой страны мира хочется получать в тот момент когда они действительно актуальны, то есть мгновенно или же иначе говоря в режиме реального времени. Как известно web построен по схеме «запрос &#8212; ответ», что в условиях высокой скорости или большой плотности поступления информации не всегда оказывается приемлемым. Читая текстовую трансляцию коференции Apple или глядя на последние сводки с полей спортивных сражений не хочется постоянно держать руку «на пульсе», то есть кнопке F5, ожидая каждый раз когда громоздкий красивый дизайн загрузиться и все встанет на свои места прежде чем вы сможете увидеть что к чему. Именно это обусловило появление такого направления, как real-time web.</p>
<div id="attachment_138" style="width: 310px" class="wp-caption aligncenter"><a href="http://smileart.in.ua/wp-content/uploads/2010/09/f51.jpg"><img class="size-medium wp-image-138" title="f5" alt="" src="http://smileart.in.ua/wp-content/uploads/2010/09/f51-300x288.jpg" width="300" height="288" srcset="http://smileart.in.ua/wp-content/uploads/2010/09/f51-300x288.jpg 300w, http://smileart.in.ua/wp-content/uploads/2010/09/f51.jpg 794w" sizes="(max-width: 300px) 100vw, 300px" /></a><p class="wp-caption-text">© www.bisonium.com</p></div>
<h2>2. Что такое Comet и для чего он нужен</h2>
<p>Real-time web это довольно давно изветное семейство технологий, которое, как понятно из названия предоставляет в рамках существующих технических решений добиться работы web-приложений или их составляющих частей в реальном времени. Еще в 1996 году c появлением браузера Netscape 2.0 стало возможно встраивание в браузер Java апплетов, что позволило использовать TCP сокеты для общения браузера и сервера в реальном вермени. Сокеты позволяли удерживать соединение на протяжении всей работы с браузером в документе где размещался апплет. Уведомления о событиях могли отправляться в любом формате как текстовом, так и бинарном и декодироваться уже самим апплетом. Гораздо позже, в марте 2006го Alex Russell в своем личном блоге впервые применил к технологиям подобного рода термин comet.</p>
<p>Итак, уже ясно, что Real-time web позволяет пользователям получать информацию практически в тот же момент когда она была опубликована авторами. Это предоставляет возможность мгновенно быть в курсе событий, обновлений лент различных подписок, состояния пользователей (онлайн/оффлайн) и их статусов, общаться в чатах так же как в прикладных IM мессенджерах и т.п. Может сперва показаться что real-time web это то же самое что AJAX, но это не совсем так. AJAX работает по обыкновенной схеме «запрос — ответ» с той лишь разницей, что обновляется информация не всей страницы а зачастую только определенной области. Любой AJAX запрос требует какого-то события для того, что бы инициироваться и всегда после получения ответа сервера он закрывает соединение. Это называется short polling, когда браузер с определенной переодичностью запрашивает обновления у сервера. Однако при большом количестве клиентов такие запросы становятся совсем не выгодны, так как каждый клиент, допустим, каждую секунду делает очередной запрос на обновление информации. Особенно «дорого» такие запросы обходятся когда происходят в холостую и только каждое десятое обращение приносит обновление данных.</p>
<p>Что бы избежать таких неоправданных издержек и была придумана другая техника взаимодействия клиента с сервером, так называемый long polling. Не вдаваясь пока в технческие детали можно сказать, что по этой схеме клиент устанавливает соединение и ожидает ответа сервера не разрывая его до тех пор, пока не будет получен ответ, который в свою очередь отдается только тогда, когда состояние на самом деле изменилось и появилось какое-то изменение или событие. После получения ответа клиент отображает или обрабатывает его каким либо образом.</p>
<p>Существует некая путаница в терминологии из разных источников, но некоторые выделяют как еще более прогрессивный вариант server push. Так называют способ реализации, когда клиент один раз соединяется с сервером и в реальном времени постоянно ожидает ответы какие сервер присылает самостоятельно без разрыва клиенского соединения и соответственно без необходимости устанавливать его снова (push). Лично я тоже отделил бы это от long-polling, так как там соединения происходят все таки гораздо чаще. Кроме того, этот же server push, судя по всему, и называют streaming’ом о котором пойдет речь чуть ниже.</p>
<h2>3. Существующие техники real-time web</h2>
<p>Итак, самое время рассмотреть какие на сегодняшний день существуют приемы и техники для реализации такой замечательной штуки как real-time web. К счастью, а может к сожалению вариантов очень много. Многие из них страдают своей противностью природе и устройству протокола HTTP как такового, другие вынуждают использовать проприетарные закрытые решения. Так или иначе выбор достаточно велик. Давайте же познакомимся с некоторыми из вариантов. Для удобства разделим рассказ на две части или даже эпохи:</p>
<h3>Эпоха велосипедов и костылей</h3>
<h4>Long-polling</h4>
<p>Самый простой в реализации и как следствие самый распространенный, но в то же время не совсем трушный вариант. Long-polling подразумевает подключение к серверу и длительное ожидание ответа от него. Самым слабым местом этой идеи является все тот же сервер и устройство HTTP, так как изначально очень длинные запросы не были предусмотрены технологией и столь долгие сессии не могут поддерживаться обычными web-серверами вроде Apache, а потому время каждого такого долгоиграющего запроса ограничено таймаутом сервера — обычно от 30 секунд до 5 минут. Этот вариант пригоден для малого количества пользователей (до сотни), а реализовывать его лучше всего на nginx, Jetty (Java), Twisted(Python), Node.js или другом специализированном сервере с возможностью создавать один процесс на много клиентов. Не совсем трушный он именно потому, что только пытается имитировать push от сервера, хотя на самом деле это растянутый во времени poll, впрочем особо выбирать не приходиться.</p>
<h4>Streaming</h4>
<p>Отличается тем, что после ответа сервера соединение не разрывается и такое соединение в отличие от Long-polling’а может держаться часы, а не секунды или минуты. Конечно такое решение требует соответствующей серверной как программной так и железной части, кроме того нужно поиграться с настройкой ОС и предусмотреть масштабирование.</p>
<h4>MiME multipart/x-mixed-replace</h4>
<p>Это своего рода long-polling MIME тип, который был разработан еще в 1995 году тем же Netscape и до сих пор поддерживается некоторыми браузерами, среди которых по утверждениям разных источников Firefox, Chrome, Opera, но как всегда не поддерживается Microsoft. Метод заключается в отправке серверу XHR-запроса, ответ на который может быть разделен на части. Такой Multipart XMLHTTPRequest инициирует на сервере отправку ответа, но разделенного на части с уникальным разделителем, который возвращается клиенту в специальном заголовке: header(&#8216;Content-type: multipart/x-mixed-replace;boundary=&#187;тут уникальный разделитель&#187;&#8216;); Дальше клиент получает по очереди, «размазано» во времени все ответы разделенные этим разделителем (простите уж за такую формулировку), задержка происходит только перед получением первого ответа, остальные же части приходят асинхронно.</p>
<h4>Hidden iFrame</h4>
<p>Самый известный, самый старый и до сих пор актуальный кроссбраузерный способ реализации long-polling. Суть его, как понятно из названия, заключается в создании на странице невидимого фрейма IFrame в который загружается удаленная стрница (ваш comet сервер). Фишка в том, что загружаемые данные обрабатываются браузером последовательно по мере их поступления и если это поступление сделать бесконечным, то и данные будут приходить постоянно. Таким образом все время отправляя в этот самый фрейм небольшие вызовы</p>
<blockquote><p>&lt;script&gt;&#8230;javascript&#8230;&lt;/script&gt;</p></blockquote>
<p>скрипта мы сможем инициировать обработку входящих сообщений. Не смотря на то что способ довольно простой он конечно еще менее трушный, так как фреймы создавались вовсе не для такой цели, да и такое соединение будет разрываться довольно часто как по таймауту, так и в случае ошибок соединения. Кроме того фрейм требует периодической очистки для освобождения памяти и постоянного «пинга» от сервера даже если никаких событий не произошло. Еще один неприятный факт в копилку минусов этого способа — пробелмы с некоторыми браузерами в которых существуют лимиты на размер буфера, который должен быть заполнен до определенного размера, что бы началась обработка скриптов. Для этого начало сообщений приходится забивать пробелами, что, согласитесь, не очень удобно и красиво. Кроме того есть проблемы с прокси, с очисткой фрейма во избежание переполнения памяти и прочие проблемы.</p>
<p>Не смотря на недостатки этого метода привести пример его реализации проще всего, так как он не очень громоздкий и достаточно понятный:</p>
<pre class="brush: php; title: ; notranslate">&lt;html&gt;
&lt;body&gt;
&lt;?php
  set_time_limit(0);
  while (@ob_end_flush()) {}
  ob_implicit_flush(1);

  $i=1;
  while(true)
  {
     echo &quot;&lt;script&gt;parent.handleDigit($i)&lt;/script&gt;&quot;;
     sleep(1);
     $i++;
  }
?&gt;
&lt;/body&gt;
&lt;/html&gt; </pre>
<pre class="brush: jscript; title: ; notranslate">function handleDigit(digit)
{
  var s = document.createElement('span')
  s.innerHTML = digit+' '
  document.getElementById('endless_frame_div').appendChild(s)
} </pre>
<p>Источник примера: <a href="http://javascript.ru">javascript.ru</a></p>
<h4>XMLHTTPRequest, состояние interactive</h4>
<p>Способ работающий благодаря возможности установки у объекта XMLHTTPRequest состояния readyState=3, что означает interactive. Это состояние означает что текст ответа (response text) может читаться еще до завершения запроса и полного получения ответа, то есть интерактивно. Говорят, что в некоторых браузерах это действительно работает и это состояние можно использовать для передачи событий и данных. Но как всегда способ не работает в IE, а также ведет себя из рук вон плохо в Хроме и Опере, потому не думаю что он заслуживает более детального рассмотрения.</p>
<h4>HTML5 Event-source, Opera</h4>
<p>Этот метод упомянут скорее «для галочки», так как он работает только в Google Chrome (начиная с версии 6), Apple Safari (начиная с версии 5) и Opera (начиная с версии 9) с HTML5. Для реализации real-time web в нем используется специальный элемент HTML — event-source. Способ очень удобный и жаль, что он доступен не везде. Его суть заключается в установке атрибута src в упомянутом элементе, в который прописывается адрес сервера событий. Сервер в свою очередь отвечает заголовком</p>
<blockquote><p>header(&#171;Content-Type: application/x-dom-event-stream&#187;);</p></blockquote>
<p>что означает его готовность генерировать события, которые выглядят так:</p>
<blockquote><p>Event: call<br />
Data: bla-bla.</p></blockquote>
<p>На каждое событие может устанавливаться свой обработчик. Одним из серьезных недостатков является отсутствие обработки ошибок, единственным способом для определения сбоя могут служить переодические события ping.</p>
<h4>BOSH</h4>
<p>Эта аббревиатура расшифровывается как Bidirectional-streams Over Synchronous HTTP. Способ основывается на обмене между клиентом и сервером сообщений по протоколу XMPP и работает через обыкновенный синхронный web. Если же интерфейс для взаимодейсвтия с таким Jabber сервером нужно реализовать на обычной страничке в виде (View), например, чата в социальной сети, то используется тот же Long-polling.</p>
<h4>CometD Project</h4>
<div id="attachment_148" style="width: 310px" class="wp-caption aligncenter"><a href="http://smileart.in.ua/wp-content/uploads/2010/09/cometdLogo.png"><img class="size-medium wp-image-148" title="cometd" alt="" src="http://smileart.in.ua/wp-content/uploads/2010/09/cometdLogo-300x177.png" width="300" height="177" srcset="http://smileart.in.ua/wp-content/uploads/2010/09/cometdLogo-300x177.png 300w, http://smileart.in.ua/wp-content/uploads/2010/09/cometdLogo-1024x605.png 1024w, http://smileart.in.ua/wp-content/uploads/2010/09/cometdLogo.png 1079w" sizes="(max-width: 300px) 100vw, 300px" /></a><p class="wp-caption-text">© CometD project</p></div>
<p>Довольно интересный и богатый на имплементации проект Dojo Fundation который располагается по адресу <a href="http://cometd.org/">cometd.org</a>. Этот проект является сборкой реализаций протокола Bayeux Protocol, который работает по принципу pub/sub на основе AJAX и server-push (на самом деле все тот же long-polling или стриминг) предоставляя стандарт API как для клиента так и для сервера, на разных языках javascript (в том числе для Dojo и jQuery), java, perl, python и прочих. Как отличительную черту проекта можно отметить возможность как сервера так и клиента выступать в обеих ролях подписчика или публикатора.</p>
<h3>Эпоха кошерных технологий</h3>
<h4>APE Server</h4>
<p>Как говорят сами разработчики на <a href="http://www.ape-project.org/">официальном сайте проекта</a>:</p>
<blockquote><p>«APE is a full-featured OpenSource solution designed for Ajax Push. It includes a comet server and a Javascript Framework. APE allows to implement any kind of real-time data streaming to a web browser, without having to install anything on the client-side.»</p></blockquote>
<p>Aything, не считая javascript, я полагаю. Кроме того все это работает с Dojo, Mootools и jQuery поддерживая все виды комета от long-polling и до WebSockets, о которых мы поговорим ниже. На официальном сайте обещают что эта штука выдержит до 100’000 пользователей одновременно, что весьма и весьма впечатляет.</p>
<h4>Lightstreamer</h4>
<p>Это еще один масштабируемый и надежный <a href="http://www.lightstreamer.com/">Comet push-сервер</a> для передачи любым RIA данных в реальном времени без дополнительной установки чего либо лишнего на клиенте. Весьма многообещающе выглядит поддержка работы с клиентами на HTML, AJAX, Flex, AIR, Silverlight и Java, .NET, iPhone приложеняиями. Решение энтерпрайсное, но доступна и бесплатная light версия.</p>
<h4>Dklab_realplexor</h4>
<p>Отдельного внимания заслуживает решение от dkLab, создателей Denwer и целой кучи других полезных библиотек и примочек. Думаю стоит опять дать слово самим авторам:</p>
<blockquote><p>«<a href="http://dklab.ru/lib/dklab_realplexor/">Dklab Realplexor</a> — это Comet-сервер, позволяющий держать одновременно сотни тысяч долгоживущих открытых HTTP-соединений с браузерами пользователей. JavaScript-код, запущенный в браузере, подписывается на один или несколько каналов Realplexor-а и вешает обработчик на поступление данных. Сервер может в любой момент записать сообщение в один из таких каналов, и оно будет моментально передано всем подписчикам (хоть одному, хоть тысяче), в режиме реального времени и с минимальной нагрузкой для сервера.»</p></blockquote>
<p>Кроме того авторы утвержадют что их метод тоже поддерживает сотни тысяч соединений, более того они предлагают живой пример в виде «нашего аналога» twitter — RuTvit и готовые решения для PHP и Realplexor JavaScript API. В качестве поддержки отечественного производителя думаю стоит попробовать, тем более что выглядит эта вещь очень серьезно.</p>
<h4>pubsubhubbub</h4>
<blockquote><p>«A simple, open, server-to-server web-hook-based pubsub (publish/subscribe) protocol as an extension to Atom and RSS»</p></blockquote>
<p>Решение для межсерверного обмена в реальном времени основанное на простом и легко поддерживаемом в любом языке протоколе Atom или RSS XML. Взаимодействие происходит через так называемые webhook callbacks. Лучше всего про то что это такое расскажет видео с офицальной страницы проекта: <a href="http://code.google.com/p/pubsubhubbub/">pubsubhubbub</a></p>
<h4>WebSocket в HTML5</h4>
<p>Итак, встречайте — гвоздь программы, HTML5 с его WebSocket. Как говорит нам Википедия WebSocket это протокол полнодуплексной двунаправленной связи поверх TCP соединения, предназначенный для обмена сообщениями между браузером и веб-сервером в режиме реального времени. Проще говоря это полностью асинхронный способ обмена сообщениями и данными между клиентом и сервером, когда оба представляются полноправными участниками процесса с возможностью отправки и получения данных в произвольном формате (в том числе бинарном). Причем какого-то особого формата, разве что кроме кратеньких заголовков при инициализации от клиента/сервера не требуется, все ограничивается специальными байтами (шестнадцатиричными кодами) в начале и конце сообщения. Причем все это работает без временных лимитов и ограничений на объем и, повторюсь, формат пересылаемых данных. Описывать довольно таки хорошо документированный формат, думаю не имеет смысла. Тема сейчас дико популярная и за ней, как говориться, будущее, так что просто поиска в по этому ключевому слову или пройдя по ссылкам в конце этого поста, вы найдете подробнейшие мануалы, статьи и описания всего процесса и формата. Скажу только что на сегодняшний день поддержка этого чуда реализована в Google Chrome (начиная с версии 4.0.249.0), Apple Safari (начиная с версии 5.0.7533.16), Mobile Safari (iOS 4.0 beta 2, позже была убрана и, думаю, уже возвращена), Mozilla Firefox (начиная с версии 3.7), Opera (до конца года) и даже Internet Explorer (начиная с 9ой версии), что покрывает добрую часть современных браузеров. Ну, а для всего старого и недоброго даже в эпоху кошерных технологий предлагается свой костыль, который имитирует работу этого расширения и работает через Flash. Найти его можно на <a href="http://github.com/gimite/web-socket-js">GitHub</a>. Другое решение заслуживающее внимания предлагается <a href="http://socket.io/">socket.io</a>.</p>
<h2>4. Реализации real-time web в существующих приложениях</h2>
<p>Казалось бы все это дело только ближайшего будущего, ведь костыли уходят в прошлое, а новые стандарты пока еще тольком не расспробованы. Но на самом деле real-time web это уже практически повседневность. Мы каждый день получаем почту в Gmail именно через Comet, web-часть GTalk встроенная в почту, это тоже comet. Что уж говорить про недавно запущенную фичу Google real-time search, который именно благодаря этой технологии в режиме реального времени выдает результаты поиска среди твитов, новостей, Yahoo! Answers и блогов. Та же фича еще раньше была встроена в Bing от Microsoft который выдает данные в реальном времени из twitter, facebook. Даже на картах Bing можно посмотреть текущие твиты с гео-привязкой (еще один модный тренд уходящего года). Тот же Яндекс запустил недавно сервис популярных запросов поисковой системе с геогафической составляющей, накладывая их поверх карты мира, что тоже происходит в онлайн режиме по мере поступления запросов.</p>
<p>Стоит упомянуть так же то что чаты Facebook и Вконтакте работают по той же технологии BOSH (по крайней мере Facebook), а web IM клиент Meebo позволяет благодаря чатам в реальном времени получить доступ к большинству меседжинговых протоколов без установки дополнительного софта. <a href="http://reader.google.com/">Google Reader</a>, <a href="http://www.lazyfeed.com/">Lazyfeed</a> — проекты использующие real-time web для работы с RSS. Второй вообще в реальном времени мониторит блогосферу с поисках интересной для вас тематики и не даст пропустить ни одной полезной статьи.</p>
<p>Twitter тоже использует real-time web — пока вы находитесь на своей странице информация про новые твиты постоянно поступает прямо в браузер в режиме реального времени. Кроме того их живой поиск давным давно использовал comet для предоставления дополнительных резульатов во время чтения основной выдачи. По тому же принципу действует их API благодаря которому создаются такие мэшапы как <a href="http://monitter.com/">monitter.com</a> для стриминга твитов в реальном времени с привязкой к месту, по расстоянию от вашего положения или заданной теме. <a href="http://www.twitscoop.com/">www.twitscoop.com</a> показывающий twitter тренды в реальном времени как и <a href="http://trendsmap.com/">trendsmap.com</a> представляющий собой, как мне видиться, прекрасный инструмент для маркетологов, что бы все время знать о текущих тенденциях. То же может быть полезным и для SEO-мастеров для поиска актуальной на данный момент тематики. Другой потрясающей красоты проект<a href="http://www.twittearth.com/">www.twittearth.com</a> связанный с твиттером, показывает статусы в реальном времени прямо на мировой карте, визуализируя все как трехмерный глобус. FriendFeed, кстати, тоже обновляет ленту друзей в реальном времени.</p>
<p>Еще одной сферой применения real-time web’а стала сфера collaborative work. В реальном времени команда людей может создавать ментальные карты, редактировать текстовые документы и презентации. <a href="http://docs.google.com">Google Docs</a>, <a href="http://www.zoho.com/">Zoho</a>, <a href="http://www.mindmeister.com/">MindMeister</a> — все это флагманы офисной и частной совместной работы над разного рода документами в реальном времени. Я уже не говорю про <a href="http://wave.google.com">Google Wave</a> в котором, собственно и писалась эта статья. Кроме того, в сети масса мелких решений для совместного написания текстов или программного кода. Среди них есть и открытые стандарты, например, проект <a href="http://mozillalabs.com/skywriter/">Mozilla Labs — Skywriter</a>.</p>
<p>Все это делает real-time web серьезной платформой для работы, причем совместной, творческой и быстрой.</p>
<h2>5. Перспективы</h2>
<p>Итак, мы видим что эпоха web 3.0 кроме семантической паутины и Data Mining будет и даже уже сейчас сильно завязана на получении актуальной информации в реальном времени. Перспективы мы видим — принимаются новые стандарты, все больше браузеров поддерживают эту тенденцию и если сейчас AJAX’ом уже никого не удивишь, то через пол года или максимум год, real-time web будет восприниматься как должное и использоваться повсеместно. Для разработчиков можно прогнозировать поддержку этого стека технологий всем и вся. Думаю каждый уважающий себя сервер, фреймворк или comet бибилотека обзаведуться, если еще не обзавелись поддержкой WebSocket, а API станут еще проще, еще более высокого уровня абстракции так что бы не задумываться о шестнадцатеричных флагах и прочей ерунде. Для конечных же пользователей это будет означать только мгновенные комуникации, удобную совместную работу, трансляции и обновления статусов в реальном времени, push уведомления про важные события делового календаря или новости из жизни друзей. В сочетании с тем же семантическим вэбом и повсеместным переплетением API и развитием мэшапов, вэб выйдет на совершенно новый качественный уровень, когда можно будет абстрагироваться от конкретных приложений или платформ и прозрачно пользоваться сервисами, получать и комбинировать информацию, сравнивать, накладывать на карты, анализировать и наблюдать в реальном времени любые врезы данных, что сделает нашу жизнь проще и удобнее.</p>
<h2>6. Ссылки</h2>
<ul>
<li><a href="http://websockets.ru">websockets.ru</a></li>
<li><a href="http://javascript.ru">javascript.ru</a></li>
<li><a href="http://www.ape-project.org">www.ape-project.org</a></li>
<li><a href="http://habrahabr.ru/blogs/webdev/82140/">habrahabr.ru/blogs/webdev/82140/</a></li>
<li><a href="http://socket.io/">http://socket.io/</a></li>
<li><a href="http://twistedmatrix.com/trac/">twistedmatrix.com/trac/</a></li>
<li><a href="http://www.frozenmountain.com/websync/">www.frozenmountain.com/websync/</a> — коммерческое решение для .NET</li>
<li><a href="http://phpdaemon.net/">phpdaemon.net/</a></li>
<li><a href="http://github.com/jcoglan/faye">github.com/jcoglan/faye</a></li>
<li><a href="http://www.slideshare.net/beshkenadze/wstd">www.slideshare.net/beshkenadze/wstd</a></li>
<li><a href="http://ajaxpatterns.org/wiki/index.php?title=HTTP_Streaming">ajaxpatterns.org/wiki/</a></li>
</ul>
<p>Ряд серверов предлагает дополнительные обертки и фреймворки, упрощающие COMET, включая javascript-библиотеки и различные режимы работы: polling / streaming / long-poll.</p>
<p>Вот список самых распространенных открытых серверов и библиотек:</p>
<p><strong>Java</strong></p>
<ul>
<li><a href="https://glassfish.dev.java.net/">Glassfish</a> с компонентом <a href="https://grizzly.dev.java.net/">Grizzly Comet</a></li>
<li><a href="http://cometd.org/">CometD</a></li>
<li><a href="http://jetty.codehaus.org/jetty/">jetty</a></li>
</ul>
<p><strong>Javascript</strong></p>
<ul>
<li><a href="http://nodejs.org/">Node.JS</a></li>
</ul>
<p><strong>Python</strong></p>
<ul>
<li><a href="http://orbited.org/">Orbited</a></li>
<li><a href="http://www.tornadoweb.org/">Tornado</a></li>
<li><a href="http://pypi.python.org/pypi/django-websocket">django-websocket</a></li>
</ul>
<p><strong>Erlang</strong></p>
<ul>
<li><a href="http://code.google.com/p/mochiweb/">Mochiweb</a></li>
</ul>
<p><strong>Ruby/Rails</strong></p>
<ul>
<li><a href="http://github.com/maccman/juggernaut">juggernaut</a></li>
<li><a href="http://github.com/imanel/socky_plugin">socky_plugin</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://smileart.in.ua/realtimeweb/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Стили парного программирования</title>
		<link>http://smileart.in.ua/pair_programming</link>
		<comments>http://smileart.in.ua/pair_programming#comments</comments>
		<pubDate>Tue, 24 Aug 2010 23:20:17 +0000</pubDate>
		<dc:creator><![CDATA[Smile @rT]]></dc:creator>
				<category><![CDATA[Работа и труд]]></category>
		<category><![CDATA[метод]]></category>
		<category><![CDATA[парное программирование]]></category>
		<category><![CDATA[перевод]]></category>
		<category><![CDATA[программирование]]></category>
		<category><![CDATA[продуктивность]]></category>
		<category><![CDATA[работа]]></category>

		<guid isPermaLink="false">http://smileart.in.ua/?p=78</guid>
		<description><![CDATA[Перевод статьи о парном программировании]]></description>
				<content:encoded><![CDATA[<p><a href="http://smileart.in.ua/wp-content/uploads/2010/08/pair_programming_940x600.png"><img class="aligncenter size-full wp-image-82" alt="pair_programming_940x600" src="http://smileart.in.ua/wp-content/uploads/2010/08/pair_programming_940x600.png" width="940" height="600" srcset="http://smileart.in.ua/wp-content/uploads/2010/08/pair_programming_940x600.png 940w, http://smileart.in.ua/wp-content/uploads/2010/08/pair_programming_940x600-300x191.png 300w" sizes="(max-width: 940px) 100vw, 940px" /></a></p>
<p>Недавно я наткнулся в сети на статью крайне интересной для меня тематики, а именно о парном программировании. Так как считаю это одним из самых удачных методов работы, если не самым удачным вообще, я решил перевести ее с английского для читателей моего блога. Увы, мой английский так и остался где-то на уровне школьной программы, да еще чтения документации, но старался как мог. <img src="http://smileart.in.ua/wp-includes/images/smilies/blush.gif" alt=":blush:" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Кроме оправдания скажу что перевод достаточно вольный и местами я позволил себе довольно таки приблизительные замены по возможности не искажая при этом суть. Итак, представляю вам статью «<a title="Permanent Link to Practical Styles of Pair Programming" href="http://blog.xebia.com/2010/05/09/practical-styles-of-pair-programming/" rel="bookmark">Practical Styles of Pair Programming</a>» оригинал которой написал Iwein Fuld:</p>
<h4><span id="more-78"></span></h4>
<h4>Стили парного программирования на практике</h4>
<p>Без исключения во всех командах где мне довелось разрабатывать программное обеспечение люди выражали свое недовольство в адрес парного программирования. Не то что бы они не хотели попробовать или не верили что оно сработает, наоборот, как правило люди полны энтузиазма и готовы дать этому методу шанс проявить себя. Но, уже через несколько дней они сидят в наушниках, в одиночестве за своими клавиатурами и кодят как зомби. Что же происходит? Так ли сложно парное программирование? В этом посте я попытаюсь объяснить что по моему мнению происходит на самом деле, и дать вам некоторые четкие указания, которые позволят избежать ловушек. В самом конце я расскажу о распределенных командах и том, какую роль парное программирование играет в них.</p>
<p>Итак, давайте посмотрим что говорят люди, если вы спросите почему они прекратили программировать в паре:</p>
<div id="_mcePaste">
<ul>
<li>Я быстрее работаю сам по себе.</li>
<li>Не могу работать в паре с этим чуваком, он действует мне на нервы.</li>
<li>Парное программирование слишком утомительно.</li>
<li>Мы разделили работу и выполним ее быстрее если будем программить в две клавиатуры.</li>
<li>Слишком много фонового шума.</li>
<li>Я только задерживаю его.</li>
</ul>
</div>
<p>Кое что из вышесказанного может показаться правдоподобным, так что давайте сперва я развенчаю это впечатление. Нет, вы не работаете быстрее сами по себе, вы просто создаете еще больше говнокода над которым ваши коллеги изрядно поломают голову, что бы в конце концов удалить его. Код который вы пишете сами — отстой. Парень какой раздражает вас, просто пытается объяснить (неуклюже) что ваш код отстой, попробуйте послушать его и вы станете программировать лучше. Или наоборот, можете научить его чему-то новому и в результате он перестанет действовать вам на нервы. Если ваш код настолько прост, что вы можете разделить работу, вы пишете на слишком низком уровне абстракции или вам необходимо разделить задачу на две пары. Если вы замедляете своего напарника, тем лучше. Это помешает ему писать код, который вы не сможете поддерживать. Если вы не чувствуете что достойны кода ваших коллег, преодолейте это или покиньте команду.</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2010/08/ppp2.png"><img class="aligncenter size-full wp-image-89" title="ppp2" alt="" src="http://smileart.in.ua/wp-content/uploads/2010/08/ppp2.png" width="366" height="396" srcset="http://smileart.in.ua/wp-content/uploads/2010/08/ppp2.png 366w, http://smileart.in.ua/wp-content/uploads/2010/08/ppp2-277x300.png 277w" sizes="(max-width: 366px) 100vw, 366px" /></a></p>
<p>Это был холодный душ который, надеюсь, растормошил вас. Остальная часть поста будет более приятной. Я пропустил несколько жалоб. Я слышал утверждение, будто парное программирование утомительно? Уверен, вы будете скучать по всем этим тайным минутам отдыха, когда вы украдкой просмотрели свою почту, засмотрелись в окно, задумались об обеде&#8230; Если окружающее отвлекает вас, то в паре вы будете отвлекаться еще больше. Если вы испытывали проблемы во взаимодействии с командой, то с парным программированием это станет болезненно очевидным. Кто-то же должен исправить это дерьмо!</p>
<p>Заткните все что не относиться к делу, включая клиента. Если вы скажете тому чуваку который платит за ваше время, что вы не можете работать эффективно пока он болтает по телефону с женой сидя прямо перед вами, вы сэкономите ему кучу денег. Заткните все телефоны, просто выдерните их розетки, это НОРМАЛЬНО. Есть еще много советов, но главное правило гласит:  если что-то отвлекает вас, устраните это. Теперь вы готовы вместе со своим коллегой задать жару в парном программировании.</p>
<p>Но, что бы показать класс, вы должны знать что вы делаете и что делает вещи лучше, а что обрекает парную разработку на провал. Я заметил что существует четыре основных стиля парного программирования. Я пройдусь по ним и дам рекомендации относительно того, какой стиль лучше выбрать  если вы застряли. В паре есть один человек за клавиатурой и один, который никак не использует руки. Первый называется ведущий (driver), второй — штурман (navigator) (как в ралли [ прим.пер.]) Для некоторых стилей это не очень показательные термины, но в случае сомнений я буду использовать именно их. Я рассматриваю случаи, когда пара имеет все необходимые знания для правильного выполнения поставленной задачи, то есть это пара не новичок-новичок. Но я чувствую, что тот же паттерн возникает когда пара пытается приобрести знания в ходе выполнения задачи.</p>
<h4>Стиль 1: «Командующий и Ворчун» или «Надоедливый пассажир, советующий водителю, как надо ехать»</h4>
<p>Заголовок звучит как не слишком приятный способ парной работы, но он очень наглядно демонстрирует как все устроено. Ни смотря ни на что, с помощью этого паттерна может быть достигнут самый позитивный долгосрочный эффект, так что уж потерпите меня.</p>
<p>Наиболее естественным для этого стиля будет если ведущий является новичком в проекте, языке программирования или проблемной области. А штурман в свою очередь более информирован и вероятно будет быстрее, если ему не придется ждать, когда ведущий выполнит то что он говорит. Вы можете заметить как раздражение возрастает когда штурман дает слишком много низкоуровневых инструкций, типа: «Извлеки поле. НЕТ не печатай это, нажми Ctrl-Alt-F! Нет, не там, выбери метод сперва, нет, нет, нет, тебе не нужно выделять каждую букву в отдельности, ты что до сих пор никогда не использовал IDE? Дай мне клавиатуру и я сделаю все это сам.» Веселье наступает когда штурман обнаруживает, что ведущий привык использовать другую операционную систему, раскладку клавиатуры и мышечная память здесь не срабатывает. Он пересаживается за свой собственный стол, одевает наушники и выполняет ту же задачу за 20 минут. Мы можем назвать этот паттерн  Jerk и Moron и никогда больше о нем не говорить, верно? Не верно!</p>
<p>Хитрость здесь в мышечной памяти. Существует тонкая разница, состоящая в хороших привычках, между мышечной памятью и теми вещами которые командующий рассказывает, когда объясняет что он сделал. Ведущий не знает всего этого (пока что) и ему нужно этому научиться. Было бы ужасно неэффективным, если бы штурман написал все сам, а ведущий учился бы на его примере. Потому парная разработка в этом стиле на самом деле высокоэффективный путь передачи именно этого типа неявных знаний.</p>
<p>Когда я учился в колледже у моего соседа по квартире был собственный бизнес и ему нужно было кое-что сделать. К тому же он заработал RSI (травма, возникающая из-за постоянной нагрузки, которая часто встречается у людей, много работающих за клавиатурой [прим.пер.]), и доктор посоветовал ему воздержаться от компьютерной работы. На него навалилось проблем больше чем он мог справиться, и я предложил ему помощь при условии, что он научит меня Smalltalk’у. До того я в  жизни не написал ни строчки на Smalltalk и даже никогда не видел IDE’шки. В общем, во всех отношениях я был довольно таки дерьмовым разработчиком, но мы были отличными приятелями и мне всего лишь нужно было нажимать кнопки какие мне скажут. Вы наверное подумали: что в этом сложного?</p>
<p>За первый час мой друг перешел от объяснений того как вообще работает Smalltalk, до проклятий через то, что приходится постоянно кричать комбинации клавиш мне над ухом. Тремя часами позже он потягивал эспрессо пока я реализовывал несколько методов. Во второй половине дня он уже отходил в туалет, пока я заканчивал тесты. А под конец дня он просто рисовал все на доске и я реализовывал это, в то время как он изредка давал мне советы какие имена присваивать переменным или как использовать дебагер вместо чтения кода в поисках ошибки. Это было довольно приятно и мне казалось что я и сам мог бы писать код на Smalltalk. Когда я попробовал на следующий день, я был полностью потерян, но по крайней мере мог делать то что говорил мой штурман, не доставая его, как за день до этого. Урок состоит в том, что вы можете сделать кого-то в вашей команде более эффективным всего за один день, если вам это понадобиться. Да, у вас будет тяжелый день, но если вы сделаете это осознавая отдачу от такой инвестиции, то эта затея выглядит стоящей. В конце дня вы и сами не заметите как уйдете от этого стиля, в то время как вещи будут становиться все лучше и лучше.</p>
<h4>Стиль 2: «Ралли»</h4>
<p>Это стиль которому предшествовала метафора водителя и штурмана. В ралли и водитель и штурман уже бывали там где они находятся, знают друг-друга очень хорошо и понимают друг-друга с полуслова. В машине ралли вы можете услышать что-то типа: «Резко на право. 3», «Полный вперед», «Влево 6». Если штурман пропустит инструкцию, водитель просто в любом случае повернет направо, а штурман продолжит со следующего указания. Там есть право на ошибку, но вероятность аварии сильно уменьшается благодаря присутствию штурмана.</p>
<p>В программировании люди говорят о некой  «зоне» или «потоке», что бы описать состояние абсолютной концентрации или даже транса, который ассоциируется с высокой производительностью. В ралли-стиле парного программирования в поток входят двое. Стает сложнее побеспокоить их потому что они говорят на языке понятном только им и игнорируют все кроме кода на экране. Чувства какие я испытывал в этом состоянии схожи с теми какие испытываешь играя в некую игру, будучи ребенком, где мир строиться путем обмена фантазиями, а история существует в головах нескольких детей. В этом случае нужно очень мало общения, что бы поддерживать все вещи в согласованном состоянии. Обмен сюжетной линией с другими действительно помогает, так как вещи которые не вписываются в нее (например, ошибки компиляции), будут отфильтрованы с меньшим нарушением процесса в целом.</p>
<p>Иногда люди рассказывали, что штурман предотвращает выход водителя из потока, но на моей практике разрыв связи (который вы должны были бы сделать в последствии) делает штурмана бесполезным на несколько секунд, так что лучше игнорировать отвлекающие факторы вместе. Если вы находитесь на очень знакомой территории (как в случае с ралли) это будет работать, но в случае программного обеспечения обычно происходит обнаружение все новых и новых проблем в процессе разработки. Если вы вне этого, то очень сложно это уловить. Как вы уже догадались это стиль парного программирования к которому вы придете в последствии, а пока вот несколько советов, что бы использовать их когда вы найдете правильный баланс.</p>
<p>Как водитель вы должны:</p>
<div id="_mcePaste">
<ul>
<li>Думать в слух:«Когда я решу проблему A, я не буду проводить рефаторинг B, пока не буду уверен, что все работает». «Я запускаю тесты прежде чем исправить свойства файла, мы можем сделать это позже».</li>
<li>Озвучивать ваши ожидания: «Этот тест сейчас успешно пройдет». «В этом макете у меня будет три вызова потому что я упростил X».</li>
<li>Спрашивать очевидное: «Что у нас дальше, ах да, нам все еще нужно исправить свойства файла». «Мы можем сделать коммит?».</li>
<li>Делиться информацией, предупреждать: «Когда мы закончим это, мы увидим проблемы в модуле A и нам тоже нужно будет их починить». А потом доверьтесь вашему штурману, давая позаботиться о том, что вы сделаете все это и так быстро как только можете.</li>
</ul>
</div>
<p>Как штурман вы должны:</p>
<div id="_mcePaste">
<ul>
<li>следить за «сюжетной линией» и остановить ведущего если он делает что-то, что не имеет смысла</li>
<li>активно подтверждать или опровергать допущения</li>
<li>требовать аргументы, если ведущий принимает не очевидные решения: «Почему ты делаешь это именно так, если изменив вот это свойство мы уже заставим все работать, не так ли?»</li>
<li>искать оптимальное решение: «Если исправить этот тест сейчас, то мы сперва можем сделать коммит и все тесты будут зелеными»</li>
<li>думать о будущем. Если ведущий предупреждает вас о чем-то, он может не заметить тупика. Думайте что будет через несколько секунд и скажите ему, если вы думаете что таким образом можно решить проблему.</li>
<li>находить выход прежде чем вы застопоритесть. Это самое сложное. Даже если вы не уверены что движетесь в тупик, все равно лучше иметь на примете альтернативные пути решения. Это поможет вам сэкономить время, когда придется возвращаться назад.</li>
</ul>
</div>
<h4>Стиль 3: «Экскурсия»</h4>
<p>Этот стиль возникает когда штурман теряет концентрацию и водитель в целом показывает ему что к чему. При этом вы все еще можете переключиться назад к ралли-стилю, но это потребует дополнительных усилий с обеих сторон. Убедитесь что вы оба в курсе всей «игры», начните «экскурсию» придерживаясь лучших примеров поведения описанных выше и скоро вы увидите, что вы снова работаете в стиле ралли. Если же это не произошло в течении максимум десяти минут, поменяться в паре (вы можете заменить ведущего, который, вероятно, начнет действовать в стиле Ворчун-Коммандир). Если же ничего не помогает, просто попробуйте поработать некоторое время в паре с другим членом команды.</p>
<h4>Стиль 4: «Разобщенная пара» или «Спящий штурман»</h4>
<p>Это наиболее часто используемый и наименее полезный тип парной разработки. Двое разработчиков начинают с того что обсуждают дизайн, проходятся по коду, и когда ведущий понимает направление, штурман выключает мозг. Ведущий знает что он делает, а благодаря тому что штурман не отвлекает его, он молчит и работает быстрее. Штурман просто смотрит что ведущий делает все правильно и решает не тормозить его, а дать больше пространства и самому немного посмотреть в окно. Если вы делаете это в распределенных командах, вы можете посмотреть пропущенные письма пока вы в роли навигатора или немного послушать музыку. Или покодить что-нибудь самостоятельно. Если вы так делаете, то вы не воспринимаете парное программирование всерьез и оно не принесет чего-то полезного вам или вашей команде.</p>
<p>Держите в сознании этот стиль когда занимаетесь парной разработкой. Когда это происходит, хороши любые изменения. Как водитель вы можете отменить все изменения и посмотреть заметит ли это штурман. Как штурман, вы можете встать и пойти выпить кофе. Просто признайте, что вы отключились от процесса и что-то необходимо менять.</p>
<p>Это четыре основных стиля парного программирования, которые я встречал и активно пробовал как в офисных, так и в распределенных командах. Прежде чем я перейду к каким-то вещам более важным в распределенном парном программировании, я хотел бы вернуться к тому мнению, что парная разработка может быть утомительной. Такое программирование может быть более утомительным, так как вы работаете больше. На самом деле даже гораздо сложнее, в моем случае. Проблема в том, что довольно сложно помнить о том, что мозг нуждается в множестве вещей для эффективной работы.</p>
<p>Вот некоторые из них в порядке значимости:</p>
<div id="_mcePaste">
<ul>
<li>маленькие перерывы как минимум каждые 45 минут (а лучше каждые 20)</li>
<li>вода (большинство головных болей вызваны обезвоживанием)</li>
<li>глюкоза (лучше потреблять жиры и протеины какие гораздо эффективнее чем сахар, но есть их нужно заведомо, до работы)</li>
<li>нормальный сон</li>
<li>кофеин (кофе действительно работает и я слышал к тому же он полезен для здоровья)</li>
</ul>
</div>
<p>Главная проблема парной работы это то, что люди (особенно разработчики) делают вид, что они машины и им не нужен перерыв. Хороший штурман предложит перерыв после каждого коммита и убедиться что коммиты происходят каждые пол часа. Если вы работаете в одном офисе, вы можете даже поговорить у кофеварки (где можно заодно выпить стакан воды или съесть бутерброд, если хочется), про то, как продвигаются дела, сколько осталось до коммита и т.д.  Вы так же должны помнить, что большинство людей может выдержать не более шести часов напряженной умственной работы в день. Вы можете расширить этот лимит за счет занятий спортом, здорового питания, но это нормально отойти от работы после восьми часов. Просто идите домой&#8230;</p>
<p style="text-align: center;"><a href="http://smileart.in.ua/wp-content/uploads/2010/08/6003-Pair_Programmin-sfull.png"><img class="aligncenter size-full wp-image-90" title="6003-Pair_Programmin-sfull" alt="" src="http://smileart.in.ua/wp-content/uploads/2010/08/6003-Pair_Programmin-sfull.png" width="432" height="258" srcset="http://smileart.in.ua/wp-content/uploads/2010/08/6003-Pair_Programmin-sfull.png 720w, http://smileart.in.ua/wp-content/uploads/2010/08/6003-Pair_Programmin-sfull-300x179.png 300w" sizes="(max-width: 432px) 100vw, 432px" /></a></p>
<h4>Распределенная парная разработка</h4>
<p>Удаленное парное программирование сложнее чем разработка в одном офисе, но и имеет свои преимущества. Первое правило распределенной разработки это не зацикливаться на инструментах. Самое клевое, это то, что наиболее сложной частью удаленной работы как раз являются технические проблемы, но их можно решить. Используете ли вы GNU screen или какой либо гораздо более продвинутый инструмент, убедитесь что ваш приятель получает всю необходимую информацию что бы видеть, что все в порядке. Первое что вам необходимо сделать, это купить гарнитуру. Не продешевите на этом, купите хороший шумоподавляющий микрофон и что-то что вам удобно будет носить. Я большой фан гарнитур Sennheiser, но говорят есть skype-гарнитура которая подавляет шумы даже еще лучше. Я не большой эксперт в этом вопросе, но на это определенно стоит потратить какое-то время и деньги.</p>
<p>Проведите немного времени что бы получше узнать другого разработчика. Видео конференции действительно помогают в этом и я обычно начинаю работу небольшого видео чата. Легко забыть на сколько больше можно узнать просто шутя у кофе машины, но  очевидно вы не можете встретить разработчика с другого конца света у кофеварки. Убедитесь что вы спросили его о графике, планах на обед и т.д. Если кто-то работает с вами в паре сразу после вашего обеда, при этом еще не поев, это проявится в определенный момент.</p>
<p>Стремитесь к более коротким итерациям, так как смена ведущего не столь проста. Я опробовал множество путей предоставления управления клавиатурой по сети и все они полный отстой, даже не заморачивайтесь с этим. Задержка реакции по сети добьет вас уже через 20 секунд. Если у вас действительно не получается сделать коммит раз в тридцать минут, проще сделать патч и как угодно переслать его, так как мучения с клавиатурой займут все таки гораздо больше времени.</p>
<p>Замечательным в удаленном парном программировании является то, что один раз настроив утилиты вам больше не придется беспокоиться о перетасовке на рабочем месте и вытягивать шею, что бы увидеть что там на экране у этого парня. Вы можете просто усесться удобно на своем стуле и слышать второго разработчика так же как будто он шепчет вам на ухо, без выдыхания феромонов, разумеется. Я чувствую себя неудобно с другими людьми в моем личном пространстве, и я не так уж невнимателен, что бы не заметить того же за другими разработчиками. Удаленное парное программирование позаботиться о том, что бы устранить все негативные социальные издержки.</p>
<p>То как работает парность всегда различается для разных пар. Классификация стилей парной разработки может быть полезна что бы обсудить что происходит, ведь не всегда просто выбрать подходящий стиль и придерживаться его.</p>
<p>Для примера я должен рассказать вам о моем любимом штурмане и водителе. Мой любимый штурман выходец из Индии. Когда я работаю в паре с этим парнем я приблизительно раза в три более производителен чем обычно.</p>
<p>Хитрость заключается в том, что я делаю все как обычно, но если что-то вдруг идет не так, он не даст мне двигаться в ложном направлении. Это похоже на кодинг с маленькой музой на вашем плече. Как вы уже наверное догадались, это стиль «Ралли» со мной за баранкой. В один прекрасный день мы сменили ведущего. Это было ужасно, мне постоянно приходилось говорить ему какие кнопки нажимать, как называть поля и все закончилось тем, что нам пришлось заморозить проект. Мой приятель сказал, что не понимает что происходит, но в паре со мной он определенно гораздо медленнее чем сам по себе. Мы поменялись обратно, и дело пошло как по накатанной в следующие 4 часа (с перерывами, разумеется).</p>
<p>Дело в том, что вы не обязаны делать это определенным образом, применяйте тот стиль который работает и попробуйте разобраться почему это так и что можно сделать что бы он работал еще лучше.</p>
<p>Мой любимый водитель прямолинейный парень из Голландии. Он быстр «за рулем» и если он не улавливает идею я пытаюсь убедить его написать что либо, что бы просто попробовать или это будет работать. Когда он понимает о чем я бормочу, он делает это быстрее чем если бы я сам набирал этот код. Поэтому у меня просто не остается времени что бы разочароваться в вещах так как если бы я написал их за своей клавиатурой. И это дает мне время, что бы продумать пути отхода или заметить скрытые ловушки. Когда я читал ему лекцию на тему смены его дефолтных настроек Eclipse, он придумал кучу других изменений и настроек шаблонов, которые оказались крайне полезными. Это идеальная история о переходе от стиля под номером 1 к стилю 2 и приближению к третьему стилю. Теперь когда мы работаем в паре мне нужно убеждаться что я постоянно остаюсь в курсе всего что происходит. А это именно тот дух соревнования который заставляет штурмана оставаться продуктивным.</p>
<p>Вот в общем-то и все о ралли-стиле парной разработки. Если вы обнаружили себя надоедливым пассажиром с заднего сидения, попробуйте превратить это в полезный опыт, обучение, какое трансформируется в итоге в стиль «Ралли». Если вы оказались на месте экскурсовода, постарайтесь как можно больше вовлечь штурмана в «сюжетную линию». Когда вы потеряли нить, остановитесь и поговорите об этом. Смена ролей как правило полезна, но только в том случае, если она не переключит вас с первого стиля на четвертый. В случае сомнений, сделайте штурманом вашего самого опытного разработчика. Но самое главное, попытайтесь сделать парную работу естественным и приятным опытом. И дайте мне знать как все продвигается!</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</p>
<p><span style="color: #808080;"><em>http://translated.by/you/practical-styles-of-pair-programming/into-ru/trans/ © Iwein Fuld</em></span></p>
<p><span style="color: #808080;"><em>Оригинал (английский): Practical Styles of Pair Programming</em></span></p>
<p><span style="color: #808080;"><em>Перевод: © smileart.in.ua на translated.by</em></span></p>
<p><span style="font-size: small;"><span style="font-family: Georgia, 'Times New Roman', 'Bitstream Charter', Times, serif; line-height: 19px; white-space: normal; font-size: 13px;">Если у вас появились серьезные замечания по поводу перевода, не стесняйтесь, пишите мне лично и я включу вас в группу редакторов текста на translated.by <img src="http://smileart.in.ua/wp-includes/images/smilies/Connie_twiddle-thumbs.gif" alt=":intelligent:" class="wp-smiley" style="height: 1em; max-height: 1em;" /> </span></span></p>
]]></content:encoded>
			<wfw:commentRss>http://smileart.in.ua/pair_programming/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>The Pomodoro Technique™</title>
		<link>http://smileart.in.ua/pomodoro</link>
		<comments>http://smileart.in.ua/pomodoro#respond</comments>
		<pubDate>Sat, 31 Jul 2010 17:16:26 +0000</pubDate>
		<dc:creator><![CDATA[Smile @rT]]></dc:creator>
				<category><![CDATA[Работа и труд]]></category>
		<category><![CDATA[project management]]></category>
		<category><![CDATA[время]]></category>
		<category><![CDATA[метод]]></category>
		<category><![CDATA[продуктивность]]></category>
		<category><![CDATA[работа]]></category>

		<guid isPermaLink="false">http://smileart.in.ua/?p=53</guid>
		<description><![CDATA[Добываем энергию из помидоров :)]]></description>
				<content:encoded><![CDATA[<div>
<h1><a href="http://smileart.in.ua/wp-content/uploads/2010/07/940x600_pomodoro.png"><img class="aligncenter size-full wp-image-49" alt="940x600_pomodoro" src="http://smileart.in.ua/wp-content/uploads/2010/07/940x600_pomodoro.png" width="940" height="600" srcset="http://smileart.in.ua/wp-content/uploads/2010/07/940x600_pomodoro.png 940w, http://smileart.in.ua/wp-content/uploads/2010/07/940x600_pomodoro-300x191.png 300w" sizes="(max-width: 940px) 100vw, 940px" /></a></h1>
<h1 id="internal-source-marker_0.34235271345824003"><span style="font-weight: normal; font-size: 13px;">Нет, pomodoro technique это не радио-конструктор на кухонном столе и добыча электричества из овощей. На самом деле это методика работы, которая позволяет сконцентрироваться на решении поставленной задачи без отвлечения на несущественные вещи.</span></h1>
<p><span style="font-weight: normal; font-size: 13px;"><span id="more-53"></span></span></p>
<h1><span style="font-weight: normal; font-size: 13px;">Те кто в своей работе использует голову, речь конечно не о боксерах, наверняка знают как сложно сконцентрироваться на чем-то одном, особенно если попадается рутинная задача без капли настоящего созидания. Тут ты ломаешь голову над очередным багом или выдумываешь витиеватую фразу для новой статьи, а тут обнаруживаешь себя читающим очередное сообщение в IM, разгребающим почту или сидящим в глубоком трансе глядя в окно. Все это отвлекающие факторы. Разговоры коллег, перекуры в разгар рабочего дня, телефонные звонки, газонокосилка под самым окном, порой кажется что череде этих вещей нет конца.</span></h1>
<p><span style="font-weight: normal; font-size: 13px;"><br />
</span></p>
<p>«Если в среднем входящий телефонный звонок отнимает пять минут, а ваш период повторного входа в поток – пятнадцать минут, общая стоимость такого звонка, исчисляемая в потерянном времени потока (непосредственной работы), – двадцать минут. Десяток телефонных звонков израсходуют половину рабочего дня. Ещё десяток других вмешательств, и вот уже рабочий день пропал. Именно поэтому «С девяти до пяти здесь совершенно невозможно работать.» (Том Демарко, Тимоти Листер «Peopleware: productive projects and teams»)</p>
<p>В общем, без лишнего разглагольствования понятно, что секрет продуктивного умственного труда заключается в мотивации и концентрации. Оба эти фактора сильно связаны друг с другом. Бывает и так, что не хочется, а все равно надо, тогда сосредоточиться еще труднее. Надзирателя каждому за спиной не поставишь, да и такая затея весьма сомнительна, ведь работать под наблюдением часто еще менее эффективно. Тут на помощь и приходит The Pomodoro Technique™ &#8212; метод управления временем и time tracking&#8217;а. Суть метода заключается в постановке задач, когда большие задачи разбиваются на подзадачи и решаются итерациями длительностью в 25ть минут с пятиминутным отдыхом в конце каждого такого пункта, который называется помидором. Потом вы берете следующую задачу из вашего to-do и все повторяется опять. В данном случае вашим надзирателем становиться таймер, который заводиться на соответствующие двадцать пять минут каждый раз когда вы садитесь выполнять очередную задачу. Он подстегивает вас соображать быстрее, он тикает, напоминая вам о необходимости сосредоточиться на работе без отвлечения на что-то постороннее и указывает вашим коллегам или семье, что вас лучше не трогать пока эта штука не прозвенит.</p>
<p>Для лучшего понимания можно посмотреть это пятиминутное видео:</p>
<p style="text-align: center;"><object width="560" height="340" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/cH-z5kmVhzU&amp;hl=ru_RU&amp;fs=1?color1=0x3a3a3a&amp;color2=0x999999" /><param name="allowfullscreen" value="true" /><embed width="560" height="340" type="application/x-shockwave-flash" src="http://www.youtube.com/v/cH-z5kmVhzU&amp;hl=ru_RU&amp;fs=1?color1=0x3a3a3a&amp;color2=0x999999" allowFullScreen="true" allowscriptaccess="always" allowfullscreen="true" /></object></p>
<p>Те кто читал того же Тома Демарко возразят, напоминая о состоянии потока вхождение в который занимает 15 минут.</p>
<p>«Поток – это состояние глубокого, почти медитативного погружения в работу. В этом состоянии человек испытывает лёгкое чувство эйфории и не замечает течения времени: «Я начал работать. Когда оторвался, прошло уже три часа». Человек не прикладывает сознательных усилий, потому что работа, кажется, идёт потоком.»</p>
<p>На практике же оказывается что чувство эйфории от выполненной задачи (хоть и не большой), в конце очередного таймера, действует гораздо более мотивирующе чем чувство эйфории от того, что вы как зомби проработали три часа к ряду. Кроме того за 25 минут мозг не успевает переутомиться на столько, что вам больше не захочется браться за новые задачи.</p>
<p>В работе, например, программистов поток может не получиться не только от того, что кто-то или что-то отвлекает от работы, но и потому что работа банально не ладиться. Очень часто можно встретиться с проблемой которая никак не хочет решаться. Сколько ты над ней ни ломай голову, а заходишь в еще больший тупик и еще больше раздражаешься. В таких случаях помогает принцип непротивления проблеме, что-то вроде «Ляг поспи и все пройдет». Если подобную проблему оставить в покое, иногда даже на пять минут, то вы взглянув на свой код со свежей головой часто сможете понять причину поломки. Выгода очевидна — лучше прервать поток, но решить задачу, чем беситься от того что ничего не выходит сидя в «потоке». В Pomodoro Technique таких ситуаций будет на много меньше, так как ваш мозг остается постоянно более свежим.</p>
<p>Второй замечательный фактор который использует данная методика, это тайм трекинг. Мотивирующую силу статистики заметили давно, потому на рынке полно различных систем для учета рабочего времени. В некоторых компаниях такой учет делают даже обязательным, но лучше бы это были компании где понимают что работать 8 часов выполняя одну и ту же задачу просто невозможно. Так или иначе статистика о проделанной работе в день, неделю, месяц, даже если она не слишком приятная, в конечном итоге заставляет людей работать еще лучше и больше, что бы соревноваться с самим собой и коллегами. В данном случае мы имеем отличную единицу измерения работы — помидор. Два помидора &#8212; час непрерывного рабочего времени с 10ю минутами отдыха или две подзадачи и два пункта из списка запланированных дел; сумма помидоров в неделю и месяц — показатель проделанной работы и мотиватор.</p>
<p>Правильно научившись планировать свое рабочее время и разбивать большИе задачи на ряд мелких, вы получите больший контроль над текущим положением дел. Глядя на то сколько помидоров вам еще нужно выполнить за сегодня или в этом месяце, вы можете легко прикинуть как продвигается проект или сколько времени вы можете посвятить отдыху, образованию или семье.</p>
<p>Если сравнить The Pomodoro Technique с методикой шахматных часов, которая последнее время тоже становиться популярна, то мы увидим, что преимущество все же на стороне кухонного таймера. Дело в том, что по методике шахматных часов вы просто должны честно замерять время непрерывной работы и время простоя, делая на основе такого трекинга соответствующие выводы. С другой стороны, со временем вы заметите, что желая повысить свои результаты вы начинаете обманывать даже самих себя, то тут то там мухлюя и преувеличивая достижения. На самом же деле, не стоит гнаться за фантастическим результатом, делайте столько сколько можете, при этом видя сколько нужно выполнить задач и затратить на них времени. Pomodoro Technique ориентирована в первую очередь не на время а на задачи, потому вы можете объективно оценивать происходящее по количеству реально выполненной работы, а не просто по затраченным на нее часам. Так как помидоры не делимы, не завершившийся таймер не вноситься в список дел рядом с задачей, начинаясь заново.</p>
<p><a href="http://smileart.in.ua/wp-content/uploads/2010/07/what_to_do.jpg"><img class="aligncenter size-full wp-image-68" title="what_to_do" alt="C чего начать" src="http://smileart.in.ua/wp-content/uploads/2010/07/what_to_do.jpg" width="550" height="371" srcset="http://smileart.in.ua/wp-content/uploads/2010/07/what_to_do.jpg 550w, http://smileart.in.ua/wp-content/uploads/2010/07/what_to_do-300x202.jpg 300w" sizes="(max-width: 550px) 100vw, 550px" /></a></p>
<p>Итак, на выходе у нас получился целый букет преимуществ &#8212; повышенная концентрация, а соответственно лучшее качество выполненной работы, щадящий механизм нагрузок мозга и зрения с постоянными перерывами, меньший шанс застопориться в решении сложной задачи или в поиске ошибки, объективная статистика в конце каждого дня или недели, сигнальный маячок для ваших коллег, вроде того, который вешают на отельных дверях с надписью «Не беспокоить».</p>
<p>Лично я советую купить настоящий физический таймер для применения этой методики, так как он постоянно находиться перед глазами, а не теряется среди кучи окон как обычно бывает в случае с программными таймерами. Кроме того, его тиканье нельзя отключить, каков бы сильный не был соблазн сделать это. Но для начала, что бы попробовать, да и в целях экономии, можно использовать такой замечательный таймер как <a href="http://www.focusboosterapp.com/">Focus booster</a>, который благодаря AIR работает на любой платформе и даже доступен в web варианте. Для составления списка задач отлично подойдут любые привычные инструменты или GTD системы. Для учета же статистики, лично я, использую систему <a href="http://42goals.com/">42goals</a>, которая позволяет проставлять нужное количество помидор прямо на календаре там же задавая план на определенный срок. Кроме этого существует множество таймеров на любой вкус в том числе и для iPhone или Android.</p>
<p>Для подробного ознакомления с этой техникой можно почитать:</p>
<p>* <a href="http://www.pomodorotechnique.com">Официальный сайт The Pomodoro Technique </a><br />
* <a href="http://lifehacker.ru/2009/06/09/izmerjajjte-zadachi-v-pomidorah-ehffektivnoe-planirovanie-proshhe-chem-vy-dumaete/">Cтатью на Lifehacker.ru</a><br />
* Официальную книгу <a href="http://www.pomodorotechnique.com/resources.html">The Pomodoro Technique™ Book</a> от самого Francesco Cirillo<br />
* <a href="http://en.wikipedia.org/wiki/Pomodoro_Technique">Статью английской Википедии </a>с полезными ссылками в конце</p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://smileart.in.ua/pomodoro/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hello world!</title>
		<link>http://smileart.in.ua/hello</link>
		<comments>http://smileart.in.ua/hello#comments</comments>
		<pubDate>Sun, 18 Jul 2010 01:00:45 +0000</pubDate>
		<dc:creator><![CDATA[Smile @rT]]></dc:creator>
				<category><![CDATA[События]]></category>
		<category><![CDATA[блог]]></category>
		<category><![CDATA[интернет]]></category>
		<category><![CDATA[личное]]></category>
		<category><![CDATA[событие]]></category>

		<guid isPermaLink="false">http://smileart.in.ua/?p=1</guid>
		<description><![CDATA[Ну вот, спустя долгое-долгое время после li.ru, завел себе отдельный уютный бложек.]]></description>
				<content:encoded><![CDATA[<p style="text-align: justify;"><a href="http://smileart.in.ua/wp-content/uploads/2010/07/940x600_welcome.png"><img class="aligncenter size-full wp-image-7" alt="940x600_welcome" src="http://smileart.in.ua/wp-content/uploads/2010/07/940x600_welcome.png" width="940" height="600" srcset="http://smileart.in.ua/wp-content/uploads/2010/07/940x600_welcome.png 940w, http://smileart.in.ua/wp-content/uploads/2010/07/940x600_welcome-300x191.png 300w" sizes="(max-width: 940px) 100vw, 940px" /></a></p>
<p style="text-align: justify;">Ну вот, спустя долгое-долгое время после <a href="http://www.liveinternet.ru/users/smile_art" target="_blank">li.ru</a>, завел себе отдельный уютный бложек. <img src="http://smileart.in.ua/wp-includes/images/smilies/smile.gif" alt=":smile:" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
<p style="text-align: justify;">Всегда хотелось создать standalone блог, но раньше не доходили до этого руки. Теперь вот выделил немного времени и надеюсь не зря. В этом блоге я планирую писать различные заметки на программистскую, бытовую и тому подобную тематику. То есть, как говориться, блог обо всем на свете.</p>
<p style="text-align: justify;"><span id="more-1"></span></p>
<p style="text-align: justify;">Когда-то подобные места назывались «хомяками», так что можете считать, если вам это нравиться больше, что это не просто блог, а мой «хомяк». Как и у Хрюнделя из «Масяни», мне предстоит еще многое настроить и усовершенствовать. Да-да, все эти «-ому, -ему, -ями»© <img src="http://smileart.in.ua/wp-includes/images/smilies/biggrin.gif" alt=":haha:" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Но все это со временем, а пока, прошу любить и жаловать.</p>
<p style="text-align: justify;">— Hello world!</p>
<p style="text-align: justify;">Кроме того вам может показаться интересным <a href="/about" target="_self">About</a>, где я расскажу, что стоит и чего не стоит ожидать от этого «очередного» <img src="http://smileart.in.ua/wp-includes/images/smilies/pleasantry.gif" alt=":qoute:" class="wp-smiley" style="height: 1em; max-height: 1em;" /> блога, а так же о том, где еще меня можно найти и за(-френдить/-фолловить) в сети.</p>
]]></content:encoded>
			<wfw:commentRss>http://smileart.in.ua/hello/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>
