<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0">
  <channel>
    <title>Блог Андрея Андреева</title>
    <link>http://AndreyAndreev.com/</link>
    <description>О программировании и не только</description>
    <lastBuildDate>Вт, 26 апр 2011 08:52:46 GMT</lastBuildDate>
    <item>
      <guid isPermaLink="true">http://AndreyAndreev.com/blog/time-is-up</guid>
      <pubDate>Вт, 26 апр 2011 08:52:46 GMT</pubDate>
      <title>Время прошло</title>
      <link>http://AndreyAndreev.com/blog/time-is-up</link>
      <description>&lt;p&gt;Что-то мне подсказывает, что пора менять концепцию :) И&amp;nbsp;это что-то, конечно&amp;nbsp;&amp;mdash; больше чем на&amp;nbsp;месяц затянувшийся перерыв в&amp;nbsp;публикациях. В&amp;nbsp;прошлой записи я&amp;nbsp;обещался и&amp;nbsp;грозился выкатить прототип игры, которую взялся было делать. И&amp;nbsp;прототип я&amp;nbsp;таки сделал, реализовал движок игры... с&amp;nbsp;консольным интерфейсом. Очень забавно вышло, кстати: играть в&amp;nbsp;&amp;laquo;Сапёра&amp;raquo;, вводя координаты через командную строку. Но, по&amp;nbsp;большому счёту, слова своего не&amp;nbsp;сдержал. И&amp;nbsp;это печально.&lt;/p&gt;
&lt;p align="center"&gt;&lt;img width="550" src="/img/minesweeper-console.png" /&gt;&lt;/p&gt;
&lt;p&gt;Но&amp;nbsp;за&amp;nbsp;этот месяц, однако, произошло несколько изменений в&amp;nbsp;моей жизни, о&amp;nbsp;которых&amp;nbsp;я, пожалуй, расскажу. Самое основное из&amp;nbsp;них&amp;nbsp;&amp;mdash; смена места работы. На&amp;nbsp;этой неделе я&amp;nbsp;ещё работаю на&amp;nbsp;прежнем месте, но&amp;nbsp;со&amp;nbsp;следующей уже буду трудиться на&amp;nbsp;новом. И&amp;nbsp;перемена эта меня очень радует, чем с&amp;nbsp;вами и&amp;nbsp;делюсь.&lt;/p&gt;
&lt;p&gt;Надо как-то проще писать в&amp;nbsp;этот блог... мне кажется, я&amp;nbsp;слишком выбираю слова. Вам так не&amp;nbsp;кажется? Хех, да&amp;nbsp;как&amp;nbsp;же вы&amp;nbsp;ответите, я&amp;nbsp;же комментарии ещё не&amp;nbsp;прикрутил. Вот, кстати, и&amp;nbsp;задачка: прикручу. Либо самописные какие сделаю, либо Disqus, либо InstanseDebate&amp;nbsp;&amp;mdash; других вариантов пока не&amp;nbsp;вижу. Ну&amp;nbsp;да&amp;nbsp;не&amp;nbsp;в&amp;nbsp;этом суть, а&amp;nbsp;суть в&amp;nbsp;том, что блог задумывался как дневник реализации неких проектов, или даже бизнес-проектов, если позволите. И&amp;nbsp;их&amp;nbsp;есть у&amp;nbsp;меня, &amp;laquo;проектов&amp;raquo; этих. И&amp;nbsp;о&amp;nbsp;реализации, наверное, если взяться, можно вполне даже и&amp;nbsp;писать.&lt;/p&gt;
&lt;p&gt;Но&amp;nbsp;вот ещё у&amp;nbsp;меня какая идея появилась. На&amp;nbsp;собеседованиях, на&amp;nbsp;которых я&amp;nbsp;был, мне, случалось, задавали интересные вопросы, на&amp;nbsp;которые я&amp;nbsp;иногда отвечал слишком абстрактно, так как конкретных знаний не&amp;nbsp;было. А&amp;nbsp;известно, что лучше всего усваивается информация, когда ей&amp;nbsp;делишься с&amp;nbsp;другими. У&amp;nbsp;меня даже с&amp;nbsp;какого-то тренинга осталось каким-то образом и&amp;nbsp;кем-то посчитанная усвояемость информации в&amp;nbsp;процентах:&lt;/p&gt;
&lt;p&gt;Усвоение новой информации:
&lt;ul&gt;
&lt;li&gt;10% от&amp;nbsp;прочитанного&lt;/li&gt;
&lt;li&gt;20% от&amp;nbsp;услышанного&lt;/li&gt;
&lt;li&gt;30% от&amp;nbsp;увиденного&lt;/li&gt;
&lt;li&gt;50% от&amp;nbsp;увиденного и&amp;nbsp;услышанного&lt;/li&gt;
&lt;li&gt;55% от&amp;nbsp;увиденного и&amp;nbsp;записанного&lt;/li&gt;
&lt;li&gt;70% от&amp;nbsp;обсуждённого&lt;/li&gt;
&lt;li&gt;85% от&amp;nbsp;увиденного, записанного и&amp;nbsp;просмотренного в&amp;nbsp;течение последующих &lt;nobr&gt;5-ти&lt;/nobr&gt; часов&lt;/li&gt;
&lt;li&gt;90% от&amp;nbsp;опробованного и&amp;nbsp;обсуждённого с&amp;nbsp;другими людьми&lt;/li&gt;
&lt;li&gt;95% от&amp;nbsp;того, чему обучаем других людей&lt;/li&gt;
&lt;/ul&gt;
&lt;/p&gt;
&lt;p&gt;Но&amp;nbsp;это итак понятно: что вы&amp;nbsp;больше запомните, когда вам кто-то расскажет, как кому-то дали в&amp;nbsp;морду, или когда вы&amp;nbsp;своими глазами увидите, как кому-то дали в&amp;nbsp;морду, или когда вам дадут в&amp;nbsp;морду?&lt;/p&gt;
&lt;p&gt;Один из&amp;nbsp;вопросов был о&amp;nbsp;раннем и&amp;nbsp;позднем связывании в&amp;nbsp;контексте виртуальных методов C#. О&amp;nbsp;чём в&amp;nbsp;рамках этой новой идеи и&amp;nbsp;расскажу как-нибудь.&lt;/p&gt;</description>
    </item>
    <item>
      <guid isPermaLink="true">http://AndreyAndreev.com/blog/time-has-gone</guid>
      <pubDate>Чт, 10 мар 2011 20:24:12 GMT</pubDate>
      <title>Время пошло</title>
      <link>http://AndreyAndreev.com/blog/time-has-gone</link>
      <description>&lt;p&gt;Поскольку этот блог я&amp;nbsp;решил вести честно, честно во&amp;nbsp;всём и&amp;nbsp;признаюсь: за&amp;nbsp;все дни с&amp;nbsp;последней заметки я&amp;nbsp;не&amp;nbsp;сделал по&amp;nbsp;своему &amp;bdquo;громадному&amp;ldquo; проекту ничего. При том, что в&amp;nbsp;офисе исправно тружусь по&amp;nbsp;9&amp;nbsp;часов в&amp;nbsp;сутки. Лично меня это уже не&amp;nbsp;столько удивляет, сколько обескураживает.&lt;/p&gt;
