<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Reflection Of A Life, v3</title>
	<atom:link href="http://roal3.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://roal3.wordpress.com</link>
	<description>Третья реинкарнация</description>
	<lastBuildDate>Mon, 19 Sep 2011 10:39:41 +0000</lastBuildDate>
	<language>ru</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='roal3.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Reflection Of A Life, v3</title>
		<link>http://roal3.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://roal3.wordpress.com/osd.xml" title="Reflection Of A Life, v3" />
	<atom:link rel='hub' href='http://roal3.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Мимикрия ложноногих змей</title>
		<link>http://roal3.wordpress.com/2011/05/03/mimicry-python/</link>
		<comments>http://roal3.wordpress.com/2011/05/03/mimicry-python/#comments</comments>
		<pubDate>Tue, 03 May 2011 13:46:24 +0000</pubDate>
		<dc:creator>Saudade</dc:creator>
				<category><![CDATA[прочее]]></category>
		<category><![CDATA[кодинг]]></category>
		<category><![CDATA[кривые руки]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[shedskin]]></category>

		<guid isPermaLink="false">http://roal3.wordpress.com/?p=568</guid>
		<description><![CDATA[Дано некоторое количество python-кода. Требуется: изобрести велосипед 1. Обеспечить портабельность и запуск на чистой машине. 1.1 Постараться уменьшить размер файла. 1.2. Запуск не должен занимать много времени, ибо жалобы от пользователей доисторических консервных банок. 2. Мультиплатформенность, но win-сборки пока немного приоритетнее. 3. Ситуация из первых двух пунктов, но обеспечить работоспособность модуля pygame. Итак, пункт первый легко [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=roal3.wordpress.com&amp;blog=9181282&amp;post=568&amp;subd=roal3&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Дано некоторое количество python-кода. Требуется: <del datetime="2011-05-03T13:17:52+00:00">изобрести велосипед</del><br />
<strong>1.</strong> Обеспечить портабельность и запуск на чистой машине.<br />
<strong>1.1</strong> Постараться уменьшить размер файла.<br />
<strong>1.2.</strong> Запуск не должен занимать много времени, ибо жалобы от пользователей доисторических консервных банок.<br />
<strong>2.</strong> Мультиплатформенность, но win-сборки пока немного приоритетнее.<br />
<strong>3.</strong> Ситуация из первых двух пунктов, но обеспечить работоспособность модуля <em>pygame</em>.</p>
<p>Итак, пункт первый легко решается &laquo;в лоб&raquo; &#8211; используем всем известный <em>Pyinstaller</em>, ну или py2exe, или cx_freeze, по вкусу. Понятно, что &laquo;проблемы&raquo; вылезут в первую очередь у виндопользовалей, *nix-образные оси даже не потребуют таких ухищрений. К примеру, на той же <em>nokia n800</em> питон с пайгеймом бегают только так.<br />
[Далее, если не указано иное, имеются в виду windows-сборки]<br />
Указанное выше решение в лоб: весит многовато (4-5 МБ) и не то, чтобы реактивное <del datetime="2011-05-03T13:17:52+00:00"> и в зависимости от магнитных искажений на поясе Койпера непредсказуемо меняет время запуска</del>, хотя это понятно, никаких компиляций же Pyinstaller не делает, происходит промежуточная распаковка и та самая интерпретация.</p>
<p><strong>Попытка решения №1 &#8211; использование Cython</strong><br />
В теории, <a href="http://cython.org">Cython</a> должен помочь решить проблему &#8211; он просто переводит код в си. Можно получить динамическую библиотеку и обратиться к ней (в теории). На практике &#8211; да, <strong>blabla.so</strong> появляется, легко подрубается в опять же питонокод через</p>
<blockquote><p>import blabla</p></blockquote>
<p>Но это половинчатое решение. Конечно, с помощью такого можно ускорить некоторые участки кода, но&#8230;  Попытка наговнокодить уже на чистых сях запускалку для этой blabla.so (в которой лежит допустим вся бывшая питоно-программа) приводит к разным неинтересным надписям вида</p>
<blockquote><p>undefined symbol: PyExc_ImportError</p></blockquote>
<p>[Тут абзац матом про то, как в принципе вообще по-идиотски сделана архитектура сей по работе с библиотеками и что моё кунг-фу гугления не помогло в решении.]<br />
Кстати, про то, что Cython переведёт pygame в .so можно и не мечтать, он и дефолтовую поставку не обрабатывает как надо.</p>
<p><strong>Попытка решения №2 &#8211; использование tinypy (и tinypy2)</strong><br />
Описание проекта <a href="http://tinypy.org">tinypy</a>  поначалу настраивает на положительный лад. На деле &#8211; и пример из руководства не особенно рабочий, и всё остальное примерно на том же уровне, что и у Cython. Хотя в блоге автора tinypy <a href="http://www.philhassey.com/blog/2009/12/01/restricted-tinypy-to-c-compiler">имеется</a>  <a href="http://www.philhassey.com/blog/2010/01/05/seahorse-adventures-loading-tgas-and-more">история</a> о проталкивании pygame-based кода в ЭпплСтор (используя tinypy2). Но svn, где лежит этот волшебный tinypy2 то ли недоступен, то ли автор перестал играть в opensource.</p>
<p><strong>Попытка решения №3 &#8211; использование ShedSkin</strong><br />
<a href="http://code.google.com/p/shedskin">ShedSkin</a>, наверно, можно назвать наиболее зрелым решением из трёх. По крайней мере, python-искодники без примесей посторонних модулей конвертнулись в <em>cpp</em> и даже собрались под обе ОСи. (Правда c разницей в размере &#8211; 232KB versus 357KB+4dll`s = 1,5 MB)<br />
Поддержка pygame же, теоретически объявлена, но практика такая: собирается модуль, но pygame-описывающий кусок должен тем не менее быть питонокодом. Т.е. опять половинчатое решение.<br />
Небольшим бонусом, но никак не скрашивающим недоработки по части pygame, выступает умение ShedSkin прокручивать модули <em>math</em> и <em>random</em>. Их конвертирование и засовывание в динамическую библиотеку (или исполняемый файл) в немного приближенных к реальности синтетических тестах, проходит.<br />
<strong>Как итог</strong>, все три поставленных в начале поста пункта на 100% решить пока не удалось. Половинчатые решения на то и называются половинчатыми. Хотя возможность преобразовать некоторые куски на чистом питоне &#8211; не самое плохое умение. В простейшем случае команд</p>
<blockquote><p>shedskin blabla.py<br />
make</p></blockquote>
<p>или</p>
<blockquote><p>shedskin -e blabla.py<br />
make</p></blockquote>
<p>если нужна библиотека, а не исполняемый файл, достаточно. Про шаги в сторону и что из этого выйдет вполне понятно. Хотя тут скорее ситуация не с прострелянными ногами, а с забитым воском дулом.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/roal3.wordpress.com/568/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/roal3.wordpress.com/568/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/roal3.wordpress.com/568/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/roal3.wordpress.com/568/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/roal3.wordpress.com/568/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/roal3.wordpress.com/568/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/roal3.wordpress.com/568/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/roal3.wordpress.com/568/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/roal3.wordpress.com/568/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/roal3.wordpress.com/568/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/roal3.wordpress.com/568/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/roal3.wordpress.com/568/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/roal3.wordpress.com/568/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/roal3.wordpress.com/568/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=roal3.wordpress.com&amp;blog=9181282&amp;post=568&amp;subd=roal3&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://roal3.wordpress.com/2011/05/03/mimicry-python/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Scorpion</media:title>
		</media:content>
	</item>
		<item>
		<title>Настройка build system в SublimeText 2</title>
		<link>http://roal3.wordpress.com/2011/04/01/build-system-in-sublimetext2/</link>
		<comments>http://roal3.wordpress.com/2011/04/01/build-system-in-sublimetext2/#comments</comments>
		<pubDate>Fri, 01 Apr 2011 12:27:56 +0000</pubDate>
		<dc:creator>Saudade</dc:creator>
				<category><![CDATA[прочее]]></category>
		<category><![CDATA[IT]]></category>
		<category><![CDATA[софт]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[SublimeText]]></category>

		<guid isPermaLink="false">http://roal3.wordpress.com/?p=559</guid>
		<description><![CDATA[Пост будет похож на мемуары Капитана Очевидность, но тем не менее. Как известно, активно выходящие альфа-сборки второй версии редактора SublimeText, во всём превосходят предыдущую стабильную версию, кроме одного: если у вас кривые руки и убитая система, где переменные %PATH% часто забываются, стираются и вообще плохо сохраняются для дальнейшего использования, то магический хоткей F7 &#8211; запуск [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=roal3.wordpress.com&amp;blog=9181282&amp;post=559&amp;subd=roal3&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Пост будет похож на мемуары Капитана Очевидность, но тем не менее.<br />
Как известно, активно выходящие альфа-сборки второй версии редактора <strong>SublimeText</strong>, во всём превосходят предыдущую стабильную версию, кроме одного:<br />
если у вас кривые руки и убитая система, где переменные %PATH% часто забываются, стираются и вообще плохо сохраняются для дальнейшего использования, то магический хоткей F7 &#8211; запуск текущего файла  &#8211; (в ST1 за это отвечает Ctrl+F7) работать не будет. (В ST 1.4 тем не менее, работает &laquo;из коробки&raquo; даже для описанной ситуации).<br />
Так вот, алгоритм решения проблемы <strong>&laquo;Запускаем для дебага python-файлы из ST2&#8243;</strong>:<br />
- Открываем Where_Sublime\Data\Packages\Python, видим файл &laquo;Python.sublime-build&raquo;. Он содержит:</p>
<pre class="brush: plain;">
{
 &quot;cmd&quot;: [&quot;python&quot;, &quot;-u&quot;, &quot;$file&quot;],
 &quot;file_regex&quot;: &quot;^[ ]*File \&quot;(...*?)\&quot;, line ([0-9]*)&quot;,
 &quot;selector&quot;: &quot;source.python&quot;
}
</pre>
<p>- Заменяем во второй строке &laquo;python&raquo;, (который должен работать, если у вас работающие %PATH%) на полный путь до указанного дистрибутива. Примерно так:</p>
<pre class="brush: plain;">
{
 &quot;cmd&quot;: [&quot;c:/python26/python&quot;, &quot;-u&quot;, &quot;$file&quot;],
 &quot;file_regex&quot;: &quot;^[ ]*File \&quot;(...*?)\&quot;, line ([0-9]*)&quot;,
 &quot;selector&quot;: &quot;source.python&quot;
}
</pre>
<p>- Сохраняем файл и видим, как хоткей F7 стал запускать сложенные из букв английского алфавита слова, на проверку оказывающиеся исходным кодом.<br />
<strong>P.S.</strong> Примерно ту же реализацию можно провернуть и для других, требующихся ЯП или вообще написать build system с нуля. Также, возможна будет полезна ссылка <a href="http://www.sublimetext.com/docs/build">sublimetext.com/docs/build</a>.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/roal3.wordpress.com/559/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/roal3.wordpress.com/559/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/roal3.wordpress.com/559/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/roal3.wordpress.com/559/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/roal3.wordpress.com/559/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/roal3.wordpress.com/559/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/roal3.wordpress.com/559/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/roal3.wordpress.com/559/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/roal3.wordpress.com/559/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/roal3.wordpress.com/559/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/roal3.wordpress.com/559/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/roal3.wordpress.com/559/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/roal3.wordpress.com/559/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/roal3.wordpress.com/559/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=roal3.wordpress.com&amp;blog=9181282&amp;post=559&amp;subd=roal3&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://roal3.wordpress.com/2011/04/01/build-system-in-sublimetext2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Scorpion</media:title>
		</media:content>
	</item>
		<item>
		<title>SublimeText 2 Alpha &#8211; ещё на один шаг ближе к полезнейшему инструменту</title>
		<link>http://roal3.wordpress.com/2011/03/12/sublimetext-2-preview/</link>
		<comments>http://roal3.wordpress.com/2011/03/12/sublimetext-2-preview/#comments</comments>
		<pubDate>Sat, 12 Mar 2011 13:51:36 +0000</pubDate>
		<dc:creator>Saudade</dc:creator>
				<category><![CDATA[прочее]]></category>
		<category><![CDATA[IT]]></category>
		<category><![CDATA[софт]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[SublimeText]]></category>

		<guid isPermaLink="false">http://roal3.wordpress.com/?p=555</guid>
		<description><![CDATA[Итак, в тайных австралийских лабораториях  продолжается разработка SublimeText. Очередная версия этого редактора для всего на свете, будет называться SublimeText 2 (а не SublimeText X, как анонсировали ранее). О часто выходящих промежуточных dev-сборках и последует далее. Итак, начать знакомство с ST2 можно либо с sublimetext.com/2 (более стабильные) либо с sublimetext.com/dev (более bleeding edge, зато чаще релизы, [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=roal3.wordpress.com&amp;blog=9181282&amp;post=555&amp;subd=roal3&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Итак, в тайных австралийских лабораториях  продолжается разработка <strong>SublimeText</strong>. Очередная версия этого редактора для всего на свете, будет называться <em>SublimeText 2</em> (а не SublimeText X, как анонсировали ранее). О часто выходящих промежуточных dev-сборках и последует далее.<br />
Итак, начать знакомство с ST2 можно либо с <a href="http://www.sublimetext.com/2">sublimetext.com/2</a> (более стабильные) либо с <a href="http://www.sublimetext.com/dev">sublimetext.com/dev</a> (более bleeding edge, зато чаще релизы, в среднем,  раз в несколько дней). Хотя на самом деле, что по первой ссылке, что по второй &#8211; достаточно адекватные версии, никаких трудно перевариваемых глюков, падений и зависаний.<br />
Что же такого полезного есть в <strong>SublimeText 2 Build 2046</strong> (последней на момент этого поста сборки), да и вообще отличия от предыдущего стабильного релиза под номером <strong>1.4</strong>:<br />
- Естественно, одно из самых крупных изменений &#8211; появившаяся кроссплатформенность. Проверено на всяких убунтах &#8211; работает, и работает неплохо. В этом пункте также отмечу как наличие некоторых официальных скриншотов ST2, сделанных в макоси, так и появления Mac-only фичей в changelog`е. Некоторое время назад это было напряжно, но сейчас функциональность вроде выравнялась.<br />
- Второе относительно крупное изменение &#8211; скорее всего из-за того, что ST2 переписан с нуля &#8211; общее увеличение реактивности. SublimeText и раньше-то не страдал задумчивостью, особенно если сравнивать (понятно, что это разные весовые категории, но тем не менее) с тем же PyCharm / PyDev, то теперь даже обладатели консервных банок времён мезозоя увидят улучшенный скроллинг, ускоренную загрузку многомегабайтного текста и т.д.   &laquo;Мягкость/жёсткость курсора&raquo; тоже подкручена.<br />
Остальные улучшения нумеровать в порядке важности не имеет смысла, для каждого список будет свой. Будет просто перечисление в порядке вспоминания.<br />
- В ST2 появилась так называемая концепция <strong>GoTo Anything</strong>. Это в принципе полезная штука для навигации как внутри файла, так и между. Закрытые файлы оседают в history и тоже доступны для GoTo Anything. Сначала хотел пересказать все вкусности этой функции сам, но у автора получилось гораздо понятней и компактнее, поэтому привожу его цитату:</p>
<blockquote><p>Sublime Text 2 has Goto Anything (Ctrl+P on Windows and Linux, Command+P on OS X) to quickly navigate between and within files:<br />
* Type part of a file name to open it. Files can be open files, recently closed files, or files in the project. The fuzzy matching is fast and intelligent, providing instant-as-you-type navigation on 50,000+ file projects.<br />
* Type an ‘@’ character, and start browsing by symbol. Type ‘#’ to search within the file, or ‘:’ to go to a line number.<br />
* Combining these together, for example, “tp@rf” may take you to a function called “read_file” within a file named “text_parser.py”. Similarly, ‘tp:100′ would take you to line 100 of the same file.<br />
The Goto Anything panel previews where it will take you as you type, loading files asynchronously in the background. You can use this to quickly look up the definition of a function, pressing escape to go back.<br />
The various within-file symbols operate on the current file if typed alone, for example, “:50″ will take you to line 50 of the current file, and “@” will browse the symbols of the current file. There are key bindings to open the Goto Anything panel with these pre-filled, for example, Ctrl+R (Command+R on OS X) will go directly to the list of symbols in the current file.</p></blockquote>
<p>От себя могу рассказать вот такое: допустим, у меня есть где-то в недрах жёсткого диска файл. Я знаю его название и даже помню, что ранее он уже открывался в ST2. Так вот, нажать Ctrl+p, набрать две-три буквы названия файла, enter и получить уже готовый к препарированию файл &#8211; это на порядок более быстро и удобней, чем через меню открывать файл, продираться сквозь структуру файловой системы или добираться до файла через файловый менеджер, чтобы задрагэнддропить внутри ST2.<br />
- Появилось переключение активного таба по Alt+цифра. Конечно, хотелось бы по привычному Ctrl+цифра, но и так хорошо. Ниндзя клавиатуры помнят, что в ST 1.4 Alt+цифра отвечала за изменение количества панелей (Pane Layout) &#8211; две, три, четыре, хоть горизонтально, хоть вертикально поставь. Функция никуда не делась &#8211; теперь она доступна либо из View → Layout, либо по хоткею Alt+Shift+цифра.<br />
- Расширены возможности кастомизации. Теперь можно прописывать свои команды или меню. Подробности в документации на соответствующих сайтах.<br />
- Переработанная система автокомплита приятно радует. Конечно, до идеала она пока не дотягивает. Совсем в идеале хочется, что бы автокомплит был динамически вгрызающийся в подключённые модули того же питона, а не просто заранее подготовленный набор. Хотя и то, что уже есть &#8211; видимый прогресс от версии 1.4. Надеемся на ещё больше плюшек к релизу.<br />
- Небольшое, но крайне полезное улучшение &#8211; как известно, умный SublimeText генерирует сразу по две кавычки, но раньше, если кавычку ставить вплотную к скобке, то удвоение кавычек не происходило. В b2046 это исправлено.<br />
- Запоминание и последующая демонстрация отличий от последней сохранённой версии файла (show unsaved changes в контекстном меню)<br />
- Разделение загрузки разных файлов по потокам.<br />
- Как обычно, желание напечатать статью про новые функции в ST2 закончилось быстрее, чем произошло описание всех больших, мелких и не очень нововведений, что ждут нас в <strong>SublimeText 2</strong>. Поэтому, за бортом остаются такие функции как полезные действия с колесом мыши в ST2, работа с табами, немного строк про улучшения подсветки и определения синтаксиса файла, переработанная система сниппетов, система работы с папками и проектами and so on. Главное помнить, что ST2 от сборки к сборке становится во всех смыслах <em>&laquo;быстрее, выше, сильнее&raquo;</em>, впитывая все возможности версии 1.4, и попутно обрастая новыми. Вполне может статься, что финальный релиз SublimeText 2 будет самым важным релизом софта в 2011, перевесив всякие Gnome 3, Firefox 4 и Meego 1.2 (в этом списке также незримо присутствует Django 1.3, впрочем это уже другая тема).<br />
<strong>P.S.</strong> Справедливости ради, разбавляя вполне контролируемую радость от частых обновлений changelog`а второй ветки ST, отмечу, что в текущих сборках поломана система запуска исходников (тот самый легендарный хоткей Ctrl+F7) и не чинится вот уже на протяжении трёх месяцев. Хотя часто встречающееся наличие вариации слов &laquo;Build System&raquo; в апдейтах даёт надежду, что к релизу таки починят. Также пока нет &laquo;крестиков&raquo; на некоторых дополнительно-полезных окошках, наподобие консоли, меню поиска и замены и прочее, но, хоткеями это вполне закрывается, ну и потом, хоть как-то ведь надпись Alpha программа должна оправдывать?</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/roal3.wordpress.com/555/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/roal3.wordpress.com/555/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/roal3.wordpress.com/555/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/roal3.wordpress.com/555/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/roal3.wordpress.com/555/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/roal3.wordpress.com/555/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/roal3.wordpress.com/555/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/roal3.wordpress.com/555/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/roal3.wordpress.com/555/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/roal3.wordpress.com/555/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/roal3.wordpress.com/555/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/roal3.wordpress.com/555/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/roal3.wordpress.com/555/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/roal3.wordpress.com/555/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=roal3.wordpress.com&amp;blog=9181282&amp;post=555&amp;subd=roal3&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://roal3.wordpress.com/2011/03/12/sublimetext-2-preview/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Scorpion</media:title>
		</media:content>
	</item>
		<item>
		<title>SublimeText и плагины</title>
		<link>http://roal3.wordpress.com/2010/12/27/sublimetext-and-plugins/</link>
		<comments>http://roal3.wordpress.com/2010/12/27/sublimetext-and-plugins/#comments</comments>
		<pubDate>Mon, 27 Dec 2010 12:09:37 +0000</pubDate>
		<dc:creator>Saudade</dc:creator>
				<category><![CDATA[прочее]]></category>
		<category><![CDATA[IT]]></category>
		<category><![CDATA[софт]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[SublimeText]]></category>

		<guid isPermaLink="false">http://roal3.wordpress.com/?p=470</guid>
		<description><![CDATA[Среди разнообразных полезностей редактора, названия которого выведено в заголовок, есть и возможность написания к нему плагинов. Чем я сразу и воспользовался. Не будем рассматривать сферических коней, а просто приведём пример с по крайней мере для меня полезной функциональностью. Итак, что нужно? А нужно, чтобы выделенная строка или её кусок по хоткею обрамлялись &#60;p&#62;-тегами. (Такие выкрутасы [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=roal3.wordpress.com&amp;blog=9181282&amp;post=470&amp;subd=roal3&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Среди разнообразных полезностей редактора, названия которого выведено в заголовок, есть и возможность написания к нему плагинов. Чем я сразу и воспользовался. Не будем рассматривать сферических коней, а просто приведём пример с по крайней мере для меня полезной функциональностью.<br />
Итак, что нужно? А нужно, чтобы <em>выделенная строка или её кусок по хоткею обрамлялись &lt;p&gt;-тегами</em>. (Такие выкрутасы удобны при создании fb2 из plain text, особенно когда сниппетами врезаются остальные &laquo;служебные&raquo; теги). По вкусу можно почитать документацию, от <a href="http://www.sublimetext.com/documentation">основного</a> сайта до <a href="http://www.sublimetext.info/docs">community-driven</a> и приступить, собственно, к коду.<br />
<strong>0.</strong> Создаём заготовку через <em>Tools &rarr; new plugin</em>, пишем код, примерно такой:</p>
<pre class="brush: python;">
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import sublime, sublimeplugin

# Сделан биндинг на Ctrl+p, действие плагина
# теперь только по этому хоткею и работает 

__author__ = &quot;Saudade&quot;

print &quot;plugin 'addPTags' loaded&quot;

class addPTags(sublimeplugin.TextCommand):
    def run(self, view, args):
        for region in view.sel():
            if not region.empty():
                # Get the selected text
                s = view.substr(region)
                s = '&lt;p&gt;' + s + '&lt;/p&gt;'
                # Replace the selection with transformed text
                view.replace(region, s)
                sublime.statusMessage(&quot;Plugin done the job&quot;)
</pre>
<p><strong>1.</strong> Сохраняем в ../Data/Packages/User (собственно, эта директория и будет предложена по умолчанию)<br />
<strong>2.</strong> В консоли (Ctrl+~) видим что-то наподобие:</p>
<blockquote><p>writing file ../Data/Packages/User/addPTags.py with encoding UTF-8<br />
Reloading plugin ../Data/Packages/User/addPTags.py</p></blockquote>
<p>Это плагин понял, что он именно плагин, а не просто рандомный набор набранных в файле символов.<br />
<strong>3.</strong> Теперь можно присвоить хоткей, по которому будет активироваться плагин:<br />
Открываем <em>Preferences &rarr; User File Preferences</em> и добавляем</p>
<pre class="brush: python;">
&lt;binding key=&quot;ctrl+p&quot; command=&quot;addPTags&quot;/&gt;
</pre>
<p><strong>4.</strong> Первоначальная активация по view.runCommand(&#8216;addPTags&#8217;) в консоли. Это достаточно сделать один раз, потом уже SublimeText будет сам подгружать этот и остальные (если они есть или будут) плагины.</p>
<p><strong>P.S.</strong> Вполне достаточно мозги плагина прописывать в <em>def run</em>, а не во всяких <em>onSelectionModified</em>, хоть и кажется, что это логично, да и другие так вполне делают. (См. исходники к плагину HighlightCurrentWord) Конечно, можно и в onSelectionModified, но тогда есть не иллюзорные шансы от души пострелять себе в ногу, а то и в две.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/roal3.wordpress.com/470/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/roal3.wordpress.com/470/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/roal3.wordpress.com/470/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/roal3.wordpress.com/470/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/roal3.wordpress.com/470/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/roal3.wordpress.com/470/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/roal3.wordpress.com/470/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/roal3.wordpress.com/470/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/roal3.wordpress.com/470/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/roal3.wordpress.com/470/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/roal3.wordpress.com/470/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/roal3.wordpress.com/470/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/roal3.wordpress.com/470/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/roal3.wordpress.com/470/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=roal3.wordpress.com&amp;blog=9181282&amp;post=470&amp;subd=roal3&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://roal3.wordpress.com/2010/12/27/sublimetext-and-plugins/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Scorpion</media:title>
		</media:content>
	</item>
		<item>
		<title>SublimeText сквозь призму некоторых других редакторов</title>
		<link>http://roal3.wordpress.com/2010/12/13/sublimetext-and-others/</link>
		<comments>http://roal3.wordpress.com/2010/12/13/sublimetext-and-others/#comments</comments>
		<pubDate>Mon, 13 Dec 2010 14:46:38 +0000</pubDate>
		<dc:creator>Saudade</dc:creator>
				<category><![CDATA[прочее]]></category>
		<category><![CDATA[IT]]></category>
		<category><![CDATA[софт]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[SublimeText]]></category>

		<guid isPermaLink="false">http://roal3.wordpress.com/?p=461</guid>
		<description><![CDATA[Благодаря этому посту, узнал об очень интересном редакторе, SublimeText. Общее описание и/или относительно подробные детали можно узнать либо по той ссылке, либо на оффсайте. Я же просто напишу те юзкейсы, которые вспоминаются сразу и которые я использую в Notepad++ (SublimeText как раз отличный претендент на его замену). Пункты идут абсолютно не по значимости, а по [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=roal3.wordpress.com&amp;blog=9181282&amp;post=461&amp;subd=roal3&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Благодаря <a href="http://zxmd.wordpress.com/2010/11/07/texmate-analog">этому </a>посту, узнал об очень интересном редакторе, <strong>SublimeText</strong>. Общее описание и/или относительно подробные детали можно узнать либо по той ссылке, либо на <a href="http://www.sublimetext.com">оффсайте</a>. Я же просто напишу те юзкейсы, которые вспоминаются сразу и которые я использую в <strong>Notepad++</strong> (SublimeText как раз отличный претендент на его замену). Пункты идут абсолютно не по значимости, а по мере считывания из мозгового носителя.<br />
<strong>1. &laquo;Запуск разных файлов&raquo; </strong><br />
Это одна из killer-фичей SublimeText. По хоткею Ctrl+F7 запускается куча всего, от *.py до *.bat. То что py-файлы запускаются, это Ъ, но, в общем, ожидаемо. Гораздо приятней, что через Ctrl+F7 запускаются py-файлы использующие pygame, pyopengl, mechanize и прочие. Следовательно, Sublime просто использует установленный в системе питон, а не дистриб внутри себя. Отсюда вопрос, что мешает другим IDE делать то же &laquo;из коробки&raquo;? Зачем все эти многочисленные &laquo;А укажите-ка ваш PATH к чему-нибудь, чтобы я хоть что-то шмогла&raquo;.<br />
Итак, по этому пункту рассматриваемая программа однозначно побеждает, ибо пинотоводство в Notepad++ нуждается в костылях вида &laquo;А пропиши-ка для всех файлов что-то наподобие </p>
<blockquote><p>
cd c:/projects/samples<br />
c:/python26/python myshitdrop.py
</p></blockquote>
<p>в свойства плагина <strong>NppExec</strong>, чтобы запускать по F6, выбрав из выпадающего списка забинденные файлы&raquo;.<br />
<strong>2. &laquo;Нахождение подстроки&raquo;</strong><br />
С одной стороны, Notepad++ &laquo;из коробки&raquo; подсвечивает повторы для выделенной подстроки, что меньше на клик. У Sublime надо доп. нажатие Alt+F3. Зато у последнего можно сразу мультиредактировать выделенное в нескольких местах сразу, Notepad++ же такого не даёт. Казалось бы, пункт выигран плюсоватым ноутпадом, но нет &#8211; The HighlightCurrentWord Plugin для SublimeText даёт такую функциональность. (хоткей Ctrl+Shift+H её включает/отключает). Причём, этот плагин даже чуть получше &#8211; для подсвета повторов подстроки достаточно курсора на слове, без выделения.<br />
<strong>3. &laquo;Автокомплит&raquo;</strong><br />
Вот это интересная тема. Наиболее удобный для меня автокомплит есть во <strong>FlashDevelop</strong>:<br />
a) Динамически всплывает сразу, без всяких лишних Ctrl+Space<br />
б) Захватывает создаваемые переменные<br />
в) Реагирует не только на первые буквы, но и на середину. То есть по &laquo;ke&raquo; можно вытянуть &laquo;flash.events.KeyboardEvent&raquo;<br />
г) И главное: реагирует на backspace &#8211; подбирая (расширяя) варианты, а не тупо сворачивается, как во многих других программах.<br />
К сожалению, action script остался для меня не более чем &laquo;Оу, я научился делать так, чтобы зелёный треугольник бегал за синим квадратом&raquo;. Поэтому, FlashDevelop тут вне конкурса, просто для флейма. А что у SublimeText, что у Notepad++ есть над чем работать. Очень странно, почему у последнего есть переключатель: дополнение только для функций или только для слов. Хотя отмечу, что для ситуации &laquo;автокомплит слова, уже ранее встречающегося в тексте&raquo; (например: не хочу печатать полностью слово <em>&laquo;митохондрия&raquo;</em>, хочу пару букв), Notepad++ поудобней &#8211; сразу видимый всплывающий список наглядней, чем постоянно помнить, имеет смысл нажимать на Ctrl+Space или нет. Хотя ХЗ., SublimeText`овский ми+Alt+Shift тоже неплох. Пусть итог будет 55 на 45 в процентах.<br />
<strong>4. &laquo;Сниппеты&raquo;</strong><br />
Безоговорочная победа SublimeText. Удобно не просто для использования, но и для бекапа на всяк пожарный. Ибо все написанные юзером сниппеты (не считая кучу предуставленных) находятся в /Где-У-Вас-Sublime/Data/Packages/User. К примеру для написания данных строк я быстро накалякал </p>
<pre class="brush: python;">
&lt;!-- See http://www.sublimetext.com/docs/snippets for more information --&gt;
&lt;snippet&gt;
	&lt;content&gt;&lt;![CDATA[SublimeText]]&gt;&lt;/content&gt;
	&lt;!-- Optional: Tab trigger to activate the snippet --&gt;
	&lt;tabTrigger&gt;саб&lt;/tabTrigger&gt;
	&lt;!-- Optional: Scope the tab trigger will be active in --&gt;
	&lt;scope&gt;source.python&lt;/scope&gt;
	&lt;!-- Optional: Description to show in the menu --&gt;
	&lt;description&gt;Автодополнение для SublimeText&lt;/description&gt;
&lt;/snippet&gt;
</pre>
<p>И теперь, из-за лёгкого применения вышеприведённого, данный пост похож на fuckin` black seo, оптимизированное под понятно какое слово. У Notepad++ же со сниппетами какая-то хрень. То ли плагины полурабочие, то ли я &laquo;неоселел&raquo;.<br />
<del datetime="2010-12-13T14:57:30+00:00">Небольшой P.S., для тех, кто прочитал документацию к сниппетам. По идее, вместо строки &laquo;source.python&raquo; надо что-то вроде &laquo;source.html&raquo; или &laquo;source.plaintext&raquo;. В смысле, наверно не очень круто говорить программе, что у ней сейчас питоноводство, в это же время печатая в ней блогопост. Но кроме как для source.python, сниппет работать не хочет. Your rtfms are welcome. </del> Применил навык внимательности: чтобы сниппет работал на всех типах файлов, строку </p>
<pre class="brush: plain;">
&lt;scope&gt;source.python&lt;/scope&gt;
</pre>
<p>надо вообще удалить.<br />
<strong>5. &laquo;Консоль&raquo;</strong><br />
У SublimeText &#8211; питоновская консоль по Ctrl+~, у Notepad++ по этому же хоткею полноценная cmd. Где-то удобней первое, где-то второе. Но, как всегда хочется ведь всего и сразу. Поэтому к примеру, Ctrl+~, а потом hg diff не получится сделать ни у того, ни у другого. Только костылями-батничками, лежащими в соседних открытых вкладках (или забинденными в выпадающий по F6 список у Notepad++). Но это, мягко говоря, не нативно.<br />
<strong>6. &laquo;Выделение строки&raquo;</strong><br />
Мелкая, даже не фича, а так, фичушка. Интересно то, что в SublimeText она активируется по Ctrl+L, в то время как в Notepad++ этот хоткей уничтожает текущую строку. Может быть поэтому, а может быть и нет, мои руки, когда надо выделить строку, тянутся сначала к home, а потом к Shift+End. Это-то работает во всех программах, без внезапных последствий.<br />
<strong>7. &laquo;Поддержка Mercurial&raquo;</strong><br />
Тут всё печально. У SublimeText теоретически есть плагин. Но глюковат. Коммиты делает. На пушах &#8211; глюки авторизации. У Notepad++ нет вообще ничего. Пока опять же, костыли-батнички без вариантов. В общем, по теме &laquo;Поддержка Mercurial&raquo; им обоим надо учиться у PyCharm. Там конечно, сказка, начиная от создания проекта, с предложением вытянуть исходники из РСКВ, ну и т.д.<br />
<strong>8. &laquo;Подсветка синтаксиса&raquo;</strong><br />
Понятно, что для распространённых типов всё есть, но&#8230; При открытии fb2 у Notepad++ мне надо постоянно лезть в меню и нажимать <em>&laquo;ну раскрась хотя бы как xml&raquo;</em>, В SublimeText же один раз нажал <em>&laquo;Open all with current selection as..&raquo;</em> и всё. Подозреваю, что в Notepad++ подобное тоже может быть, но так как за многие месяцы<del datetime="2010-12-13T14:25:08+00:00"> бессонных ночей</del> ничего не найдено, то юзабилити проиграно, поэтому в этом пункте SublimeText победил.<br />
<strong>9. &laquo;Комментирование строк&raquo; </strong><br />
Ничья. Что один, что другой умеют ставит разный символ комментирования в зависимости от типа открытого файла. Приятно.<br />
<strong>10. &laquo;Закладки&raquo;</strong><br />
Закладки &#8211; странная и больная тема. Вспомним то, о чём в приличном обществе уже давно не говорят, о Delphi. Не смотря на все эти унылые шутки про плохо закопанный труп и так далее, закладки в ней были самые Ъ. Ctrl+цифра. В абсолютном большинстве же остальных ide и просто редакторов (SublimeText и Notepad++ не исключение, как и PyDev`ы всякие) используется противоположенная схема: ну не удобно сначала наделать 10 закладок, а потом по очереди хоткеем их перебирать. Не-у-доб-но. Неужели перепрыгивание с допустим второй закладки на девятую стоит семи нажатий на F2 (ну или трёх на Shift+F2, да вроде меньше нажатий, но занимать часть мозга постоянным подсчётом в какую сторону быстрее листать закладки? Буэээ). Ведь хоткей Ctrl+2 сразу бы переносил на вторую закладку, а Ctrl+9 сразу на девятую. И удобно для запоминания, и пальцам легко. Почему отказались от такой схемы? Непонятно. Ладно бы освободившиеся кнопки использовались под что-то полезное. Так нет, в половине программ они вообще ничего не делают, во второй половине забиндены на какую-то малополезную хрень. Давали бы тогда по табам переключать (как в браузерах, например). Но, неа. </p>
<p>Немного общих слов.<br />
Конечно, <strong>SublimeText </strong>умеет ещё кучу полезных свойств не отмеченных выше. От удобного написания плагинов к нему и MiniMap до разных мелочей, которые открываются по мере использования. Например, автогенерация закрывающегося тега, скобок, всяких разных кавычек. Приятное меню для поиска и замены. Через контекстное меню можно открыть урл, даже если он не оформлен как урл (впрочем, Notepad++ с урлами тоже так может). Плюс ещё куча других мелких полезностей, одних я просто пока не изучил, про другие уже лень печатать. Это всё не важно. Важно то, что SublimeText <em>целостен </em>что ли. Его хочется изучать и настраивать его плюшки. Потому что, взять какой-нибудь Eric или Monkey Studio IDE &#8211; они какие-то аляповатые, производят впечатление наколенной поделки. Наверняка, в их внутренностях есть какие-никакие killer-фичи, но&#8230; их открываешь, потыкаешь немного. И закрываешь навсегда. В отличие от.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/roal3.wordpress.com/461/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/roal3.wordpress.com/461/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/roal3.wordpress.com/461/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/roal3.wordpress.com/461/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/roal3.wordpress.com/461/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/roal3.wordpress.com/461/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/roal3.wordpress.com/461/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/roal3.wordpress.com/461/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/roal3.wordpress.com/461/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/roal3.wordpress.com/461/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/roal3.wordpress.com/461/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/roal3.wordpress.com/461/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/roal3.wordpress.com/461/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/roal3.wordpress.com/461/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=roal3.wordpress.com&amp;blog=9181282&amp;post=461&amp;subd=roal3&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://roal3.wordpress.com/2010/12/13/sublimetext-and-others/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Scorpion</media:title>
		</media:content>
	</item>
		<item>
		<title>Первая часть отчёта по челленджу</title>
		<link>http://roal3.wordpress.com/2010/11/30/challenge-first-part/</link>
		<comments>http://roal3.wordpress.com/2010/11/30/challenge-first-part/#comments</comments>
		<pubDate>Tue, 30 Nov 2010 17:49:44 +0000</pubDate>
		<dc:creator>Saudade</dc:creator>
				<category><![CDATA[прочее]]></category>
		<category><![CDATA[книги]]></category>
		<category><![CDATA[мысли]]></category>
		<category><![CDATA[флудопоток]]></category>

		<guid isPermaLink="false">http://roal3.wordpress.com/?p=453</guid>
		<description><![CDATA[Некоторое время назад у нас с SVK (он же Xleb в friendfeed) активировалась договорённость. Он по моему совету посмотрит фильм &#171;Unthinkable&#187; (2009), я же по его совету должен прочитать книгу некого Виктора Суворова &#171;Контроль&#187;. SVK свою часть сделки выполнил. Теперь моя очередь. Поэтому откладываем Кадзуо Исигуро, Гордона Далквиста и Йона Айвиде Линдквиста, книги которых стоят [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=roal3.wordpress.com&amp;blog=9181282&amp;post=453&amp;subd=roal3&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Некоторое время назад у нас с SVK (он же Xleb в friendfeed) активировалась договорённость. Он по моему совету посмотрит фильм <strong>&laquo;Unthinkable&raquo;</strong> (2009), я же по его совету должен прочитать книгу некого <strong>Виктора Суворова &laquo;Контроль&raquo;</strong>. SVK свою часть сделки выполнил. Теперь моя очередь. Поэтому откладываем Кадзуо Исигуро, Гордона Далквиста и Йона Айвиде Линдквиста, книги которых стоят в списке &laquo;прочитать&raquo; и начинаем.<br />
Итак, первые мыслезарисовки по прочитанным <em>13%</em> от общего объёма книги &laquo;Контроль&raquo;. Но сначала <em>преамбула</em>: Сеттинг, используемый в книге, я не перевариваю. Не переношу тупо почти до физического отвращения. Вот такие вот особенности организма. Пятьдесят-восемьдесят-двести лет вперёд или назад по временной шкале пожалуйста, но не там. Так что, случайные или не случайные читатели этого поста а блоге абсолютной объективности могут не ждать.<br />
Итак ещё раз. Судя по тому, что нагугливается про автора, он вроде довольно таки олдскулен и так далее, но тем не менее написал <em>мангу</em>, а не книгу. Которая, к тому же начинается с клиффхангера. Пять баллов, чего уж там. Центральный персонаж (Настя) тоже взят из классического набора &laquo;Сценарные заготовки для dummies. Том 1. Издание дополненное и исправленное&raquo; и относится к типу &laquo;kick-ass girl&raquo; с двумя классическими режимами: &laquo;обнять и плакать&raquo; VS &laquo;Оу, чёрт! Она опять покрошила десять человек, потому что ей мешали кушать её любимое мороженое&raquo;. (Посмотреть хорошую реализацию данного характерного типа можно в роли Ривер из <strong>&laquo;FireFly&raquo;</strong>/<strong>&laquo;Serenity&raquo;</strong>)<br />
Возвращаемся к Насте. Спортсменка, комсомолка в прямом и переносном смысле. Сурово спит в шкафу после смены на заводе и не менее сурово прыгает с парашютом. Имеет несколько (возможно, дальше больше) прописанных ситуаций по ходу книги, которые показывают наличие в ней не иллюзорных стальных яиц. Тем не менее, как было указано выше, есть сцены и для визуализации подтипа &laquo;обнять и плакать&raquo;.<br />
Можно и ещё дальше продолжать расписывать, но перейдём на более глобальный уровень.<br />
Я прекрасно вижу те штыри в книге, за которые цеплялся взгляд SVK при чтении, и которые его оригинальное мышление почему-то записало в плюсы книги (ведь иначе зачем рекомендовать?). Другое дело, что для меня эти штыри вааааще никакие. Иногда мешают, иногда нет. Капитан Очевидность ведь говорил же, что книга сама по себе совсем не то же, во что выстраиваются образы, возникающие после прочтения сложенных в слова букв. И у разных людей естественно выстраиваются разные образы. Другое дело, что убивать (не замечать) часть выстроенных образов и насильно вытягивать и преувеличивать другую часть (как это делает SVK), мне кажется, не правильно. Поэтому я, конечно же, напишу, что сама по себе, книга &laquo;Контроль&raquo;, середнячок. Не факт, что даже крепкий середнячок. Это будет более понятно, когда я её (если) дочитаю. И с чистой совестью скорее всего пропущу высказанные мне в ответку фразы типа &laquo;Да как ты не разглядел про судьбы людей в книге, про манипулирование, про подачу личности и поступков Сталина. Да как ты не увидел, как подаётся совковая действительность / Или Как автор негодует / Или Как автор соглашается и ностальгирует&raquo;. Because, It is all your imagination.. Точка.<br />
<strong>P.S.</strong> А книгу я, наверно, всё же дочитаю. Она не такая уж унылая и ужасно написанная, как я сначала думал. Чисто технически слог у автора хороший, другое дело, что расходует он его не туда. Впрочем, о сеттинге я уже говорил.   </p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/roal3.wordpress.com/453/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/roal3.wordpress.com/453/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/roal3.wordpress.com/453/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/roal3.wordpress.com/453/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/roal3.wordpress.com/453/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/roal3.wordpress.com/453/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/roal3.wordpress.com/453/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/roal3.wordpress.com/453/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/roal3.wordpress.com/453/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/roal3.wordpress.com/453/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/roal3.wordpress.com/453/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/roal3.wordpress.com/453/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/roal3.wordpress.com/453/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/roal3.wordpress.com/453/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=roal3.wordpress.com&amp;blog=9181282&amp;post=453&amp;subd=roal3&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://roal3.wordpress.com/2010/11/30/challenge-first-part/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Scorpion</media:title>
		</media:content>
	</item>
		<item>
		<title>Мнение о фильме &#171;Тёмный мир&#187; (2010)</title>
		<link>http://roal3.wordpress.com/2010/11/19/temniy-mir-movie-2010/</link>
		<comments>http://roal3.wordpress.com/2010/11/19/temniy-mir-movie-2010/#comments</comments>
		<pubDate>Fri, 19 Nov 2010 19:47:56 +0000</pubDate>
		<dc:creator>Saudade</dc:creator>
				<category><![CDATA[прочее]]></category>
		<category><![CDATA[мысли]]></category>
		<category><![CDATA[фильмы]]></category>

		<guid isPermaLink="false">http://roal3.wordpress.com/?p=448</guid>
		<description><![CDATA[Как иногда бывает, первым предложением в рецензии должен быть дисклеймер наподобие: Бла-бла-бла, русский кинематограф такой русский. Бла-бла-бла, отстаём лет на двадцать. Бла-бла-бла, вы ваще о чём? Пока есть Никита &#171;два процента&#187; Михалков и Фёдор &#171;как спустить 40 лямов&#187; Бондарчук во фразе &#171;русский кинематограф&#187; одно из слов лишнее. Бла-бла-бла, очень многие фильмы надо выпускать под знаком [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=roal3.wordpress.com&amp;blog=9181282&amp;post=448&amp;subd=roal3&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Как иногда бывает, первым предложением в рецензии должен быть дисклеймер наподобие: Бла-бла-бла, русский кинематограф такой русский. Бла-бла-бла, отстаём лет на двадцать. Бла-бла-бла, вы ваще о чём? Пока есть Никита &laquo;два процента&raquo; Михалков и Фёдор &laquo;как спустить 40 лямов&raquo; Бондарчук во фразе &laquo;русский кинематограф&raquo; одно из слов лишнее. Бла-бла-бла, очень многие фильмы надо выпускать под знаком &laquo;Внимание! Шанс необратимого повреждения мозга.&raquo; Ну и т.д.<br />
Но&#8230; Как говорится, немного выбора оказывается есть. И раз уж как-то в таких условиях появились, ну хотя бы на вскидку, &laquo;Ночной продавец&raquo;, &laquo;Меченосец&raquo;, &laquo;Кислород&raquo;, &laquo;Последний уик-энд&raquo;, &laquo;Нулевой километр&raquo; и &laquo;Как я провёл этим летом&raquo;, то труп рускино может и не стоит так усердно закапывать. Но хорошенько попинать и встряхнуть для профилактики таки надо. Кстати, &laquo;Как я провёл этим летом&raquo; чуть ли не единственное вышедшее за последний год-полтора, что можно посоветовать к просмотру &laquo;скептикам&raquo; и за что &laquo;не стыдно&raquo;. Впрочем, сегодня речь не о нём.<br />
Герой сегодняшней рецензии, фильм <strong>&laquo;Тёмный мир&raquo;</strong> (2010) на первый взгляд кажется тем, что называется &laquo;блохбастер порюсске&raquo;. Отбросим мысли об отмыве денег. О том, что копировать не Ъ (В &laquo;Тёмном мире&raquo; оооочень хорошо видны заимствования из очень многого: от &laquo;Хеллбоя 2&#8243; и &laquo;Дома Летающих Кинжалов&raquo; до &laquo;Властелина Колец&raquo; и &laquo;Другого Мира&raquo; плюс классические &laquo;матричные&raquo; фишки). Также отбросим унылые причитания о &laquo;теперь и до сюда докатилась мода приписывать 3д к названию&raquo;.<br />
Прежде всего, лично я (нуачо, рецензию пишу я &#8211; следовательно эгоистично перетягиваю одеяло) увидел вот что: &laquo;Тёмный Мир&raquo; это аналог того, во что может вылиться гипотетическая экранизация моей недописанной графомании: в воспалённом мозгу сценариста может всё красиво и логично, а на экране актёры тут фейлят, там не дотянули, здесь режиссёр не на том акцент поставил, а вот тут оператор тупо отошёл покурить от камеры, вот в этой сцене декорации хреновые, вот там на постпродакшене цветокоррекцию плохо сделали и т.д. То есть может они и пытались, то отсутствие опыта оно и есть отсутствие опыта. Можно конечно вспоминать Нила Бломкампа и Курта Уиммера насчёт того что их <em>уже дебютники</em> вписаны в историю, но&#8230; всё равно за ними стоит помощь в виде многолетнего опыта студий. В рускино такого нет. Вот поэтому и получается, что такие штуки как Дозоры, Параграфы, Охоты на Пиранью, а теперь и &laquo;Тёмный мир&raquo; это да, неплохо, даже хорошо, да, могло быть хуже (и гораздо хуже &#8211; не см. в сторону не к ночи помянутого &laquo;Обитаемого Острова&raquo;), но работа над ошибками предстоит огромадная. Не на год, даже не на пять или десять.<br />
Для разнообразия, напишу кроме общих слов немного конкретики а.к.а. вопросы в воздух:<br />
- Раз уж используете такой классический приём как грим на женских персонажах в виде кровищи пополам с грязью, так либо меняйте ваших гримёров на профи, либо не используйте вообще. Приём-то в теории очень годный, но плохое исполнение может всё испортить.<br />
<strong>-</strong> Кастинг &laquo;Тёмного Мира&raquo; какбэ OMFG! Вроде куда ни глянь в России &#8211; актёр на актёре актёром погоняет. А как надо именно <em>работать</em>, а не тупо в кадре присутствовать, так сливай воду. ГлавГероиня и ГлавЗлодей ещё ничего (хотя местами картонные), остальные же&#8230; Да я разбалован хорошими молодыми актёрами хотя бы из той же Британии, но фигли тогда рвать тельняшку на груди со словами про многолетнюю ру-школу акт-мастерства? Почему шестнадцатилетний из, допустим Бристоля, показывает класс выше даже того, что может 25-28-летний из Москвы-Питера? ( Печальная тема того, что рускино &laquo;славится&raquo; более старыми, чем нужный возраст по роли актёрами, достойна отдельного поста)<br />
<strong>-</strong> Также есть претензия по декорациям в некоторых сценах. Ладно, если бы было понятно, что бюджета нет и экономят на всём. Тогда да &#8211; напихали веток и пластмассовых стволов в студии. Напротив хромакея люди попрыгали, CG потом добавит что-нибудь. Так нет &#8211; есть много сцен с прилично выглядящими задниками (хз, на натуре снимали или опять хромакей). Поэтому непонятно. Что самое смешное, как раз имхо важные с т.з. сюжета сцены выглядят убого, а не важные &#8211; &laquo;бохато&raquo;. Как будто режиссёр не всегда понимает приоритет.<br />
<strong>- </strong><em>Общая идея, сценарий и т.д.</em> Как есть на самом деле, из зрителей не знает никто, но всё-таки хотелось бы думать, что хотя бы частичку того, что некоторые учёные оценивают весом в 21 грамм, создатели картины таки вложили. Да, на первый взгляд диагноз &laquo;Тёмного Мира&raquo; ясен и рука уже готова тянуться к ящику со снарядами в виде гнилых помидоров&#8230; Но на второй взгляд, среди всего того, что я пытался расписать выше, где-то после первой четверти фильма приходят мысли вида &laquo;А ну-ка, отбросим дурацкие стереотипы, вспомним хотя бы недавно просмотренный &laquo;Planet Terror&raquo; (2007) и мысленно поставим Роберта Родригеса на место режиссёра &laquo;Тёмного Мира&raquo;. Смотри-ка, вот уже и синопсис совсем по другому воспринимается и развитие сюжета укладывается в рамки треш-поделия. И вот это уже не &laquo;рюсске блохбастер&raquo;, а попытка сыграть на совсем другом поле. Вот вам и ирония в диалогах, вот вам и троллинг в экранном действии. Попытка, само собой не идеальная, но так и не всё сразу.<br />
В общем, может это всё трюки и самообман, но, среди всего прочего, приятные мелкие фишечки в фильме тоже есть, а фейлов не так уж и много, если разобраться. Поэтому, при адекватном восприятии и кинематографической подготовленности от просмотра &laquo;Тёмного Мира&raquo; можно таки получить удовольствие. Что я и сделал, чего и вам (с оговорками) советую, немногочисленные и случайные читатели этого блога. Хотя всегда помните фразеологизм о вкусе и фломастерах.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/roal3.wordpress.com/448/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/roal3.wordpress.com/448/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/roal3.wordpress.com/448/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/roal3.wordpress.com/448/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/roal3.wordpress.com/448/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/roal3.wordpress.com/448/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/roal3.wordpress.com/448/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/roal3.wordpress.com/448/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/roal3.wordpress.com/448/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/roal3.wordpress.com/448/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/roal3.wordpress.com/448/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/roal3.wordpress.com/448/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/roal3.wordpress.com/448/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/roal3.wordpress.com/448/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=roal3.wordpress.com&amp;blog=9181282&amp;post=448&amp;subd=roal3&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://roal3.wordpress.com/2010/11/19/temniy-mir-movie-2010/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Scorpion</media:title>
		</media:content>
	</item>
		<item>
		<title>Mercurial+Bitbucket. QuickStart</title>
		<link>http://roal3.wordpress.com/2010/10/21/mercurial-bitbucket-quickstart/</link>
		<comments>http://roal3.wordpress.com/2010/10/21/mercurial-bitbucket-quickstart/#comments</comments>
		<pubDate>Thu, 21 Oct 2010 11:27:56 +0000</pubDate>
		<dc:creator>Saudade</dc:creator>
				<category><![CDATA[Интернет]]></category>
		<category><![CDATA[bitbucket]]></category>
		<category><![CDATA[dvcs]]></category>
		<category><![CDATA[IT]]></category>
		<category><![CDATA[mercurial]]></category>
		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://roal3.wordpress.com/?p=429</guid>
		<description><![CDATA[Итак, продолжение (интро, она же первая часть тут) серии по совместному использованию РСКВ Mercurial и хостинга &#171;кода&#187; BitBucket. Кавычки использованы не случайно. Функциональность рассчитана на файлы абсолютно любого типа. К тому же, после недавнего изменения тарифных планов, на Bitbucket сняли ограничение на число репозиториев (приватных в том числе) и их размер. Ограничения тоже остались &#8211; [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=roal3.wordpress.com&amp;blog=9181282&amp;post=429&amp;subd=roal3&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Итак, продолжение (интро, она же первая часть <a href="http://roal3.wordpress.com/2010/10/19/mercurial-bitbucket-intro">тут</a>) серии по совместному использованию РСКВ <strong>Mercurial </strong>и хостинга &laquo;кода&raquo; <strong>BitBucket</strong>. Кавычки использованы не случайно. Функциональность рассчитана на файлы абсолютно любого типа. К тому же, после недавнего изменения тарифных планов, на Bitbucket сняли ограничение на число репозиториев (приватных в том числе) и их размер. Ограничения тоже остались &#8211; 5 человек на доступ в бесплатном аккаунте. Но это вполне нормально, большая команда вполне способна оплатить и платный аккаунт, тем более расценки копеечные. А для одиночки и/или небольшой команды Bitbucket просто находка. Тот же github на бесплатном аккаунте не даёт приватные репозитории, а сохранить только для себя немного кода всё-таки бывает надо.<br />
Итак начнём <strong>quickstart </strong>на примере хранения fb2-версий моих графоманских поделок:<br />
<strong>0. </strong><em>Установка, собственно, меркуриала с<a href="http://mercurial.selenic.com"> http://mercurial.selenic.com</a></em><br />
Это <em>консольная </em>утилита под все распространённые ОСи. Кстати, один из немногих представителей софта, где консольная версия удобнее GUI. Есть, конечно, всякие <a href="http://tortoisehg.bitbucket.org">TortoiseHG</a> и куча плагинов под разные IDE, но юзабилити там не к чёрту. My way для РСКВ это повесить на хоткеи нужные наборы консольных команд, вызываемых из Notepad++ или SublimeText.<br />
<strong>1.</strong> <em>Создание с нуля или клонирование существующего репозитория</em><br />
Практика показала, что создание пустого репозитория сразу на Bitbucket и потом командой</p>
<blockquote><p>hg clone http://bitbucket.org/saudade/texts texts</p></blockquote>
<p>клонирование к себе на ПК проще, чем инициализация с помощью &laquo;hg init&raquo; и указывание разного барахла настроек в файле .hgrc. Итак, команда набирается в консоли: собственно hg clone, адрес удалённого репозитория (не обязательно bitbucket, конечно) и директория, где будет репозиторий. В указанной папке окажутся все файлы проекта. В данном случае два .fb2 и каталог .hg, котором меркуриал хранит всё, что ему надо для работоспособности репозитория.<br />
<strong>2.</strong> <em>Теперь начинается сама работа/программирование/etc.</em> Стандартное добавление, изменение, удаление. Синтаксис вполне понятен:</p>
<blockquote><p>hg add filename<br />
hg remove filename<br />
hg rename old_name new_name</p></blockquote>
<p><strong>3.</strong> Через какое-то время можно будет <em>зафиксировать результаты в изменяемых файлах</em>. (Исправили баг к софту, над которым работаете, дописали главу в вашей нетленке или просто закончили применять фильтры к редактируемому изображению). Это называется коммит. Синтаксис:</p>
<blockquote><p>hg commit -m &laquo;What I`ve done&raquo;</p></blockquote>
<p>Параметр &laquo;-m&raquo; указывает, что к коммитам пишутся комментарии. Их потом можно прочитать в changeset`ах. В них кратко или не очень можно объяснить, чего вы наворотили. Изменения запишутся в локальный репозиторий. Если передумали, можно откатиться на предыдущую ревизию (hg rollback)<br />
<strong>4.</strong><em> Теперь можно &laquo;запушить&raquo; изменения в удалённый репозиторий</em> (тот самый много раз упоминающийся bitbucket):</p>
<blockquote><p>hg push http://bitbucket.org/saudade/texts</p></blockquote>
<p>или</p>
<blockquote><p>hg push http://User:Pass@bitbucket.org/saudade/texts</p></blockquote>
<p>В первом случае при каждом пуше надо набирать логин и пароль от аккаунта bitbucket (среди всего прочего, на bitbucket есть и поддержка openID), во втором &#8211; нет. Один раз настроенная команда just works.<br />
Также, несмотря на дисклеймер к прошлому посту, для Notepad++, в ST2, в bat-файл или куда удобней можно повесить такое: </p>
<blockquote><p>cd texts<br />
hg commit -m &laquo;What I`ve done&raquo;<br />
hg push http://User:Pass@bitbucket.org/saudade/texts</p></blockquote>
<p>Это коммит и сразу пуш в один клик. </p>
<p><em>Несколько общих слов</em> для чего вообще заморачиваться с РСКВ, а не просто тупо кидать файлы в <a href="http://www.dropbox.com/referrals/NTQxNDg4ODk">dropbox</a>:<br />
- Backup всегда приятен. &laquo;А-а-а! Комп взорвался. Ну и что? Одной командой clone я получаю всё, что долгие месяцы/годы складывал в РСКВ&raquo;<br />
- Этой же командой clone можно быстро сделать &laquo;песочницу&raquo; (просто тупо ещё один реп рядом). Что-то проверить и склеить с основным.<br />
- Этой же командой clone, а в последствии</p>
<blockquote><p>cd texts<br />
hg pull http://bitbucket.org/saudade/texts<br />
hg update</p></blockquote>
<p>люди могут быстро получать все нужные файлы или апдейты, без всякого &laquo;ты вот по этой ссылке возьми кусочек, потом вот тут посмотри и вот отсюда ещё загрузи&raquo;.<br />
- Версионность и хистори. &laquo;Я написал что-то там полгода назад. А потом стёр/заменил. Откачусь-ка к тем изменениям.&raquo;<br />
- Sharing всякого стаффа. &laquo;Посмотри вот тут и скажи что-нибудь&raquo;.<br />
- Ну и классические принципы использования РСКВ &#8211; merge и т.п.<br />
<strong>P.S.</strong> Практика показала, что для нетрушных ОСей, таких как windows, лучше воздержаться от создания репозитория на диске D, лучше C, ибо CMD не особо любит команду &laquo;cd d:/&raquo;. Конечно, через тот же Notepad++ можно провести команды для коммитов и пушей, да и &laquo;hg clone&raquo; проходит даже через саму CMD, но&#8230; P.S. на то и P.S.   </p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/roal3.wordpress.com/429/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/roal3.wordpress.com/429/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/roal3.wordpress.com/429/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/roal3.wordpress.com/429/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/roal3.wordpress.com/429/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/roal3.wordpress.com/429/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/roal3.wordpress.com/429/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/roal3.wordpress.com/429/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/roal3.wordpress.com/429/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/roal3.wordpress.com/429/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/roal3.wordpress.com/429/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/roal3.wordpress.com/429/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/roal3.wordpress.com/429/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/roal3.wordpress.com/429/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=roal3.wordpress.com&amp;blog=9181282&amp;post=429&amp;subd=roal3&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://roal3.wordpress.com/2010/10/21/mercurial-bitbucket-quickstart/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Scorpion</media:title>
		</media:content>
	</item>
		<item>
		<title>Mercurial+Bitbucket. Интро</title>
		<link>http://roal3.wordpress.com/2010/10/19/mercurial-bitbucket-intro/</link>
		<comments>http://roal3.wordpress.com/2010/10/19/mercurial-bitbucket-intro/#comments</comments>
		<pubDate>Tue, 19 Oct 2010 16:19:40 +0000</pubDate>
		<dc:creator>Saudade</dc:creator>
				<category><![CDATA[Интернет]]></category>
		<category><![CDATA[bitbucket]]></category>
		<category><![CDATA[dvcs]]></category>
		<category><![CDATA[IT]]></category>
		<category><![CDATA[mercurial]]></category>
		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://roal3.wordpress.com/?p=419</guid>
		<description><![CDATA[Наконец-то, все осколки от найденных quickstart`ов плюс мысли-наблюдения сформировались в некое подобие статьи. Итак, есть в природе такие штуки как системы контроля версий. Распределённые и централизованные (традиционные). Подробно про них расскажут всякие википедии и прочие статьи с просторов Интернета, тут напишу лишь пару фраз. Сейчас модно переходить на распределённые системы контроля версий (РСКВ), либо вообще [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=roal3.wordpress.com&amp;blog=9181282&amp;post=419&amp;subd=roal3&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Наконец-то, все осколки от найденных quickstart`ов плюс мысли-наблюдения сформировались в некое подобие статьи.<br />
Итак, есть в природе такие штуки как <strong><a href="http://en.wikipedia.org/wiki/Revision_control">системы контроля версий</a></strong>. Распределённые и централизованные (традиционные). Подробно про них расскажут всякие википедии и прочие статьи с просторов Интернета, тут напишу лишь пару фраз. Сейчас модно переходить на распределённые системы контроля версий (<strong>РСКВ</strong>), либо вообще начинать с них, тем более РСКВ точно не менее функциональны, чем централизованные, а в некоторых вещах объективно получше.<br />
Герои этого поста: <a href="http://mercurial.selenic.com">mercurial</a> &#8211; один из представителей РСКВ и <a href="https://bitbucket.org">Bitbucket</a> &#8211; free code hosting, работающий с Mercurial. К примеру, аналог связки mercurial + bitbucket это git + github.com. Особенности Mercurial &#8211; адекватная (субъективно, конечно) документация и python-based. Особенности Bitbucket &#8211; с некоторого момента <em>неограниченное</em> количество как приватных, так и публичных репозиториев, неограниченное место под репозиторий (раньше 2 гигабайта выделялось), openID, wiki проекта на bitbucket также может быть репозиторием. Само собой, есть и джентльменский набор в виде issue-tracker`ов и т.д. Github же более мейнстримный, но в целом, дело вкуса. Допустим я, выбирал тип РСКВ (hg или git, bazaar уж слишком редок, хотя и он кем-то используется) по веб-мордам соответствующих code hosting. Вот такой вот я не Ъ.<br />
Bitbucket понравился больше, чем github, gitorius, google code, LaunchPad и SourceForge. Так я и пришёл к Mercurial. Тем более, Mercurial объективно не так уж и отличается от Git. К примеру многочисленные статьи вида &laquo;Почему Git рулит, а все остальное suxx&raquo;, как правило, сравнивают Git с тем же SVN. Поэтому, 99% указанных плюсов Git в таких статьях это также и плюсы Mercurial.<br />
Изначально, РСКВ придумывались для работы с исходным кодом. Они обладают такими функциями как удобное ветвление, слияние, откат и применения ревизий, ну и backup исходников, само собой. Но разве пытливый ум это когда-то останавливало? РСКВ отлично используется, к примеру, лично мной не только для исходников, но и для хранение fb2-файлов. А на днях попробую засунуть в РСКВ raw <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  Понятно, что проблем с этим тоже не будет &#8211; двоичные файлы тоже файлы, и коммиты для них тоже диффами хранятся.<br />
Философия Mercurial, как и РСКВ в целом: все ревизии и коммиты должны сохраняться на века. Поэтому, будьте внимательны и не повторяйте моих ошибок &#8211; сразу коммит и пуш делать одним хоткеем опасно, пусть и очень удобно. Проверяйте, что идёт в коммит перед пушем, иначе nuclear launch codes попадёт в РСКВ, а вычистить с того же Bitbucket после пуша нельзя. Только из коммита в локальном репозитории. Конечно, уничтожение всего репозитория может спасти от распространения nuclear launch codes. Но, во-первых, это если вы обнаружили утечку сразу, а не через месяц, когда апдейты уже распространились по миру. Приватный репозиторий также даёт чуть больше шансов не запалиться, но&#8230; тем не менее.<br />
<strong>P.S.</strong> Объяснение, что такое коммиты и пуши, да и quickstart mercurual + bitbucket &#8211; <a href="http://roal3.wordpress.com/2010/10/21/mercurial-bitbucket-quickstart">следующим</a> постом.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/roal3.wordpress.com/419/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/roal3.wordpress.com/419/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/roal3.wordpress.com/419/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/roal3.wordpress.com/419/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/roal3.wordpress.com/419/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/roal3.wordpress.com/419/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/roal3.wordpress.com/419/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/roal3.wordpress.com/419/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/roal3.wordpress.com/419/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/roal3.wordpress.com/419/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/roal3.wordpress.com/419/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/roal3.wordpress.com/419/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/roal3.wordpress.com/419/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/roal3.wordpress.com/419/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=roal3.wordpress.com&amp;blog=9181282&amp;post=419&amp;subd=roal3&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://roal3.wordpress.com/2010/10/19/mercurial-bitbucket-intro/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Scorpion</media:title>
		</media:content>
	</item>
		<item>
		<title>Predators (2010)</title>
		<link>http://roal3.wordpress.com/2010/10/01/predators-movie-2010/</link>
		<comments>http://roal3.wordpress.com/2010/10/01/predators-movie-2010/#comments</comments>
		<pubDate>Fri, 01 Oct 2010 17:10:15 +0000</pubDate>
		<dc:creator>Saudade</dc:creator>
				<category><![CDATA[прочее]]></category>
		<category><![CDATA[мысли]]></category>
		<category><![CDATA[фильмы]]></category>

		<guid isPermaLink="false">http://roal3.wordpress.com/?p=413</guid>
		<description><![CDATA[По одной из классификаций все снимаемые фильмы можно разделить на категории &#171;Хей, команда креаторов пыталась творить&#187; и &#171;Ну а чего вы хотели-то? Это просто работа, полторы тысячи топовых фильмов в год делать, это вам не шутки, это скучный конвейер&#187;. Понятно, что истина где-то там посередине, но только мозг и глаза зрителя не хотят ничего взвешивать [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=roal3.wordpress.com&amp;blog=9181282&amp;post=413&amp;subd=roal3&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>По одной из классификаций все снимаемые фильмы можно разделить на категории <em>&laquo;Хей, команда креаторов пыталась творить&raquo;</em> и <em>&laquo;Ну а чего вы хотели-то? Это просто работа, полторы тысячи топовых фильмов в год делать, это вам не шутки, это скучный конвейер&raquo;</em>. Понятно, что истина где-то <del datetime="2010-10-01T16:58:21+00:00">там</del> посередине, но только мозг и глаза зрителя не хотят ничего взвешивать и подходить к оценке философски. Мозг и глаза зрителя чётко делят фильмы на выше указанные категории. И даже когда фильм объективно достоин второй категории, по не относящимся к логике причинам, мозг и глаза зрителя часто пытаются найти признаки первой категории классификации.<br />
Фильм <strong>&laquo;Predators&raquo;</strong> (2010) как раз именно такой. И какбэ рецензия на него будет похоже на такую мою <a href="http://roal3.wordpress.com/2010/04/14/avatar-2009-movie/">&laquo;рецензию&raquo;</a> фильма &laquo;Аватар&raquo;. Оба они не такие уж и плохие, но, holy crap, зная кто за ними стоит, зная их возможности, ожидалось на порядок быстрее-выше-сильнее.<br />
Всплывающие вопросы <del datetime="2010-10-01T16:58:21+00:00">искушённого киноэстета</del> очередного зрителя: Где ощущение, что Хищники это кровожадные ублюдки, для которых <em>Охота</em> это самое любимое занятие и <em>Цель</em> жизни? Почему они ведут себя как первокурсники, внезапно нашедшие невидимый костюм и классическую пушку &laquo;три красные точки, образующие треугольник&raquo;? Почему если действия проходят на чужой планете, видны стандартнейшие земные джунгли? Я понимаю, что вы тупо снимали в Боливии, но постпродакшн на что? Разнообразить флору и фауну совсем никак что ли? Тридцатисекундная сцена, показывающая пару планет-спутников вдали над джунглями это как-то маловато для создания атмосферы.<br />
Гончие &laquo;собачки&raquo; Хищников. Хрен с ними, что нарисованы аляповато, но четыре рога сильно вперёд челюсти зачем? Чтобы показать, что они не могут вообще укусить, т.к. рога упираются в землю и мешаются? Такую сцену и показали. Это фейспалм. Такие животные тупо сдохнут от голода же.<br />
Про актёров, играющих людей сказать тоже хорошего почти нечего. Броуди хоть что-то делает, но на нём излишне сильное центрирование, остальные вообще картонные статисты. Зачем изначально так много ввели персонажей, непонятно. Особенно, если их не раскрывать. Раз команда Хищников состоит из троих, сделали бы и троих людишек (ну и оставили бы по сюжету b-side характера, которого играл Фишберн). Может и раскрыли бы побольше. Ну или сделали бы вместо полнометражки, мини-сезон, серий на 6. Возможно было б круто.<br />
Отдельное &laquo;WTF?&raquo; адресуется Роберту Родригесу. В общем-то, уважаемый мной креатор, со своим стилем. Он не один год рвал тельняшку на груди со словами &laquo;Ух я вам покажу! У меня и охрененный сценарий есть и амбиции и т.д.&raquo; Ок, фильм &laquo;Predators&raquo; (2010) имеет в основе и сценарий Родригеса, и его же в качестве продюсера. Но режиссировать его он как-то слился, предоставив дело неизвестному новичку. (Кстати, это стандартная фишка в Голливуде &#8211; &laquo;Если что, я не виноват, это всё он, я же не реж. Все шишки ему&raquo;. Если фильм окажется хорошим,  то &laquo;Я ему помогал и консультировал, без меня он бы не справился). Досадно, что и Нил Маршалл отказался от режиссуры &laquo;Predators&raquo; (2010). Может потому, что работал над <a href="http://friendfeed.com/saudade/10dfee8e/centurion-2010">&laquo;Центурионом&raquo;</a>. Фильмом, грубо говоря с той же идеей, что и Хищники: &laquo;подготовленная группа оказалась в незнакомой местности, наполненной ещё более подготовленными врагами&raquo;.<br />
<strong>Как итог</strong>, &laquo;Predators&raquo;, не столько плох сам фильм, сколько завышенные требования к любимой концепции и знание того, какими могут быть лучшие представители кусочков, из которых лепится фильм, мешают восприятию.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/roal3.wordpress.com/413/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/roal3.wordpress.com/413/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/roal3.wordpress.com/413/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/roal3.wordpress.com/413/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/roal3.wordpress.com/413/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/roal3.wordpress.com/413/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/roal3.wordpress.com/413/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/roal3.wordpress.com/413/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/roal3.wordpress.com/413/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/roal3.wordpress.com/413/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/roal3.wordpress.com/413/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/roal3.wordpress.com/413/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/roal3.wordpress.com/413/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/roal3.wordpress.com/413/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=roal3.wordpress.com&amp;blog=9181282&amp;post=413&amp;subd=roal3&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://roal3.wordpress.com/2010/10/01/predators-movie-2010/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Scorpion</media:title>
		</media:content>
	</item>
	</channel>
</rss>
