<?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>В поисках успеха</title>
	<atom:link href="http://sheremetov.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://sheremetov.com</link>
	<description>Блог оптимистичного менеджера проектов</description>
	<lastBuildDate>Tue, 03 Jan 2012 21:36:14 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.4</generator>
		<item>
		<title>Секрет успеха</title>
		<link>http://sheremetov.com/motivation/%d1%81%d0%b5%d0%ba%d1%80%d0%b5%d1%82-%d1%83%d1%81%d0%bf%d0%b5%d1%85%d0%b0/</link>
		<comments>http://sheremetov.com/motivation/%d1%81%d0%b5%d0%ba%d1%80%d0%b5%d1%82-%d1%83%d1%81%d0%bf%d0%b5%d1%85%d0%b0/#comments</comments>
		<pubDate>Tue, 03 Jan 2012 21:36:14 +0000</pubDate>
		<dc:creator>sheremetov</dc:creator>
				<category><![CDATA[motivation]]></category>

		<guid isPermaLink="false">http://sheremetov.com/?p=879</guid>
		<description><![CDATA[Кажется, секрет успеха найден. Подробности в занимательной инфографике:]]></description>
			<content:encoded><![CDATA[<p>Кажется, секрет успеха найден. Подробности в занимательной инфографике:</p>
<p><a href="http://sheremetov.com/wp-content/uploads/2012/01/succeess.jpeg"><img class="alignleft size-large wp-image-880" title="succeess" src="http://sheremetov.com/wp-content/uploads/2012/01/succeess-788x1024.jpg" alt="" width="788" height="1024" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://sheremetov.com/motivation/%d1%81%d0%b5%d0%ba%d1%80%d0%b5%d1%82-%d1%83%d1%81%d0%bf%d0%b5%d1%85%d0%b0/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Маленькие хитрости и трюки с Amazon Kindle</title>
		<link>http://sheremetov.com/books/kindle-tips/</link>
		<comments>http://sheremetov.com/books/kindle-tips/#comments</comments>
		<pubDate>Sun, 25 Sep 2011 15:34:43 +0000</pubDate>
		<dc:creator>sheremetov</dc:creator>
				<category><![CDATA[books]]></category>

		<guid isPermaLink="false">http://sheremetov.com/?p=866</guid>
		<description><![CDATA[Снимок экрана можно сделать по комбинации клавиш Alt-Shift-G Комбинация клавиш Alt-M запускает встроенную игру «минер» Если вы зальете фотографии на устройство, их можно будет просматривать Если вы читаете новости или проверяете почту через веб, лучше использовать мобильные версии, например m.gmail.com Не забывайте выключать wifi, он значительно быстрее разряжает батарею Отсылайте на свой имейл ваше-имя@free.kindle.com книги и документы и они автоматически попадут вам на читалку в сконвертированном виде [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://sheremetov.com/wp-content/uploads/2011/09/kindle-screen.jpg"><img class="size-full wp-image-869 alignnone" title="kindle-screen" src="http://sheremetov.com/wp-content/uploads/2011/09/kindle-screen.jpg" alt="" width="670" height="377" /></a></p>
<ul>
<li>Снимок экрана можно сделать по комбинации клавиш Alt-Shift-G</li>
<li>Комбинация клавиш Alt-M запускает встроенную игру «минер»</li>
<li>Если вы зальете фотографии на устройство, их можно будет просматривать</li>
<li>Если вы читаете новости или проверяете почту через веб, лучше использовать мобильные версии, например <a href="http://m.gmail.com">m.gmail.com</a></li>
<li>Не забывайте выключать wifi, он значительно быстрее разряжает батарею</li>
<li>Отсылайте на свой имейл ваше-имя@free.kindle.com книги и документы и они автоматически попадут вам на читалку в сконвертированном виде после включения wi-fi</li>
<li>Если вам нужно искать текст по всей библиотеке, вы просто печатаете этот текст на Home. По клику на найденной книге вы увидите все фрагменты содержащие искомый текст</li>
<li>Киндл можно использовать в роли калькулятора, — для этого в окне поиска надо вводить арифметические операции типа 212 + 344, а читалка покажет ответ после нажатия «ввод» или «поиск»</li>
<li>В случае проблем с книдлом, его рекомендуется перезагрузить, — потянуть слайдер в положение выключено, подождать 20 секунд, экран станет белым, потом подождать еще 20 секунд, после этого устройство будет перезагружено</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://sheremetov.com/books/kindle-tips/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Сервисы, полезные пользователям Amazon Kindle</title>
		<link>http://sheremetov.com/books/kindle-services/</link>
		<comments>http://sheremetov.com/books/kindle-services/#comments</comments>
		<pubDate>Sat, 24 Sep 2011 15:26:29 +0000</pubDate>
		<dc:creator>sheremetov</dc:creator>
				<category><![CDATA[books]]></category>

		<guid isPermaLink="false">http://sheremetov.com/?p=859</guid>
		<description><![CDATA[Больше полугода у меня это устройство. За это время было прочитано массу книг, новостей, статей, и я хочу поделиться некоторыми хитростями, и навыками работы с ним. Я уже рассказывал о Calibre. Эта программа отлично зарекомендовала себя за все время, плюс постоянно выходят обновления с исправлениями и новыми функциями. Еще один ресурс сделаыший kindle для меня более чем удобным устройством, это instapaper.com. Для тех кто не в курсе что [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://sheremetov.com/wp-content/uploads/2011/09/amazon-kindle.jpg"><img class="alignleft size-full wp-image-860" style="padding-right: 20px;" title="amazon-kindle" src="http://sheremetov.com/wp-content/uploads/2011/09/amazon-kindle.jpg" alt="" width="372" height="260" align="left"/></a>Больше полугода у меня это устройство. За это время было прочитано массу книг, новостей, статей, и я хочу поделиться некоторыми хитростями, и навыками работы с ним.</p>
<p>Я уже <a href="http://sheremetov.com/books/is-kindle-worth-you/">рассказывал о Calibre</a>. Эта программа отлично зарекомендовала себя за все время, плюс постоянно выходят обновления с исправлениями и новыми функциями. Еще один ресурс сделаыший kindle для меня более чем удобным устройством, это <a href="http://instapaper.com">instapaper.com</a>. Для тех кто не в курсе что это такое, — организованный список того что вы оставляете на «почитать попозже», пользуясь кнопкой интегрированной прямо в ваш броузер. Когда у вас появляется время instapaper преоставляет все отложенные статья и в удобном для прочтения виде (хитрый алгоритм показывает вам только текст самой статьи, вырезая элементы интерфейса сайта и рекламу). Сервис интегрируется с iPhone, iPad, и самое интересное, с kindle. Когда у вас накопилось достаточно статей, вы отсылаете себе их из instapaper на устройство по нажатию на одной кнопке, и после синхронизации наслаждаетесь чтением текстов в оптимизированном для kindle виде.</p>
<p>Второй любопытный сервис это <a href="http://kindlefeeder.com/">kindlefeeder.com</a>. Он следит за обновлениями ваших RSS лент и рассылает свежие новости по заданному расписанию. К сожалению полные тексты статей редко включены в RSS, но возможно именно с вашими фидами все будет в порядке, по крайней мере, стоит попробовать. Аналогичный сервис решающий, как мне показалось, проблему неполных фидов, <a href="http://fivefilters.org/">fivefilters.org</a>, но он стоит денег, так что, не могу сказать что-то более конкретное о нем.</p>
]]></content:encoded>
			<wfw:commentRss>http://sheremetov.com/books/kindle-services/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Со всяким-ли клиентом стоит работать?</title>
		<link>http://sheremetov.com/motivation/choice-dilemma/</link>
		<comments>http://sheremetov.com/motivation/choice-dilemma/#comments</comments>
		<pubDate>Wed, 27 Jul 2011 21:06:00 +0000</pubDate>
		<dc:creator>sheremetov</dc:creator>
				<category><![CDATA[motivation]]></category>
		<category><![CDATA[клиенты]]></category>
		<category><![CDATA[продажи]]></category>

		<guid isPermaLink="false">http://sheremetov.com/?p=847</guid>
		<description><![CDATA[С точки зрения маркетинга и отдела продаж это конечно же кощунство и ересь. Это и понятно, ведь каждый упущенный клиент это упущенная возможность заработать. Как я уже писал, потерю денег, человек переживает более, остро чем потерю возможности заработать вдвое большую сумму. Так что, разберемся что мы теряем, а что мы находим. Если вы работаете в [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://sheremetov.com/wp-content/uploads/2011/07/not_the_best-_choice.jpg"><img class="alignleft size-full wp-image-806" style="padding-right: 20px;" title="not_the_best _choice" src="http://sheremetov.com/wp-content/uploads/2011/07/not_the_best-_choice.jpg" alt="" width="357" height="475" align="left" /></a> С точки зрения маркетинга и отдела продаж это конечно же кощунство и ересь. Это и понятно, ведь каждый упущенный клиент это упущенная возможность заработать. Как я уже <a href="http://sheremetov.com/books/turtles-way/">писал</a>, потерю денег, человек переживает более, остро чем потерю возможности заработать вдвое большую сумму. Так что, разберемся что мы теряем, а что мы находим.</p>
<p>Если вы работаете в сфере, где результат и успех работы в какой-то мере зависит как от ваших усилий, так и от усилий клиента, вы попадаете в щепетильную ситуацию, когда, даже выложившись на 120% вы не добьетесь успеха. Под успехом давайте подразумевать результат вашей работы, который полностью удовлетворит потребности клиента с одной стороны, и не будет напрасной тратой времени и усилий с вашей (имеется ввиду вознаграждение в виде опыта, последующих перспектив и банально, денег).</p>
<p>В современном мире огромной конкуренции между компаниями, предоставляющими сервис, либо продукт, ситуация напоминает песню про девчат на танцах, стоящих в сторонке, потому как "на 10 девчонок, приходится 9 ребят".  Чем же рискует девушка, танцующая с пусть и сильным, во многом оригинальным, черным парнем? Отойдем от аналогий, и посмотрим с точки зрения сотрудничества, что вы теряете с клиентом с которым по каким-то причинам не удается построить эффективного взаимодействия:</p>
<ul>
<li>Вы теряете время, самый дорогой и невосполнимый ресурс.</li>
<li>Вы теряете возможности, которые могли бы быть приобретены вами вместо мук довести проект до конца. С другой стороны, ваш клиент теряет шанс найти того исполнителя, с которым будет счастлив.</li>
<li>Вы не работаете на перспективу, и даже наоборот, - вместо того чтобы создать продукт, который сможет привлечь новых клиентов, или укрепит доверие старых, вы делаете что-то, что будет гарантированно подвергнуто критике со стороны, с возможной утратой доли репутации.</li>
<li>Вы и клиент испытываете стресс, а нервные клетки стоят не дешевле времени.</li>
</ul>
<p>Хочу предупредить, что из моего опыта, не всякий клиент с которым не удается сразу наладить общий язык не стоит того, чтобы отказывать ему в сотрудничестве. Очень часто разногласия на ранней стадии помогают расставить все точки над "i", а потом уже добиться желаемого результата. Непонимание может быть основано на разнице культур, возрастов, профессионального опыта и чем выше ваш профессионализм, тем больше барьеров на пути успешного сотрудничества вы сможете преодолеть. Но если вы сталкиваетесь с непреодолимой стеной, лучше отступить. Вот, первые признаки того что лучше отступить:</p>
<ul>
<li>Клиент, не знает либо не понимает чего он хочет, а ваше мнение не является для него авторитетным.</li>
<li>Клиент четко понимает чего он хочет, но вы прекрасно знаете, что это не то, что вы готовы ему предоставить (в силу качества, сроков или бюджета). Особенно это случай опасен если клиент несговорчив и не идет на компромиссы.</li>
<li>Клиент не принимает решения самостоятельно, не берет на себя ответственности за решения, но при этом активно принимает участие в проекте.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://sheremetov.com/motivation/choice-dilemma/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Фейс Куртис. Путь Черепах. Из дилетантов в легендарные трейдеры.</title>
		<link>http://sheremetov.com/books/turtles-way/</link>
		<comments>http://sheremetov.com/books/turtles-way/#comments</comments>
		<pubDate>Sat, 02 Apr 2011 18:29:36 +0000</pubDate>
		<dc:creator>sheremetov</dc:creator>
				<category><![CDATA[books]]></category>

		<guid isPermaLink="false">http://sheremetov.com/?p=836</guid>
		<description><![CDATA[Рекомендую прочитать эту книгу всем, кто интересуется трейдингом и ценными бумагами. Книга читается легко и непринужденно. Помимо практических советов и раскрытия секретов трейдинга, автор делится своими личными впечатлениями и книга воспринимается как художественная литература. Хочу поделиться с вами несколькими интересными мыслями что я нашел. Они применимы не только к трейдингу, но и окружающей нас жизни, психологии людей. Просто удивительно, как хорошая книга о столь узкой сфере [...]]]></description>
			<content:encoded><![CDATA[<p>Рекомендую прочитать эту книгу всем, кто интересуется трейдингом и ценными бумагами. Книга читается легко и непринужденно. Помимо практических советов и раскрытия секретов трейдинга, автор делится своими личными впечатлениями и книга воспринимается как художественная литература.</p>
<p>Хочу поделиться с вами несколькими интересными мыслями что я нашел. Они применимы не только к трейдингу, но и окружающей нас жизни, психологии людей. Просто удивительно, как хорошая книга о столь узкой сфере как трейдинг может рассказать по психологии человека, политике, навыкам игры в покер, бизнесе и обучении.</p>
<blockquote><p>Вот некоторые примеры когнитивных предубеждений, влияющих на трейдинг:</p>
<ul>
<li>Неприятие потерь — склонность избегать расходов, а не стремиться получать доходы.</li>
<li>Эффект понесенных расходов — склонность рассматривать уже потраченные деньги как нечто более ценное по сравнению с деньгами, которые могут быть потрачены в будущем.</li>
<li>Эффект распоряжения — склонность фиксировать доходы и не фиксировать потери.</li>
<li>Предубеждение относительно результата — склонность оценивать решение по его результатам, а не по сути самого решения в момент его принятия.</li>
<li>Предубеждение относительно новизны — склонность расценивать недавние данные или опыт как более важные по сравнению с полученными ранее.</li>
<li>Привязывание — склонность полагаться на уже известную информацию, привязываться к ней. — Эффект снежного кома — склонность верить в то, во что верят многие другие.</li>
<li>Вера в закон малых чисел — склонность делать неоправданные заключения, базируясь на недостаточной информации.</li>
</ul>
</blockquote>
<p>Для маркетологов, наверное это прописные истины, но для меня было откровением:</p>
<blockquote><p>Люди, склонные к неприятию потерь, очевидно, предпочитают лучше не проиграть, чем выиграть. Для большинства людей потерять 100 долларов — не то же самое, что не выиграть ту же сумму. Однако с рациональной точки зрения это одно и то же — и в том и в другом случае присутствует отрицательный результат в размере 100 долларов. Согласно некоторым исследованиям, психологический шок от потери примерно в два раза мощнее, чем от выигрыша.</p></blockquote>
<p>А вот например, трюк, которым часто пользуются политики:</p>
<blockquote><p>Предубеждение относительно новизны — склонность расценивать последние данные или опыт как наиболее важные. Сделка, проведенная накануне, значит для людей гораздо больше, чем сделка прошлой недели или прошлого года. Два последних месяца неудачных сделок столь же значимы, сколь предыдущие шесть месяцев успеха. Таким образом, результат серии недавних сделок может заставить большинство трейдеров сомневаться в своем методе и процессе принятия решений.</p></blockquote>
<p>Это в равной степени используется и политиками и масс медиа:</p>
<blockquote><p>Эффект снежного кома (также называемый стадным чувством) заключается в том, что человек верит во что-то только потому, что в это верят многие другие. Эффект снежного кома является одной из причин непрекращающегося роста цен в конце «мыльного пузыря».</p></blockquote>
<p>А вот, по-моему, отлично применимо к предпринимательству:</p>
<blockquote><p>Хороший трейдинг не означает «быть правым», он означает «делать правильные вещи». Если хотите достичь успеха, вы должны думать на долгосрочную перспективу и игнорировать результаты отдельных сделок.</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://sheremetov.com/books/turtles-way/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Сможет ли Kindle занять достоное место на вашей книжной полке?</title>
		<link>http://sheremetov.com/books/is-kindle-worth-you/</link>
		<comments>http://sheremetov.com/books/is-kindle-worth-you/#comments</comments>
		<pubDate>Sat, 02 Apr 2011 17:50:20 +0000</pubDate>
		<dc:creator>sheremetov</dc:creator>
				<category><![CDATA[books]]></category>

		<guid isPermaLink="false">http://sheremetov.com/?p=822</guid>
		<description><![CDATA[Насколько просто Kindle использовать не гикам? Обычным людям, которых большинство. Нашим мама-папам-бабушкам-дедушкам.  Тем для кого записать фильм на флешку это серьезное испытание, а для записи на CD нужна помощь специалиста под рукой. Из коробки kindle предлагает вам два способа: заливать книги как на флешку, при подключении через шнурок (PRC, MOBI, PDF, TXT, HTML) отправлять книги в [...]]]></description>
			<content:encoded><![CDATA[<p>Насколько просто Kindle использовать не гикам? Обычным людям, которых большинство. Нашим мама-папам-бабушкам-дедушкам.  Тем для кого записать фильм на флешку это серьезное испытание, а для записи на CD нужна помощь специалиста под рукой.</p>
<p>Из коробки kindle предлагает вам два способа:</p>
<ul>
<li>заливать книги как на флешку, при подключении через шнурок (PRC, MOBI, PDF, TXT, HTML)</li>
<li>отправлять книги в форматах Microsoft Word (DOC, DOCX), PDF, HTML, TXT, RTF, JPEG, GIF, PNG, BMP, PRC, MOBI на ваш специальный email, на амазон. Сервис будет конвертировать книгу и через wifi синхронизировать его</li>
</ul>
<p>Первый способ кажется мне недостаточно удобным, поточу что вам придется заниматься рутинными операциями конвертации. Второй идеально подойдет бабушкам-дедушкам в зоне wifi. Они могут позвонить вам и попросить залить книгу, вы отправите её на их e-mail и книга автоматически появится на устройстве. В случае, если wifi под рукой нет, но есть компьютер, я бы посоветовал использовать <a href="http://calibre-ebook.com/">Calibre</a>.  Это что-то типа личного iTunes для вашей электронной библиотеки.  Вот список наиболее сильных возможностей:</p>
<ul>
<li>Во-первых, это кросс-платформенность. Я давненько тяготею к тому, чтобы софт, которым я пользуюсь, был и на маке, и по возможности на линуксе. Таким образом, переключаясь с системы на систему, практически не ощущаю дискомфорта.</li>
<li>Каталогизация библиотеки, с удобным писком по автору, названию, тегам, издателю и рейтингам</li>
<li>Автоматическая конвертация из формата в формат с огромным количеством всяческих настроек (для тех кому они интересны, хотя по умолчанию тоже неплохо конвертирует)</li>
<li>Синхронизация книг с читалками. Вот <a href="http://calibre-ebook.com/user_manual/faq.html#what-devices-does-app-support">внушительный список поддерживаемых устройств</a>.</li>
<li>Загрузка RSS и подготовка газеты в формате вашего устройства. Синхронизирует самостоятельно. Таким образом к утреннему кофе у вас всегда свежие новости.</li>
<li>Просмотрщик книг. Независимо от формата, вы всегда сможете прочитать текст книги на компьютере.</li>
<li>Гиковская функция. Calibre может представлять из себя вебсервер, предоставляющий доступ по сети к вашей библиотеке.</li>
<li>Очень удобно видеть аннотации, отмеченные в книгах, по ходу чтения.</li>
</ul>
<p>Вот как выглядит основной экран Calibre:</p>
<p><a href="http://sheremetov.com/wp-content/uploads/2011/04/main.png"><img class="aligncenter size-medium wp-image-824" title="main" src="http://sheremetov.com/wp-content/uploads/2011/04/main-300x227.png" alt="" width="300" height="227" /></a></p>
<p><a href="http://sheremetov.com/wp-content/uploads/2011/04/main.png"></a>Настраивается Calibre при помощи несложного мастера.</p>
<p>Вот первый шаг. Выбор языка и места сохранения библиотеки, хороший вариант использовать <a href="http://dropbox.com">dropbox</a> для вашей библиотеки, таким образом на всех компьютерах библиотека будет синхронизирована, а в облаке будет хранится резервная её копия.</p>
<p><a href="http://sheremetov.com/wp-content/uploads/2011/04/step1.png"><img class="aligncenter size-medium wp-image-826" title="step1" src="http://sheremetov.com/wp-content/uploads/2011/04/step1-300x265.png" alt="" width="300" height="265" /></a></p>
<p><a href="http://sheremetov.com/wp-content/uploads/2011/04/step1.png"></a>Второй шаг. Выбор устройства. В зависимости от типа устройства Calibre будет использовать формат файлов для конвертирования перед отправкой в читалку.</p>
<p><a href="http://sheremetov.com/wp-content/uploads/2011/04/step2.png"><img class="aligncenter size-medium wp-image-827" title="step2" src="http://sheremetov.com/wp-content/uploads/2011/04/step2-300x286.png" alt="" width="300" height="286" /></a></p>
<p>Третий шаг. Установка вашего email на который нужно отсылать книги, а также, настройки вашего почтового ящика, с которого можно отсылать (амазон принимает книги только с "доверенных ящиков", воизбежании получения спама).</p>
<p><a href="http://sheremetov.com/wp-content/uploads/2011/04/step3.png"><img class="aligncenter size-medium wp-image-828" title="step3" src="http://sheremetov.com/wp-content/uploads/2011/04/step3-300x286.png" alt="" width="300" height="286" /></a></p>
<p>Четвертый, последний шаг.</p>
<p><a href="http://sheremetov.com/wp-content/uploads/2011/04/step4.png"><img class="aligncenter size-medium wp-image-829" title="step4" src="http://sheremetov.com/wp-content/uploads/2011/04/step4-300x286.png" alt="" width="300" height="286" /></a></p>
<p>Теперь можно подключив устройство к компьютеру легко синхронизировать ваши книги, Calibre позаботится о конвертации:</p>
<p><a href="http://sheremetov.com/wp-content/uploads/2011/04/send.png"><img class="aligncenter size-full wp-image-830" title="send" src="http://sheremetov.com/wp-content/uploads/2011/04/send.png" alt="" width="493" height="335" /></a></p>
<p>Зеленые "галки" показывают какие книги уже синхронизированы.</p>
<p>Идею написания этого поста подкинул Дима Кочетов, за что ему отдельное спасибо.</p>
]]></content:encoded>
			<wfw:commentRss>http://sheremetov.com/books/is-kindle-worth-you/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Чтение электронных книг с Amazon Kindle</title>
		<link>http://sheremetov.com/books/amazon-kindle-reading/</link>
		<comments>http://sheremetov.com/books/amazon-kindle-reading/#comments</comments>
		<pubDate>Sun, 06 Mar 2011 19:39:05 +0000</pubDate>
		<dc:creator>sheremetov</dc:creator>
				<category><![CDATA[books]]></category>

		<guid isPermaLink="false">http://sheremetov.com/?p=814</guid>
		<description><![CDATA[Некоторое время назад я обратил внимание на то что чтение RSS, Twitter, Habrahabr отнимают немало времени а багаж новых знаний не особо-то и пополняет.  В тоже время книги, дают широких охват, аналитику и последовательную подачу материала, что позволяет быстро изучать даже довольно сложный материал. Классический способ чтения, - бумажные книги, понятен и останавливаться тут надолго [...]]]></description>
			<content:encoded><![CDATA[<p>Некоторое время назад я обратил внимание на то что чтение RSS, Twitter, Habrahabr отнимают немало времени а багаж новых знаний не особо-то и пополняет.  В тоже время книги, дают широких охват, аналитику и последовательную подачу материала, что позволяет быстро изучать даже довольно сложный материал. Классический способ чтения, - бумажные книги, понятен и останавливаться тут надолго не будем. Из достоинств книг бумажных можно назвать несколько: не требует батарейки, есть особая эстетика в шуршании страниц из недостатков, очень удобно читать с карандашом - занимают много места, накапливают пыль, есть сложности с покупкой бумажных книг, не очень удобно искать по тексту.</p>
<p><a href="http://sheremetov.com/wp-content/uploads/2011/03/kindle-in-box.jpg"><img class="alignleft size-full wp-image-815" style="padding: 0px 20px 10px 0px;" title="kindle-in-box" src="http://sheremetov.com/wp-content/uploads/2011/03/kindle-in-box.jpg" alt="" width="400" height="400" align="left" /></a></p>
<p>Устройство которым я обзавелся называется <a href="http://www.amazon.com/dp/B002Y27P3M/">Amazon Kindle</a>, а точнее шестидюймовая его версия за $139, версия за $189 включает в себя 3G интернет, бесплатный по всему миру. Версия 9.7 дюймов, как мне кажется немного громоздка и дороговата, хотя для тех кто читает более 2х часов в день, наверное шикарный вариант. Говоря о читалке нельзя, наверное не затронуть тему планшетов, их частенько сравнивают. Из достоинств планшетов над читалками - светящийся экран, что безусловно удобнее чем любой светильник, ну и размер экрана, если он конечно больше, так как из моего опыта, шестидюймовый экран для чтения страницы pdf это абсолютный минимум, больше - лучше. Отсутствие комфортного серфинга по интернет и игрушек, лично для меня, было достоинством, позволяя сфокусироваться на чтении и только. К этому быстро привыкаешь, - появилось свободное время, включил, и мгновенно продолжаешь чтение с того же места где прекратил читать в прошлый раз.</p>
<p>Теперь, личные впечатления от устройства. Оно потрясающее! Невероятно простая штука, и если ваши мамы-папы-бабушки читают, они без труда его освоят. Трех гигабайт памяти под книги я все еще не забил. <a href="http://calibre-ebook.com/">Colibre</a> очень удобная программа для приведения в порядок своей электронной библиотеки. Это кросс-платформенная штука позволяет централизовать, классифицировать по тегам и категориям, автоматически конвертирует книги в формат вашего устройства из практически любого формата. При использовании Colibre в в комплексе с <a href="http://drpobox.com">Drpobox</a> позволяет прозрачно синхронизировать библиотеку между несколькими компьютерами. Colibre также, умеет генерировать книги из ваших RSS и переодически обновлять их у вас на устройстве. Учитывая что Kindle может получать книги отосланные вам на email и загружать их по wifi процесс это практически прозрачный для вас.</p>
<div style="clear: both;">
<p><a href="http://sheremetov.com/wp-content/uploads/2011/03/kindle-box.jpg"><img class="alignleft size-full wp-image-816" style="padding: 0px 20px 10px 0px;" title="kindle-box" src="http://sheremetov.com/wp-content/uploads/2011/03/kindle-box.jpg" alt="" width="400" height="400" align="left" /></a></p>
<p>Дизайн очень элегантный. В руке лежит органично и удобно. Батареи с первой зарядки за месяц я так и не израсходовал, правда он немного подзаряжается в моменты синхронизации с PC.  Помимо чтения можно слушать музыку-подкасты-аудиокниги, но эта функция оказалась невостребованной у меня. Я люблю вдохновляться музыкой при чтении художественной литературы, но её, как раз, совсем не читаю последнее время.</p>
<p>Встроенный wifi это здорово, но для серфинга устройство, как мне кажется, не совсем подходит в силу медленного отклика, неудобного клика по ссылкам.  Хотя, надо отдать устройству должное, навороченный интерфейс gmail, со всей своей интерактивностью на javascript "поднимается", и довольно быстро работает.</p>
<p>Очень понравилось, как установилось обновление, - очередной раз, когда устройство "нашло" wifi, оно попросило его не трогать, показало прогресс-бар с загрузкой, перегрузилось и сообщило и том что новая версия прошивки установлена, - так у меня не обновлялось еще ни одно устройство.</p>
<p>Хочу сказать, что целью поста является ни реклама продукта, а попытка поделиться опытом, который надеюсь пригодится и вам, так что если вы задумались об электронной читалке обратите свое внимание на Киндл.</p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://sheremetov.com/books/amazon-kindle-reading/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Актуальность применения ООП сегодня</title>
		<link>http://sheremetov.com/programming/oop-today/</link>
		<comments>http://sheremetov.com/programming/oop-today/#comments</comments>
		<pubDate>Mon, 03 Jan 2011 17:47:49 +0000</pubDate>
		<dc:creator>sheremetov</dc:creator>
				<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://sheremetov.com/?p=798</guid>
		<description><![CDATA[Хочу поблагодарить Сергея, одного из своих читателей, задавших интересный вопрос. Я решил ответить на него в блоге, так как тема может быть интересна еще кому-нибудь. Вопрос был о том, насколько актуальна сегодня парадигма ООП, и что ждет программирование дальше. Сергей ссылался на интересное обсуждение здесь. Из комментариев этого обсуждения можно видеть, насколько тема неоднозначна и противоречива. Я, ни в коем случае не считаю себя большим экспертом в этой [...]]]></description>
			<content:encoded><![CDATA[<p>Хочу поблагодарить Сергея, одного из своих читателей, задавших интересный вопрос. Я решил ответить на него в блоге, так как тема может быть интересна еще кому-нибудь.</p>
<p><a href="http://sheremetov.com/wp-content/uploads/2011/01/WrongProgramming.jpg"><img align="left" style="padding-right:20px;" class="alignleft size-full wp-image-806" title="WrongProgramming" src="http://sheremetov.com/wp-content/uploads/2011/01/WrongProgramming.jpg" alt="" width="400" height="518" /></a> Вопрос был о том, насколько актуальна сегодня парадигма ООП, и что ждет программирование дальше. Сергей ссылался на интересное обсуждение здесь. Из комментариев этого обсуждения можно видеть, насколько тема неоднозначна и противоречива. Я, ни в коем случае не считаю себя большим экспертом в этой области, но есть некоторые мысли, которыми хочу поделиться, надеюсь это будет интересно, ведь недаром, спору «нужен ли C++» уже почти пол века.</p>
<p>Первое, о чем хочется упомянуть, это ни функциональные языки программирования, ни DSL, не являются чем-либо новым, равно как и многие другие «новые подходы», вновь ставшие популярными последние годы. Многие из них берут начало в 60х годах, когда программистов было мало, и пришли они, в основном, из среды математиков и физиков. Тогда было легко изобретать новое, и это быстро подхватывалось пытливыми умами, развивалось и применялось. Сейчас количество программистов значительно выросло, и как следствие, уровень среднего программиста стал значительно ниже. Программирование проделало длинный путь от искусства и науки к ремеслу. Программистская среда стала более инертной, с трудом принимая новые подходы, и чем сложнее подход, тем менее он популярен. Именно поэтому, уже завоевавшая популярность, несложная концепция объектного проектирования по-прежнему остается такой востребованной. Несколько слов в защиту ООП, — во-первых, это работает. Так или иначе, программисты научились понимать друг-друга, строить сложные системы и создавать абстракции при помощи паттернов. Множество программистов начало думать в терминах ООП, множество кода написано и протестировано. Это то, что делает ООП актуальным еще долгое время, особенно для решения классических задач. Но для задач нетривиальных, всегда необходимо пробовать и применять новые подходы. «Серебряной пули» не существует. Более того, понимание подходов функционального программирования, макроязыков, алгоритмов, устройства компиляторов-интерпретаторов дают программисту неоспоримые преимущества для написание качественного и гибкого кода. Поэтому изучайте, пробуйте, и эти знания изменят ваш код и подходы к работе.</p>
<p>Несколько слов о том, как я вижу развитие программирования:</p>
<ul>
<li> Я думаю что постепенно программирование будет смещаться от императивных языков к декларативным. Я имею ввиду, что человек не будет фокусироваться на пути реализации, не будет описывать «как делать», а лишь, «что должно получиться». Профессия программиста трансформируется, — будут своего рода аналитики, описывающие требования к системе, на основании которых система будет работать, без всякого дополнительного кодирования.</li>
<li>В связи с тем, что развитие современных процессоров вступило в фазу экстенсивного развития (от гонки частот мы переходим к гонке количества ядер), скоро мы должны увидеть взлет популярности простого функционального языка, к сожалению это не будет ни haskel и erlang, а вероятнее всего javascript. Хотя тут, очень легко ошибиться.</li>
<li>Еще раньше, я думаю, мы увидим то, как средства визуального проектирования вновь войдут в моду. С одной стороны, это немного противоречит «декларативной природе», с другой — я думаю нам еще долго не удастся настолько специфицировать интерфейсы, чтобы стало возможным генерировать их.</li>
<li>Интерфейсы взаимодействия пользователя с системой будут стандартизироваться все больше и больше. Роль дизайна будет решающей, и попытки специфицировать UI будут способствовать как обучению пользователей взаимодействовать с системами, так и проектировщиков, строить их максимально предсказуемо.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://sheremetov.com/programming/oop-today/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>AppEngine, преодоление лимита в 1000 элементов на запрос</title>
		<link>http://sheremetov.com/programming/appengine-more-than-1000/</link>
		<comments>http://sheremetov.com/programming/appengine-more-than-1000/#comments</comments>
		<pubDate>Sun, 07 Nov 2010 08:15:10 +0000</pubDate>
		<dc:creator>sheremetov</dc:creator>
				<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://sheremetov.com/?p=792</guid>
		<description><![CDATA[Google app engine, очень удобная и гибкая платформа, для веб разработки, но к сожалению постоянно приходится думать об ограничениях, налагаемых на процессорное время, объем занимаемой памяти, запросы к хранилищу, тем самым, организовывая нас, заставляя писать более оптимизированный код. С другой стороны, а что если действительно нужно выполнять сложную операцию, или «тяжелый запрос»? Тогда хотелось бы «спрятать», сложности и ограничения app engine внутрь изящного синтаксиса python. [...]]]></description>
			<content:encoded><![CDATA[<p>Google app engine, очень удобная и гибкая платформа, для веб разработки, но к сожалению постоянно приходится думать об ограничениях, налагаемых на процессорное время, объем занимаемой памяти, запросы к хранилищу, тем самым, организовывая нас, заставляя писать более оптимизированный код. С другой стороны, а что если действительно нужно выполнять сложную операцию, или «тяжелый запрос»? Тогда хотелось бы «спрятать», сложности и ограничения app engine внутрь изящного синтаксиса python. В данном случае предлагается использовать питоновые итератиры, для того, что бы прозрачно для пользователя, выбирать неограниченное количество записей из app engine. Хотя, как видно из кода, все-таки некоторые ограничения встроены в класс, в ствойстве _debug_limit.</p>
<p>Вот код итератора:</p>
<pre class="python">&nbsp;
<span style="color: #ff7700;font-weight:bold;">class</span> QueryIter<span style="color: black;">&#40;</span><span style="color: black;">&#41;</span>:
&nbsp;
    _limit_fetch = <span style="color: #ff4500;">1000</span>
    _items = <span style="color: #008000;">None</span>
    _cursor = <span style="color: #008000;">None</span>
    _debug_limit = <span style="color: #ff4500;">10000</span>
&nbsp;
    <span style="color: #ff7700;font-weight:bold;">def</span> <span style="color: #0000cd;">__init__</span><span style="color: black;">&#40;</span><span style="color: #008000;">self</span>, query<span style="color: black;">&#41;</span>:
        <span style="color: #008000;">self</span>._query = query
        <span style="color: #008000;">self</span>._fetchNext<span style="color: black;">&#40;</span><span style="color: black;">&#41;</span>        
&nbsp;
    <span style="color: #ff7700;font-weight:bold;">def</span> _fetchNext<span style="color: black;">&#40;</span><span style="color: #008000;">self</span><span style="color: black;">&#41;</span>:
        <span style="color: #008000;">self</span>._items = <span style="color: #008000;">iter</span><span style="color: black;">&#40;</span><span style="color: #008000;">self</span>._query.<span style="color: black;">fetch</span><span style="color: black;">&#40;</span><span style="color: #008000;">self</span>._limit_fetch<span style="color: black;">&#41;</span><span style="color: black;">&#41;</span>
        <span style="color: #008000;">self</span>._cursor = <span style="color: #008000;">self</span>._query.<span style="color: black;">cursor</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span>        
&nbsp;
    <span style="color: #ff7700;font-weight:bold;">def</span> <span style="color: #0000cd;">__iter__</span><span style="color: black;">&#40;</span><span style="color: #008000;">self</span><span style="color: black;">&#41;</span>:
        <span style="color: #ff7700;font-weight:bold;">return</span> <span style="color: #008000;">self</span>
&nbsp;
    <span style="color: #ff7700;font-weight:bold;">def</span> next<span style="color: black;">&#40;</span><span style="color: #008000;">self</span><span style="color: black;">&#41;</span>:
        <span style="color: #008000;">self</span>._debug_limit -= <span style="color: #ff4500;">1</span>
        <span style="color: #ff7700;font-weight:bold;">if</span> <span style="color: #008000;">self</span>._debug_limit &lt; = <span style="color: #ff4500;">0</span>:
            <span style="color: #ff7700;font-weight:bold;">raise</span> <span style="color: #008000;">StopIteration</span>
        <span style="color: #ff7700;font-weight:bold;">else</span>:
            <span style="color: #ff7700;font-weight:bold;">try</span>:
                result = <span style="color: #008000;">self</span>._items.<span style="color: black;">next</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span>
            <span style="color: #ff7700;font-weight:bold;">except</span> <span style="color: #008000;">StopIteration</span>, e:
                <span style="color: #008000;">self</span>._query.<span style="color: black;">with_cursor</span><span style="color: black;">&#40;</span><span style="color: #008000;">self</span>._cursor<span style="color: black;">&#41;</span>
                <span style="color: #008000;">self</span>._fetchNext<span style="color: black;">&#40;</span><span style="color: black;">&#41;</span>
                result = <span style="color: #008000;">self</span>._items.<span style="color: black;">next</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span> <span style="color: #808080; font-style: italic;"># raised exception stop the loop</span>
            <span style="color: #ff7700;font-weight:bold;">return</span> result</pre>
<p>А вот, пример применения:</p>
<pre class="python">query = MyModel.<span style="color: black;">all</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span>
<span style="color: #ff7700;font-weight:bold;">for</span> i <span style="color: #ff7700;font-weight:bold;">in</span> QueryIter<span style="color: black;">&#40;</span>query<span style="color: black;">&#41;</span>:
    <span style="color: #ff7700;font-weight:bold;">print</span> i</pre>
]]></content:encoded>
			<wfw:commentRss>http://sheremetov.com/programming/appengine-more-than-1000/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Google app engine как платформа для вебразработки. Мониторинг сайтов при помощи app engine.</title>
		<link>http://sheremetov.com/programming/app-engine-monitoring/</link>
		<comments>http://sheremetov.com/programming/app-engine-monitoring/#comments</comments>
		<pubDate>Sat, 02 Oct 2010 06:59:53 +0000</pubDate>
		<dc:creator>sheremetov</dc:creator>
				<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://sheremetov.com/?p=780</guid>
		<description><![CDATA[Какое-то время назад я&#160;увлекся экспериментами с&#160;платформой google app engine. Впечатления очень положительные. Безусловно не&#160;всякое приложение можно сделать в&#160;силу ограничение на&#160;скорость работы скрипта, время работы, некоторые возможности (например сокетные коннекты). Подкупает простота. Сделано программистами для программистов. Масса возможностей и&#160;ничего лишнего. Очень легко настраиваются задачи запускаемые по&#160;времени (типа отложенных задач и&#160;типа задач по&#160;крону). Очень просто работать с&#160;хранилище, [...]]]></description>
			<content:encoded><![CDATA[<p>Какое-то время назад я&nbsp;увлекся экспериментами с&nbsp;платформой <a href="http://code.google.com/appengine/">google app engine</a>. Впечатления очень положительные. Безусловно не&nbsp;всякое приложение можно сделать в&nbsp;силу ограничение на&nbsp;скорость работы скрипта, время работы, некоторые возможности (например сокетные коннекты). Подкупает простота. Сделано программистами для программистов. Масса возможностей и&nbsp;ничего лишнего. Очень легко настраиваются задачи запускаемые по&nbsp;времени (типа отложенных задач и&nbsp;типа задач по&nbsp;крону). Очень просто работать с&nbsp;хранилище, которое не&nbsp;совсем SQL, что конечно дает свои достоинства и&nbsp;недостатки, но&nbsp;надо не&nbsp;забывать что это хранилище с&nbsp;неограниченным горизонтальным масштабированием, что само по&nbsp;себе нечто. Кеш, авторизация, язык темплейтов&nbsp;&mdash; из&nbsp;коробки. Средства для логирования, мониторинга, переключения версий по&nbsp;одному клику. Единственная причина почему это не&nbsp;становится массовой платформой для веба это инертность программистов, я&nbsp;думаю. Но&nbsp;тем не&nbsp;менее по&nbsp;тем изменениям что я&nbsp;вижу вокруг себя, популярность понемногу приходит к&nbsp;app engine. </p>
<p>Вот небольшой пример приложения, которое мониторит ваш сайт, и&nbsp;в&nbsp;случае если сайт не&nbsp;отдается или на&nbsp;сайте не&nbsp;находится эталонная строка, высылает вам письмо. Идеальное средство для получения извещений о&nbsp;любых проблемах с&nbsp;вашим сайтом.</p>
<pre class="python">&nbsp;
<span style="color: #ff7700;font-weight:bold;">from</span> google.<span style="color: black;">appengine</span>.<span style="color: black;">api</span> <span style="color: #ff7700;font-weight:bold;">import</span> users
&nbsp;
<span style="color: #ff7700;font-weight:bold;">import</span> <span style="color: #dc143c;">os</span>
<span style="color: #ff7700;font-weight:bold;">import</span> wsgiref.<span style="color: black;">handlers</span>
&nbsp;
<span style="color: #ff7700;font-weight:bold;">import</span> <span style="color: #dc143c;">cgi</span>
<span style="color: #ff7700;font-weight:bold;">import</span> <span style="color: #dc143c;">datetime</span>
<span style="color: #ff7700;font-weight:bold;">import</span> <span style="color: #dc143c;">httplib</span>
<span style="color: #ff7700;font-weight:bold;">import</span> <span style="color: #dc143c;">time</span>
&nbsp;
<span style="color: #ff7700;font-weight:bold;">from</span> google.<span style="color: black;">appengine</span>.<span style="color: black;">api</span>.<span style="color: black;">labs</span> <span style="color: #ff7700;font-weight:bold;">import</span> taskqueue
<span style="color: #ff7700;font-weight:bold;">from</span> google.<span style="color: black;">appengine</span>.<span style="color: black;">ext</span>.<span style="color: black;">webapp</span> <span style="color: #ff7700;font-weight:bold;">import</span> template
<span style="color: #ff7700;font-weight:bold;">from</span> google.<span style="color: black;">appengine</span>.<span style="color: black;">ext</span> <span style="color: #ff7700;font-weight:bold;">import</span> db
<span style="color: #ff7700;font-weight:bold;">from</span> google.<span style="color: black;">appengine</span>.<span style="color: black;">ext</span> <span style="color: #ff7700;font-weight:bold;">import</span> webapp
<span style="color: #ff7700;font-weight:bold;">from</span> google.<span style="color: black;">appengine</span>.<span style="color: black;">api</span> <span style="color: #ff7700;font-weight:bold;">import</span> memcache
<span style="color: #ff7700;font-weight:bold;">from</span> google.<span style="color: black;">appengine</span>.<span style="color: black;">api</span> <span style="color: #ff7700;font-weight:bold;">import</span> mail
&nbsp;
<span style="color: #ff7700;font-weight:bold;">class</span> MonitoringHandler<span style="color: black;">&#40;</span>BaseHandler<span style="color: black;">&#41;</span>:    
&nbsp;
    <span style="color: #ff7700;font-weight:bold;">def</span> get<span style="color: black;">&#40;</span><span style="color: #008000;">self</span><span style="color: black;">&#41;</span>:
        today = <span style="color: #dc143c;">datetime</span>.<span style="color: #dc143c;">datetime</span>.<span style="color: black;">now</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span>.<span style="color: black;">strftime</span><span style="color: black;">&#40;</span><span style="color: #483d8b;">&quot;%d-%m-%y %H:%M:%S&quot;</span><span style="color: black;">&#41;</span>
        <span style="color: #008000;">self</span>.<span style="color: black;">response</span>.<span style="color: black;">headers</span><span style="color: black;">&#91;</span><span style="color: #483d8b;">'Content-Type'</span><span style="color: black;">&#93;</span> = <span style="color: #483d8b;">'text/plain'</span>
        <span style="color: #008000;">self</span>.<span style="color: black;">response</span>.<span style="color: black;">out</span>.<span style="color: black;">write</span><span style="color: black;">&#40;</span>today<span style="color: black;">&#41;</span>
        <span style="color: #ff7700;font-weight:bold;">try</span>:
            conn = <span style="color: #dc143c;">httplib</span>.<span style="color: black;">HTTPSConnection</span><span style="color: black;">&#40;</span><span style="color: #483d8b;">&quot;site.com&quot;</span>, timeout=<span style="color: #ff4500;">1000</span><span style="color: black;">&#41;</span>
            conn.<span style="color: black;">request</span><span style="color: black;">&#40;</span><span style="color: #483d8b;">&quot;GET&quot;</span>, <span style="color: #483d8b;">&quot;/&quot;</span><span style="color: black;">&#41;</span>
&nbsp;
            <span style="color: #ff7700;font-weight:bold;">if</span><span style="color: black;">&#40;</span>conn.<span style="color: black;">getresponse</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span>.<span style="color: black;">read</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span>.<span style="color: black;">find</span><span style="color: black;">&#40;</span><span style="color: #483d8b;">&quot;some text string&quot;</span><span style="color: black;">&#41;</span> &lt; = <span style="color: #ff4500;">0</span><span style="color: black;">&#41;</span>:
                <span style="color: #ff7700;font-weight:bold;">raise</span> <span style="color: #008000;">Exception</span><span style="color: black;">&#40;</span><span style="color: #483d8b;">&quot;String not found&quot;</span><span style="color: black;">&#41;</span>
            <span style="color: #008000;">self</span>.<span style="color: black;">response</span>.<span style="color: black;">out</span>.<span style="color: black;">write</span><span style="color: black;">&#40;</span><span style="color: #483d8b;">&quot; Everything is ok&quot;</span><span style="color: black;">&#41;</span>
        <span style="color: #ff7700;font-weight:bold;">except</span> <span style="color: #008000;">Exception</span>, e:
			<span style="color: #008000;">self</span>.<span style="color: black;">response</span>.<span style="color: black;">out</span>.<span style="color: black;">write</span><span style="color: black;">&#40;</span><span style="color: #483d8b;">&quot; Send email&quot;</span><span style="color: black;">&#41;</span>
			mail.<span style="color: black;">send_mail</span><span style="color: black;">&#40;</span>sender=<span style="color: #483d8b;">&quot;from@email.com&quot;</span>,
						  to=<span style="color: #483d8b;">&quot;your@email.com&quot;</span>,
						  subject=<span style="color: #483d8b;">&quot;ServerFail&quot;</span>,
						  body=<span style="color: #483d8b;">&quot;[%s] %s&quot;</span> % <span style="color: black;">&#40;</span>today, e<span style="color: black;">&#41;</span><span style="color: black;">&#41;</span>
&nbsp;
<span style="color: #ff7700;font-weight:bold;">if</span> __name__ == <span style="color: #483d8b;">'__main__'</span>:
    application = webapp.<span style="color: black;">WSGIApplication</span><span style="color: black;">&#40;</span>
        <span style="color: black;">&#91;</span>
            <span style="color: black;">&#40;</span><span style="color: #483d8b;">'/'</span>, MonitoringHandler<span style="color: black;">&#41;</span>
        <span style="color: black;">&#93;</span>, debug=<span style="color: #008000;">True</span>
    <span style="color: black;">&#41;</span>
    wsgiref.<span style="color: black;">handlers</span>.<span style="color: black;">CGIHandler</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span>.<span style="color: black;">run</span><span style="color: black;">&#40;</span>application<span style="color: black;">&#41;</span>
&nbsp;</pre>
</pre>
]]></content:encoded>
			<wfw:commentRss>http://sheremetov.com/programming/app-engine-monitoring/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