&lt;p&gt;&lt;ul&gt;&lt;li&gt;Что даст мне опыт в&amp;nbsp;построении законченного приложения и&amp;nbsp;проведении его через все стадии жизненного цикла?&lt;/li&gt;
&lt;li&gt;Что даст мне опыт самоорганизации (самоорганизации, как&amp;nbsp;бы не&amp;nbsp;так) и&amp;nbsp;понимание того, как мне следует строить свою личную работу вне офиса?&lt;/li&gt;
&lt;li&gt;Что мне даст опыт применения новых технологий, в&amp;nbsp;том числе заветного Objective C?&lt;/li&gt;&lt;/ul&gt;&lt;/p&gt;
&lt;p&gt;А&amp;nbsp;теперь та&amp;nbsp;часть меня, которая в&amp;nbsp;ответ на&amp;nbsp;всё это прячет голову в&amp;nbsp;песок и&amp;nbsp;продолжает прозябать, выйди на&amp;nbsp;площадь и&amp;nbsp;подставь своё бесстыдство под меткие броски камнями. И&amp;nbsp;поделом тебе будет.&lt;/p&gt;
&lt;p&gt;На&amp;nbsp;правах картинки:&lt;/p&gt;
&lt;h3 align="center"&gt;Не&amp;nbsp;позволяй душе лениться&lt;/h3&gt;
&lt;p align="center"&gt;Не&amp;nbsp;позволяй душе лениться!&lt;br/&gt;
Чтоб в&amp;nbsp;ступе воду не&amp;nbsp;толочь,&lt;br/&gt;
Душа обязана трудиться&lt;br/&gt;
И&amp;nbsp;день и&amp;nbsp;ночь, и&amp;nbsp;день и&amp;nbsp;ночь!&lt;/p&gt;
&lt;p align="center"&gt;Гони ее&amp;nbsp;от&amp;nbsp;дома к&amp;nbsp;дому,&lt;br/&gt;
Тащи с&amp;nbsp;этапа на&amp;nbsp;этап,&lt;br/&gt;
По&amp;nbsp;пустырю, по&amp;nbsp;бурелому,&lt;br/&gt;
Через сугроб, через ухаб!&lt;/p&gt;
&lt;p align="center"&gt;Не&amp;nbsp;разрешай ей&amp;nbsp;спать в&amp;nbsp;постели&lt;br/&gt;
При свете утренней звезды,&lt;br/&gt;
Держи лентяйку в&amp;nbsp;черном теле&lt;br/&gt;
И&amp;nbsp;не&amp;nbsp;снимай с&amp;nbsp;нее узды!&lt;/p&gt;
&lt;p align="center"&gt;Коль дать ей&amp;nbsp;вздумаешь поблажку,&lt;br/&gt;
Освобождая от&amp;nbsp;работ,&lt;br/&gt;
Она последнюю рубашку&lt;br/&gt;
С&amp;nbsp;тебя без жалости сорвет.&lt;/p&gt;
&lt;p align="center"&gt;А&amp;nbsp;ты&amp;nbsp;хватай ее&amp;nbsp;за&amp;nbsp;плечи,&lt;br/&gt;
Учи и&amp;nbsp;мучай дотемна,&lt;br/&gt;
Чтоб жить с&amp;nbsp;тобой по-человечьи&lt;br/&gt;
Училась заново она.&lt;/p&gt;
&lt;p align="center"&gt;Она рабыня и&amp;nbsp;царица,&lt;br/&gt;
Она работница и&amp;nbsp;дочь,&lt;br/&gt;
Она обязана трудиться&lt;br/&gt;
И&amp;nbsp;день и&amp;nbsp;ночь, и&amp;nbsp;день и&amp;nbsp;ночь!&lt;/p&gt;
&lt;p align="right"&gt;Николай Заболоцкий, 1958&lt;/p&gt;&lt;br/&gt;
&lt;p&gt;Мне кажется, надо выстроить процесс работы (ох&amp;nbsp;как я&amp;nbsp;не&amp;nbsp;люблю все эти модные словеса), начиная с&amp;nbsp;чёткой цели, сроков, плана. Вспомнить про SMART и&amp;nbsp;прочие менеджерские уловки. Я&amp;nbsp;сейчас и&amp;nbsp;менеджер, и&amp;nbsp;исполнитель. И&amp;nbsp;директор, и&amp;nbsp;подчинённый. И&amp;nbsp;обе роли пока что делаю провально.&lt;/p&gt;
&lt;p&gt;Итак, сейчас выступлю волевым и&amp;nbsp;даже вредным начальником: я&amp;nbsp;хочу, чтобы через неделю у&amp;nbsp;меня был рабочий прототип игры! Через неделю от&amp;nbsp;сегодняшнего дня, то&amp;nbsp;есть в&amp;nbsp;четверг, 17&amp;nbsp;марта &lt;nobr&gt;2011-го&lt;/nobr&gt; года. И&amp;nbsp;точка. Прототип должен позволять проводить обычную, двумерную, классическую игру в&amp;nbsp;сапёра. Платформа&amp;nbsp;&amp;mdash; WPF, чтобы не&amp;nbsp;заморачиваться. С&amp;nbsp;графикой&amp;nbsp;&amp;mdash; тоже не&amp;nbsp;заморачиваться. Главное, чтобы можно было сыграть. Время пошло.&lt;/p&gt;</description>
    </item>
    <item>
      <guid isPermaLink="true">http://AndreyAndreev.com/blog/pursuit</guid>
      <pubDate>Чт, 03 мар 2011 23:08:08 GMT</pubDate>
      <title>В погоне</title>
      <link>http://AndreyAndreev.com/blog/pursuit</link>
      <description>&lt;p&gt;Покуда с&amp;nbsp;ячейками мы&amp;nbsp;разобрались, давайте двигаться дальше. Нужно как-то увязать ячейки с&amp;nbsp;игровым полем. Когда я&amp;nbsp;об&amp;nbsp;этом думаю, мне представляется свойство типа &lt;i&gt;Dictionary&amp;lt;Coordinate, Cell&amp;gt;&lt;/i&gt; у&amp;nbsp;класса &lt;i&gt;Field&lt;/i&gt;. То&amp;nbsp;есть словарь ключ-значение, где ключём будут координаты, а&amp;nbsp;значением&amp;nbsp;&amp;mdash; сама ячейка.&lt;/p&gt;
