<?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>Seleckis.lv :: журнал Никиты Селецкого &#187; Развлекуха</title>
	<atom:link href="http://seleckis.lv/category/journal/fun/feed" rel="self" type="application/rss+xml" />
	<link>http://seleckis.lv</link>
	<description></description>
	<lastBuildDate>Tue, 08 Feb 2011 13:52:50 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Публичная порка JS-гуру</title>
		<link>http://seleckis.lv/journal/fun/publichnaya-porka-js-guru</link>
		<comments>http://seleckis.lv/journal/fun/publichnaya-porka-js-guru#comments</comments>
		<pubDate>Mon, 09 Jun 2008 13:09:32 +0000</pubDate>
		<dc:creator>Никита</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Развлекуха]]></category>

		<guid isPermaLink="false">http://seleckis.lv/journal/fun/publichnaya-porka-js-guru</guid>
		<description><![CDATA[Конкурс закончился и работы проверены. Работы прислали 11 программистов, из которых один участник прислал аж 8 вариантов.
На удивление решения задачи оказались очень разные. Многие писали обработчики событий обычным способом, но некоторые всё-таки рекомендуемым AddEventListener/AttachEvent. Поразило разнообразие способов проверки на пробелы и наличие классов. 
В принципе, поскольку сама задача была решена практически всеми, то нет смысла [...]]]></description>
			<content:encoded><![CDATA[<p>Конкурс закончился и работы проверены. Работы прислали 11 программистов, из которых один участник прислал аж 8 вариантов.</p>
<p>На удивление решения задачи оказались очень разные. Многие писали обработчики событий обычным способом, но некоторые всё-таки рекомендуемым AddEventListener/AttachEvent. Поразило разнообразие способов проверки на пробелы и наличие классов. </p>
<p>В принципе, поскольку сама задача была решена практически всеми, то нет смысла опираться на эти результаты при подведении итогов. Поэтому, я буду придираться не только к самой задаче, но и к стилю программирования.</p>
<h3><a href='http://seleckis.lv/wp-content/uploads/2008/06/said-ali.zip' title=''> Said</a></h3>
<p>Эффективное решение с помощью цикла проверить все поля и свойства объекта inputData перед выводом. А, ведь действительно, поля могут быть заполнены не только вручную, но и скриптом.</p>
<p>Хорошее решение вынести все тримы в отдельные функции и использовать их как в PHP. Правда, на мой взгляд такие вещи должны прописываться как прототипы.</p>
<p>Нехороший повтор AddEventListener/AttachEvent. Можно было объединить.</p>
<p>Неправильное изменение элемента. Класс должен добавляться, а не заменяться.</p>
<p>Не могу понять эту конструкцию. </p>
<pre lang="javascript">
if (typeof(e.target) == 'text') e.target.className = 'edit';
</pre>
<p>Разве typeof(e.target) должен возвращать text? По-моему он возвращает object. Соответственно эта часть не работает в Firefox. Видимо автор скрипта хотел проверить тип элемента формы. Правильно было бы написать так:</p>
<pre lang="javascript">
if (typeof(e.target) != 'undefined' &#038;&#038; e.target.type == 'text') e.target.className += ' edit';
</pre>
<p>Правильно, добавил проверку существования свойства объекта inputData, на тот случай если в форму добавили поле ввода, а свойство в inputData не добавили. </p>
<pre lang="javascript">
if (!!inputData[el.name] || inputData[el.name] == '') inputData[el.name] = el.value;
</pre>
<p>Только для чего написаны два восклицательных знака? Ведь в конструкции if такие вещи в любом случае конвертируются в Boolean.</p>
<h3><a href='http://seleckis.lv/wp-content/uploads/2008/06/sergiusd.zip' title=''>SergiusD</a></h3>
<p>Хорошая работа с массивами.</p>
<p>Есть проверка существования класса error.</p>
<p>Извращение:</p>
<pre lang="javascript">
arr[ind] = null;
</pre>
<p>Для таких вещей есть функция splice.</p>
<p>Неоправданное решение относительно поиска в className, путём создания прототипа indexOf. Даже если использовать этот вариант, то лучше было бы разбивать строку в массив уже в indexOf. А возвращать и проверять в этом случае правильнее не -1 и ещё какое-то число, а true и false.</p>
<h3><a href='http://seleckis.lv/wp-content/uploads/2008/06/andrej.zip' title=''>Андрей</a></h3>
<p>Сделано не совсем универсально. При убирании фокуса возвращается первоначальный класс как первый. А если их там несколько?</p>
<p>Примитивный и неоптимизированный вывод данных в showAll. Гораздо лучше можно было бы сделать и не использовать лишние переменные.</p>
<p>Такие вещи нужно объединять в единое регулярное выражение:</p>
<pre lang="javascript">
.replace(/^\s/, '')
.replace(/\s$/, '')
</pre>
<h3><a href='http://seleckis.lv/wp-content/uploads/2008/06/nikolaj.zip' title=''>Николай</a></h3>
<p>Хороший вариант обращения к объектам по id или напрямую. Любят такие вещи во фреймворках.</p>
<pre lang="javascript">
var $ = function(id) {
    return typeof id == 'string' ? document.getElementById(id) : id;
};
</pre>
<p>Смысла особого нет в том, чтобы обращаться к объекту не на прямую, а через $, но ради единообразия&#8230;</p>
<p>Изящный вариант проверки существования класса:</p>
<pre lang="javascript">
return !!el.className.match(new RegExp('(^|\\s)' + className + '(\\s|$)'));
</pre>
<p>Мусор в цикле:</p>
<pre lang="javascript">
l = inputs.length; i < l
</pre>
<p>Это зачем?</p>
<pre lang="javascript">
})(inputs[i]);
</pre>
<h3><a href='http://seleckis.lv/wp-content/uploads/2008/06/igor-istochnik.zip' title=''>Игорь Источник</a></h3>
<p>Параноидально концептуальный подход. Годен для больших проектов. В пору писать свой фреймворк.</p>
<p>Хорошая прописка прототипов, особенно ifEmpty.</p>
<p>В конце вывода лишний перенос строки.</p>
<p>Если удалить текст, то поле становится красным. Если дать ему фокус, то класс будет: read error edit.</p>
<pre lang="javascript">
element.className = element.className + " "  + className;
</pre>
<p>для таких вещей есть оператор «+=»:</p>
<pre lang="javascript">
element.className += " "  + className;
</pre>
<p>Тяжеловатый для восприятия стиль.</p>
<h3><a href='http://seleckis.lv/wp-content/uploads/2008/06/fx-poster.zip' title=''>FX Poster</a></h3>
<p>Да, с классами лучше всего работать как с масивом, а не как со строкой. Правильно. </p>
<p>С пробелами так работать нельзя:</p>
<pre lang="javascript">
this.value = this.value.replace(/^ +| +$/g, '').replace(/ +/g, ' ');
</pre>
<p>Нужно искать пробельный символ а не пробел.</p>
<p>Зачем столько строгих проверок (===, !==)?</p>
<p>В конце вывода будет лишний перенос строки.</p>
<h3><a href='http://seleckis.lv/wp-content/uploads/2008/06/artem-gluvchynskyj.zip' title=''>Артём Глувчинский</a></h3>
<p>Тоже хороший вариант проверки существования класса</p>
<pre lang="javascript">
if (this.className.indexOf(errorClass) >= 0)
</pre>
<p>В задании сказано «очистить содержимое поля от лишних пробелов». Значение поля очистил, но не заменил содержимое на очищенное значение.</p>
<p>В функции getResults после вывода сообщения об ошибке можно просто написать return а не return false?</p>
<h3><a href='http://seleckis.lv/wp-content/uploads/2008/06/artyom-makarov.zip' title=''>Артём Макаров</a></h3>
<p>Не убирается последний пробел в поле ввода.</p>
<p>В регулярном выражении указан пробел, а не пробельный символ.</p>
<p>Некрасивая обработка классов удалением слов и пробелов.</p>
<p>Хитро:</p>
<pre lang="javascript">
response += (response.length ? "\n" : '') + v + " = " + inputData[v];
</pre>
<p>но запись в массив и объединение с помощью метода join() — умнее.</p>
<p>Плюс в том, что когда необходимо быстро написать код, такое последовательное решение наиболее удобно в восприятии.</p>
<h3><a href='http://seleckis.lv/wp-content/uploads/2008/06/dmytro-shteflyuk.zip' title=''>Dmytro-Shteflyuk</a></h3>
<p>Чем больше щёлкаешь по полю, стираешь и вписываешь текст в поле, тем больше пробелов у поля ввода между read и edit.</p>
<p>Чем такой вариант:</p>
<pre lang="javascript">
results.push(name);
results.push('=');
results.push(inputData[name]);
results.push("\n");
</pre>
<p>лучше чем</p>
<pre lang="javascript">
results.push(name + '=' + inputData[name] + '\n');
</pre>
<p>?<br />
Преимуществ не вижу. Опять же в конце будет лишний перенос строки.</p>
<h3>Алик Кириллович</h3>
<p>Победитель, который не только правильно выполнил задание, но также исследовал поимку событий в случае динамического добавления полей, а так же переноса введённых данных из одного поля в другое (drag&#038;drop). Гостевой пост от победителя, в котором раскроются все секреты исследования ожидается в ближайшее время.</p>
<h3>И последнее</h3>
<p>Господа программисты, я задолбался конвертировать эти каракули:<br />
<code><br />
Ýòà ôóíêöèÿ óñòàíàâëèâàåò îáðàáîò÷èê fncAction ñîáûòèÿ txtType äëÿ óçëà, óäîâëåòâîðÿþùåãî óñëîâèþ fncCondition.<br />
</code><br />
Выучите наизусть, раз и на всегда!</p>
<p style="font-size: 100px; text-align: center">UTF-8</p>
<p>Я очень рад, что мои читатели откликнулись на предложение и приняли участие в конкурсе, но я никак не думал, что их будет так много! Проверять одному достаточно сложно, поскольку со временем глаз замыливается и можно пропустить очевидные ошибки, а в других работах они могут броситься в глаза. Нужно было бы собрать целую комиссию для объективной оценки работ. Поэтому прошу быть снисходительными к результатам конкурса. Думаю, что мои замечания для вас будут только полезными и не вызовут агрессивного настроя: «Ууу, докопался!»</p>
<p>Спасибо всем за участие!</p>
<p><a href='http://seleckis.lv/wp-content/uploads/2008/06/js-guru-konkurs.zip' title=''>Все работы в одном архиве</a></p>
]]></content:encoded>
			<wfw:commentRss>http://seleckis.lv/journal/fun/publichnaya-porka-js-guru/feed</wfw:commentRss>
		<slash:comments>25</slash:comments>
		</item>
		<item>
		<title>Конкурс для javascript-гуру!</title>
		<link>http://seleckis.lv/journal/fun/konkurs-dlya-javascript-guru</link>
		<comments>http://seleckis.lv/journal/fun/konkurs-dlya-javascript-guru#comments</comments>
		<pubDate>Sat, 17 May 2008 20:30:14 +0000</pubDate>
		<dc:creator>Никита</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Развлекуха]]></category>

		<guid isPermaLink="false">http://seleckis.lv/journal/fun/konkurs-dlya-javascript-guru</guid>
		<description><![CDATA[Объявляю конкурс среди javascript-программистов!
В качестве конкурсной задачи предлагаю выполнить зачётное задание по javascript, которое выполняли в этом году студенты web-курсов на которых я преподаю.
Итак, задание:
Дана форма. Нужно:

При щелчке по лейблу и при помещении фокуса в поле нужно полю добавить класс «edit».
При убирании фокуса из поля нужно:

очистить содержимое поля от лишних пробелов слева и справа и [...]]]></description>
			<content:encoded><![CDATA[<p>Объявляю конкурс среди javascript-программистов!</p>
<p>В качестве конкурсной задачи предлагаю выполнить зачётное задание по javascript, которое выполняли в этом году студенты web-курсов на которых я преподаю.</p>
<p>Итак, задание:</p>
<p><a href='http://seleckis.lv/wp-content/uploads/2008/05/2008-exam-js-blog.zip' title=''>Дана форма</a>. Нужно:</p>
<ol>
<li>При щелчке по лейблу и при помещении фокуса в поле нужно полю добавить класс «edit».</li>
<li>При убирании фокуса из поля нужно:
<ol>
<li>очистить содержимое поля от лишних пробелов слева и справа и от дублированных пробелов;</li>
<li>записать содержимое поля в одноимённое свойство объекта inputData;</li>
<li>проверить:
<ol>
<li>если содержимое поля пустое, то нужно убрать класс «edit» и добавить класс «error»,</li>
<li>иначе — вернуть первоначальный класс.</li>
</ol>
</li>
</ol>
</li>
<li>При щелчке по кнопке «Show All» проверить, нет ли пустых свойств у объекта inputData.
<ol>
<li>Если есть — открыть окно «alert» с сообщением: «Please fill all fields!»,</li>
<li>иначе — записать содержимое объекта inputData в переменную и вывести в окно «alert» в таком виде:<br />
firstname = Vasily<br />
lastname = Pupkoff.</li>
</ol>
</li>
</ol>
<p>Задание достаточно простое. Проблем, думаю не будет, однако нужно соблюсти следующие условия:</p>
<ol>
<li>Кроссбраузерность.</li>
<li>Универсальность — должно быть применимо ко всем текстовым полям ввода (type=&#8221;text&#8221;). Даже если я захочу добавить ещё несколько полей и соответствующие свойства объекта inputData, скрипт должен работать и для них.</li>
<li>Не использовать фреймворки и библиотеки javascript.</li>
<li>Код должен быть только в файле script.js, ни html, ни css редактировать нельзя.</li>
</ol>
<h4>Конкурс закончился. Работы проверяются.</h4>
]]></content:encoded>
			<wfw:commentRss>http://seleckis.lv/journal/fun/konkurs-dlya-javascript-guru/feed</wfw:commentRss>
		<slash:comments>27</slash:comments>
		</item>
		<item>
		<title>Как создать логотип на основе известнейших марок</title>
		<link>http://seleckis.lv/journal/fun/kak-sozdat-logotip-na-osnove-izvestneyshih-marok</link>
		<comments>http://seleckis.lv/journal/fun/kak-sozdat-logotip-na-osnove-izvestneyshih-marok#comments</comments>
		<pubDate>Thu, 10 Apr 2008 13:32:29 +0000</pubDate>
		<dc:creator>Никита</dc:creator>
				<category><![CDATA[Лого]]></category>
		<category><![CDATA[Мировой креатив]]></category>
		<category><![CDATA[Развлекуха]]></category>

		<guid isPermaLink="false">http://www.seleckis.lv/journal/world-creative/kak-sozdat-logotip-na-osnove-izvestneyshih-marok</guid>
		<description><![CDATA[Порой, чтобы сделать логотип, напрягаться особо не надо. Нужно взять что-то существующее, известное всему миру. И немного переделать.

Но обратят на это внимание только после того, как компания поднимется и закажет доработку логотипа у крупной известной дизайнерской студии.
А вот логотипы ещё не существующих компаний, но зарание получивших узнаваемость от известных брендов.


Кто закажет у меня логотип?  [...]]]></description>
			<content:encoded><![CDATA[<p>Порой, чтобы сделать логотип, напрягаться особо не надо. Нужно взять что-то существующее, известное всему миру. И немного переделать.</p>
<p style="text-align: center"><img src='http://www.seleckis.lv/wp-content/uploads/2008/04/amd-ifd.jpg' alt='' /></p>
<p>Но обратят на это внимание только после того, как <a href="http://www.ifdk.com/">компания</a> поднимется и закажет доработку логотипа у <a href="http://www.artlebedev.ru/everything/ifdk/">крупной известной дизайнерской студии</a>.</p>
<p>А вот логотипы ещё не существующих компаний, но зарание получивших узнаваемость от известных брендов.</p>
<p style="text-align: center"><img src='http://www.seleckis.lv/wp-content/uploads/2008/04/ibm-evm.jpg' alt='' /></p>
<p style="text-align: center"><img src='http://www.seleckis.lv/wp-content/uploads/2008/04/intel-rostel.jpg' alt='' /></p>
<p>Кто закажет у меня логотип? <img src='http://seleckis.lv/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://seleckis.lv/journal/fun/kak-sozdat-logotip-na-osnove-izvestneyshih-marok/feed</wfw:commentRss>
		<slash:comments>21</slash:comments>
		</item>
		<item>
		<title>Видеоурок: Рисуем куб в перспективе. Результаты конкурса.</title>
		<link>http://seleckis.lv/journal/graphics/videourok-risuem-kub-v-perspektive-rezultatyi-konkursa</link>
		<comments>http://seleckis.lv/journal/graphics/videourok-risuem-kub-v-perspektive-rezultatyi-konkursa#comments</comments>
		<pubDate>Fri, 07 Mar 2008 11:49:00 +0000</pubDate>
		<dc:creator>Никита</dc:creator>
				<category><![CDATA[Видео]]></category>
		<category><![CDATA[Графика]]></category>
		<category><![CDATA[Развлекуха]]></category>
		<category><![CDATA[Уроки вектора]]></category>

		<guid isPermaLink="false">http://www.seleckis.lv/journal/graphics/videourok-risuem-kub-v-perspektive-rezultatyi-konkursa</guid>
		<description><![CDATA[Когда-то я затрагивал тему перспективы. Кто-то узнал о ней, кто-то освежил в памяти. Но теория должна подкрепляться практикой.
Руководствуясь этим скринкастом можно легко научиться рисовать трехмерные объекты с простой линейной двухточечной перспективой в пакетах двухмерной графики.



Долго искал бесплатный софт для редактирования сего произведения, в итоге использовал Windows Movie Maker. Да-да именно его. Потому что он отвечал [...]]]></description>
			<content:encoded><![CDATA[<p>Когда-то я затрагивал <a href="http://www.seleckis.lv/journal/graphics/perspektiva">тему перспективы</a>. Кто-то узнал о ней, кто-то освежил в памяти. Но теория должна подкрепляться практикой.</p>
<p>Руководствуясь этим скринкастом можно легко научиться рисовать трехмерные объекты с простой линейной двухточечной перспективой в пакетах двухмерной графики.</p>
<div style="text-align: center">
<object width="425" height="355"><param name="movie" value="http://www.youtube.com/v/sZEkafxStQ0"></param><param name="wmode" value="transparent"></param><embed src="http://www.youtube.com/v/sZEkafxStQ0" type="application/x-shockwave-flash" wmode="transparent" width="425" height="355"></embed></object>
</div>
<p>Долго искал бесплатный софт для редактирования сего произведения, в итоге использовал Windows Movie Maker. Да-да именно его. Потому что он отвечал всем моим требованиям:</p>
<ul>
<li>бесплатность,</li>
<li>нарезка материала,</li>
<li>музыка,</li>
<li>заголовки,</li>
<li>субтитры по ходу фильма,</li>
<li>поддержка русского языка.</li>
</ul>
<h3>Результаты конкурса «<a href="http://www.seleckis.lv/journal/fun/magda-gebbels-priglashaet-pouchastvovat-v-konkurse">Чья Магда круче?</a>»</h3>
<p>Победил человек по имени sAmSon, который теперь в качестве приза может заказать у меня бесплатный логотип для своего блога. Прошу автора сего произведения связаться со мной через <a href="http://www.seleckis.lv/contacts">контактную форму</a>.</p>
<h4 style="text-align: center">Победитель</h4>
<div style="text-align: center"><img src="http://www.seleckis.lv/wp-content/uploads/2008/01/alcohol.jpg" alt="победитель конкурса" /></div>
]]></content:encoded>
			<wfw:commentRss>http://seleckis.lv/journal/graphics/videourok-risuem-kub-v-perspektive-rezultatyi-konkursa/feed</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>Мода &#171;Web 2.0&#187;. Конкурс.</title>
		<link>http://seleckis.lv/journal/creative/moda-laquo-web-2-0-raquo-konkurs</link>
		<comments>http://seleckis.lv/journal/creative/moda-laquo-web-2-0-raquo-konkurs#comments</comments>
		<pubDate>Mon, 19 Nov 2007 22:47:39 +0000</pubDate>
		<dc:creator>Никита</dc:creator>
				<category><![CDATA[Web 2.0]]></category>
		<category><![CDATA[Блоггинг]]></category>
		<category><![CDATA[Креатив]]></category>
		<category><![CDATA[Развлекуха]]></category>

		<guid isPermaLink="false">http://www.seleckis.lv/archive/creative/moda-laquo-web-2-0-raquo-konkurs</guid>
		<description><![CDATA[На основе статьи Web 2.0 how-to design style quide придумал шутливый туториал, приблизив модный нынче «Web 2.0» стиль web-дизайна к оффлайновой моде.
1. Простота
Чем проще одежда, тем лучше. Мода 2.0 означает сосредоточение на чистоте и простоте. Но это не значит что нужно ходить в купальнике или с фиговым листочком. Это уже параноидальный минимализм.Одежда должна отличаться простотой, [...]]]></description>
			<content:encoded><![CDATA[<p>На основе статьи <a href="http://www.webdesignfromscratch.com/web-2.0-design-style-guide.cfm" target="_blank">Web 2.0 how-to design style quide</a> придумал шутливый туториал, приблизив модный нынче «Web 2.0» стиль web-дизайна к оффлайновой моде.</p>
<h3><strong>1. Простота</strong></h3>
<p><strong>Чем проще одежда, тем лучше.</strong> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"></span><strong>Мода <span class="google-src-text" style="direction: ltr; text-align: left">2.0 означает сосредоточение на чистоте и простоте</span>. Но это не значит что нужно ходить в купальнике или с фиговым листочком. Это уже параноидальный минимализм.</strong>Одежда должна отличаться простотой, но иметь определённый смысл, и особенности стиля должны подчёркивать ваши желания и цели.</p>
<p>Здесь должен работать принцип <a href="http://ru.wikipedia.org/wiki/%D0%91%D1%80%D0%B8%D1%82%D0%B2%D0%B0_%D0%9E%D0%BA%D0%BA%D0%B0%D0%BC%D0%B0" target="_blank">бритвы Оккама</a> утверждающий, что если существует несколько логически непротиворечивых определений или объяснений какого-либо явления, то следует считать верным самое простое из них. <strong>Вот несколько примеров на которых нет лишних элементов.</strong><span onmouseover="_tipon(this)" onmouseout="_tipoff()"> Элементы одежды передают главную суть, т.е. их предназначение и лишние детали в дизайне одежды не перегружают их.</span></p>
<p style="text-align: center"><img src="http://www.seleckis.lv/wp-content/uploads/2007/11/t-shirt-web20.jpg" /></p>
<p style="text-align: center"><img src="http://www.seleckis.lv/wp-content/uploads/2007/11/skirt-web20.jpg" /></p>
<h4><span onmouseover="_tipon(this)" onmouseout="_tipoff()">Почему простота -это хорошо </span></h4>
<ul>
<li><span onmouseover="_tipon(this)" onmouseout="_tipoff()">Внешний вид показывает вас, а не вашу одежду. У каждого элемента одежды есть определённое предназначение. </span></li>
<li><span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">Внимание окружающих &#8211; главная награда</span>. </span></li>
<li>Работа дизайнера обратить внимание окружающих на то, что их интересует или дать понять, что своим внешним видом вы хотите выразить.<span onmouseover="_tipon(this)" onmouseout="_tipoff()"> </span></li>
<li>Акцентируйте внимание <span onmouseover="_tipon(this)" onmouseout="_tipoff()">&#8220;фенечками&#8221; и логотипами на тех местах, на которых вы хотите чувствовать взгляд или </span><span onmouseover="_tipon(this)" onmouseout="_tipoff()"> передать информацию о себе, своих эмоциях и настроении. </span></li>
<li><span onmouseover="_tipon(this)" onmouseout="_tipoff()">Вы должны через одежду максимально свободно наладить контакт отбросив лишние мешающее элементы. </span><span onmouseover="_tipon(this)" onmouseout="_tipoff()">Нужно найти правильное сочетание элементов, наиболее простое и экономичное.</span><span onmouseover="_tipon(this)" onmouseout="_tipoff()"> </span></li>
</ul>
<h4>Как сделать одежду простой?</h4>
<p><strong>Существуют два важных аспекта, для достижения простоты:</strong></p>
<ul>
<li>Удалите ненужные элементы, не жертвуя эффективностью.</li>
<li>Попробуйте альтернативные решения, дающие тот же результат, но в гораздо более простом виде.</li>
</ul>
<p><strong>В процессе разработки дизайна, придерживайтесь правила не допустить в дизайне одежды ненужные визуальные элементы.</strong></p>
<p>Особая концентрация на покрое не так важна, поскольку детализация в этой области будет отвлекать внимание от самого владельца одежды. Используйте визуальные данные &#8211; будь то линии, слова, формы, цвета, чтобы сообщить соответствующую информацию, а не просто украсить одежду.</p>
<p>Вот пример одежды, не создающей должной простоты.</p>
<p style="text-align: center"><img src="http://www.seleckis.lv/wp-content/uploads/2007/09/diormain.jpg" alt="diormain.jpg" /></p>
<p>Эти костюмы содержат слишком много деталей и различных цветов и подавляющее большинство из них декоративные. Что-то конкретно понять в этом обилии цветов слишком сложно, поэтому ценители красоты могут только иметь какое-то общее представление о вашем внешнем виде, но ничего не расскажут о самом человеке.</p>
<p>Рассматривать одежду можно часами, каждую деталь, переходы цветов, формы, линии&#8230; слишком много всего. Все эти лишние детали не несут в себе никакой смысловой информации и не сподвигают людей на общение с ними. Ими можно только любоваться. причём только костюмами, а не самим человеком.</p>
<h4>Нет, я не против богатой и красивой одежды.</h4>
<p>Простота означает: <strong>Используйте столько деталей сколько вам нужно.</strong></p>
<hr />
<h3>Конкурс</h3>
<p><strong>Итак, суть конкурса такова:</strong> желающие поучаствовать берут одну или несколько глав <a href="http://www.webdesignfromscratch.com/web-2.0-design-style-guide.cfm" target="_blank">статьи</a>, переводят и адаптируют под оффлайновую моду. Автор самой оригинальной, самой креативной, самой остроумной реализации задания в качестве приза получит <strong>бесплатный дизайн для своего блога</strong>. Но только графическую часть, вёрстку делаете сами или заказываете отдельно.</p>
<p>Участники считаются по обратным ссылкам на этот конкурс. Голосование за статьи будет публичным, но я оставлю за собой право контролировать ход голосования. В случае если победитель не достигнет 10% отрыва от остальных конкурсантов, имею право внести свои n% за одного из участников.</p>
<p>В итоге, соберём все посты, отфильтруем, отредактируем и выложим каждый на своём блоге полную статью о том, как одеться в стиле «Web 2.0».</p>
<p><strong>Срок подачи заявок до 31 декабря.</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://seleckis.lv/journal/creative/moda-laquo-web-2-0-raquo-konkurs/feed</wfw:commentRss>
		<slash:comments>15</slash:comments>
		</item>
		<item>
		<title>CAPTCHA креатив</title>
		<link>http://seleckis.lv/journal/fun/captcha-kreativ</link>
		<comments>http://seleckis.lv/journal/fun/captcha-kreativ#comments</comments>
		<pubDate>Thu, 01 Nov 2007 13:43:49 +0000</pubDate>
		<dc:creator>Никита</dc:creator>
				<category><![CDATA[Развлекуха]]></category>

		<guid isPermaLink="false">http://www.seleckis.lv/archive/fun/captcha-kreativ</guid>
		<description><![CDATA[Писать хитрые коды распознавания не стану. В этом я не силён.  Просто мозговой штурм на тему, как можно разнообразить известный способ распознавания человека и машины — Captcha.
Цель
Сделать каптчу нормальной, без искажений текста и без неоднозначностей. Ну и заодно повеселить народ.

 Привожу только примеры каптчи, без поля ввода (смысл?). Кроме всего прочего, это не только [...]]]></description>
			<content:encoded><![CDATA[<p>Писать хитрые коды распознавания не стану. В этом я не силён.  Просто мозговой штурм на тему, как можно разнообразить известный способ распознавания человека и машины — <a href="http://ru.wikipedia.org/wiki/CAPTCHA">Captcha</a>.</p>
<h3>Цель</h3>
<p>Сделать каптчу нормальной, без искажений текста и без неоднозначностей. Ну и заодно повеселить народ.</p>
<p style="text-align: center"><img src="http://www.seleckis.lv/wp-content/uploads/2007/11/captcha1.jpg" /></p>
<p> Привожу только примеры каптчи, без поля ввода (смысл?). Кроме всего прочего, это не только каптча в стандартном её понимании, но и тест на блондинистость.</p>
<p style="text-align: center"><img src="http://www.seleckis.lv/wp-content/uploads/2007/11/captcha2.jpg" /></p>
<p>Ну это приемлимо только для тех, кто знаком с программированием. Хотя тут нужно всё равно подумать, мало ли вдруг, ошибёшся, со всяким бывает. Так что в любом случае, коммент лучше копировать. ))</p>
<p style="text-align: center"><img src="http://www.seleckis.lv/wp-content/uploads/2007/11/captcha3.jpg" /></p>
<p>Вопрос насчёт флага некоректный. Могут написать &#8220;латвийский&#8221;. Правильней вопрос будет звучать <em>&#8220;Напишите страну которой принадлежит это флаг&#8221;</em>.</p>
<p>Вопросы в правой колонке можно сопровождать ссылками на Википедию.</p>
<p>Есть ещё идеи?</p>
<p><strong>Updated:</strong> Вообще, было бы круто, если бы кто-нибудь запустил такой сервис, где бы была огромная база различных капч и чтоб такой сервис позволял на любом сайте специальным кодом поставить капчу и она бы рэндомом выбиралась из базы на сервере и после отправки комментария, сначала подтверждалась на этом сервере и только потом помещался бы коммент. Как это делается в интернет-банках когда расплачиваешься карточкой. Правда там мегасекьюрно все. Здесь SSL не нужен.</p>
<p>Вот думаю может  предложить это реализовать <a href="http://js-kit.com">JS-Kit</a>?</p>
]]></content:encoded>
			<wfw:commentRss>http://seleckis.lv/journal/fun/captcha-kreativ/feed</wfw:commentRss>
		<slash:comments>21</slash:comments>
		</item>
		<item>
		<title>Как объяснить блондинке объектно-ориентированное программирование?</title>
		<link>http://seleckis.lv/journal/fun/kak-obyasnit-blondinke-obektno-orientirovannoe-programmirovanie</link>
		<comments>http://seleckis.lv/journal/fun/kak-obyasnit-blondinke-obektno-orientirovannoe-programmirovanie#comments</comments>
		<pubDate>Tue, 18 Sep 2007 18:31:47 +0000</pubDate>
		<dc:creator>Никита</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Развлекуха]]></category>

		<guid isPermaLink="false">http://www.seleckis.lv/journal/kak-obyasnit-blondinke-obektno-orientirovannoe-programmirovanie</guid>
		<description><![CDATA[На примере php. Подразумевается, что самые азы программирования блондинка знает.
Действующие лица:

Преподаватель (П.)
Блондинка (Б.)

Диалог
П.: Сейчас я тебе объясню принцип объектно-ориентированного программирования
Б.: Ну даю&#8230; ой&#8230; хи-хи, то есть дааавате, объясняйте.
П.: Ну так вот. Представь себе, что ты пошла в какой-нибудь магазин&#8230;
Б.: Ещё б скааазали &#8220;гастраааном&#8221;. (скривила лицо) Я в бутики толька хааажу.
П.: Ну хорошо, зашла ты в [...]]]></description>
			<content:encoded><![CDATA[<p><em>На примере php. Подразумевается, что самые азы программирования блондинка знает.</em></p>
<p><strong>Действующие лица:</strong></p>
<ul>
<li>Преподаватель (П.)</li>
<li>Блондинка (Б.)</li>
</ul>
<h3>Диалог</h3>
<p><strong>П.:</strong> Сейчас я тебе объясню принцип объектно-ориентированного программирования<br />
<strong>Б.:</strong> Ну даю&#8230; ой&#8230; хи-хи, то есть дааавате, объясняйте.<br />
<strong>П.:</strong> Ну так вот. Представь себе, что ты пошла в какой-нибудь магазин&#8230;<br />
<strong>Б.:</strong> Ещё б скааазали &#8220;гастраааном&#8221;. <em>(скривила лицо)</em> Я в бутики толька хааажу.<br />
<strong>П.:</strong> Ну хорошо, зашла ты в бутик. И увидела там шубу.<br />
<strong>Б.:</strong> норкаваю!<br />
<strong>П.:</strong> Да, норковую! И захотела купить. Шуба &#8211; это объект, который ты хочешь купить. А вообще Шубы &#8211; это класс объектов. В этом классе могут быть различного вида шубы от искуственного меха до соболя. В коде это можно написать:<br />
<code><br />
class Shubi {<br />
public $tip;<br />
}<br />
</code></p>
<p>, где public означает, что кто угодно может узнать какой тип шубы ты купила.<br />
<strong>Б.:</strong> Кто угодна? И даже Танька Синявская?<br />
<strong>П.:</strong> Ну если Танька Синявская приедет и увидит твою шубу, то да.<br />
Значит ты хочешь купить объект, т.е. шубу, которая принадлежит классу &#8220;Шубы&#8221;. Чтобы это было так, нужно написать:<br />
<code><br />
var $shuba1 = new Shubi();<br />
</code></p>
<ul>
<li>var &#8211; это типа &#8220;ХАЧУ&#8221;;</li>
<li>new &#8211; это типа &#8220;купить новую&#8221;</li>
</ul>
<p><strong>Б.:</strong> А пачиму <strong>shuba1</strong>?<br />
<strong>П.:</strong> Ну а ты разве одну шубу только купишь?<br />
<strong>Б.:</strong> А, ну дааа&#8230; <em>(делает вид, что понимает)</em> А, что, я так вот сразу куплю шубу без примерки?<br />
<strong>П.:</strong> Конечно нет. Всё верно. У шубы есть свойства, например, <strong>размер</strong>. Добавим в класс <strong>Shubi </strong>это свойство, а потом укажем, какой размер у этой шубы. В итоге код у нас получается такой:<br />
<code><br />
class Shubi{<br />
public $tip;<br />
public $razmer;<br />
}<br />
$shuba1 = new Shubi;<br />
$shuba1-&gt;tip = "norka";<br />
$shuba1-&gt;razmer = 53;<br />
</code></p>
<p><strong>Б.:</strong> Я что толстая тааакая? У меня Соракдивяяятый рааазмер!<br />
<strong>П.:</strong> Ну хорошо, хорошо. Размер 49. Дальше: Купив шубу, задали её размер. А размер &#8211; это свойство объекта. И для расчётов можем его получить написав:<br />
<code><br />
$razmer_shubi = $shuba1-&gt;razmer;<br />
</code></p>
<p>т.е. если мы хотим узнать, чему равно какое-нибудь свойство, то нам нужно написать имя объекта, добавить такую стрелочку &#8220;-&gt;&#8221; и написать свойство объекта.<br />
<strong>Б.:</strong> Ну паняла, не дура я. <em>(надулась)</em><br />
<strong>П.:</strong> Замечательно! Ну, а после того как ты купила шубу, что ты сделаешь?<br />
<strong>Б.:</strong> Нааадену и паеду пааадружкам хвастать.<br />
<strong>П.:</strong> Ага, значит оденешь. Значит совершишь действие. Значит это мы напишем так:<br />
<code><br />
$shuba1-&gt;odetj();<br />
</code></p>
<p>Что означает, что ты одела шубу. Это называется <strong>метод</strong> и записывается этот метод в классе в виде функции:<br />
<code><br />
class Shubi{<br />
public $tip;<br />
public $razmer;<br />
function odetj(){<br />
return true;<br />
}<br />
}<br />
</code></p>
<p><strong>Б.:</strong> А зааачем <strong>odetj </strong>со скобочкамиии?<br />
<strong>П.:</strong> А в скобочки записываются параметры действия. Вдруг ты захочешь одеть её задом на перёд.<br />
<strong>Б.:</strong> Я что, дура что лиии?<br />
<strong>П.:</strong> Да.<br />
<strong>Б.:</strong> Чтооо? <em>(в глазах ярость, рука воинственно поднялась, сверкнув ногтями)</em><br />
<strong>П.:</strong> Ой, в смысле, да нет, конечно. Например, ты не захочешь застёгивать её совсем, а оставить пару пуговичек растёгнутыми.<br />
<strong>Б.:</strong> Ааа, ну ладно. Ааа, как это записать?<br />
<strong>П.:</strong> ну, например, так:<br />
<code><br />
$shuba-&gt;odetj(2);<br />
</code></p>
<p><strong>Б.:</strong> Что значит &#8220;напримееер&#8221;? Может быть подругомууу?<br />
<strong>П.:</strong> Может. Это зависит от того как описать класс <strong>Shubi</strong>.<br />
<strong>Б.:</strong> Бааалин, ещё это в  <strong>Shubi </strong>записывать!<br />
<strong>П.:</strong> Ну да, смотри:<br />
<code><br />
class Shubi{<br />
public $tip;<br />
public $razmer;<br />
function odetj($pugovici){<br />
return $pugovici;<br />
}<br />
}<br />
</code></p>
<p>у всех шуб, есть каие-то определённые свойства: размер, цвет&#8230;<br />
<strong>Б.:</strong> Цвет может быть разный.<br />
<strong>П.:</strong> Конечно, но совсем никакого цвета не бывает. Хоть какой-то цвет будет. Значит свойство &#8220;цвет&#8221; будет у каждой шубы. Вот как узнать какой цвет у твоей шубы.<br />
<strong>Б.:</strong> Пасмааатреть на неё.<br />
<strong>П.:</strong> нет, я и мею в виду в коде.<br />
<strong>Б.:</strong> Ааааа&#8230; ну, наверна, так:<br />
<code><br />
$cvet_shubi = $shuba1-&gt;cvet;<br />
</code></p>
<p><strong>П.:</strong> Умничка! <em>(Блондинка сияет)</em> Только предварительно нужно добавить это свойство в класс <strong>Shubi</strong>. Как?<br />
<strong>Б.:</strong> Наверна, так:<br />
<code><br />
class Shubi{<br />
public $tip;<br />
public $razmer;<br />
public $cvet;<br />
function odetj($pugovici){<br />
$rasstegnutie_pugovici = $pugovici;<br />
return $rasstegnutie_pugovici;<br />
}<br />
}<br />
</code></p>
<p><strong>П.:</strong> Только прежде, чем получить цвет у шубы, нужно задать этот цвет. Это можно сделать либо в классе <strong>Shubi</strong>, тогда все создаваемые шубы будут одного цвета, хотя не проблема их перекрасить. Либо, ты можешь получить шубу без определённого цвета и сама назначить её любой цвет.<br />
<strong>Б.:</strong> Ага, вот чтоб тааак в жизни было. Одела шубу и скааазала &#8220;хачу белую, нет, хачу чёрную&#8221;&#8230;<br />
<strong>П.:</strong> Дааа&#8230; программировать и создавать, практически синонимы.<br />
Ну и ещё объекты имеют методы, т. е. действия которые можно совершить с шубой. Теперь сними шубу.<br />
<strong>Б.:</strong> Ага. Выключите свет.<br />
<strong>П.:</strong> Что?<br />
<strong>Б.:</strong> Ой, хи-хи&#8230; в смысле написааать?<br />
<strong>П.:</strong> Ну конечно!<br />
<strong>Б.:</strong> Снимаю <em>(пошлый смешок)</em>:<br />
<code><br />
class Shubi{<br />
public $tip;<br />
public $razmer;<br />
public $cvet;<br />
function odetj($pugovici){<br />
$rasstegnutie_pugovici = $pugovici;<br />
return $rasstegnutie_pugovici;<br />
}<br />
function snjatj(){<br />
return true;<br />
}<br />
}<br />
</code></p>
<p><code><br />
$shuba1-&gt;snjatj();<br />
</code><br />
<strong>П.:</strong> Великолепно! Ну хватит с тебя на сегодня.<br />
<strong>Б.:</strong> Пабииигу, по бутикам пока не закрыыылись!</p>
]]></content:encoded>
			<wfw:commentRss>http://seleckis.lv/journal/fun/kak-obyasnit-blondinke-obektno-orientirovannoe-programmirovanie/feed</wfw:commentRss>
		<slash:comments>14</slash:comments>
		</item>
		<item>
		<title>OS Ресторанчики</title>
		<link>http://seleckis.lv/journal/creative/os-restoranchiki</link>
		<comments>http://seleckis.lv/journal/creative/os-restoranchiki#comments</comments>
		<pubDate>Fri, 16 Feb 2007 14:04:23 +0000</pubDate>
		<dc:creator>Никита</dc:creator>
				<category><![CDATA[Взгляд]]></category>
		<category><![CDATA[Креатив]]></category>
		<category><![CDATA[Развлекуха]]></category>

		<guid isPermaLink="false">http://localhost:8506/?p=375</guid>
		<description><![CDATA[Пока Corel тормозит, напишу ещё пост.
Обсуждали тут операционные системы и Andrew Tch такое привёл описание Осей на примере ресторанчиков (с моей редакцией):&#171;Apple iMac &#8211; это красивый богатый ресторан в котором ты можешь заказать себе филе аллегатора фаршированое ушами слона, правда заплатить много придётся.Linux - это сеть ресторанов разных размеров, с разными вывесками, в котором заказав, [...]]]></description>
			<content:encoded><![CDATA[<p>Пока Corel тормозит, напишу ещё пост.</p>
<p>Обсуждали тут операционные системы и Andrew Tch такое привёл описание Осей на примере ресторанчиков (с моей редакцией):<br />&laquo;<strong>Apple iMac</strong> &#8211; это красивый богатый ресторан в котором ты можешь заказать себе филе аллегатора фаршированое ушами слона, правда заплатить много придётся.<br /><strong>Linux </strong>- это сеть ресторанов разных размеров, с разными вывесками, в котором заказав, например, яичницу, тебе принесут, два яйца, пакет соли, кусок масла, сковородку и примус. Что получится &#8211; всё твоё.<br /><strong>Microsoft Windows</strong> &#8211; это, тупо, McDonald&#8217;s. Всё у них самое лучшее, большая маркетинговая компания, и куча бонусов, все там питаются, хотя знают что вредно.&raquo;</p>
]]></content:encoded>
			<wfw:commentRss>http://seleckis.lv/journal/creative/os-restoranchiki/feed</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Винни Пух и ещё, ещё, ещё&#8230;</title>
		<link>http://seleckis.lv/journal/fun/vinni-puh-more</link>
		<comments>http://seleckis.lv/journal/fun/vinni-puh-more#comments</comments>
		<pubDate>Mon, 04 Dec 2006 20:55:59 +0000</pubDate>
		<dc:creator>Никита</dc:creator>
				<category><![CDATA[Развлекуха]]></category>

		<guid isPermaLink="false">http://localhost:8506/?p=267</guid>
		<description><![CDATA[Вспомнил одну интересную и забавную вещь &#8211; на латышском языке Винни Пух звучит как Виннийс Пукс (Vinnijs Puks). Задумался, а как бы могло имя известнейшего героя звучать на других языках мира? Прикинул и набросал:
по-немецки: Виннихь Пухштайн по-французски: Виньюа Пухьён по-испански: Виннио Пухиас по-итальянски: Винньето Пухини по-литовски: Винниатас Пухиайтис по-чешски: Винниаш Пухак по-польски: Виннек Пуховский (Виннислав [...]]]></description>
			<content:encoded><![CDATA[<p><img align="right" src="http://www.seleckis.lv/wp-content/uploads/2006/12/0174.jpg" id="image311" alt="0174.jpg" class="alignright" />Вспомнил одну интересную и забавную вещь &#8211; на латышском языке Винни Пух звучит как Виннийс Пукс (Vinnijs Puks). Задумался, а как бы могло имя известнейшего героя звучать на других языках мира? Прикинул и набросал:</p>
<p>по-немецки: Виннихь Пухштайн<br /> по-французски: Виньюа Пухьён<br /> по-испански: Виннио Пухиас<br /> по-итальянски: Винньето Пухини<br /> по-литовски: Винниатас Пухиайтис<br /> по-чешски: Винниаш Пухак<br /> по-польски: Виннек Пуховский (Виннислав Пухецкий)<br /> по-фински: Винно Пухиннен<br /> по-шведски:Виннард Пухельд<br /> по-арабски: Виннирахман аль-Пухад<br /> по-армянски: Виннайр Пухенян<br /> по-грузински: Винни Пухешвилли (Виннар Пухидзе)<br /> на латыни: Винниус Пухус<br /> по-корейски: Винь Пу<br /> по-украински: Винниало Пухаренко<br /> по-датски: Винс Пухинсен<br /> по-японски: Виннидзо Пухинава<br /> по-ирландски: Вин О&rsquo;Пух</p>
<p><strong>Ещё чё подскажете? <img class="wp-smiley" alt=":)" src="../../../../../wp-includes/images/smilies/icon_smile.gif" /> </strong></p>
<p><em>updated (Юлечка, Riga_child)</em><em> </em></p>
]]></content:encoded>
			<wfw:commentRss>http://seleckis.lv/journal/fun/vinni-puh-more/feed</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
	</channel>
</rss>

