<?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>Widget? OK!</title>
	<atom:link href="http://widgetok.ru/feed/" rel="self" type="application/rss+xml" />
	<link>http://widgetok.ru</link>
	<description>Блог о виджетах и веб-разработке</description>
	<lastBuildDate>Sun, 07 Apr 2013 13:46:08 +0000</lastBuildDate>
	<language>ru-RU</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=</generator>
		<item>
		<title>Подходы к обучению</title>
		<link>http://widgetok.ru/2013/04/methods-to-study/</link>
		<comments>http://widgetok.ru/2013/04/methods-to-study/#comments</comments>
		<pubDate>Sun, 07 Apr 2013 13:46:08 +0000</pubDate>
		<dc:creator>Глеб</dc:creator>
				<category><![CDATA[Философия]]></category>
		<category><![CDATA[обучение]]></category>
		<category><![CDATA[статистика]]></category>

		<guid isPermaLink="false">http://widgetok.ru/?p=982</guid>
		<description><![CDATA[Размышлял о том, почему сейчас курсы статистики меня радуют, а в институте такие вещи казались тягомотиной. Во-первых, дело в осмысленности действа. Когда знаешь, что и для чего изучаешь, получаешь отличную мотивацию. Вообще, сколько смотрю на людей, убеждаюсь, что отсутствие навыков целеполагания &#8212; очень большая проблема. Многие умные взрослые люди не знают, как работать с целями: [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://widgetok.ru/wp-content/uploads/2013/04/284269_astronaut.jpg"><img class="alignright size-thumbnail wp-image-983" style="margin: 10px;" alt="Космонавт" src="http://widgetok.ru/wp-content/uploads/2013/04/284269_astronaut-150x150.jpg" width="150" height="150" /></a>Размышлял о том, почему сейчас курсы статистики меня радуют, а в институте такие вещи казались тягомотиной.</p>
<p><strong>Во-первых</strong>, дело в осмысленности действа. Когда знаешь, что и для чего изучаешь, получаешь отличную мотивацию.<br />
Вообще, сколько смотрю на людей, убеждаюсь, что отсутствие навыков целеполагания &#8212; очень большая проблема. Многие умные взрослые люди не знают, как работать с целями: как их определять, расставлять приоритеты, составлять план достижения, планомерно достигать. Возможно, дело в том, что нас этому не учат. Более того, многие даже не понимают, что этому нужно специально учиться. Ребёнка спрашивают:<br />
- Кем ты хочешь стать, когда вырастешь?<br />
- Космонавтом!<br />
- Ай, молодец!<br />
И никто не задаёт следующий вопрос: &#171;А как ты собираешься этого добиться? Чему учиться, в чём тренироваться, у кого спрашивать совета?&#187; Все думают, что для того чтобы полететь в космос, нужно просто &#171;очень захотеть&#187;.</p>
<p>Так же и в институте. Мы 5.5 лет учимся, чтобы &#171;стать физиком&#187;. Но что это значит и что именно нужно, чтобы достичь этого, нам не говорят. А людей, которые сами по-настоящему задумываются о том, что они хотят делать через 6 лет и что им для этого нужно, очень мало (я вот в студенческие годы в их число не входил). В результате мы учимся чему попало и как попало, а значит без особой мотивации.</p>
<p><strong>Во-вторых</strong>, дело в подаче материала. Преподаватели действительно увлечены тем, о чём рассказывают, и заряжают этой увлечённостью студентов, а не просто отчитывают курс.</p>
<p><strong>В-третьих</strong>, ориентация на практику. Когда я решил вспомнить статистику, первое, что я сделал, это раздобыл классическую МГУшную &#171;Статистику для физиков&#187; Худсона. Убил несколько дней на сосредоточенное изучение, после чего махнул рукой. Да, книга хорошая. Там действительно рассказывается с самых основ, с теорвера, как выводятся формулы и законы, почему они именно такие. Но ни слова не говорится о том, зачем всё это нужно в жизни, как применять к реальным исследованиям.<br />
А тут наоборот: рассказывают, отталкиваясь от практики. В том числе говорят про типичные проблемы при работе с данными, которые возникают в реальных исследованиях, и до решения которых сам сходу не дойдёшь.<br />
Правда, есть и обратная сторона медали. Меня, например, немного напрягает, когда вместо объяснения, почему в формуле стандартного отклонения в знаменателе не n, а n-1, говорят: &#171;Поверьте, это хорошая идея использовать n-1&#8243;. Но подход с упором на практику мне всё равно нравится больше.</p>
]]></content:encoded>
			<wfw:commentRss>http://widgetok.ru/2013/04/methods-to-study/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Курсы по статистике</title>
		<link>http://widgetok.ru/2013/04/statistics-courses/</link>
		<comments>http://widgetok.ru/2013/04/statistics-courses/#comments</comments>
		<pubDate>Sat, 06 Apr 2013 09:52:28 +0000</pubDate>
		<dc:creator>Глеб</dc:creator>
				<category><![CDATA[Без рубрики]]></category>
		<category><![CDATA[Coursera]]></category>
		<category><![CDATA[R]]></category>
		<category><![CDATA[SAS]]></category>
		<category><![CDATA[обучение]]></category>
		<category><![CDATA[статистика]]></category>

		<guid isPermaLink="false">http://widgetok.ru/?p=968</guid>
		<description><![CDATA[Решил освежить знания по статистике, подзабытые с институтских времён. Для этого вписался на 2 курса от Coursera: Passion Driven Statistics и Statistics: Making Sense of Data. Впечатления от первой недели &#8212; восторг. Курсы, в целом, похожи по программе, но различаются по стилю. В Passion Driven Statistics теоретический материал даётся медленнее, больше упор на представление результатов [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://widgetok.ru/wp-content/uploads/2013/04/passion_driven_statistics2orig.jpg"><img class="alignright size-full wp-image-967" style="margin: 10px;" title="passion driven statistics" src="http://widgetok.ru/wp-content/uploads/2013/04/passion_driven_statistics2orig.jpg" alt="" width="240" height="135" /></a>Решил освежить знания по статистике, подзабытые с институтских времён. Для этого вписался на 2 курса от Coursera:<br />
<a href="https://www.coursera.org/course/pdstatistics">Passion Driven Statistics</a> и <a href="https://www.coursera.org/course/introstats">Statistics: Making Sense of Data</a>. Впечатления от первой недели &#8212; восторг.<br />
Курсы, в целом, похожи по программе, но различаются по стилю.</p>
<p>В Passion Driven Statistics теоретический материал даётся медленнее, больше упор на представление результатов и общение между студентами. Каждый студент должен завести блог на tumblr.com и описывать в нём процесс исследования. Мой, кстати, вот: <a href="http://harming-the-earth.tumblr.com/">Is It Worth Harming The Earth?</a>. Плюс курс на SAS, поэтому много времени уделяется тому, &#171;как сделать это в SAS&#187;. По поводу этой софтины я поплююсь ядом как-нибудь попозже.<br />
Что поражает, так это разнообразие публики и активность движухи. Народ буквально со всего мира: от девушки-биохимика из Москвы до студента из Южной Америки учащегося в Испании и парня из Египта, участвовавшего в демонстрациях Арабской весны. Общаются, делятся ссылками на блоги, френдят друг друга на Tunblr, помогают с программами.</p>
<p>В Making Sense of Data теорию дают более интенсивно и толково, а изучение R, на котором ведётся курс, опционально (хотя я всё равно уроки по нему прохожу). Видеоуроки у них записаны как-то более затягивающе: короткими частями с красивыми презентациями.</p>
<p>Если сравнивать SAS и R, второй мне нравится больше. Может, первый я просто ещё не умею готовить, но беглый обзор функций говорит, что R вместе с дополнительными пакетами уделает SAS по функциональности &#8212; только в путь. Кстати, это едва ли не первый раз, когда я готов предпочесть инструменту с GUI инструмент с командным интерфейсом. <img src='http://widgetok.ru/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://widgetok.ru/2013/04/statistics-courses/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Моделирование эволюции</title>
		<link>http://widgetok.ru/2012/10/the-game-of-evolution/</link>
		<comments>http://widgetok.ru/2012/10/the-game-of-evolution/#comments</comments>
		<pubDate>Wed, 10 Oct 2012 21:20:12 +0000</pubDate>
		<dc:creator>Глеб</dc:creator>
				<category><![CDATA[Без рубрики]]></category>

		<guid isPermaLink="false">http://widgetok.ru/?p=958</guid>
		<description><![CDATA[В комментариях к моему посту &#171;Игра «Жизнь» и моделирование естественного отбора&#187; первое же, что предложили &#8212; добавить скрещивание, чтобы новая клетка получала не копию генома одного родителя, а смесь от нескольких. Я подозревал, что итог это не изменит. Но, покрутив в голове идею, заинтересовался: ведь так можно получить модель не просто естественного отбора, а уже [...]]]></description>
				<content:encoded><![CDATA[<p><img class="alignright" style="margin: 10px;" src="http://widgetok.ru/life_evol/le_3_sm.jpg" alt="" width="200" height="101" />В комментариях к моему посту <a href="http://habrahabr.ru/post/154015/">&#171;Игра «Жизнь» и моделирование естественного отбора&#187;</a> первое же, что предложили &#8212; добавить скрещивание, чтобы новая клетка получала не копию генома одного родителя, а смесь от нескольких. Я подозревал, что итог это не изменит. Но, покрутив в голове идею, заинтересовался: ведь так можно получить модель не просто естественного отбора, а уже полноценной эволюции. Благо, реализовать это было не сложно. Так что встречайте: &#171;Жизнь&#187;, теперь со скрещиванием и мутациями.<br />
<a href="http://widgetok.ru/life_evol/">http://widgetok.ru/life_evol/</a></p>
<p>Ну да, ещё и с мутациями. Моделировать, так моделировать.</p>
<p>Подробности, как водится, под катом.</p>
<p><span id="more-958"></span></p>
<p>Так уж сложилось, что мне достались &#171;инопланетные&#187; клетки, которым для рождения нужно не 2, а 3 родителя. Можно было бы поменять правила игры, но кто я такой, чтобы спорить с Конвеем? Пришлось работать с тем, что есть. В результате я сделал так, чтобы зарождающаяся клетка получала в качестве значения каждого гена значение соответствующего гена одного из трёх её родителей, выбранного случайным образом. Плюс я несколько упростил себе жизнь тем, что гены берутся только от прямых родителей, т.е. гены бабушек и прадедушек в клетке проявиться не могут. Для первого приближения этого хватит.</p>
<p>Раз уж пошла речь об изменении генома, грех было обойти тему мутаций. Я сделал, чтобы с некоторой вероятностью (по умолчанию 0.01) один из генов клетки выставлялся в случайное значение (0/1).</p>
<p>Ну и чтобы моим подопечным жизнь совсем раем не казалась, запретил в первом поколении активацию генов 2 и 3 (которые, как мы помним, отвечают за максимальную приспособленность клетки к правилам игры). Получилось, что максимально приспособленные клетки [0,0,1,1,0,0,0,0,0] могут появиться только в результате мутаций, закреплённых естественным отбором.</p>
<p>Мои ожидания оправдались практически полностью.</p>
<p>Понаблюдаем за жизнью популяции, которая получается при настройках по умолчанию. Обратите внимание: по умолчанию активных генов 4. Т.е. мало того, что они все &#171;неправильные&#187;, так ещё и являются мешающим генетическим мусором, когда &#171;правильные&#187; гены у клетки всё-таки появляются.</p>
<p>Вначале все клетки красно-синие. И быстро вымирают.<br />
<img class="alignnone" src="http://widgetok.ru/life_evol/le_1.jpg" alt="" /></p>
<p>Если активных генов больше 4, вымирают настолько быстро, что популяция может совсем исчезнуть. Но при 4 какие-то очаги жизни продолжают теплиться достаточно долго, чтобы благодаря мутациям появились клетки с 1 &#171;правильным&#187; геном.<br />
<img class="alignnone" src="http://widgetok.ru/life_evol/le_2.jpg" alt="" /></p>
<p>Замусоренные лишними генами, грязно-коричневые, но они всё-таки уже не гибнут, а размножаются, постепенно зеленея.</p>
<p><img class="alignnone" src="http://widgetok.ru/life_evol/le_3.jpg" alt="" /></p>
<p>И вот уже мы видим как появляются идеальные [0,0,1,1,0,0,0,0,0]. Они не только приобрели 2 нужных гена, но и избавились от мешающего жить &#171;мусора&#187;.</p>
<p><img class="alignnone" src="http://widgetok.ru/life_evol/le_4.jpg" alt="" /></p>
<p>И теперь постепенно отвоёвывают жизненное пространство у своих менее совершенных сородичей.</p>
<p><img class="alignnone" src="http://widgetok.ru/life_evol/le_5.jpg" alt="" /></p>
<p>К сожалению, мне не удалось дождаться момента, когда они одержат полную победу. Скорее всего, дело тут в ограниченности вселенной. Когда количество клеток выходит на насыщение, сила естественного отбора ослабевает. Клетки расположены так близко друг к другу, что для размножения уже не обязательно обладать максимально эффективным геномом: соседи и так найдутся.<br />
Можно продолжить действие отбора, например, устраивая периодически &#171;катаклизмы&#187;, убивающие часть клеток, но я посчитал, что это уже получаются какие-то слишком искусственные условия.</p>
<p>Главное, что результат достигнут: в <a href="http://widgetok.ru/life_evol/">системе, живущей по простым законам</a>, мы увидели зарождение изначально не существовавшей &#171;идеальной&#187; клетки из далёких от идеала клеток-предков. Впечатляет, не правда ли?</p>
]]></content:encoded>
			<wfw:commentRss>http://widgetok.ru/2012/10/the-game-of-evolution/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Конец виджетов для рабочего стола</title>
		<link>http://widgetok.ru/2012/10/the-end-of-desktop-widgets/</link>
		<comments>http://widgetok.ru/2012/10/the-end-of-desktop-widgets/#comments</comments>
		<pubDate>Tue, 09 Oct 2012 12:00:06 +0000</pubDate>
		<dc:creator>Глеб</dc:creator>
				<category><![CDATA[Технологии]]></category>
		<category><![CDATA[Философия]]></category>

		<guid isPermaLink="false">http://widgetok.ru/?p=951</guid>
		<description><![CDATA[Недавно в поисках ответа на вопрос одного из читателей блога я зашёл на сайт виджетов Yahoo! и обнаружил, что с апреля этого года он закрыт. Yahoo! прекратили поддержку виджетов для рабочего стола, закрыли галерею, новые виджеты загружать и устанавливать нельзя, обновлять старые, соответственно, тоже. Уже установленные виджеты могут продолжать работать, но, сами понимаете, до поры [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://widgetok.ru/wp-content/uploads/2012/10/1370369_lcd_monitor1.jpg"><img class="alignright size-full wp-image-953" style="margin: 5px;" title="1370369_lcd_monitor" src="http://widgetok.ru/wp-content/uploads/2012/10/1370369_lcd_monitor1.jpg" alt="" width="150" /></a>Недавно в поисках ответа на вопрос одного из читателей блога я зашёл на <a href="http://widgets.yahoo.com/">сайт виджетов Yahoo!</a> и обнаружил, что с апреля этого года он закрыт. Yahoo! прекратили поддержку виджетов для рабочего стола, закрыли галерею, новые виджеты загружать и устанавливать нельзя, обновлять старые, соответственно, тоже. Уже установленные виджеты могут продолжать работать, но, сами понимаете, до поры до времени. Разработчикам предлагается переключиться на разработку виджетов для телевизоров на том же движке.</p>
<p>Пошёл посмотреть, как дела у Google Desktop, и <a href="http://googledesktop.blogspot.com/">обнаружил</a>, что его тоже свернули в прошлом сентябре. Таким образом, из крупных платформ виджетов для рабочего стола осталась только Mac OS Dashboard Widgets.</p>
<p><strong>В чём же дело, почему идея угасла?</strong><br />
На мой взгляд, причина в том, что перевесили две альтернативные виджетами для рабочего стола тенденции.</p>
<p>Во-первых, очень большая часть активности пользователей переместилась в интернет, в результате человек чаще переключается между вкладками браузера, чем окнами программ. Он вообще целыми днями не видит свой рабочий стол. Вместо этого он проводит время на различных сайтах, в т.ч. в соцсетях, которые стали &#171;новыми порталами&#187;. Помните как лет 10-15 назад каждый крупный сайт хотел стать &#171;порталом&#187;, на котором пользователь получал бы всё: от новостей до почты? Сейчас ими стали соцсети с той разницей, что другие сайты наполняют их контентом через свои тематические группы и приложения. Сформироваться канал доставки данных &#171;сайт &#8212; соцсеть &#8212; пользователь&#187; вместо &#171;сайт &#8212; виджет рабочего стола &#8212; пользователь&#187;.</p>
<p>Во-вторых,  сильно развились и наполнились приложениями мобильные платформы. Если пользователь закрыл-таки браузер, а мы хотим донести до него информацию, как это лучше сделать? Конечно же, с помощью мобильного приложения. Даже компьютер не нужен.</p>
<p>С мобильными приложениями история продолжится. Девайсы становятся всё тоньше и мощнее, мобильный интернет быстрее и дешевле, технологии дополненной реальности уже вошли в нашу жизнь (судя хотя бы по количеству QR-кодов на рекламных плакатах). А вот что гораздо любопытнее, так это кто и когда станет &#171;новыми социальными сетями&#187;?</p>
]]></content:encoded>
			<wfw:commentRss>http://widgetok.ru/2012/10/the-end-of-desktop-widgets/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Моделирование естественного отбора</title>
		<link>http://widgetok.ru/2012/10/the-game-of-natural-selection/</link>
		<comments>http://widgetok.ru/2012/10/the-game-of-natural-selection/#comments</comments>
		<pubDate>Mon, 08 Oct 2012 09:59:29 +0000</pubDate>
		<dc:creator>Глеб</dc:creator>
				<category><![CDATA[Без рубрики]]></category>

		<guid isPermaLink="false">http://widgetok.ru/?p=935</guid>
		<description><![CDATA[Валялся я на прошлой неделе в больнице. И так как обсуждать с дедушками в холле рецепт яблок, мочёных в капусте, и как хорошо на Покров гулять по заливным лугам &#8212; особого желания не было, пришлось придумывать себе развлечение. Я задумался об игре &#171;Жизнь&#187;. Мне стало обидно за несчастные клетки, которые живут и умирают в зависимости [...]]]></description>
				<content:encoded><![CDATA[<p><img class="alignright" src="http://widgetok.ru/life/ns2.gif" alt="" hspace="10" vspace="10" width="200" />Валялся я на прошлой неделе в больнице. И так как обсуждать с дедушками в холле рецепт яблок, мочёных в капусте, и как хорошо на Покров гулять по заливным лугам &#8212; особого желания не было, пришлось придумывать себе развлечение.</p>
<p>Я задумался об игре <a href="http://ru.wikipedia.org/wiki/%D0%96%D0%B8%D0%B7%D0%BD%D1%8C_(%D0%B8%D0%B3%D1%80%D0%B0)">&#171;Жизнь&#187;</a>. Мне стало обидно за несчастные клетки, которые живут и умирают в зависимости от одних только начальных условий, и ничего сами для своего выживания сделать не могут. В результате я придумал расширение для правил игры, с которым можно моделировать не только изменение численности популяции, но и естественный отбор внутри неё</p>
<p><span id="more-935"></span></p>
<p><span style="font-weight: bold;">На всякий случай напомню правила классической &#171;Жизни&#187;.</span></p>
<p>Есть &#171;вселенная&#187;, представленная в виде квадрата, разбитого на квадратные же поля. Поле может быть пустым, либо на нём может жить клетка. Каждый &#171;день&#187; игры рассчитывается новое поколение клеток по следующим правилам:</p>
<ul>
<li>на пустом поле, рядом с которым ровно 3 живые клетки, зарождается новая клетка;</li>
<li>если у живой клетки есть 2 или 3 живые соседки, эта клетка продолжает жить;</li>
<li>если соседей меньше 2 или больше 3, клетка умирает (от «одиночества» или от «перенаселённости» соответственно).</li>
</ul>
<p>Вселенная &#171;тороидальная&#187;: если зайти за её правый край, окажешься на левом, с верхом и низом то же самое.</p>
<p><strong>Чтобы дать клеткам возможность побороться за жизнь, я ввёл дополнительные правила.</strong></p>
<p>Перед тем как будет рассчитано новое поколение, каждая клетка пытается найти среди окружающих её свободных полей более привлекательное на её взгляд положение и перемещается в него. Привлекательность поля зависит от количества соседей и определяется геномом клетки, в котором записано, какое количество соседей она считает комфортным.</p>
<p>Геном представлен массивом из 9 чисел-генов, каждое из которых может принимать значение 0 (ген молчит) или 1 (ген активен). Первое (нулевой элемент) определяет привлекательность точки с 0 соседей, второе &#8212; с 1 соседей и так далее до 8. Если ген активен, поле с соответствующим числом соседей рассматривается клеткой как привлекательное для перемещения. Если молчит, в такую точку клетка перемещаться не будет.<br />
Например, если у клетки геном [0,1,1,0,0,0,0,0,0], она будет стараться переместиться в точку, у которой есть 1 или 2 соседа. А если такой нет, останется на месте. Из точек с одинаковой привлекательностью выбирается случайная.</p>
<p>Геном отражается в цвете клеток. Чем более красная клетка, тем больше она любит одиночество. Чем более синяя, тем больше любит компанию. Чем более зелёная, тем ближе она к &#171;золотой середине&#187; &#8212; предпочтению 2 или 3 соседей.</p>
<p>При зарождении новой клетки она получает такой же геном, как у той из 3 её соседок, которая сходила последней (&#171;кто <span style="text-decoration: line-through;">последний</span> завершил комбинацию, тот и папа&#187;).</p>
<p>Порядок хода клеток &#8212; случайный.</p>
<p>При этом классическая Conway&#8217;s Game of Life &#8212; это предельный случай, когда у всех клеток геном [0,0,0,0,0,0,0,0,0].</p>
<p>После чего я написал реализацию всей этой задумки на JavaScript: <a href="http://widgetok.ru/life/">http://widgetok.ru/life/</a><br />
Для сравнения расчёт проводится сразу для двух &#171;вселенных&#187;. Слева &#8212; по моим правилам, справа &#8212; по классическим правилам Конвея. При запуске вселенные заполняются случайным образом. Можно настраивать размер, количество клеток на старте и количество генов, которые будут у каждой клетки активными.<br />
Если кликнуть на клетку, внизу можно посмотреть её геном.</p>
<p>Сразу предупреждаю, что тестировал только в Google Chrome на маленьком экране нетбука, лёжа на больничной койке, поэтому баги не просто возможны, а обязательно будут.</p>
<p>Вот пример, как обычно развивается популяция из клеток с 2 активными генами.<br />
Вначале имеем разнообразие геномов. &#171;Синей&#187; клетке стать легче (за это отвечают 4 гена из 8), поэтому синий цвет преобладает.<br />
<img src="http://widgetok.ru/life/ns1.gif" alt="" hspace="5" vspace="5" /><br />
Первыми вымирают &#171;мизантропы&#187; &#8212; красные, затем &#171;дружелюбные&#187; синие, остаются 3 группы, каждая из которых имеет полезные гены.<br />
[0,0,1,1,0,0,0,0,0]<br />
[0,0,0,1,0,0,0,1,0]<br />
[1,0,0,1,0,0,0,0,0]<br />
<img src="http://widgetok.ru/life/ns2.gif" alt="" hspace="5" vspace="5" /><br />
Но у салатовых 2 полезных гена, а у остальных по одному, поэтому в итоге они побеждают, заполняя всё пространство.<br />
Во вселенной Конвея к этому моменту население сильно поредело, и оформились стабильные островки.<br />
<img src="http://widgetok.ru/life/ns3.gif" alt="" hspace="5" vspace="5" width="500" /></p>
<p><strong>Что я ожидал увидеть, и что получилось на самом деле.</strong></p>
<p>Клетки, &#171;постигшие правила жизни&#187; и стремящиеся занять положение с 2 или 3 соседями, очевидно, должны были иметь преимущество и размножаться шустрее, чем их собратья, которым меньше повезло с генами. Но в итоге из-за перенаселённости должно было возникнуть некое равновесие численности. Я надеялся, что как в классической &#171;Жизни&#187; будут выделяться устойчивые геометрические или генетические комбинации, и возможно, получится понаблюдать симбиоз клеток с разными генами.</p>
<p>Реальность оказалась проще.</p>
<p>Популяция либо разрастается до предела и останавливается на какой-то квазистабильной численности, либо гибнет. Зависит это, во-первых, от количества клеток на старте (слишком мало &#8212; гибнут от одиночества, слишком много &#8212; от перенаселённости) и от количества активных генов, о чём ниже.</p>
<p>Когда популяция гибнет, могут оставаться небольшие стабильные фигуры, как и в классической Жизни. Но только самые простые и, как правило, с одинаковым геномом: квадраты их 4 соседних клеток, &#171;мигалки&#187;. Один раз видел фигуру из клеток разных геномов, но тоже статическую и небольшую. Думаю, к этому приводит элемент случайности в выборе направления и очерёдности перемещения клеток.</p>
<p>Чем больше активируется генов, тем больше в геноме &#171;мусора&#187;, заставляющего клетку принимать неверные решения о направлении перемещения.<br />
Имя 4 активных гена, можно получить 2 довольно долго сосуществующие популяции<br />
[0,0,1,1,0,0,0,1,1]<br />
[1,0,1,1,0,0,0,1,0]<br />
<img src="http://widgetok.ru/life/ns_4genes.gif" alt="" hspace="5" vspace="5" /><br />
8 активных генов &#8212; популяция балансирует на грани вырождения.<br />
<img src="http://widgetok.ru/life/ns_8genes.gif" alt="" hspace="5" vspace="5" /><br />
9 активных генов &#8212; увы, слишком много. Популяция гибнет.</p>
<p>Вот такая получилась моделька. Можете тоже <a href="http://widgetok.ru/life/">поиграть</a>: возможно, у вас появятся ещё какие-нибудь любопытные выводы.</p>
<p><strong>Что можно было бы сделать ещё.</strong><br />
Сначала я думал включать все гены, а их значение сделать числом от 0 до 9, определяющим &#171;величину&#187; привлекательности поля. Но при этом результаты отбора получаются не такие наглядные, сложно определить, почему тот или иной геном победил.<br />
Ещё можно заставить клетки мутировать, изменяя их геном или скрещивая при зарождении. Но, мне кажется, при текущих правилах всё равно победят &#171;салатовые&#187;. Разве что заставить правила меняться со временем, как и в настоящей жизни&#8230; <img src='http://widgetok.ru/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://widgetok.ru/2012/10/the-game-of-natural-selection/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Книги о разработке 2</title>
		<link>http://widgetok.ru/2012/01/books-for-developers-2/</link>
		<comments>http://widgetok.ru/2012/01/books-for-developers-2/#comments</comments>
		<pubDate>Sun, 29 Jan 2012 20:31:58 +0000</pubDate>
		<dc:creator>Глеб</dc:creator>
				<category><![CDATA[Веб-разработка]]></category>
		<category><![CDATA[Обзоры]]></category>
		<category><![CDATA[Технологии]]></category>

		<guid isPermaLink="false">http://widgetok.ru/?p=931</guid>
		<description><![CDATA[Один из последних проектов на работе заставил меня заинтересоваться датамайнингом. Оказалось что это ужасно интересная область, которой я до недавнего времени совсем не интересовался, а зря. Первая книга, которая мне попалась на эту тему, была Т. Сегаран, &#171;Программируем коллективный разум&#187;. Очень увлекательное и вдохновляющее введение в алгоритмы обработки данных. Как ранжировать результаты поиска, искать &#171;товары, [...]]]></description>
				<content:encoded><![CDATA[<p>Один из последних проектов на работе заставил меня заинтересоваться датамайнингом. Оказалось что это ужасно интересная область, которой я до недавнего времени совсем не интересовался, а зря.<br />
Первая книга, которая мне попалась на эту тему, была</p>
<p><a href="http://www.ozon.ru/context/detail/id/4877842/">Т. Сегаран, &#171;Программируем коллективный разум&#187;.</a> <a href="http://www.ozon.ru/context/detail/id/4877842/"><img class="alignright" style="margin: 10px;" src="http://static.ozone.ru/multimedia/books_covers/c200/1001465051.jpg" alt="" width="200" height="200" /></a></p>
<p>Очень увлекательное и вдохновляющее введение в алгоритмы обработки данных. Как ранжировать результаты поиска, искать &#171;товары, похожие на данный&#187;, как сделать обучаемый спам-фильтр, и для чего разработчику социальной сети может пригодиться знание линейной алгебры &#8212; всё это и многое другое в книге Тоби Сегарана.</p>
<p>Написана (и переведена) на удивление легко и понятно, рассматриваются очень жизненные для веб-разработки вопросы.</p>
<p>Примеры кода на Python, но знание тонкостей языка для понимания не требуется: всё подробно расписано в тексте. По своему опыту могу сказать, что оттранслировать пример на PHP достаточно легко, а самостоятельно поиграться с получившимися системками &#8212; ужасно любопытно.</p>
<p>Кстати, эта книга была одной из самых продаваемых на Амазоне книгой по искусственному интеллекту, а автор сейчас работает в Google.</p>
<p>Во время прочтения понимаешь, что вокруг тебя масса данных, и начинают чесаться руки опробовать на них все интересные штуки, о которых пишет Тоби. Лично для меня это вылилось в то, что половину новогодних праздников я провел за написанием самообучающегося RSS-ридера на основе байесовского классификатора, который выбирал бы и показывал из кучи новостей те, которые будут интересны лично мне. Плюс назаказал ещё книжек по датамайнигу, нарушив свое правило не покупать больше одной книги за раз.</p>
<p>После прочтения &#171;Программируем&#8230;&#187; мне захотелось поглубже вникнуть в нейронные сети и я купил <a href="http://www.ozon.ru/context/detail/id/4862852/"><br />
С. Толкачев, &#171;Нейронное программирование диалоговых систем&#187;.</a><img class="alignright" style="margin: 10px;" src="http://static.ozone.ru/multimedia/books_covers/c200/1001453838.jpg" alt="" width="200" height="200" /></p>
<p>Осилил её до конца (благо, тоненькая), но исключительно чтобы получить моральное право оставить негативный отзыв.</p>
<p>Автор явно &#171;в теме&#187; и работал с нейронными сетями на практике, но для кого написана эта книга &#8212; непонятно. Казённый язык, очень обзорный подход без сколько-нибудь подробного описания реализаций, много общих слов. Все интересные темы, вынесенные на обложку, там действительно затрагиваются, но конкретики почти никакой. Примеры, приведенные в книге, в лучшем случае поясняют базовые принципы. В общем, сплошное разочарование.</p>
<p>Отсюда вопрос: можете порекомендовать толковую книжку по нейронным сетям?</p>
]]></content:encoded>
			<wfw:commentRss>http://widgetok.ru/2012/01/books-for-developers-2/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Покойтесь с миром, гаджеты Windows</title>
		<link>http://widgetok.ru/2011/10/rip-windows-gadgets/</link>
		<comments>http://widgetok.ru/2011/10/rip-windows-gadgets/#comments</comments>
		<pubDate>Mon, 24 Oct 2011 20:56:52 +0000</pubDate>
		<dc:creator>Глеб</dc:creator>
				<category><![CDATA[Технологии]]></category>
		<category><![CDATA[Windows Sidebar]]></category>
		<category><![CDATA[гаджеты Windows]]></category>

		<guid isPermaLink="false">http://widgetok.ru/?p=922</guid>
		<description><![CDATA[Решил я сейчас загрузить свежую версию гаджетов для Википедии, зешел на http://gallery.microsoft.com&#8230; и вместо галереи оказался на такой вот веселенькой странице с сообщением о том, что галерея &#171;отправлена в отставку&#187;. Microsoft решила больше не поддерживать разработку и распространение гаджетов, чтобы &#171;сконцентирироваться на поддержке более богатых возможностей новых версий Windows&#187;. Порыскав по сети, я обнаружил, что [...]]]></description>
				<content:encoded><![CDATA[<p>Р<a href="http://widgetok.ru/wp-content/uploads/2011/10/1195402_graveyard_.jpg"><img class="alignright size-thumbnail wp-image-924" src="http://widgetok.ru/wp-content/uploads/2011/10/1195402_graveyard_-150x150.jpg" alt="" hspace="10" vspace="10" width="150" height="150" /></a>ешил я сейчас загрузить свежую версию гаджетов для Википедии, зешел на http://gallery.microsoft.com&#8230; и вместо галереи оказался на <a href="http://windows.microsoft.com/en-US/windows/downloads/looking-for-gadgets">такой вот</a> веселенькой странице с сообщением о том, что галерея &#171;отправлена в отставку&#187;. Microsoft решила больше не поддерживать разработку и распространение гаджетов, чтобы &#171;сконцентирироваться на поддержке более богатых возможностей новых версий Windows&#187;. Порыскав по сети, я обнаружил, что произошло это не так давно: в начале октября.</p>
<p>Гаджеты для Windows по-прежнему можно разрабатывать и устанавливать, но размещать их предлагается не в галерее, а на хостинге для разработчиков CodePlex. Что, как вы понимаете, совсем не так удобно для конечных пользователей.</p>
<p>То, что MS была не очень заинтересована в последние годы в гаджетах, чувствовалось: баги Sidebar не правились, корпоративный блог о гаджетах заглох. Так что закрытие галереи &#8212; вполне логичное продолжение. Вот почему плохо программисту связываться с проприетарными технологиями: решили перестать развивать &#8212; и всё, прости-прощай. Билл дал &#8212; Билл взял. Печально.</p>
<p>Ну а для тех, кто хочет всё-таки обновить гаджеты Википедии, я выложил новые версии у себя на сайте. В них исправлен, наконец, баг со счётчиком страниц, и гаджеты перенастроены на новую верстку Википедии.<a href="http://widgetok.ru/wdata/wikiknow/Wikiknow.gadget"><br />
Wikiknow.gadget</a><a href="http://widgetok.ru/wdata/wikiday/Wikiday.gadget"><br />
Wikiday.gadget</a></p>
]]></content:encoded>
			<wfw:commentRss>http://widgetok.ru/2011/10/rip-windows-gadgets/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Мартин Фаулер, &#171;Рефакторинг&#187;</title>
		<link>http://widgetok.ru/2011/07/fowler-refactoring/</link>
		<comments>http://widgetok.ru/2011/07/fowler-refactoring/#comments</comments>
		<pubDate>Sat, 09 Jul 2011 19:15:21 +0000</pubDate>
		<dc:creator>Глеб</dc:creator>
				<category><![CDATA[Веб-разработка]]></category>
		<category><![CDATA[Обзоры]]></category>
		<category><![CDATA[книги]]></category>

		<guid isPermaLink="false">http://widgetok.ru/?p=893</guid>
		<description><![CDATA[Уф, наконец-то осилил &#171;Рефакторинг&#187; Мартина Фаулера. Обычно я читаю в книге каждую строчку, включая введение, примечания и заключение, потому что если автор что-то написал, значит посчитал это важным. Но если бы поступил так с &#171;Рефакторингом&#187;, закончил бы где-то к сентябрю: уж очень обстоятельно Фаулер описывает каждую мелочь. К счастью, где-то после середины я понял, что [...]]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.ozon.ru/context/detail/id/1308678/"><img class="alignright" src="http://mmedia.ozon.ru/multimedia/books_covers/1000038279.jpg" alt="" width="150" hspace="10" vspace="10"/></a> Уф, наконец-то осилил &#171;Рефакторинг&#187; Мартина Фаулера.</p>
<p>Обычно я читаю в книге каждую строчку, включая введение, примечания и заключение, потому что если автор что-то написал, значит посчитал это важным. Но если бы поступил так с &#171;Рефакторингом&#187;, закончил бы где-то к сентябрю: уж очень обстоятельно Фаулер описывает каждую мелочь. К счастью, где-то после середины я понял, что это <strong>справочник</strong>, а не учебник, поэтому нужно читать описание рефакторинга, мотивировку, и только если что-то показалось непонятным, углубляться в технику и разбор примеров. В результате вторую половину книги добил за неделю.</p>
<p>Впечатление.<br />
Книжка, безусловно, полезная, но не для начинающих: теорию ООП и паттерны GoF желательно уже знать. Позволяет немного лучше понять, что происходит в голове крутых программистов. Если пропускать занудные куски, читается очень легко. Кое-какие огрехи в переводе всё-таки есть, но впечатление почти живого общения с умными людьми они не портят. Например, очень забавно наблюдать как Фаулер и Кент Бек (являющийся одним из соавторов) подшучивают друг над другом, в том числе в коде примеров. <img src='http://widgetok.ru/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Я стараюсь по очереди читать книги из разных областей. Эта была про разработку ПО, поэтому на очереди либо что-то про управление/мышление, либо научно-популярное. Кстати, вам было бы интересно, если бы я писал рецензии на научпоп в этот блог?</p>
]]></content:encoded>
			<wfw:commentRss>http://widgetok.ru/2011/07/fowler-refactoring/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Книги о разработке</title>
		<link>http://widgetok.ru/2011/04/books-for-developers/</link>
		<comments>http://widgetok.ru/2011/04/books-for-developers/#comments</comments>
		<pubDate>Wed, 27 Apr 2011 07:48:25 +0000</pubDate>
		<dc:creator>Глеб</dc:creator>
				<category><![CDATA[Веб-разработка]]></category>
		<category><![CDATA[Обзоры]]></category>
		<category><![CDATA[книги]]></category>

		<guid isPermaLink="false">http://widgetok.ru/?p=860</guid>
		<description><![CDATA[В моей профессиональной жизни был период, когда я вообще не читал книг по разработке. Казалось, что учебники по технологиям уже прочитаны, всё что нужно для работы я знаю, а остальное можно вытащить из мануалов и постов на Хабре, и то имеет смысл заниматься этим, только когда понадобится. Причём, судя по разговорам с коллегами, такое настроение [...]]]></description>
				<content:encoded><![CDATA[<p>В моей профессиональной жизни был период, когда я вообще не читал книг по разработке. Казалось, что учебники по технологиям уже прочитаны, всё что нужно для работы я знаю, а остальное можно вытащить из мануалов и постов на Хабре, и то имеет смысл заниматься этим, только когда понадобится. Причём, судя по разговорам с коллегами, такое настроение возникает у многих. Потом я понял, насколько заблуждался, и даже немного пожалел об упущенном времени.</p>
<p>В один прекрасный день меня настигло-таки ощущение, что я не знаю многих, в том числе базовых для работы вещей, и я набросился на учебу, за полгода проглотив больше книг, чем за предыдущие два. Процесс продолжается до сих пор с переменной скоростью. Есть книги, которые осиливаешь на одном дыхании, а есть те, на которых застреваешь и приходится себя разными способами заставлять дойти до конца.</p>
<p>В этом посте я приведу небольшие рецензии на несколько технических книжек.</p>
<p><a href="http://www.ozon.ru/context/detail/id/5508646/"><img style="margin: 10px;" src="http://www.ozon.ru/multimedia/books_covers/1001969331.jpg" width="150" align="right" />С. Макконнелл, &#171;Совершенный код. Мастер-класс&#187;</a><br />
Тотальный и безусловный мастрид для человека, который хочет называть себя разработчиком. Эту книгу папы-программисты должны читать на ночь детям программистам. Идет очень легко, даром что толстая: хороший перевод, приятный язык. Единственный минус &#8212; сложно носить с собой в метро (у меня она занимала всю сумку).<br />
Там есть все: от того, как называть переменные, до организации процесса разработки. Всё рассказано подробно и приближенно к практике, есть огромное количество ссылок на материалы для дальнейшего изучения. В общем, эту книгу я <strong>крайне</strong> рекомендую.<br />
<br clear="all"><br />
<a href="http://www.ozon.ru/context/detail/id/3353337/"><img style="margin: 10px;" src="http://www.ozon.ru/multimedia/books_covers/1000543072.jpg" width="150" align="right" />Э. Хант, Д. Томас, &#171;Программист-прагматик. Путь от подмастерья к мастеру&#187;</a><br />
Это такой &#171;Макконнелл для ленивых&#187;. Она гораздо меньше и часть материала повторяется. Писалась, похоже, раньше, поэтому часть упоминаемых в ней технологий устврели.<br />
Если &#171;Совершенный код&#187; вас уж очень пугает размером, попробуйте её. Если СК прочли, не тратьте время.<br />
<br clear="all"></p>
<p><a href="http://www.ozon.ru/context/detail/id/2457392/"><img style="margin: 10px;" src="http://www.ozon.ru/multimedia/books_covers/1000281214.jpg" width="150" align="right" />Э. Гамма, Р. Хелм, Р. Джонсон, Дж. Влиссидес, &#171;Приемы объектно-ориентированного проектирования. Паттерны проектирования&#187;</a><br />
Классика. Если вы хотите вставлять в резюме слово &#171;паттерны&#187;, обязательно её прочтите, а то потом не сможете рассказать, чем декоратор отличается от заместителя, и будете выглядеть глупо.<br />
Книжка мне показалась тяжелой: в неё надо &#171;въезжать&#187; и думать<br />
почти на каждой странице. Зато потом всё в голове выстраивается в очень красивую картину, стоящую затраченных усилий.<br />
При изучении паттернов основная проблема &#8212; они быстро забываются. Поэтому, чтобы закрепить знания, когда прочли про какой-то паттерн, подумайте, как его можно было бы применить на практике в ваших проектах.<br />
<br clear="all"><br />
<a href="http://www.ozon.ru/context/detail/id/3105480/"><img style="margin: 10px;" src="http://www.ozon.ru/multimedia/books_covers/1000461630.jpg" width="150" align="right" />Крэг Ларман, &#171;Применение UML 2.0 и шаблонов проектирования&#187;</a><br />
Очень просветляющая книга. Несмотря на название, она не только про UML и паттерны (кстати, паттерны &#8212; не те, что у GoF, а более общие, GRASP). Как исследовать предметную область, как выделять её объекты и переносить их в код, как организовать процесс проектирования и разработки &#8212; все там.<br />
Написана приятно, я прочел на одном дыхании (хотя кое-кто из коллег этого впечатления не разделяет), утыкав страницы разноцветными закладками.<br />
Советую её каждому, кто хочет спроектировать и разработать что-то сложнее гостевой книги.<br />
<br clear="all"></p>
<p><a href="http://www.ozon.ru/context/detail/id/1027264/"><img style="margin: 10px;" src="http://www.ozon.ru/multimedia/books_covers/1000012207.jpg" width="150" align="right" />Марк Арнольд, Джефф Д. Алмейда, Клинт Миллер, &#171;Администрирование Apache&#187;</a><br />
Единственная книга на русском по администрированию веб-серверов, которую я нашел в продаже (сейчас, похоже, и она пропала). И это её главное достоинство, дальше идут недостатки: отвратительный перевод, устаревший материал (она про Apache 1.3).<br />
Сейчас читаю, идет тяжело. Конечно, она дает более-менее целостное представление о веб-сервере, которое трудно получить чтением мануалов, но сил для этого приходится тратить много.<br />
<br clear="all"><br />
В моем списке для чтения еще много позиций, так что продолжение следует.</p>
<p>А какие книги для разработчиков можете порекомендовать вы?</p>
]]></content:encoded>
			<wfw:commentRss>http://widgetok.ru/2011/04/books-for-developers/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Каково это, быть начальником</title>
		<link>http://widgetok.ru/2011/02/to-be-a-head/</link>
		<comments>http://widgetok.ru/2011/02/to-be-a-head/#comments</comments>
		<pubDate>Wed, 02 Feb 2011 08:36:34 +0000</pubDate>
		<dc:creator>Глеб</dc:creator>
				<category><![CDATA[Философия]]></category>
		<category><![CDATA[ссылки]]></category>
		<category><![CDATA[юмор]]></category>

		<guid isPermaLink="false">http://widgetok.ru/?p=850</guid>
		<description><![CDATA[Замечательное (и очень точное) описание того, что чувствует человек, впервые становясь из подчиненного начальником.]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.diary.ru/~jazzzzman/p144950156.htm">Замечательное (и очень точное) описание</a> того, что чувствует человек, впервые становясь из подчиненного начальником. <img src='http://widgetok.ru/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://widgetok.ru/2011/02/to-be-a-head/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