&lt;p&gt;Этот тип описан в .net framework&amp;rsquo;е, и&amp;nbsp;потому такое моё представление поля уже становится в&amp;nbsp;некотором смысле платформозависимым. В&amp;nbsp;общем, пришла, видимо, пора подумать о&amp;nbsp;платформе, на&amp;nbsp;которой всё это дело будет реализовываться. И&amp;nbsp;этот вопрос я&amp;nbsp;решу быстро. Дело в&amp;nbsp;том, что я&amp;nbsp;&amp;mdash; разработчик на&amp;nbsp;C#. Казалось&amp;nbsp;бы, выбор сделан? Что знаешь, на&amp;nbsp;том и&amp;nbsp;пиши? Возможно. Но&amp;nbsp;мне, конечно&amp;nbsp;же, хотелось&amp;nbsp;бы, чтобы готовую игру смогли скачать как можно больше людей. Ведь коль скоро мы&amp;nbsp;говорим о&amp;nbsp;бизнесе, именно люди приносят деньги. А&amp;nbsp;людей больше, пожалуй, всё-таки не&amp;nbsp;на&amp;nbsp;платформе от&amp;nbsp;Microsoft. Короче говоря, хорошо&amp;nbsp;бы попасть в&amp;nbsp;iTunes App Store, то&amp;nbsp;есть написать приложение под iOS, совершенно незнакомую мне платформу на&amp;nbsp;вражьем этом Objective-C, о&amp;nbsp;котором я&amp;nbsp;и&amp;nbsp;слышал то&amp;nbsp;всего половиной уха. С&amp;nbsp;другой стороны, Microsoft Marketplace тоже существует и&amp;nbsp;им, надо думать, тоже кто-нибудь да&amp;nbsp;пользуется. Я&amp;nbsp;даже поискал конкретные цифры:&lt;/p&gt;
&lt;p&gt;&lt;b&gt;iOS&lt;/b&gt;&lt;/p&gt;
&lt;ul&gt;&lt;li&gt;Количество проданных iOS устройств: 160 миллионов (на&amp;nbsp;середину января нынешнего, &lt;nobr&gt;2011-го&lt;/nobr&gt; года, вот &lt;a href="http://techcrunch.com/2011/01/18/apple-q1-2011/" target="_blank"&gt;ссылка&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Количество приложений: 400&amp;nbsp;000&lt;/li&gt;
&lt;li&gt;Разработчиков: 43&amp;nbsp;185 (&lt;a href="http://mashable.com/2010/07/02/ios-android-developer-stats/" target="_blank"&gt;ссылка&lt;/a&gt;)&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;p&gt;&lt;b&gt;WindowsPhone 7&lt;/b&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Количество проданных WindowsPhone7&amp;nbsp;устройств: 2&amp;nbsp;миллиона&lt;/li&gt;
&lt;li&gt;Программ в&amp;nbsp;Marketplace: 6&amp;nbsp;500&lt;/li&gt;
&lt;li&gt;Разработчиков: 24&amp;nbsp;000 (&lt;a href="http://www.bloomberg.com/news/2011-01-26/microsoft-says-it-shipped-2-million-windows-phones-last-quarter.html" target="_blank"&gt;ссылка&lt;/a&gt;)&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;p&gt;Как говорится, почувствуйте разницу.&lt;/p&gt;
&lt;p&gt;План действий я&amp;nbsp;всё-таки выбираю такой. Разрабатывать игру на .net&amp;rsquo;е под WindowsPhone7, поскольку эти технологии мне уже знакомы. А&amp;nbsp;паралелльно изучать iOS и&amp;nbsp;Objective-C. Думается мне, переносить существующее приложение на&amp;nbsp;другую, пусть и&amp;nbsp;малознакомую платформу будет проще, чем сразу писать под неё. Ну&amp;nbsp;и, конечно, потом будет интересно сравнить результаты.&lt;/p&gt;
&lt;p&gt;А&amp;nbsp;теперь вернусь обратно к&amp;nbsp;своим баранам в&amp;nbsp;поле. Или ячейкам. Надо придумать реализацию координат и&amp;nbsp;самого поля. Итак, поле содержит словарь с&amp;nbsp;ячейками, конструктор, инициализирующий этот словарь (принимать параметрами он&amp;nbsp;будет размеры поля и&amp;nbsp;количество бомб) и&amp;nbsp;метод, открывающий ячейку по&amp;nbsp;её&amp;nbsp;координате.&lt;/p&gt;
&lt;p align="center"&gt;&lt;img src="/img/happyness.jpg" alt="Постер фильма «В погоне за счастьем»" /&gt;&lt;/p&gt;
&lt;p&gt;Написав это, я&amp;nbsp;открыл свой проект в&amp;nbsp;Visual Studio и&amp;nbsp;начал описывать классы координат и&amp;nbsp;алгоритм генерации поля... Но&amp;nbsp;очень скоро запутался, пытаясь при генерации абстрагироваться от&amp;nbsp;конкретной реализации координат. Как только как будто разобрался... рухнула студия. Ключевые изменения пропали. А&amp;nbsp;ещё я&amp;nbsp;подумал, что в&amp;nbsp;день по&amp;nbsp;чайной ложке&amp;nbsp;&amp;mdash; это убогий подход. Так можно целый год писать этого несчастного сапёра, которого я&amp;nbsp;выбрал как умышленно простую задачу. Когда я&amp;nbsp;смотрел фильм &amp;laquo;&lt;a href="http://www.kinopoisk.ru/level/1/film/104938/" target="_blank"&gt;В&amp;nbsp;погоне за&amp;nbsp;счастьем&lt;/a&gt;&amp;raquo;  с&amp;nbsp;Уиллом Смитом в&amp;nbsp;главной роли, я&amp;nbsp;представлял себя на&amp;nbsp;его месте. Но&amp;nbsp;мои обстоятельства в&amp;nbsp;разы лучше. Практически тепличные. И&amp;nbsp;это странно: когда как будто&amp;nbsp;бы всё есть, но&amp;nbsp;хочется большего... просто чтобы было&amp;nbsp;&amp;mdash; это дурацкая мотивация. Это не&amp;nbsp;работает. Когда нужно сделать что-то во&amp;nbsp;что&amp;nbsp;бы то&amp;nbsp;ни&amp;nbsp;стало, чтобы выжить&amp;nbsp;&amp;mdash; это другой разговор. Хоть умышленно загоняй себя в&amp;nbsp;невыносимые рамки... &lt;/p&gt;
&lt;p&gt;Как изменить подход?&lt;/p&gt;
&lt;p&gt;Сейчас третий час ночи и&amp;nbsp;я&amp;nbsp;отправляюсь спать.&lt;/p&gt;</description>
    </item>
    <item>
      <guid isPermaLink="true">http://AndreyAndreev.com/blog/cells</guid>
      <pubDate>Ср, 02 мар 2011 21:48:04 GMT</pubDate>
      <title>По кирпичику...</title>
      <link>http://AndreyAndreev.com/blog/cells</link>
      <description>&lt;p&gt;Как-то с&amp;nbsp;другом мы&amp;nbsp;придумали термин &amp;laquo;сон-тайм&amp;raquo; для обозначения режима работы над своим проектом, если работой по&amp;nbsp;найму занято всё остальное время. &amp;laquo;Сон-тайм&amp;raquo; в&amp;nbsp;противовес &amp;laquo;фул-тайм&amp;raquo;. И&amp;nbsp;что-то этот сон-тайм мне не&amp;nbsp;очень-то нравится... Но&amp;nbsp;покуда работа в&amp;nbsp;офисе остаётся, единственное, что я&amp;nbsp;могу сделать, это черпать вдохновение из&amp;nbsp;своего видения и&amp;nbsp;не&amp;nbsp;роптать : )&lt;/p&gt;
&lt;p&gt;Итак, начну подробнее прорабатывать каждую из&amp;nbsp;сущностей, которые всплыли в&amp;nbsp;результате небольшого мозгового штурма, проведённого в&amp;nbsp;&lt;a href="/blog/first-sight" title="Пост: Первый взгляд"&gt;прошлый раз&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Ну, собственно, к&amp;nbsp;делу.&lt;/p&gt;
&lt;p&gt;Сначала разберёмся с&amp;nbsp;ячейками. Они могут быть двух видов: с&amp;nbsp;бомбой или с&amp;nbsp;цифрой&amp;nbsp;&amp;mdash; количеством бомб в&amp;nbsp;соседних ячейках. Думаю, это будут два разных типа &lt;i&gt;BombCell&lt;/i&gt; и&amp;nbsp;&lt;i&gt;NumberCell&lt;/i&gt;, потомки абстрактного типа &lt;i&gt;Cell&lt;/i&gt;. Базовый тип будет содержать защищённую булеву переменную, которая будет хранить информацию, была&amp;nbsp;ли ячейка открыта или нет. Да, для бомбы как будто это не&amp;nbsp;акутально&amp;nbsp;&amp;mdash; её&amp;nbsp;можно открыть только один раз, и&amp;nbsp;игра закончится. Но&amp;nbsp;кто сказал, что это будет обычный сапёр? ;) Буду всё-таки стараться писать наиболее гибко. Не&amp;nbsp;выходя, однако, за&amp;nbsp;рамки разумного (а&amp;nbsp;также доброго и&amp;nbsp;вечного, конечно).&lt;/p&gt;
&lt;p&gt;Также базовый тип будет содержать виртуальную функцию &lt;i&gt;Open()&lt;/i&gt; с&amp;nbsp;целочисленным типом возвращаемого значения. Это будет количество бомб в&amp;nbsp;округе, или, скажем минус единица в&amp;nbsp;случае, если открытая ячейка&amp;nbsp;&amp;mdash; бомба. Каждый класс-потомок будет реализовывать эту функцию сам. В&amp;nbsp;базовой реализации сделаю только простановку флага, что мол ячейка открыта.&lt;/p&gt;
&lt;p&gt;Получается примерно такая картинка:&lt;/p&gt;
&lt;p align="center"&gt;&lt;img src="/img/minesweeper-cells-classes.png" alt="Диаграмма классов ячеек" /&gt;&lt;/p&gt;
&lt;p&gt;Тип ячейки-бомбы чрезвычайно прост. Всё, что ему требуется сделать&amp;nbsp;&amp;mdash; это переопределить базовый метод &lt;i&gt;Open()&lt;/i&gt; и&amp;nbsp;вернуть в&amp;nbsp;нём минус единицу (индикатор бомбы). Ячейка-циферка&amp;nbsp;же ничуть не&amp;nbsp;сложнее. Разве что в&amp;nbsp;её&amp;nbsp;конструктор нужно будет передать количество бомб-соседей, дабы она его хранила и&amp;nbsp;возвращала при открытии.&lt;/p&gt;
&lt;p&gt;Ну&amp;nbsp;и&amp;nbsp;с&amp;nbsp;ячейками пока похоже что всё.&lt;/p&gt;</description>
    </item>
    <item>
      <guid isPermaLink="true">http://AndreyAndreev.com/blog/first-sight</guid>
      <pubDate>Пт, 25 фев 2011 19:34:39 GMT</pubDate>
      <title>Первый взгляд</title>
      <link>http://AndreyAndreev.com/blog/first-sight</link>
      <description>&lt;p&gt;По&amp;nbsp;идее (и, конечно, по&amp;nbsp;рекомендации Эрика), после выбора, какой продукт создавать, нужно заняться исследованием рынков, конкурентов, не&amp;nbsp;забыть подумать про маркетинг и&amp;nbsp;о&amp;nbsp;финансах.&lt;/p&gt;
&lt;p&gt;Обо всём этом я&amp;nbsp;ещё подумаю, но&amp;nbsp;сейчас мне хочется взять на&amp;nbsp;себя другую роль&amp;nbsp;&amp;mdash; архитектора; и&amp;nbsp;разобраться с&amp;nbsp;тем, что&amp;nbsp;же вообще из&amp;nbsp;себя представляет выбранный проект, &lt;i&gt;что&lt;/i&gt; предстоит сделать, и&amp;nbsp;примерно прикинуть, &lt;i&gt;как&lt;/i&gt;.&lt;/p&gt;
&lt;p&gt;Minesweeper&amp;nbsp;&amp;mdash; игра про бомбы. И&amp;nbsp;то, что в&amp;nbsp;ней есть наверняка&amp;nbsp;&amp;mdash; это игровое поле и&amp;nbsp;&lt;s&gt;клеточки&lt;/s&gt; ячейки. Так, не&amp;nbsp;долго думая, и&amp;nbsp;запишем.&lt;/p&gt;
&lt;p&gt;Дальше начинаются детали. Ячейки могут быть разных типов: бомбы, пустые или с&amp;nbsp;циферками. А&amp;nbsp;последние два, пожалуй, можно объединить, ибо пустая ячейка, по&amp;nbsp;сути, содержит цифру ноль, которая просто не&amp;nbsp;отображается. Но&amp;nbsp;представление&amp;nbsp;&amp;mdash; это уже совсем другая история. Об&amp;nbsp;этом позже.&lt;/p&gt;
&lt;p&gt;Ячейки, понятное дело, имеют координаты. И&amp;nbsp;тут интересный момент: я&amp;nbsp;думаю, стоит сделать отдельный расширяемый тип координат. Ибо это могут быть банальные икс с&amp;nbsp;игреком.., а&amp;nbsp;могут быть и&amp;nbsp;более сложные, например, пространственные. Хочется сделать более-менее универсальную базу, дабы на&amp;nbsp;ней можно было построить практически любую вариацию &amp;laquo;Сапёра&amp;raquo;.&lt;/p&gt;
&lt;p&gt;Универсальность... это, конечно, замечательно, но&amp;nbsp;слова &amp;laquo;любая вариация&amp;raquo; мне не&amp;nbsp;слишком нравятся. Когда дело доходит до&amp;nbsp;&amp;laquo;любого&amp;raquo;, думаю, нужно постараться чётче представить результат и&amp;nbsp;получше разобраться в&amp;nbsp;требованиях. Но&amp;nbsp;пока, прикидочно, подойдёт и&amp;nbsp;так.&lt;/p&gt;
&lt;p&gt;Думать я&amp;nbsp;предпочитаю на&amp;nbsp;бумаге. И, желательно, картинками. Но&amp;nbsp;коль скоро вчера был день рождения Стива Джобса, присоединюсь к&amp;nbsp;его видению будущего. Думал я&amp;nbsp;на&amp;nbsp;iPad&amp;rsquo;е. И&amp;nbsp;вот какая картинка у&amp;nbsp;меня получилась (кликните на картинку для её увеличения):&lt;/p&gt;
&lt;a href="/img/minesweeper-mindmap.png" target="_blank" title="Рассмотреть карту в детальках"&gt;&lt;img src="/img/minesweeper-mindmap-mini.png" alt="Ментальная карта по игре Сапёр" /&gt;&lt;/a&gt;
&lt;p&gt;Я&amp;nbsp;просто накидал пришедшие мысли и&amp;nbsp;организовал их&amp;nbsp;в&amp;nbsp;MindMap, или ментальную карту. К&amp;nbsp;ячейкам и&amp;nbsp;полю добавилось ещё несколько сущностей: координаты, опции и&amp;nbsp;некий менеджер, который будет отвечать за&amp;nbsp;команды типа &amp;laquo;Начать игру&amp;raquo; и&amp;nbsp;&amp;laquo;Закончить игру&amp;raquo;. Дальше, думаю, следует спуститься на&amp;nbsp;уровень ниже и&amp;nbsp;продумать более подробный вид всех этих сущностей.&lt;/p&gt;
</description>
    </item>
    <item>
      <guid isPermaLink="true">http://AndreyAndreev.com/blog/ready-set</guid>
      <pubDate>Чт, 24 фев 2011 05:14:21 GMT</pubDate>
      <title>На старт, внимание</title>
      <link>http://AndreyAndreev.com/blog/ready-set</link>
      <description>&lt;p&gt;Упомянутая книга оказалась действительно забавной. Я&amp;nbsp;очень люблю, когда серьёзные казалось&amp;nbsp;бы книги о&amp;nbsp;технологиях, разработке и&amp;nbsp;бизнесе пишут люди с&amp;nbsp;чувством юмора, не&amp;nbsp;брезгующие своё чувство применять. Во&amp;nbsp;вступительной части &lt;a href="http://www.ericsink.com/" target="_blank"&gt;этот парень&lt;/a&gt; пишет благодарности:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;&amp;laquo;Как видите, это специально отведённая часть книги, где я&amp;nbsp;хочу выразить свою благодарность. Почти во&amp;nbsp;всех книгах есть такая глава, где авторы описывают тёплые чувства, которые они питают к&amp;nbsp;людям, так или иначе помогавшим им&amp;nbsp;написать книгу. В&amp;nbsp;данном конкретном случае в&amp;nbsp;этом нет необходимости.&lt;/p&gt;
&lt;p&gt;Дело в&amp;nbsp;том, что вы&amp;nbsp;держите в&amp;nbsp;руках первую в&amp;nbsp;истории книгу, написанную одним-единственным человеком, без чьей-либо помощи, прямой или косвенной. Я&amp;nbsp;всё писал сам. Все идеи тоже мои, причём совершенно уникальные. Никакие чужие работы меня не&amp;nbsp;вдохновляли. Меня никто не&amp;nbsp;учил и&amp;nbsp;не&amp;nbsp;воодушевлял, мне не&amp;nbsp;помогали и&amp;nbsp;не&amp;nbsp;способствовали. Я&amp;nbsp;&amp;mdash; остров.&lt;/p&gt;
&lt;p&gt;:-)&lt;/p&gt;
&lt;p&gt;Прошу прощения, захотелось подурачиться. Всё равно ведь эту часть книги никогда не&amp;nbsp;читают.&lt;/p&gt;
&lt;p&gt;Честно говоря, я ...&amp;raquo;&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;И&amp;nbsp;приписывает в&amp;nbsp;конце введения:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;&amp;laquo;Очень надеюсь, что эта книга вам поможет, а&amp;nbsp;может быть, даже и&amp;nbsp;вдохновит.&lt;/p&gt;
&lt;p&gt;Разумеется, если вы&amp;nbsp;&amp;mdash; сотрудник компании SourceGear, то&amp;nbsp;забудьте даже, что держали эту книгу в&amp;nbsp;руках. Поверьте, создавать компанию&amp;nbsp;&amp;mdash; очень, очень очень тяжёлый труд. Зачем это вам? Возвращайтесь к&amp;nbsp;работе. :-)&amp;raquo;&lt;/p&gt;&lt;/blockquote&gt;
&lt;p align="center"&gt;&lt;img src="/img/eric-sink-business.jpg" alt="Обложка книги Эрика Синка" /&gt;&lt;/p&gt;
&lt;p&gt;Содержательная&amp;nbsp;же часть книги начинается с&amp;nbsp;раздела &amp;laquo;о&amp;nbsp;себе&amp;raquo; и&amp;nbsp;основного вопроса &amp;laquo;а&amp;nbsp;стоит&amp;nbsp;ли начинать или нет&amp;raquo;.&lt;/p&gt;
&lt;p&gt;Но, собственно, что это я&amp;nbsp;ударился в&amp;nbsp;рецензию с&amp;nbsp;элементами краткого пересказа? Напишу о&amp;nbsp;своих делах. Вчера, как я&amp;nbsp;и&amp;nbsp;предсказывал, был праздник, то&amp;nbsp;бишь выходной (на&amp;nbsp;том, почему единственный день, когда никуда не&amp;nbsp;надо выходить, называется выходным, я&amp;nbsp;останавливаться не&amp;nbsp;буду, это отдельный вопрос), и&amp;nbsp;провёл я&amp;nbsp;его в&amp;nbsp;основном занимаясь этим сайтом (я&amp;nbsp;умышленно делаю его с&amp;nbsp;нуля и&amp;nbsp;вчера делал админку), а&amp;nbsp;не&amp;nbsp;определением сути своего будущего проекта. Наверное, это можно назвать ошибкой: я&amp;nbsp;занимался сопутствующими делами вместо основных. Наперекор принципу &amp;laquo;Главное внимание&amp;nbsp;&amp;mdash; главным вещам&amp;raquo;, который, вообще-то, я&amp;nbsp;считаю толковым и&amp;nbsp;справедливым.&lt;/p&gt;
&lt;p&gt;Но&amp;nbsp;кратенько идея всё-таки сформировалась. Это будет игра. Увлекательная игра, способная держать игрока в&amp;nbsp;напряжении несмотря на&amp;nbsp;почти линейный сюжет; игра, заставляющая игрока принимать сложные решения и&amp;nbsp;расплачиваться за&amp;nbsp;них; игра, где важен каждый шаг, каждое действие, и&amp;nbsp;где каждое действие может стать последним. Игра, где увлекательность растёт экспоненциально, при том, что темп, обычно, замедляется...&lt;/p&gt;
&lt;p&gt;Не&amp;nbsp;догадались, о&amp;nbsp;чём&amp;nbsp;я? Я&amp;nbsp;буду делать версию игры &amp;laquo;Сапёр&amp;raquo; или, если угодно, &amp;laquo;Minesweeper&amp;raquo;. Моя задача&amp;nbsp;&amp;mdash; сделать законченный конкурентный привлекательный продукт и&amp;nbsp;организовать его продажи. Успехом будет считаться получение прибыли, то&amp;nbsp;есть превышение доходов над расходами (которых на&amp;nbsp;данный момент пока, к&amp;nbsp;счастью, нет).&lt;/p&gt;</description>
    </item>
    <item>
      <guid isPermaLink="true">http://AndreyAndreev.com/blog/business-for-programmers</guid>
      <pubDate>Вт, 22 фев 2011 22:11:12 GMT</pubDate>
      <title>Бизнес в кавычках</title>
      <link>http://AndreyAndreev.com/blog/business-for-programmers</link>
      <description>&lt;p&gt;Добрый день. Или какое&amp;nbsp;бы то&amp;nbsp;ни&amp;nbsp;было время суток. Сегодня я&amp;nbsp;купил книгу со&amp;nbsp;смешным названием &amp;laquo;Бизнес для программистов&amp;raquo;. Почему смешным? Потому что, во-первых, любое слово, если его повторять большое количество раз подряд, становится смешным, а&amp;nbsp;во-вторых, я&amp;nbsp;начитался всяческих книг про бизнес и&amp;nbsp;успех столько, что уже наверное до&amp;nbsp;смешного пресытился. Но&amp;nbsp;тем не&amp;nbsp;менее эту книгу купил. Ибо именно в&amp;nbsp;держащего её&amp;nbsp;в&amp;nbsp;руках меня пришла идея основной темы этого блога. А&amp;nbsp;тема у&amp;nbsp;блога должна быть, это я&amp;nbsp;понял наверняка.&lt;/p&gt;
&lt;p align="center"&gt;&lt;img src="/img/tom-peters-design-dreams.jpg" alt="кусочек книги Тома Петерса" /&gt;&lt;/p&gt;
&lt;p&gt;Итак, я&amp;nbsp;программист и&amp;nbsp;я&amp;nbsp;думаю о&amp;nbsp;бизнесе. Программистом себя считаю со&amp;nbsp;школы и&amp;nbsp;думать привык с&amp;nbsp;тех&amp;nbsp;же времён. Работаю программистом, однако, совсем недавно; а&amp;nbsp;о&amp;nbsp;бизнесе по-прежнему только лишь думаю.&lt;/p&gt;
&lt;p&gt;А&amp;nbsp;идея меня посетила такая: я&amp;nbsp;решил реализовать сперва небольшой &amp;laquo;бизнес&amp;raquo;-проект (пока что не&amp;nbsp;могу написать это слово без кавычек, а&amp;nbsp;там посмотрим), параллельно освещая работу над ним в&amp;nbsp;этом блоге. Конечно, у&amp;nbsp;меня, как и&amp;nbsp;у&amp;nbsp;любого программиста, есть много гениальных идей гениальных программ (заметьте&amp;nbsp;&amp;mdash; а&amp;nbsp;тут без кавычек)... но&amp;nbsp;беря в&amp;nbsp;рассчёт свою привычку недоводить дела до&amp;nbsp;конца, я&amp;nbsp;умышленно выберу что-нибудь почти утрированно простое.&lt;/p&gt;
&lt;p&gt;Завтра праздник, а&amp;nbsp;значит будет время ознакомиться с&amp;nbsp;книгой и&amp;nbsp;выбрать (выработать?) идею.&lt;/p&gt;
&lt;p&gt;На&amp;nbsp;связи.&lt;/p&gt;</description>
    </item>
    <item>
      <guid isPermaLink="true">http://AndreyAndreev.com/blog/rework</guid>
      <pubDate>Чт, 27 янв 2011 09:02:16 GMT</pubDate>
      <title>ПроРеВорк</title>
      <link>http://AndreyAndreev.com/blog/rework</link>
      <description>&lt;p&gt;Добрый день. Я&amp;nbsp;начну этот блог с&amp;nbsp;обзора книги, которую недавно прочёл.&lt;/p&gt;&lt;p&gt;Первой книгой, которую я&amp;nbsp;прочёл в&amp;nbsp;наступившем году, стала &amp;laquo;&lt;a href="http://www.ozon.ru/context/detail/id/5193684/" target="_blank"&gt;Rework: Бизнес без предрассудков&lt;/a&gt;&amp;raquo;&amp;nbsp;&amp;mdash; достаточно известный и&amp;nbsp;даже модный труд от&amp;nbsp;компании &lt;a href="http://37signals.com" target="_blank"&gt;37signals&lt;/a&gt;. О&amp;nbsp;самой компании, к&amp;nbsp;слову, в&amp;nbsp;России известно мало. &amp;laquo;37&amp;nbsp;сигналов&amp;raquo;&amp;nbsp;&amp;mdash; это всего 14&amp;nbsp;человек. И&amp;nbsp;они не&amp;nbsp;собираются расти. Ведь они итак экономные и&amp;nbsp;прибыльные, как сами о&amp;nbsp;себе пишут. Так и&amp;nbsp;книга. Она о&amp;nbsp;бизнесе, она очень ёмкая, она совершенно без воды.&lt;/p&gt;&lt;p align="center"&gt;&lt;img src="http://andreyandreev.com/img/rework.jpeg" alt="Обложка книги Rework" /&gt;&lt;/p&gt;&lt;blockquote&gt;&amp;laquo;За&amp;nbsp;время, прошедшее между предпоследней и&amp;nbsp;последней правками, мы&amp;nbsp;сократили эту книгу вдвое. Поверьте, стало лучше&amp;raquo;&lt;/blockquote&gt;&lt;p&gt;И&amp;nbsp;она читается чрезвычайно легко.&lt;/p&gt;&lt;p&gt;В&amp;nbsp;ней во&amp;nbsp;многом даётся новый, оригинальный взгляд на&amp;nbsp;бизнес. Минималистичный. Но&amp;nbsp;не&amp;nbsp;минималистичный в&amp;nbsp;смысле минимума временнЫх вложений (что активно проповедует Тимоти Феррис в&amp;nbsp;книге &amp;laquo;Четырёхчасовая рабочая неделя&amp;raquo;, о&amp;nbsp;которой я&amp;nbsp;расскажу как-нибудь потом), а&amp;nbsp;минималистичный в&amp;nbsp;смыле затрат. &lt;/p&gt;&lt;blockquote&gt;&amp;laquo;Нанимайте, когда уже становится невмоготу&amp;raquo;&lt;/blockquote&gt;&lt;p&gt;и более того:&lt;/p&gt;&lt;blockquote&gt;&amp;laquo;Проходите мимо отличных людей&amp;raquo;&lt;/blockquote&gt;&lt;p&gt;Основная мысль, на&amp;nbsp;мой взгляд&amp;nbsp;&amp;mdash; собирайтесь, делайте и&amp;nbsp;запускайтесь. Моя любимая глава в&amp;nbsp;этой книге &amp;laquo;Запускайтесь сейчас&amp;raquo;.&lt;/p&gt;&lt;blockquote&gt;&amp;laquo;Когда ваш продукт или услуга готовы к&amp;nbsp;употреблению? Когда вам стоит начать их&amp;nbsp;продавать? Когда можно дать людям возможность пользоваться ими? Вероятно, гораздо раньше, чем вам кажется. Как только ваш продукт делает&amp;nbsp;то, что он&amp;nbsp;должен делать, покажите его рынку&amp;raquo;&lt;/blockquote&gt;&lt;p&gt;Авторы применяли этот подход вплоть до&amp;nbsp;крайностей:&lt;/p&gt;&lt;blockquote&gt;&amp;laquo;Когда мы&amp;nbsp;запустили Basecamp, у&amp;nbsp;нас не&amp;nbsp;было механизма получения платы с&amp;nbsp;клиентов. Поскольку продукт требовал ежемесячной оплаты, мы&amp;nbsp;знали, что у&amp;nbsp;нас будет 30&amp;nbsp;дней на&amp;nbsp;решение этой задачи. Поэтому мы&amp;nbsp;использовали время перед запуском для того, чтобы заняться более важными для первого дня проблемами. Проблемы 30‑го дня могли подождать&amp;raquo;&lt;/blockquote&gt;&lt;p&gt;И&amp;nbsp;не&amp;nbsp;прогадали.&lt;/p&gt;&lt;p&gt;Хотите встряхнуть старые устои? Прочтите Rework. Рекомендую.&lt;/p&gt;&lt;p align="center"&gt;&lt;img src="http://andreyandreev.com/img/rework-ignore.jpeg" alt="Иллюстрация из книги Rework" /&gt;&lt;/p&gt;&lt;p&gt;Добавлю также, что книга приятна и&amp;nbsp;своими необычными иллюстрациями.&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
