<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2russianfull.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0"><channel><atom:id>tag:blogger.com,1999:blog-6180190261543881757</atom:id><lastBuildDate>Mon, 30 Jan 2012 23:44:46 +0000</lastBuildDate><category>Яндекс</category><category>PHP</category><category>jquery</category><category>Хабрахабр</category><category>Избранное</category><category>вёрстка</category><category>javascript</category><category>python</category><category>Администрирование</category><category>zend framework</category><category>разработка</category><category>Eclipse</category><category>sphinx</category><category>Проекты</category><category>Спокойно.ру</category><category>Банкоматор</category><category>GDD</category><category>github</category><category>Новости</category><category>События</category><category>django</category><category>HTML5</category><category>google</category><category>музыка</category><title>Блог студии Future Colors</title><description>Мы пишем про наши достижения в интернете и про новости веб-разработки.</description><link>http://blog.futurecolors.ru/</link><managingEditor>noreply@blogger.com (Илья Барышев)</managingEditor><generator>Blogger</generator><openSearch:totalResults>53</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/futurecolors" /><feedburner:info uri="futurecolors" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><feedburner:feedFlare href="http://add.my.yahoo.com/rss?url=http%3A%2F%2Ffeeds.feedburner.com%2Ffuturecolors" src="http://us.i1.yimg.com/us.yimg.com/i/us/my/addtomyyahoo4.gif">Subscribe with My Yahoo!</feedburner:feedFlare><feedburner:feedFlare href="http://fusion.google.com/add?feedurl=http%3A%2F%2Ffeeds.feedburner.com%2Ffuturecolors" src="http://buttons.googlesyndication.com/fusion/add.gif">Subscribe with Google</feedburner:feedFlare><feedburner:feedFlare href="http://lenta.yandex.ru/settings.xml?name=feed&amp;url=http%3A%2F%2Ffeeds.feedburner.com%2Ffuturecolors" src="http://lenta.yandex.ru/i/addfeed.gif">?????? ? ??????.?????</feedburner:feedFlare><feedburner:feedFlare href="http://www.live.com/?add=http%3A%2F%2Ffeeds.feedburner.com%2Ffuturecolors" src="http://tkfiles.storage.msn.com/x1piYkpqHC_35nIp1gLE68-wvzLZO8iXl_JMledmJQXP-XTBOLfmQv4zhj4MhcWEJh_GtoBIiAl1Mjh-ndp9k47If7hTaFno0mxW9_i3p_5qQw">Subscribe with Live.com</feedburner:feedFlare><item><guid isPermaLink="false">tag:blogger.com,1999:blog-6180190261543881757.post-7534299735789688163</guid><pubDate>Tue, 09 Aug 2011 14:39:00 +0000</pubDate><atom:updated>2011-08-23T09:09:26.122+04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Новости</category><category domain="http://www.blogger.com/atom/ns#">github</category><title>Обновили сайт</title><description>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
Сегодня мы немного обновили сайт студии.

На главной появилась ссылка на &lt;a href="http://github.com/futurecolors/"&gt;наши разработки с открытым исходным кодом&lt;/a&gt; на гитхабе. Сейчас там несколько форков приложений для django, &lt;a href="https://github.com/futurecolors/jQuery.fc.tape"&gt;плагин для анимации спрайтов&lt;/a&gt; на jquery и репозиторий для DjangoDash 2011. О двух последних подробнее в следующий раз.

На всех наших новых проектах мы используем Django, верстаем как завещал великий БЭМ, применяя возможности современных браузеров, известные под термином HTML5. Теперь об этом свидетельствуют ссылочки в подвале главной.

С большим опозданием, но всё же обновился раздел &lt;a href="http://futurecolors.ru/team/"&gt;Команда&lt;/a&gt;, свои заслуженные места обрели Рома и Виталий.


&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://futurecolors.ru/team/"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/-DkWSRwpXhJs/TkFFpVo2I9I/AAAAAAAAAHQ/VhRQLhmPCPM/s1600/fc_update.png" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;

&lt;/div&gt;

Появился &lt;a href="http://futurecolors.ru/vacancies/"&gt;раздел вакансии&lt;/a&gt;, мы всегда ищем энергичных и опытных укротителей питонов. Приходите к нам, у нас интересно.


&lt;/div&gt;
&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6180190261543881757-7534299735789688163?l=blog.futurecolors.ru' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/futurecolors/~4/rzffJgxV7U0" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/futurecolors/~3/rzffJgxV7U0/blog-post.html</link><author>noreply@blogger.com (Илья Барышев)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/-DkWSRwpXhJs/TkFFpVo2I9I/AAAAAAAAAHQ/VhRQLhmPCPM/s72-c/fc_update.png" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://blog.futurecolors.ru/2011/08/blog-post.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-6180190261543881757.post-5256794668965334173</guid><pubDate>Mon, 01 Aug 2011 14:42:00 +0000</pubDate><atom:updated>2011-08-09T18:40:36.001+04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">django</category><category domain="http://www.blogger.com/atom/ns#">sphinx</category><title>Поиск в Django с помощью Sphinx</title><description>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
Для интеграции &lt;a href="http://sphinxsearch.com/"&gt;Sphinx&lt;/a&gt; (движка для полнотекстового поиска) и Django существует приложение &lt;a href="https://github.com/futurecolors/django-sphinx"&gt;django-sphinx&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Это приложение автоматически генерирует конфигурационный файл (на основе которого строятся поисковые индексы), позволяет делать полнотекстовый поиск по моделям или по нескольким индексам одновременно (получая queryset-подобные объекты).&lt;br /&gt;
&lt;br /&gt;
Управление свойствами индексов, весами атрибутов и тому подобным ведётся прямо из модели:&lt;br /&gt;
&lt;br /&gt;
&lt;pre&gt;&lt;code class="python"&gt;class MyModel(models.Model):
   ...
   search = SphinxSearch(weights={ 'name': 100, 'description': 10, 'tags': 80}, mode='SPH_MATCH_ALL', rankmode='SPH_RANK_NONE')
   ...
 &lt;/code&gt;&lt;/pre&gt;
&lt;br /&gt;
На основе этих данных manage-команда ./manage.py generate_sphinx_config &lt;appname&gt; составляет конфигурацию индексов.&lt;br /&gt;
&lt;br /&gt;
К сожалению, проект развивается автором не очень интенсивно, но на github.com существует некоторое количество форков, решающих ряд проблем, среди которых изменившиеся в Django 1.3 настройки баз данных (поддержка нескольких БД) и поиск по нескольким индексам.&lt;br /&gt;
&lt;br /&gt;
Для того, чтобы поиск одновременно по нескольким индексам позволял оперировать с результатами как с ORM-объектами, а не идентификаторами записей, необходимо проследить, чтобы выполнялись следующие два условия: &lt;/appname&gt;&lt;br /&gt;
&lt;ol&gt;
&lt;li&gt;В запросах, на основе которых строятся индексы (sql_query в секциях source конфига), в секции SELECT должно присутствовать &amp;lt;число&amp;gt; AS content_type, то есть должна быть связь с типом контента (для того, чтобы django-sphinx смог понять, какой модели принадлежит результат). &lt;/li&gt;
&lt;li&gt;В той же секции должно присутствовать объявление sql_attr_uint = content_type.&lt;/li&gt;
&lt;/ol&gt;
После этого запросы SphinxQuerySet(index='индекс1 индекс2 индекс3').query('поисковая фраза') будут возвращать списки ORM-объектов.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Наш форк django-sphinx можно найти &lt;a href="https://github.com/futurecolors/django-sphinx"&gt;тут&lt;/a&gt; &lt;/div&gt;
&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6180190261543881757-5256794668965334173?l=blog.futurecolors.ru' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/futurecolors/~4/TPKfUmPR2VI" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/futurecolors/~3/TPKfUmPR2VI/sphinx-django-django-sphinx.html</link><author>noreply@blogger.com (Голиков Артём)</author><thr:total>0</thr:total><feedburner:origLink>http://blog.futurecolors.ru/2011/08/sphinx-django-django-sphinx.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-6180190261543881757.post-1041817696944133064</guid><pubDate>Mon, 06 Jun 2011 15:20:00 +0000</pubDate><atom:updated>2011-06-11T14:56:58.666+04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">django</category><category domain="http://www.blogger.com/atom/ns#">github</category><title>GeoIP в Django</title><description>&lt;p&gt;Мы начали публиковать свои наработки на гитхабе. Это первая ласточка, приложение &lt;a href="https://github.com/futurecolors/django-ipgeobase"&gt;форк django-ipgeobase&lt;/a&gt;.&lt;/p&gt; 

&lt;p&gt;На нашем последнем проекте для того, чтобы определять, из какого города посетитель сайта, мы использовали базу адресов от &lt;a href="http://ipgeobase.ru"&gt;ipgeobase.ru&lt;/a&gt;. Она содержит достаточно подробную информацию по России и Украине (886 городов) и регулярно обновляется. Этого оказалось вполне достаточно, чтобы привязать контент сайта к разным регионам России, например.&lt;/p&gt;

&lt;p&gt;Для геолокации в Django обнаружилось готовое &lt;a href="https://github.com/satels/django-ipgeobase"&gt;приложение от Ивана Петухова&lt;/a&gt;, которое умело импортировать данные с ipgeobase и определять город и регион по ip. А также хорошй &lt;a href="https://github.com/mjr27/django-ipgeobase/"&gt;форк от mjr27&lt;/a&gt;, добавивший админку и поддержку адресов Украины.&lt;/p&gt;

&lt;p&gt;В апреле поменялся формат базы данных на ipgeobase, теперь, чтобы получать актуальные ежедневные обновления, нам пришлось изменить процедуру импорта. Так появился наш собственный &lt;a href="https://github.com/futurecolors/django-ipgeobase"&gt;форк django-ipgeobase&lt;/a&gt;.&lt;/p&gt;

Пример использования:&lt;pre&gt;&lt;code class="python"&gt;
  from django_ipgeobase.models import IPGeoBase

  ip = "212.49.98.48"

  ipgeobases = IPGeoBase.objects.by_ip(ip)
  if ipgeobases.exists():
      ipgeobase = ipgeobases[0]
      print ipgeobase.city # Населенный пункт (Екатеринбург)
      print ipgeobase.region # Регион (Свердловская область)
      print ipgeobase.country # Страна (Россия)
&lt;/code&gt;&lt;/pre&gt;

Очень удобно вынести определение города или региона в отдельную middleware и записать в request значение region, таким образом оно станет сразу доступно во всех видах и шаблонах.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6180190261543881757-1041817696944133064?l=blog.futurecolors.ru' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/futurecolors/~4/5L9wJ-33Mv4" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/futurecolors/~3/5L9wJ-33Mv4/geoip-django.html</link><author>noreply@blogger.com (Илья Барышев)</author><thr:total>0</thr:total><feedburner:origLink>http://blog.futurecolors.ru/2011/06/geoip-django.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-6180190261543881757.post-626195176921719856</guid><pubDate>Fri, 03 Jun 2011 14:18:00 +0000</pubDate><atom:updated>2011-08-09T15:45:58.751+04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Eclipse</category><title>Зеркалирование репозиториев Eclipse</title><description>&lt;p&gt;Мы не по наслышке знакомы с проблемой медленных и очень медленных зеркал репозиториев &lt;a href="http://www.eclipse.org/"&gt;Eclipse&lt;/a&gt;. И это касается не только основного репозитория текущего Eclipse Helios, но и популярных плагинов к нему, которые мы используем в нашей повседневной работе: &lt;a href="http://pydev.org/"&gt;PyDev&lt;/a&gt;, &lt;a href="http://www.aptana.com/"&gt;Aptana&lt;/a&gt;, &lt;a href="http://andrei.gmxhome.de/filesync/"&gt;FileSync&lt;/a&gt; и некоторые другие. Их установка для каждого члена нашей команды однажды заняла неприлично много времени и мы все единодушно решили, что необходимо найти решение для создания локальных зеркал всех необходимых нам репозиториев. В любом случае хорошо уменьшить зависимость своей работы от причуд сторонних сервисов. Да, эти плагины тянутся не так уж и часто, но удобно, когда они под рукой и наверняка доступны в любое время.&lt;/p&gt;&lt;a name='more'&gt;&lt;/a&gt;  &lt;p&gt;Eclipse  не предоставляет никакого внятного способа зеркалирования и каждый, кто сталкивается с такой задачей, изворачивается по-своему. Самое удобное и "дешёвое" решение — это запуск специального bash-скрипта, который автоматизирует весь процесс. В Windows наверняка можно написать что-то похожее для его PowerShell при необходимости (у нас такой необходимости нет).&lt;/p&gt;&lt;p&gt;Под  каждый репозиторий каждого плагина или библиотеки плагинов необходимо слегка модифицировать основной скрипт. Рассмотрим на примере Aptana.&lt;/p&gt;&lt;pre name="code" class="bash"&gt;&lt;code&gt;#!/bin/sh

PROJECT=aptana
PROSRC=http://download.aptana.com/studio3/plugin/install
ECLIPSE=/home/username/eclipse

LAUNCHER=`ls $ECLIPSE/plugins/org.eclipse.equinox.launcher_*.jar | sort | tail -1`

curdir=`pwd`
cd `dirname $0`
cd "${curdir}"
mkdir -p ${PROJECT}

java -jar $LAUNCHER \
-application org.eclipse.equinox.p2.metadata.repository.mirrorApplication \
-source ${PROSRC} \
-destination ${PROJECT} \
-verbose \
-compare

java -jar $LAUNCHER \
-application org.eclipse.equinox.p2.artifact.repository.mirrorApplication \
-source ${PROSRC} \
-destination ${PROJECT} \
-verbose \
-compare
&lt;/pre&gt;&lt;/code&gt;&lt;p&gt;&lt;span style="font-weight:bold;"&gt;PROJECT&lt;/span&gt; — произвольное имя проекта, заодно и имя папки, в которой будет лежать готовое зеркало,&lt;/p&gt;&lt;p&gt;&lt;span style="font-weight:bold;"&gt;PROSRC&lt;/span&gt; — путь к репозиторию, такой же как на сайте проекта,&lt;/p&gt;&lt;p&gt;&lt;span style="font-weight:bold;"&gt;ECLIPSE&lt;/span&gt; — абсолютный путь к папке с Eclipse.&lt;/p&gt;&lt;p&gt;Больше  ничего модифицировать не нужно. Кстати говоря, для запуска скрипта необходимо JRE (Java Runtime Environment), так как он использует  возможности Eclipse для скачивания и дальнейшей сборки локальной копии репозитория. Подробнее об этом можно узнать из &lt;a href="http://help.eclipse.org/galileo/index.jsp?topic=/org.eclipse.platform.doc.isv/guide/p2_mirror.html"&gt;соответствующего раздела&lt;/a&gt; официальной документации «Platform Plug-in Developer Guide».&lt;/p&gt;&lt;p&gt;Не забываем сделать скрипт исполняемым (sudo chmod +x script-filename.sh), после чего его можно, собственно, запустить. Отработав, скрипт создаст зеркало в том же подкаталоге, в котором находится сам. На это может уйти действительно много времени, от десятка минут до нескольких часов.&lt;/p&gt;&lt;img src="https://lh4.googleusercontent.com/-qao8ZIUeTJk/TekfQFTSQeI/AAAAAAAAACY/w-yzZ_VJGnU/s800/eclipse_terminal.jpg" /&gt;  &lt;p&gt;Подключение локального зеркала тривиально и эта процедура ничем не отличается от стандартной. &lt;span style="font-style:italic;"&gt;Preferences -&amp;gt; Install/Update -&amp;gt; Available Software Sites&lt;/span&gt;. Далее жмём Add или Edit, заполняем 2 строки формы — произвольное имя и адрес нашего зеркала (локальная папка или сетевая, http).&lt;/p&gt;&lt;img src="https://lh6.googleusercontent.com/-cBTIiQe2DJw/TekglUBXasI/AAAAAAAAAC0/sWda-hWrJ0g/s800/eclipse_preferences.jpg" /&gt;  &lt;p&gt;На этом всё. Теперь можно устанавливать плагины уже из своего собственного автономного репозитория.&lt;/p&gt;&lt;img src="https://lh6.googleusercontent.com/-K_g0QxQOd4A/TekgjULrfJI/AAAAAAAAACw/D8ZfnIrALQo/s800/eclipse_install.jpg" /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6180190261543881757-626195176921719856?l=blog.futurecolors.ru' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/futurecolors/~4/geOWxLapk7g" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/futurecolors/~3/geOWxLapk7g/eclipse.html</link><author>noreply@blogger.com (Роман Семирук)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://lh4.googleusercontent.com/-qao8ZIUeTJk/TekfQFTSQeI/AAAAAAAAACY/w-yzZ_VJGnU/s72-c/eclipse_terminal.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://blog.futurecolors.ru/2011/06/eclipse.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-6180190261543881757.post-8871645527578277523</guid><pubDate>Wed, 25 May 2011 13:49:00 +0000</pubDate><atom:updated>2011-05-25T17:50:30.552+04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Новости</category><title>Вакансия python- &amp; django-разработчика 2</title><description>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
Мы продолжаем расширяться, нам в студии по-прежнему нужны активные, умные и энергичные питонисты, готовые делать с нами различные веб-проекты на Django.&lt;br /&gt;
&lt;br /&gt;
За условиями под кат.&lt;br /&gt;
&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;
Обязательно:&lt;br /&gt;
&lt;ul style="text-align: left;"&gt;
&lt;li&gt;хорошее знание python и django;&lt;/li&gt;
&lt;li&gt;уверенное знание SQL;&lt;/li&gt;
&lt;li&gt;коммуникабельность и желание работать на успех команды;&lt;/li&gt;
&lt;li&gt;опыт командной разработки;&lt;/li&gt;
&lt;li&gt;опыт работы с системами контроля версий (мы используем git);&lt;/li&gt;
&lt;li&gt;технический английский;&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;br /&gt;
Будет большим плюсом‚ если вы:&lt;br /&gt;
&lt;ul style="text-align: left;"&gt;
&lt;li&gt;имеете опыт разработки в другом скриптовом языке (php, ruby);&lt;/li&gt;
&lt;li&gt;имеете представление о современных веб-технологиях;&lt;/li&gt;
&lt;li&gt;не боитесь всего, что связано с клиент-сайдом;&lt;/li&gt;
&lt;li&gt;работаете с Linux (мы отдаём предпочтение ubuntu и debian);&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;br /&gt;
Условия работы:&lt;br /&gt;
&lt;ul style="text-align: left;"&gt;
&lt;li&gt;офис в 7 минутах ходьбы от метро Тимирязевская;&lt;/li&gt;
&lt;li&gt;8-часовой рабочий день‚ который может начинаться в 9 или в 10 часов утра;&lt;/li&gt;
&lt;li&gt;интересные задачи;&lt;/li&gt;
&lt;li&gt;коллектив‚ который с удовольствием поделится знаниями и накопленным опытом.&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;br /&gt;
Зарплата 50-60 тыс. рублей&lt;br /&gt;
&lt;br /&gt;
Присылайте своё резюме на info@futurecolors.ru (желательно, с примерами кода)&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6180190261543881757-8871645527578277523?l=blog.futurecolors.ru' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/futurecolors/~4/1aPqUCcxOs4" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/futurecolors/~3/1aPqUCcxOs4/python-django-2.html</link><author>noreply@blogger.com (Илья Барышев)</author><thr:total>0</thr:total><feedburner:origLink>http://blog.futurecolors.ru/2011/05/python-django-2.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-6180190261543881757.post-318892900079061771</guid><pubDate>Wed, 04 May 2011 05:06:00 +0000</pubDate><atom:updated>2011-08-13T16:39:41.474+04:00</atom:updated><title>Предновогодняя фотосессия</title><description>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;a href="http://www.flickr.com/photos/future_colors/sets/72157626638540008/" title="The FuturecolorS by Future Colors, on Flickr"&gt;&lt;img alt="The FuturecolorS" height="333" src="http://farm6.static.flickr.com/5068/5684042456_ca6f9251cb.jpg" width="500" /&gt;&lt;/a&gt;

&lt;br /&gt;
&lt;div style="margin: 0; overflow: hidden; padding: 0; width: 500px;"&gt;
&lt;a href="http://www.flickr.com/photos/future_colors/5684042456/in/set-72157626638540008/" style="display: block; float: left; height: 75px; padding: 0 10px 10px 0; width: 75px;" title="The FuturecolorS"&gt;&lt;img alt="The FuturecolorS" src="http://farm6.static.flickr.com/5068/5684042456_ca6f9251cb_s.jpg" style="border: none; height: 75px; margin: 0; padding: 0; width: 75px;" /&gt;&lt;/a&gt;&lt;a href="http://www.flickr.com/photos/future_colors/5683474695/in/set-72157626638540008/" style="display: block; float: left; height: 75px; padding: 0 10px 10px 0; width: 75px;" title="Тёма"&gt;&lt;img alt="Тёма" src="http://farm6.static.flickr.com/5105/5683474695_5172623aef_s.jpg" style="border: none; height: 75px; margin: 0; padding: 0; width: 75px;" /&gt;&lt;/a&gt;&lt;a href="http://www.flickr.com/photos/future_colors/5684043666/in/set-72157626638540008/" style="display: block; float: left; height: 75px; padding: 0 10px 10px 0; width: 75px;" title="Илья"&gt;&lt;img alt="Илья" src="http://farm6.static.flickr.com/5021/5684043666_e17a40231a_s.jpg" style="border: none; height: 75px; margin: 0; padding: 0; width: 75px;" /&gt;&lt;/a&gt;&lt;a href="http://www.flickr.com/photos/future_colors/5684044598/in/set-72157626638540008/" style="display: block; float: left; height: 75px; padding: 0 10px 10px 0; width: 75px;" title="Илья и Тёма"&gt;&lt;img alt="Илья и Тёма" src="http://farm6.static.flickr.com/5103/5684044598_9a53db215a_s.jpg" style="border: none; height: 75px; margin: 0; padding: 0; width: 75px;" /&gt;&lt;/a&gt;&lt;a href="http://www.flickr.com/photos/future_colors/5684045708/in/set-72157626638540008/" style="display: block; float: left; height: 75px; padding: 0 10px 10px 0; width: 75px;" title="Потому что мы банда"&gt;&lt;img alt="Потому что мы банда" src="http://farm6.static.flickr.com/5107/5684045708_1a8d1913f1_s.jpg" style="border: none; height: 75px; margin: 0; padding: 0; width: 75px;" /&gt;&lt;/a&gt;&lt;a href="http://www.flickr.com/photos/future_colors/5683478391/in/set-72157626638540008/" style="display: block; float: left; height: 75px; padding: 0 0 10px 0; width: 75px;" title="Наш талисман"&gt;&lt;img alt="Наш талисман" src="http://farm6.static.flickr.com/5061/5683478391_6bdb5ea7a9_s.jpg" style="border: none; height: 75px; margin: 0; padding: 0; width: 75px;" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://www.flickr.com/photos/future_colors/5683478865/in/set-72157626638540008/" style="display: block; float: left; height: 75px; padding: 0 10px 10px 0; width: 75px;" title="Future Colors"&gt;&lt;img alt="Future Colors" src="http://farm6.static.flickr.com/5024/5683478865_4b5af1e51c_s.jpg" style="border: none; height: 75px; margin: 0; padding: 0; width: 75px;" /&gt;&lt;/a&gt;&lt;a href="http://www.flickr.com/photos/future_colors/5683479421/in/set-72157626638540008/" style="display: block; float: left; height: 75px; padding: 0 10px 10px 0; width: 75px;" title="Не православно!"&gt;&lt;img alt="Не православно!" src="http://farm6.static.flickr.com/5066/5683479421_6583808338_s.jpg" style="border: none; height: 75px; margin: 0; padding: 0; width: 75px;" /&gt;&lt;/a&gt;&lt;a href="http://www.flickr.com/photos/future_colors/5683479783/in/set-72157626638540008/" style="display: block; float: left; height: 75px; padding: 0 10px 10px 0; width: 75px;" title="Табы против пробелов"&gt;&lt;img alt="Табы против пробелов" src="http://farm6.static.flickr.com/5061/5683479783_bc2dcd81a7_s.jpg" style="border: none; height: 75px; margin: 0; padding: 0; width: 75px;" /&gt;&lt;/a&gt;&lt;a href="http://www.flickr.com/photos/future_colors/5683480263/in/set-72157626638540008/" style="display: block; float: left; height: 75px; padding: 0 10px 10px 0; width: 75px;" title="Перерыв"&gt;&lt;img alt="Перерыв" src="http://farm6.static.flickr.com/5230/5683480263_3fe6081779_s.jpg" style="border: none; height: 75px; margin: 0; padding: 0; width: 75px;" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div style="float: left; height: 75px; padding: 0 10px 10px 0; width: 75px;"&gt;
&lt;img src="http://l.yimg.com/g/images/gallery-empty-icon.gif" style="height: 75px; margin: 0; padding: 0; width: 75px;" /&gt;&lt;/div&gt;
&lt;div style="float: left; height: 75px; padding: 0 0 10px 0; width: 75px;"&gt;
&lt;img src="http://l.yimg.com/g/images/gallery-empty-icon.gif" style="height: 75px; margin: 0; padding: 0; width: 75px;" /&gt;&lt;/div&gt;
&lt;br clear="all" /&gt;&lt;/div&gt;
&lt;div style="margin-bottom: 5px; margin-top: 0px;"&gt;
&lt;a href="http://www.flickr.com/photos/future_colors/sets/72157626638540008/"&gt;Декабрь 2010&lt;/a&gt;, a set on Flickr.&lt;/div&gt;
Состав Future Colors  образца 2011 года&lt;/div&gt;
&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6180190261543881757-318892900079061771?l=blog.futurecolors.ru' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/futurecolors/~4/r7U6b1c16Y8" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/futurecolors/~3/r7U6b1c16Y8/blog-post.html</link><author>noreply@blogger.com (Илья Барышев)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://farm6.static.flickr.com/5068/5684042456_ca6f9251cb_t.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://blog.futurecolors.ru/2011/05/blog-post.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-6180190261543881757.post-2499870114726027999</guid><pubDate>Fri, 29 Apr 2011 11:07:00 +0000</pubDate><atom:updated>2011-05-10T12:21:51.069+04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">разработка</category><title>Eclipse и SSH passphrase</title><description>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
Короткий пост-полезняшка, который, надеемся, кому-то сэкономит пару часов на поиск обхода неприятного бага.&lt;br /&gt;
&lt;br /&gt;
&lt;h2&gt;

О чём речь&lt;/h2&gt;
Многие используют passphrase для защиты своих ssh-ключей, а кто-то оставляет свой id_rsa без пароля. Мы вам рекомендуем в целях безопасности всё-таки использовать passphrase, а иначе можно считать что вы храните доступ ко всем ssh в plain-тексте. Если данный абзац поставил вас в тупик, на гитхабе есть хороший ликбез «&lt;a href="http://help.github.com/working-with-key-passphrases/"&gt;Working with SSH key passphrases&lt;/a&gt;».&lt;br /&gt;
&lt;br /&gt;
&lt;h2&gt;

Проблема&lt;/h2&gt;
Последний на данный момент Eclipse Helios плохо дружит с id_rsa с паролем и реагирует на ввод корректной passphrase выдаёт «Auth failed»&lt;br /&gt;
&lt;br /&gt;
&lt;h2&gt;

Решение&lt;/h2&gt;
Есть очень простой workaround: удалить passphrase, вручную добавить ключ в Eclipse, а потом средствами того же эклипса установить passphrase обратно.&lt;br /&gt;
&lt;br /&gt;
Сбрасываем passphrase:&lt;br /&gt;
&lt;pre&gt;&lt;code class="bash"&gt;user@futurecolors:~/.ssh$ ssh-keygen -p&lt;/code&gt;&lt;/pre&gt;
&lt;br /&gt;
По этому пути в меню нужно импортировать id_rsa вручную:&lt;br /&gt;
&lt;pre&gt;&lt;code class="bash"&gt;Window → Preferences → General → Network connections → SSH2
Key Management → Load Existing Key…&lt;/code&gt;&lt;/pre&gt;
Сразу же всё на заработает, надо рестартануть эклипс.
&lt;br /&gt;
Там же импортированному ключу возвращаем passphrase.&lt;br /&gt;
&lt;br /&gt;
Безопасных вам коннектов!&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6180190261543881757-2499870114726027999?l=blog.futurecolors.ru' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/futurecolors/~4/ALlCZLR1EkE" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/futurecolors/~3/ALlCZLR1EkE/eclispe-ssh-passphrase.html</link><author>noreply@blogger.com (Илья Барышев)</author><thr:total>0</thr:total><feedburner:origLink>http://blog.futurecolors.ru/2011/04/eclispe-ssh-passphrase.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-6180190261543881757.post-8793952924215774334</guid><pubDate>Fri, 15 Apr 2011 12:55:00 +0000</pubDate><atom:updated>2011-08-09T15:49:11.212+04:00</atom:updated><title>HTML5 и IE</title><description>Если вы считаете, что использовать HTML5 (что касается html'а) на своих сайтах ещё рано, то вы ошибаетесь. Современные браузеры отлично справляются с новыми тегами и поддерживают соответствующий доктайп. И несовременные, между прочим, тоже справляются!&lt;br /&gt;
Итак, давайте выбросим из головы предрассудки и пойдём в ногу со временем.&lt;br /&gt;
&lt;br /&gt;
&lt;h3&gt;1. Доктайп&lt;/h3&gt;&lt;pre name="code" class="html"&gt;&lt;code&gt;&amp;lt;!doctype html&gt;
&lt;/code&gt;&lt;/pre&gt;Да, и в IE это заработает, ибо режим будет интерпритирован как стандартный.&lt;br /&gt;
&lt;br /&gt;
&lt;h3&gt;2. &lt;a href="http://code.google.com/p/html5shiv/"&gt;html5shiv&lt;/a&gt;&lt;/h3&gt;&lt;pre name="code" class="html"&gt;&lt;code&gt;&amp;lt;!--[if lt IE 9]&gt;
&amp;lt;script type="text/javascript" src="html5shiv.js"&gt;&amp;lt;/script&gt;
&amp;lt;![endif]--&gt;
&lt;/code&gt;&lt;/pre&gt;Симазнаетедлякого.&lt;br /&gt;
Заработало, теперь новые теги доступны для стайлинга.&lt;br /&gt;
&lt;br /&gt;
&lt;h3&gt;3. &lt;a href="http://jdbartlett.github.com/innershiv/"&gt;innershiv&lt;/a&gt;&lt;/h3&gt;Не заработало, когда html пришёл аяксом(&lt;br /&gt;
Не грустим!&lt;br /&gt;
&lt;pre name="code" class="js"&gt;&lt;code&gt;&amp;lt;!--[if lt IE 9]&gt;
&amp;lt;script type="text/javascript" src="innershiv.js"&gt;&amp;lt;/script&gt;
&amp;lt;![endif]--&gt;&lt;/pre&gt;&lt;/code&gt;А в js пишем:&lt;code&gt;&lt;pre name="code" class="js"&gt;if (typeof innerShiv === 'function') {
    $.ajaxSetup({
        dataFilter: function(data, dataType) {
            if (dataType === 'html') {
                return innerShiv(data, false);
            }
            else {
                return data;
            }
        }
    });
    $.fn.html5 = function(){
        return innerShiv(this.html(), false);
    };
} else {
    $.fn.html5 = function(){
        return this.html();
    };
}&lt;/code&gt;&lt;/pre&gt;ЗЫ&lt;br /&gt;
.html5() поможет вам работать с аяксовым ответом до вставки в DOM.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6180190261543881757-8793952924215774334?l=blog.futurecolors.ru' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/futurecolors/~4/10bxkP8S0dM" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/futurecolors/~3/10bxkP8S0dM/html5-ie.html</link><author>noreply@blogger.com (Голиков Артём)</author><thr:total>0</thr:total><feedburner:origLink>http://blog.futurecolors.ru/2011/04/html5-ie.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-6180190261543881757.post-4102242314664673749</guid><pubDate>Fri, 15 Apr 2011 08:41:00 +0000</pubDate><atom:updated>2011-04-15T12:42:00.799+04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Новости</category><title>Вакансия python- &amp; django-разработчика</title><description>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
Мы расширяемся, поэтому ищем в компанию опытного питоновода для наших текущих и будущих Django-проектов. Обещаем интересные и нескучные будни веб-разработки.&lt;br /&gt;
&lt;br /&gt;
За условиями под кат.&lt;br /&gt;
&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;
Обязательно:&lt;br /&gt;
&lt;ul style="text-align: left;"&gt;
&lt;li&gt;хорошее знание python и django;&lt;/li&gt;
&lt;li&gt;уверенное знание SQL;&lt;/li&gt;
&lt;li&gt;коммуникабельность и желание работать на успех команды;&lt;/li&gt;
&lt;li&gt;опыт командной разработки;&lt;/li&gt;
&lt;li&gt;опыт работы с системами контроля версий (мы используем git);&lt;/li&gt;
&lt;li&gt;технический английский;&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;br /&gt;
Будет большим плюсом‚ если вы:&lt;br /&gt;
&lt;ul style="text-align: left;"&gt;
&lt;li&gt;имеете опыт разработки в другом скриптовом языке (php, ruby);&lt;/li&gt;
&lt;li&gt;имеете представление о современных веб-технологиях;&lt;/li&gt;
&lt;li&gt;не боитесь всего, что связано с клиент-сайдом;&lt;/li&gt;
&lt;li&gt;работаете с Linux (мы отдаём предпочтение ubuntu и debian);&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;br /&gt;
Условия работы:&lt;br /&gt;
&lt;ul style="text-align: left;"&gt;
&lt;li&gt;офис в 7 минутах ходьбы от метро Тимирязевская;&lt;/li&gt;
&lt;li&gt;8-часовой рабочий день‚ который может начинаться в 9 или в 10 часов утра;&lt;/li&gt;
&lt;li&gt;интересные задачи;&lt;/li&gt;
&lt;li&gt;коллектив‚ который с удовольствием поделится знаниями и накопленным опытом.&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;br /&gt;
Зарплата по результатам собеседования.&lt;br /&gt;
&lt;br /&gt;
Присылайте своё резюме на info@futurecolors.ru (желательно, с примерами кода)&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6180190261543881757-4102242314664673749?l=blog.futurecolors.ru' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/futurecolors/~4/sObs3zAcJaM" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/futurecolors/~3/sObs3zAcJaM/python-django.html</link><author>noreply@blogger.com (Илья Барышев)</author><thr:total>0</thr:total><feedburner:origLink>http://blog.futurecolors.ru/2011/04/python-django.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-6180190261543881757.post-534658734145114949</guid><pubDate>Fri, 25 Mar 2011 13:57:00 +0000</pubDate><atom:updated>2011-04-10T19:44:07.820+04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Новости</category><title>Ищем верстальщика с амбициями front-end разработчика</title><description>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
Мы ищем нового члена команды‚ готового взять на себя задачи по вёрстке разрабатываемых нами проектов и желающего профессионально расти в качестве front-end разработчика.
&lt;br /&gt;
&lt;a name='more'&gt;&lt;/a&gt;Обязательно:

&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;умение верстать с учётом особенностей распространённых браузеров (IE6+‚ FF3+‚ Chrome, Opera‚ Safari);&lt;/li&gt;
&lt;li&gt;умение нарезать изображения из макетов и делать спрайты;&lt;/li&gt;
&lt;li&gt;желание стать крутым js-программистом (или уже таковым являться);&lt;/li&gt;
&lt;li&gt;комуникабельность и желание работать на успех команды.&lt;/li&gt;
&lt;/ul&gt;
Будет большим плюсом‚ если вы:

&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;имеете представление о вёрстке независимыми блоками‚ концепции graceful degradation‚ HTML5 и современных веб-технологиях;&lt;/li&gt;
&lt;li&gt;имеете опыт работы с eclipse‚ svn‚ git‚ cssdoc.&lt;/li&gt;
&lt;/ul&gt;
Условия работы:

&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;офис в 7 минутах ходьбы от метро Тимирязевская;&lt;/li&gt;
&lt;li&gt;8-часовой рабочий день‚ который может начинаться в 9 или в 10 часов утра;&lt;/li&gt;
&lt;li&gt;интересные задачи‚ минимум рутины;&lt;/li&gt;
&lt;li&gt;коллектив‚ который с удовольствием поделится знаниями и накопленным опытом.&lt;/li&gt;
&lt;/ul&gt;
Зарплата 40-50к по результатам собеседования.



Приходите :-)&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6180190261543881757-534658734145114949?l=blog.futurecolors.ru' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/futurecolors/~4/YrTs2uRdc9o" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/futurecolors/~3/YrTs2uRdc9o/front-end_4639.html</link><author>noreply@blogger.com (Голиков Артём)</author><thr:total>1</thr:total><feedburner:origLink>http://blog.futurecolors.ru/2011/03/front-end_4639.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-6180190261543881757.post-1457126395148467149</guid><pubDate>Fri, 18 Mar 2011 18:55:00 +0000</pubDate><atom:updated>2011-04-01T15:39:39.860+04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">django</category><title>Примечания к готовящемуся выпуску Django 1.3</title><description>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
Django 1.3 ещё не вышел пока, но должен скоро!&lt;br /&gt;
&lt;p&gt;
Прошло уже 2 недели с момента выпуска релиз-кандидата новой версии веб-фреймворка Django 1.3 (и 3 месяца с первой альфы). Мы с нетрпением ждём постоянно откладываемого релиза :) и решили подготовить полный список фич и изменений, чтобы освежить память, что же «вкусного» в новой Джанге.&lt;/p&gt;
&lt;h2&gt;Что нового&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Появились &lt;a href="http://docs.djangoproject.com/en/dev/topics/class-based-views/"&gt;виды, основанные на классах&lt;/a&gt;.&lt;br /&gt;Это новшество добавляет широкие возможности композиции видов путём наследования классов. Для встроенных видов прежняя форма считается устаревшей.&lt;/li&gt;
&lt;li&gt;Добавилась &lt;a href="http://docs.djangoproject.com/en/dev/topics/logging/"&gt;поддержка питоновского модуля logging&lt;/a&gt; с возможностью настройки.&lt;/li&gt;
&lt;li&gt;Улучшена &lt;a href="http://docs.djangoproject.com/en/dev/ref/contrib/staticfiles/"&gt;обработка статики&lt;/a&gt;.&lt;br /&gt;В Джангу включили приложение ранее известное как django-staticfiles. Это помогает в связывании файлов статики с приложением, то есть теперь статика может включаться в приложение, а специальная команда manage.py  collectstatic собирает их вместе.&lt;/li&gt;
&lt;li&gt;Поддержка unittest2 в качестве основной библиотеки для тестов.&lt;/li&gt;
&lt;li&gt;Транзакции теперь можно оформлять в виде &lt;a href="http://docs.djangoproject.com/en/dev/topics/db/transactions/#transaction-management-functions"&gt;менеджера контекста&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Настройка каскадного удаления в моделях.&lt;/li&gt;
&lt;li&gt;&lt;a href="http://docs.djangoproject.com/en/dev/topics/i18n/internationalization/#contextual-markers"&gt;Маркеры контекста и комментарии для строк перевода&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Встроеные теги include, with и load получили дополнительные аргументы.&lt;/li&gt;
&lt;li&gt;&lt;a href="http://docs.djangoproject.com/en/dev/ref/template-response/"&gt;Класс TemplateResponse&lt;/a&gt; как динамичная замена статичному HttpResponse.&lt;/li&gt;
&lt;li&gt;Новые фичи кеширования.&lt;/li&gt;
&lt;li&gt;Права для неактивированных пользователей.&lt;/li&gt;
&lt;li&gt;Набор тестов GeoDjango для пространственных БД (spatial dabases).&lt;/li&gt;
&lt;li&gt;MEDIA_URL и STATIC_URL должны заканчиваться слешем.&lt;/li&gt;
&lt;li&gt;&lt;a href="http://docs.djangoproject.com/en/dev/releases/1.3/#everything-else"&gt;и ещё по мелочи&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
&lt;h2&gt;Обратно не совместимые изменения в 1.3&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://docs.djangoproject.com/en/dev/releases/1.3/#csrf-exception-for-ajax-requests"&gt;Проверка на CSRF теперь и для аякс-запросов&lt;/a&gt;.&lt;br /&gt;Ранее аякс-запросы не проверялись на CSRF-токен, теперь это не так, необходимо для аяксовых запросов включать в заголовок X-CSRFTOKEN, либо использовать декоратор @csrf_exempt&lt;/li&gt;
&lt;li&gt;Запрос к фильтрам в админском интерфейсе проверяет права на доступ к моделям.&lt;/li&gt;
&lt;li&gt;Поле FileField больше не удаляет файлы при удалении записи из БД.&lt;/li&gt;
&lt;li&gt;Поле PasswordInput по умолчанию очищает поле пароля при отрисовке формы.&lt;/li&gt;
&lt;li&gt;Виджет ClearableFileInput для очистки input type=file.&lt;/li&gt;
&lt;li&gt;Индекс по полю expire_date в таблице сессий.&lt;/li&gt;
&lt;li&gt;Убраны фильтры брани в комментариях PROFANITIES_LIST.&lt;/li&gt;
&lt;li&gt;FormSet больше не принимает пустой словарь в качестве аргумента.&lt;/li&gt;
&lt;li&gt;При передаче в шаблон вызываемого объекта он будет &lt;a href="http://docs.djangoproject.com/en/dev/releases/1.3/#callables-in-templates"&gt;вызываться автоматически&lt;/a&gt; (как раньше происходило для вызываемых атрибутов).&lt;/li&gt;
&lt;li&gt;SQL инсерты, написанные вручную и выполняемы при синхронизации данных при тестировании больше не выполняются.&lt;/li&gt;
&lt;li&gt;Изменен приоритет загрузки переводов.&lt;/li&gt;
&lt;li&gt;Управление транзакциями.&lt;/li&gt;
&lt;li&gt;Неактивированные пользователи теперь не могут сбросить себе пароль&lt;/li&gt;
&lt;/ul&gt;
&lt;br/&gt;
&lt;h2&gt;Устаревшие фичи («deprecated» в 1.3)&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Поддержка mod_python будет полностью убрана в 1.5 (не релизился с 2007 года)&lt;/li&gt;
&lt;li&gt;Общие виды на основе функций заменили видами, основанные на классах&lt;/li&gt;
&lt;li&gt;Устарел аргумент template у django.test.client.Client&lt;/li&gt;
&lt;li&gt;DjangoTestRunner заменили на untitest2&lt;/li&gt;
&lt;li&gt;Изменение тегов url и ssi. Ранее они не поддерживали передачу аргумента через переменую контекста.&lt;/li&gt;
&lt;li&gt;Авторизация админов теперь не отличается от авторизации юзеров ( убран недокументированный django.contrib.admin.sites.AdminSite.display_login_form)&lt;/li&gt;
&lt;li&gt;Устарели команды reset and sqlreset. Используйте flush и sqlflush или ручное удаление.&lt;/li&gt;
&lt;li&gt;В GeoDjango не рекомендуют к использованию TEST_RUNNER, изменилось поведение метода  transform()&lt;/li&gt;
&lt;li&gt;Устарел метод CZBirthNumberField.clean&lt;/li&gt;
&lt;li&gt;Устарел класс CompatCookie&lt;/li&gt;
&lt;li&gt;Отказ от загрузки переводов из project path&lt;/li&gt;
&lt;li&gt;Обработчик контекста PermWrapper переехал в django.contrib.auth.context_processors&lt;/li&gt;
&lt;li&gt;Поле XMLField будет убрано полностью уже в 1.4&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
Кому не терпится воспользоваться всем новым функционалом, могут &lt;a href="http://www.djangoproject.com/download/"&gt;загрузить последний RC с сайта Джанги&lt;/a&gt; или воспользоваться командой&lt;/P&gt;
&lt;pre&gt;&lt;code&gt;easy_install django http://media.djangoproject.com/releases/1.3/Django-1.3-rc-1.tar.gz&lt;/code&gt;&lt;/pre&gt;
Либо чекаут транка из SVN:
&lt;pre&gt;&lt;code&gt;svn co http://code.djangoproject.com/svn/django/trunk/&lt;/code&gt;&lt;/pre&gt;
&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6180190261543881757-1457126395148467149?l=blog.futurecolors.ru' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/futurecolors/~4/Kkmk3_IUuTc" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/futurecolors/~3/Kkmk3_IUuTc/django-13_1413.html</link><author>noreply@blogger.com (Илья Барышев)</author><thr:total>3</thr:total><feedburner:origLink>http://blog.futurecolors.ru/2011/03/django-13_1413.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-6180190261543881757.post-9207743750265273771</guid><pubDate>Sat, 05 Mar 2011 19:41:00 +0000</pubDate><atom:updated>2011-04-01T15:39:25.546+04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">django</category><title>Нескучные миниатюры в Django</title><description>Мы используем для создания миниатюр фотографий на своих проектах замечательный &lt;a href="https://github.com/sorl/sorl-thumbnail"&gt;модуль sorl.thumbnail&lt;/a&gt;, который помимо всех своих основных фич умеет заменять все картинки на заглушки. Это бывает полезно, когда надо разрабатывать сайт на локальной машине, где фотки с продакшена отсутствуют.&lt;br/&gt;&lt;br/&gt;По умолчанию для этого есть опция THUMBNAIL_DUMMY, вот что получается с её помощью:&lt;br/&gt;&lt;div style="text-align: center"&gt;&lt;a href="http://www.futurecolors.ru/blog/wp-content/uploads/2011/03/before.png"&gt;&lt;img src="http://www.futurecolors.ru/blog/wp-content/uploads/2011/03/before-183x300.png" alt="before" title="before" width="183" height="300" class="aligncenter size-medium wp-image-895" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br/&gt;&lt;br/&gt;Довольно уныло. Добавим позитива сайту, вместо унылых квадратов пусть у нас будут &lt;a href="http://placekitten.com/"&gt;котята&lt;/a&gt;.&lt;br/&gt;&lt;br/&gt;В urls.py проекта до строчки &lt;br/&gt;&lt;pre&gt;&lt;code class="django"&gt;(r'^', include('sorl.thumbnail.urls')),&lt;/code&gt;&lt;/pre&gt;&lt;br/&gt;прописываем&lt;br/&gt;&lt;pre&gt;&lt;code class="django"&gt;(r'^thumbnail-dummy/(?P&amp;lt;width&amp;gt;\d+)x(?P&amp;lt;height&amp;gt;\d+)/$',  'django.views.generic.simple.redirect_to',&lt;br/&gt;            { 'url': 'http://placekitten.com/%(width)s/%(height)s' }),&lt;/code&gt;&lt;/pre&gt;&lt;br/&gt;&lt;br/&gt;В итоге получаем:&lt;br/&gt;&lt;br/&gt;&lt;div style="text-align: center"&gt;&lt;a href="http://www.futurecolors.ru/blog/wp-content/uploads/2011/03/after.png"&gt;&lt;img src="http://www.futurecolors.ru/blog/wp-content/uploads/2011/03/after-300x248.png" alt="after" title="after" width="300" height="248" class="aligncenter size-medium wp-image-896" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6180190261543881757-9207743750265273771?l=blog.futurecolors.ru' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/futurecolors/~4/7uYl3tWoukU" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/futurecolors/~3/7uYl3tWoukU/django_8582.html</link><author>noreply@blogger.com (Илья Барышев)</author><thr:total>0</thr:total><feedburner:origLink>http://blog.futurecolors.ru/2011/03/django_8582.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-6180190261543881757.post-6457816567122163275</guid><pubDate>Sat, 13 Nov 2010 18:32:00 +0000</pubDate><atom:updated>2011-04-01T15:39:11.668+04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Новости</category><category domain="http://www.blogger.com/atom/ns#">jquery</category><title>jQuery 1.4.4</title><description>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
Вчера вышла самая последняя версия jQuery, очередной maintenance-релиз. Из интересного:&lt;br /&gt;
&lt;ul&gt;&lt;br /&gt;
&lt;li&gt;методы .width() и .height() теперь возвращают правильные значение для скрытых элементов (раньше возвращали 0);&lt;/li&gt;
&lt;li&gt;добавлен новый метод .&lt;a href="http://api.jquery.com/fadeToggle/"&gt;fadeToggle&lt;/a&gt;();&lt;/li&gt;
&lt;li&gt;исправлено &lt;a href="http://bugs.jquery.com/query?type=bug&amp;amp;type=&amp;amp;resolution=fixed&amp;amp;milestone=1.4.4&amp;amp;group=status&amp;amp;order=priority"&gt;более 20 багов&lt;/a&gt;, в том числе регрессии из 1.4.3&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
По традиции мы обновили&amp;nbsp;шпаргалку&amp;nbsp;и для удобства вынесли её на короткий домен &lt;a href="http://jqapi.ru/"&gt;http://jqapi.ru&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Кроме того, работают ссылки вида &lt;em&gt;jqapi.ru/название_метода&lt;/em&gt;, например &lt;a href="http://jqapi.ru/fadeToggle"&gt;http://jqapi.ru/fadeToggle&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://blog.jquery.com/2010/11/11/jquery-1-4-4-release-notes/"&gt;Пост в блоге jQuery&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6180190261543881757-6457816567122163275?l=blog.futurecolors.ru' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/futurecolors/~4/zKvUwXDhpLU" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/futurecolors/~3/zKvUwXDhpLU/jquery-144_7275.html</link><author>noreply@blogger.com (Илья Барышев)</author><thr:total>2</thr:total><feedburner:origLink>http://blog.futurecolors.ru/2010/11/jquery-144_7275.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-6180190261543881757.post-175577799432407946</guid><pubDate>Sat, 13 Nov 2010 18:25:00 +0000</pubDate><atom:updated>2011-04-01T15:38:54.844+04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">GDD</category><category domain="http://www.blogger.com/atom/ns#">HTML5</category><category domain="http://www.blogger.com/atom/ns#">google</category><category domain="http://www.blogger.com/atom/ns#">События</category><title>Google Developer Day 2010</title><description>&lt;img src="http://www.futurecolors.ru/blog/wp-content/uploads/2010/11/gddru.png" alt="Google Developer Day 2010" title="Google Developer Day 2010" width="128" height="109" class="aligncenter size-full wp-image-873" align="left" /&gt; 12 ноября мы, &lt;a href="http://twitter.com/coagulant/"&gt;@coagulant&lt;/a&gt; и &lt;a href="http://twitter.com/piu_mosso/"&gt;@piu_mosso&lt;/a&gt;, посетили &lt;a href="http://www.google.ru/events/developerday/2010/moscow/agenda.html"&gt;Google Developer Day 2010&lt;/a&gt;. Организация мероприятия по сравнению с &lt;a href="http://www.futurecolors.ru/blog/2009/11/google-developer-day-2009/"&gt;прошлым годом&lt;/a&gt; улучшилась: всем хватило мест, не было толкучки на регистрации.&lt;br/&gt;&lt;br/&gt;На вводной презентации были обозначены основные направления развития веб: веб-приложения (с применением технологий HTML5), облачные вычисления (App Engine) и мобильный веб (Android). Этим направлениям были посвящены 3 из четырёх секций.&lt;br/&gt;&lt;br/&gt;&lt;h3&gt;Chrome и HTML 5&lt;/h3&gt;&lt;br/&gt;На секции Chrome и HTML 5 мы посетили все доклады: «Пишем для веба с Native Client» от &lt;a href="http://www.google.ru/events/developerday/2010/moscow/speakers.html#brad-chen"&gt;Брэда Чена&lt;/a&gt;, «Расширения Google Chrome» от &lt;a href="http://www.google.ru/events/developerday/2010/moscow/speakers.html#paul-kinlan"&gt;Пола Кинлана&lt;/a&gt;, «Практический HTML5» от &lt;a href="http://www.google.ru/events/developerday/2010/moscow/speakers.html#jeremy-orlow"&gt;Джереми Орлова&lt;/a&gt;, «Инструменты Chrome для разработчиков» от &lt;a href="http://www.google.ru/events/developerday/2010/moscow/speakers.html#pavel-feldman"&gt;Павла Фельдмана&lt;/a&gt;, «Веб-приложения в Chrome WebStore» от &lt;a href="http://www.google.ru/events/developerday/2010/moscow/speakers.html#paul-kinlan"&gt;Пола Кинлана&lt;/a&gt; и «Авторизация в WWW» от &lt;a href="http://www.google.ru/events/developerday/2010/moscow/speakers.html#steve-bazyl"&gt;Стивена Базила&lt;/a&gt;.&lt;br/&gt;&lt;br/&gt;Презентация &lt;a href="http://code.google.com/p/nativeclient/"&gt;Native Client&lt;/a&gt; была интересной и перспективной, но по-прежнему технология выглядит очень сырой. Несмотря на то, что игры под Unity3d запускаются прямо в браузере, этот браузер пока только Google Chrome, к сожалению. Когда дойдёт до стандартизации и повсеместного внедрения пока неясно.&lt;br/&gt;&lt;br/&gt;Из всех докладов наиболее полезным оказался «Инструменты Chrome для разработчиков». Павел Фельдман рассказал о том, что появится в новом релизе инструментов. Изменится интерфейс работы с сетью. Chrome предоставляет интересные средства отладки и профилирования JS, в том числе изменение на лету. Это то, что уже сейчас есть в canary сборке.&lt;br/&gt;&lt;br/&gt;К сожалению, разговоры о HTML5 (вступление и «Практический HTML5») ограничились традиционным перечислением основных фич и демонстрацией красочных примеров. Если вы знакомы с HTML5, то практически ничего нового узнать вам не удалось бы.&lt;br/&gt;&lt;br/&gt;Доклад «Авторизация в WWW» представлял собой объяснение, как же работают &lt;a href="http://openid.net/"&gt;OpenID&lt;/a&gt; и &lt;a href="http://oauth.net/"&gt;OAuth&lt;/a&gt;. Ничего из того. что нельзя прочитать о данных технологиях. Расстроил синхронный перевод, который только мешал вникать в хитросплетения обменов токенами.&lt;br/&gt;&lt;br/&gt;&lt;h3&gt;Другие секции&lt;/h3&gt;&lt;br/&gt;Mano Marks рассказал про &lt;a href="http://tables.googlelabs.com/"&gt;fusion tables&lt;/a&gt; и новшества &lt;a href="http://code.google.com/intl/ru-RU/apis/maps/documentation/javascript/"&gt;map api v3&lt;/a&gt;. Из интересного: maps api крупнейший и самый популярный API, styled maps это не только цветовые схемы «вырви глаз», он и возможность удобно отсечь лишнее, fusion tables - рай для неразработчика, которому надо по-быстрому сделать карту из экселя :) Fusion tables активно развивается, там много разных визаулизаций, не только картографические.&lt;br/&gt;&lt;br/&gt;&lt;h3&gt;Общие впечатления&lt;/h3&gt;&lt;br/&gt;В целом, что касается &lt;a href="http://habrahabr.ru/blogs/google_chrome/75639/"&gt;расширений&lt;/a&gt; и &lt;a href="http://habrahabr.ru/blogs/google_chrome/95642/"&gt;приложений&lt;/a&gt; для Google Chrome, был дан импульс: разрабатывайте web-приложения. Google Chrome позоляет упростить процесс их монетизации. Также Google призывает увеличить функциональность браузера расширениями с использованием «родных» технологий HTML, CSS и JS.&lt;br/&gt;&lt;br/&gt;На вопрос «HTML5 или Native?» был дан ответ на последней презентации секции Android: пишите и то и другое. И это очень правильно: веб-приложения дают возможность создавать решения сразу для большого числа платформ, моментально обновлять их у всех пользователей — они нужны для «захвата рынка». Потом уже можно вложиться в разработку родного приложения и под андроид и под iOS и другие, с родным для платформы интерфейсом и более плотной интеграцией с железом и фичами платформы.&lt;br/&gt;&lt;br/&gt;Секция HTML5 и Chrome могла быть гораздо более гиковской, с более глубоким погружение в тему, именно этого мы ждали от выступлений (201).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6180190261543881757-175577799432407946?l=blog.futurecolors.ru' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/futurecolors/~4/5d4Pqd12aNc" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/futurecolors/~3/5d4Pqd12aNc/google-developer-day-2010_7667.html</link><author>noreply@blogger.com (Голиков Артём)</author><thr:total>0</thr:total><feedburner:origLink>http://blog.futurecolors.ru/2010/11/google-developer-day-2010_7667.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-6180190261543881757.post-8549626073333234047</guid><pubDate>Fri, 22 Oct 2010 15:28:00 +0000</pubDate><atom:updated>2011-04-01T15:37:52.729+04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Новости</category><category domain="http://www.blogger.com/atom/ns#">jquery</category><title>Шпаргалка по jQuery 1.4.3</title><description>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;a href="http://www.futurecolors.ru/jquery/"&gt;&lt;br /&gt;&lt;img alt="" class="alignnone" height="61" src="http://www.futurecolors.ru/images/icons/jquery_1_4_cheat_sheet.jpg" title="jQuery API Cheatsheet 1.4.3" width="281" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Вышла новая версия jQuery, поэтому мы &lt;a href="http://www.futurecolors.ru/jquery/"&gt;обновили свою шпаргалку&lt;/a&gt;. Все &lt;a href="http://api.jquery.com/category/version/1.4.3/"&gt;изменения в API&lt;/a&gt; в ней отражены, их немного. Вот, что поменялось в этом релизе:&lt;br /&gt;
&lt;ul&gt;&lt;br /&gt;
&lt;li&gt;библиотека проходит тесты &lt;a href="http://www.jslint.com/"&gt;JSLint&lt;/a&gt;, с &lt;a href="http://docs.jquery.com/JQuery_Core_Style_Guidelines#JSLint"&gt;небольшими оговорками&lt;/a&gt; (это для соблюдения coding standards внутри команды jQuery);&lt;/li&gt;
&lt;li&gt;модульность, компоненты теперь независимы (удобно для тестирования, можно подгружать независимо);&lt;/li&gt;
&lt;li&gt;переписан модуль css, получение стилей через .css() стало быстрей;&lt;/li&gt;
&lt;li&gt;можно писать плагины для функций animate и css, добавляя свои атрибуты (например, $('#myDiv').css('rotate', 90)), &amp;nbsp;&lt;a href="http://github.com/lrbabe/jquery.rotate.js"&gt;пример&lt;/a&gt;;&lt;/li&gt;
&lt;li&gt;атрибуты тегов вида data-yourattr автоматически доступны через метод .data('yourattr') (это активно используется в &lt;a href="http://jquerymobile.com/"&gt;мобильном фреймворе jquery&lt;/a&gt;);&lt;/li&gt;
&lt;li&gt;методы .closest(), .filter(), .is() и .find() стали очень быстро работать в современных браузерах (за счёт нативных селекторов);&lt;/li&gt;
&lt;li&gt;чтобы отменить событие по умолчанию и остановить "всплытие" события вместо .bind("click", function(){return false}) можно писать .bind(“click”, false);&lt;/li&gt;
&lt;li&gt;все методы типа .click(fn) теперь могут получать объект данных в качестве дополнительного аргумента (раньше так умел только метод .bind();&lt;/li&gt;
&lt;li&gt;полезная функция для проверки настоящего типа объекта &lt;span style="background-attachment: initial; background-clip: initial; background-color: transparent; background-image: initial; background-origin: initial; font-size: 13px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; outline-color: initial; outline-style: initial; outline-width: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; vertical-align: baseline;"&gt;&lt;a href="http://api.jquery.com/jQuery.type/"&gt;jQuery.type&lt;/a&gt;&amp;nbsp;&lt;/span&gt;(обходит &lt;a href="http://perfectionkills.com/instanceof-considered-harmful-or-how-to-write-a-robust-isarray/"&gt;тонконсти и нюансы опреатора typeof javascript&lt;/a&gt;);&lt;/li&gt;
&lt;li&gt;и &lt;a href="http://blog.jquery.com/2010/10/16/jquery-143-released/"&gt;ещё немного по мелочи&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
Пользуйтесь на здоровье:&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://code.jquery.com/jquery-1.4.3.js"&gt;Обычная версия&lt;/a&gt; (179кб)&lt;br /&gt;
&lt;a href="http://code.jquery.com/jquery-1.4.3.min.js"&gt;Сжатая версия&lt;/a&gt; (26 gzipped или 76кб)&lt;br /&gt;
На &lt;a href="http://ajax.googleapis.com/ajax/libs/jquery/1.4.3/jquery.min.js"&gt;CDN Google&lt;/a&gt;&amp;nbsp;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6180190261543881757-8549626073333234047?l=blog.futurecolors.ru' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/futurecolors/~4/XcZ07aEnKS0" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/futurecolors/~3/XcZ07aEnKS0/jquery-143_3649.html</link><author>noreply@blogger.com (Илья Барышев)</author><thr:total>0</thr:total><feedburner:origLink>http://blog.futurecolors.ru/2010/10/jquery-143_3649.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-6180190261543881757.post-8933085874483650321</guid><pubDate>Mon, 21 Jun 2010 09:08:00 +0000</pubDate><atom:updated>2011-04-01T12:55:39.868+04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Банкоматор</category><title>Банкоматор вконтакте</title><description>&lt;a href="http://www.futurecolors.ru/blog/wp-content/uploads/2010/06/Снимок.png"&gt;&lt;img class="size-medium wp-image-813 alignright" title="Банкоматор вконтакте" src="http://www.futurecolors.ru/blog/wp-content/uploads/2010/06/Снимок-294x300.png" alt="Банкоматор вконтакте" width="294" height="300" /&gt;&lt;/a&gt;&lt;br/&gt;У Банкоматора снова хорошие новости: мы разместили его Вконтакте в качестве приложения. Теперь, если вы пользуетесь этой соцсетью, вы можете добавить банкоматор к себе на страницу и моментально видеть нужные вам источники и приёмники денег на карте. Пользуйтесь нашим сервисом на здоровье и, если он вам нравится, не забывайте приглашать друзей :)&lt;br/&gt;&lt;br/&gt;&lt;a href="http://vkontakte.ru/app1696252"&gt;Страница приложения&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;Кстати, место устаревшей строки поиска занял виджет от Яндекса с умным геокодером, так что теперь вы точно не заблудитесь в Москве.&lt;br/&gt;&lt;br/&gt;Напоминаем, что вы можете &lt;a href="http://www.futurecolors.ru/blog/2010/04/embedbankomator/"&gt;встроить Банкоматор к себе на сайт&lt;/a&gt;, например, если хотите показывать своим посетителям, где можно найти ближайший терминал оплаты Киви или банкомат Сбербанка.&lt;br/&gt;&lt;br/&gt;Если вы хотите в виджете увидеть меню с банками, то можно просто добавить параметр ?hidefilters=0, например:&lt;br/&gt;&lt;code&gt;&amp;lt;iframe src="http://bankomator.ru/&lt;strong&gt;?hidefilters=0&lt;/strong&gt;#lat=55.760022&amp;amp;lng=37.604236&amp;amp;z=12&amp;amp;banks=5" width="600" height="500"&amp;gt;&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6180190261543881757-8933085874483650321?l=blog.futurecolors.ru' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/futurecolors/~4/nPjWPyusdQk" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/futurecolors/~3/nPjWPyusdQk/blog-post_1819.html</link><author>noreply@blogger.com (Илья Барышев)</author><thr:total>4</thr:total><feedburner:origLink>http://blog.futurecolors.ru/2010/06/blog-post_1819.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-6180190261543881757.post-4107056209976222824</guid><pubDate>Wed, 09 Jun 2010 16:40:00 +0000</pubDate><atom:updated>2011-04-01T15:37:17.273+04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Проекты</category><title>«Хостинг» приглашений от Future Colors «Event 007»</title><description>&lt;img src="http://www.futurecolors.ru/blog/wp-content/uploads/2010/06/logo.jpg" alt="logo" title="logo" width="240" height="100" class="alignnone size-full wp-image-803" align="left" /&gt;&lt;br/&gt;Future Colors представляет новый проект &lt;a href="http://event007.ru" target="_blank"&gt;Event 007&lt;/a&gt;, благодаря которому любой желающий может создать web-страницу с приглашением на какое-либо мероприятие (будь то, например, концерт или встреча), получить ссылку на эту страницу и разослать её друзьям.&lt;br/&gt;&lt;br/&gt;Преимущество нашего проекта состоит в простоте публикации: для этого не нужна регистрация, вам нужно лишь заполнить простую форму. К приглашению можно прикрепить флаер (или любое другое изображение), а также карту (с возможностью корректировать положение точки) согласно адресу.&lt;br/&gt;&lt;br/&gt;Вот пример, как может выглядеть приглашение:&lt;br/&gt;&lt;br/&gt;&lt;p style="text-align: center;"&gt;&lt;a href="http://event007.ru/f417d/" target="_blank"&gt;&lt;img class="size-full wp-image-799 aligncenter" title="event" src="http://www.futurecolors.ru/blog/wp-content/uploads/2010/06/event.png" alt="event" width="600" height="362" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;br/&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;br/&gt;Почему Event 007?&lt;br/&gt;Во-первых, просто! Приглашение публикуется всего "в два клика", не требуя регистрации и запролнения капч. Во-вторых, доступно! Для того, чтобы человек смог просмотреть его, ему достаточно перейти по ссылке (не каждый имеет профиль в социальных сетях или других сообществах). В-третьих, настраиваемо. Если приглашение вы решите сделать публичным, то его увидят посетители нашего сайта Event 007 в общем календаре событий. Если это частное мероприятие, то увидеть его смогут лишь те, кому вы сообщите ссылку на страницу.&lt;br/&gt;Срок размещения приглашения не ограничен!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6180190261543881757-4107056209976222824?l=blog.futurecolors.ru' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/futurecolors/~4/h6Z_k28Dc8Y" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/futurecolors/~3/h6Z_k28Dc8Y/future-colors-event-007_6018.html</link><author>noreply@blogger.com (Голиков Артём)</author><thr:total>1</thr:total><feedburner:origLink>http://blog.futurecolors.ru/2010/06/future-colors-event-007_6018.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-6180190261543881757.post-2086740278176186052</guid><pubDate>Wed, 19 May 2010 11:30:00 +0000</pubDate><atom:updated>2011-04-04T11:53:34.581+04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">PHP</category><category domain="http://www.blogger.com/atom/ns#">python</category><category domain="http://www.blogger.com/atom/ns#">События</category><title>DevConf::report()</title><description>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
Это самый краткий из наших отчётов. 17 мая мы посетили &lt;a href="http://devconf.ru/"&gt;DevConf&lt;/a&gt;, «конференцию профессиональных веб-разработчиков», в которую вошли целых 5 потоков: &lt;a href="http://devconf.ru/phpconf/page/programm"&gt;PHPConf&lt;/a&gt;, &lt;a href="http://devconf.ru/perl/page/programm"&gt;Perl&lt;/a&gt;, &lt;a href="http://devconf.ru/python/page/programm"&gt;Python&lt;/a&gt;, &lt;a href="http://devconf.ru/ruby/page/programm"&gt;Ruby&lt;/a&gt; и &lt;a href="http://devconf.ru/asp.net/page/programm"&gt;ASP.NET&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Вот где мы (&lt;a href="http://twitter.com/coagulant"&gt;@coagulant&lt;/a&gt;, &lt;a href="http://twitter.com/piu_mosso"&gt;@piu_mosso&lt;/a&gt;, &lt;a href="http://twitter.com/DmitryVadimich" target="_blank"&gt;@DmitryVadimich&lt;/a&gt;) успели побывать:&lt;br /&gt;
&lt;ul&gt;&lt;br /&gt;
&lt;li&gt;Илья Альшанетский очень доступно &lt;a href="http://ilia.ws/archives/216-DevConf-Slides.html"&gt;рассказал о том, как надо оптимизировать программы&lt;/a&gt;, и как этого делать не надо.   Неплохая презентация.&lt;/li&gt;
&lt;li&gt;Сходил на «Расширение механизма импорта в Питоне», было вполне интересно.&lt;/li&gt;
&lt;li&gt;Из-за порушенного расписания не успел на доклад про переход badoo.com на PHP5, а жаль.&lt;/li&gt;
&lt;li&gt;В ожидании презентации по Рельсам послушал немного про ASP.NET 4 - было скучновато. Интеллисенс конечно крут, но остальное не впечатлило.&lt;/li&gt;
&lt;li&gt;Дождался доклада Йехуды Каца о новинках в третьих рельсах. Отличая подача инфы, заинтересовался, планирую почитать про руби и RoR на досуге.&lt;/li&gt;
&lt;li&gt;Презентация демонов на PHP с libevent была плохой. Скучал.&lt;/li&gt;
&lt;li&gt;Хорошая презентация Redis'а вызвала аппетит к этому продукту.&lt;/li&gt;
&lt;li&gt;Обед был особенно уныл, а купить что-либо другое вообще было невозможно.&lt;/li&gt;
&lt;li&gt;Выступление про новинки в девятом постгресе было ничего так. Надо изучить что-то за рамками традиционного мускуля, постгрес самое то.&lt;/li&gt;
&lt;li&gt;Затем очень насыщенная, живая презентация Евгения Климова о хранилищах данных. Классификация, особенности, известные "грабли". Ждём слайдов.&lt;/li&gt;
&lt;li&gt;Cразу ушёл с REST, тоска. Вместо этого отправился к Монти. Я бы лучше послушал не про историю, а про технические аспекты MariaDb.&lt;/li&gt;
&lt;li&gt;«+ и - Джанго» превратились в только минусы со слабой аргументацией типа «мне не нравится».&lt;/li&gt;
&lt;li&gt;Показательная презентация "плюшек" PHP 5.3 на примерах новых доктрины, симфони и зенда. Захотелось сразу же попробовать новые вкусности.&lt;/li&gt;
&lt;/ul&gt;
В итоге конференция скорее&amp;nbsp;&lt;strike&gt;понравилась&lt;/strike&gt;&amp;nbsp;не понравилась, ожидания были куда больше. Надеемся, в следующий раз будет ещё интересней.&lt;br /&gt;
&lt;br /&gt;
Мы также заглянули на один мастер-классов, а именно &lt;a href="http://twitter.com/v0r0b"&gt;@v0r0b&lt;/a&gt; поучавствовал 18 числа в сессии Вадима Крючкова (который говорил о libevent) про опыт построения распределённой команды разработки. К сожалению, скучно, неинформативно, зря потратили время.&lt;br /&gt;
&lt;br /&gt;
&lt;div style="text-align: center;"&gt;
&lt;a href="http://www.futurecolors.ru/blog/wp-content/uploads/2010/05/img_0184.jpg"&gt;&lt;img alt="Илья, Дима, Тёма" class="size-medium wp-image-789" height="300" src="http://www.futurecolors.ru/blog/wp-content/uploads/2010/05/img_0184-219x300.jpg" title="img_0184" width="219" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6180190261543881757-2086740278176186052?l=blog.futurecolors.ru' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/futurecolors/~4/ibrTFGxD_5A" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/futurecolors/~3/ibrTFGxD_5A/devconfreport_5224.html</link><author>noreply@blogger.com (Илья Барышев)</author><thr:total>1</thr:total><feedburner:origLink>http://blog.futurecolors.ru/2010/05/devconfreport_5224.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-6180190261543881757.post-5649656139099301076</guid><pubDate>Fri, 14 May 2010 18:16:00 +0000</pubDate><atom:updated>2011-04-04T11:59:03.111+04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Спокойно.ру</category><title>Клоны Спокойно.ру</title><description>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
Уже прошло чуть больше года, как мы запустили свой проект &lt;a href="http://spokoino.ru/"&gt;spokoino.ru&lt;/a&gt;. В самом начале мы определили несколько концептуальных моментов, на которых сконцентрировались при разработке:&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;инструкторов на сайте должно быть много;&lt;/li&gt;
&lt;li&gt;по большому количеству инструкторов должен быть удобный поиск;&lt;/li&gt;
&lt;li&gt;для инструкторов должна быть сделана простая регистрация.&lt;/li&gt;
&lt;/ul&gt;
Вроде бы очевидные вещи, но на тот момент аналогов не существовало, если не считать проект &lt;a href="http://superdriver.ru/"&gt;superdriver.ru&lt;/a&gt;, о котором мы узнали уже после запуска.&lt;br /&gt;
&lt;br /&gt;
Прошел год, и почти каждый месяц мы наблюдали как появляется новый сайт с частичным повторением &lt;a href="http://spokoino.ru/"&gt;Спокойно.ру&lt;/a&gt;. Все это мы находим очень забавным, повторение функционала лишний раз доказывает, что у нас получился удобный сервис или, как минимум, мы реализовали правильные идеи, которые лежали на поверхности.&lt;br /&gt;
&lt;br /&gt;
Клонов набралось много, мы решили собрать их все и устроить небольшой хит-парад.&lt;br /&gt;
&lt;br /&gt;
&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="font-size: 19px; font-weight: bold;"&gt;10. &lt;a href="http://rulish.ru/" rel="nofollow"&gt;http://rulish.ru&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;
Склонировали только идею фильтров, реализовали большое количество своих    собственных задумок — настоящие клоны так не делают. Самое последнее    место в нашем топе.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://rulish.ru/" rel="nofollow"&gt;&lt;img alt="20100514_041629_rulishru_s_250" height="187" src="http://www.futurecolors.ru/blog/wp-content/uploads/2010/05/20100514_041629_rulishru_s_250.png" title="20100514_041629_rulishru_s_250" width="250" /&gt;&lt;/a&gt;&lt;div&gt;
&lt;a href="http://rulish.ru/" rel="nofollow"&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;
&lt;a href="http://rulish.ru/" rel="nofollow"&gt;&lt;/a&gt;&lt;br /&gt;&lt;h3&gt;
9. &lt;a href="http://autoinstructor.kz/" rel="nofollow"&gt;http://autoinstructor.kz&lt;/a&gt; и &lt;a href="http://mos-instruktor.ru/" rel="nofollow"&gt;http://mos-instruktor.ru&lt;/a&gt;&lt;/h3&gt;
Переписали текст с нашей главной страницы. На фильтры не решились.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://autoinstructor.kz/" rel="nofollow"&gt;&lt;img alt="20100514_034258_autoinstructorkz_s_250" class="alignnone size-full wp-image-749" height="187" src="http://www.futurecolors.ru/blog/wp-content/uploads/2010/05/20100514_034258_autoinstructorkz_s_250.png" title="20100514_034258_autoinstructorkz_s_250" width="250" /&gt;&lt;/a&gt; &lt;a href="http://mos-instruktor.ru/" rel="nofollow"&gt;&lt;img alt="20100514_071034_mos-instruktorru_s_250" class="alignnone size-full wp-image-764" height="187" src="http://www.futurecolors.ru/blog/wp-content/uploads/2010/05/20100514_071034_mos-instruktorru_s_250.png" title="20100514_071034_mos-instruktorru_s_250" width="250" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;a href="http://mos-instruktor.ru/" rel="nofollow"&gt;&lt;/a&gt;&lt;br /&gt;&lt;h3&gt;
8. &lt;a href="http://www.auto-instructor.ru/" rel="nofollow"&gt;http://www.auto-instructor.ru&lt;/a&gt;&lt;/h3&gt;
Кроме главной страницы, скопировали еще и большинство анкет инструкторов.&lt;br /&gt;&lt;a href="http://www.auto-instructor.ru/" rel="nofollow"&gt;&lt;img alt="20100514_040700_auto-instructorru_s_250-1" height="187" src="http://www.futurecolors.ru/blog/wp-content/uploads/2010/05/20100514_040700_auto-instructorru_s_250-1.png" title="20100514_040700_auto-instructorru_s_250-1" width="250" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;a href="http://www.auto-instructor.ru/" rel="nofollow"&gt;&lt;/a&gt;&lt;br /&gt;&lt;h3&gt;
&lt;br /&gt;&lt;/h3&gt;
&lt;h3&gt;
7. &lt;a href="http://www.be-driver.ru/"&gt;http://www.be-driver.ru&lt;/a&gt;&lt;/h3&gt;
На 7-м месте проект, который скопировал более сложный функционал —  фильтры.&lt;br /&gt;&lt;a href="http://www.be-driver.ru/" rel="nofollow"&gt;&lt;img alt="20100514_040735_be-driverru_s_250" class="alignnone size-full wp-image-752" height="187" src="http://www.futurecolors.ru/blog/wp-content/uploads/2010/05/20100514_040735_be-driverru_s_250.png" title="20100514_040735_be-driverru_s_250" width="250" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;a href="http://www.be-driver.ru/" rel="nofollow"&gt;&lt;/a&gt;&lt;br /&gt;&lt;h3&gt;
6. &lt;a href="http://vip-instruktors.ru/" rel="nofollow"&gt;http://vip-instruktors.ru&lt;/a&gt;&lt;/h3&gt;
Чуть более сложные фильтры, чем у предыдущего проекта.&lt;br /&gt;&lt;h1&gt;
&lt;a href="http://vip-instruktors.ru/" rel="nofollow"&gt;&lt;img alt="20100514_051125_vip-instruktorsru_s_250" class="alignnone size-full wp-image-753" height="187" src="http://www.futurecolors.ru/blog/wp-content/uploads/2010/05/20100514_051125_vip-instruktorsru_s_250.png" title="20100514_051125_vip-instruktorsru_s_250" width="250" /&gt;&lt;/a&gt;&lt;/h1&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;&lt;h3&gt;
5. &lt;a href="http://avtoas.ru/poisk_instructor/rashirenniy_poisk" rel="nofollow"&gt;http://avtoas.ru/poisk_instructor/rashirenniy_poisk&lt;/a&gt;&lt;/h3&gt;
Слайдер в фильтрах поднимает avtoas.ru на 5-е место.&lt;br /&gt;&lt;a href="http://avtoas.ru/poisk_instructor/rashirenniy_poisk" rel="nofollow"&gt;&lt;img alt="20100514_051821_avtoasru_p_250" class="alignnone size-full wp-image-763" height="193" src="http://www.futurecolors.ru/blog/wp-content/uploads/2010/05/20100514_051821_avtoasru_p_250.jpg" title="20100514_051821_avtoasru_p_250" width="250" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;a href="http://avtoas.ru/poisk_instructor/rashirenniy_poisk" rel="nofollow"&gt;&lt;/a&gt;&lt;br /&gt;&lt;h3&gt;
&lt;br /&gt;&lt;/h3&gt;
&lt;h3&gt;
4.  &lt;a href="http://www.avtonastavnik.ru/" rel="nofollow"&gt;http://www.avtonastavnik.ru&lt;/a&gt;&lt;/h3&gt;
Популярные инструкторы справа на главной, фильтры, скопировано   большинство анкет.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.avtonastavnik.ru/" rel="nofollow"&gt;&lt;img alt="20100514_040336_avtonastavnikru_s_250" height="187" src="http://www.futurecolors.ru/blog/wp-content/uploads/2010/05/20100514_040336_avtonastavnikru_s_250.png" title="20100514_040336_avtonastavnikru_s_250" width="250" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;a href="http://www.avtonastavnik.ru/" rel="nofollow"&gt;&lt;/a&gt;&lt;br /&gt;&lt;h3&gt;
&lt;br /&gt;&lt;/h3&gt;
&lt;h3&gt;
3. &lt;a href="http://www.hochyvodit.ru/" rel="nofollow"&gt;http://www.hochyvodit.ru&lt;/a&gt;&lt;/h3&gt;
Очень похожий проект на Автонаставника, но есть фильтр цены в виде  слайдера.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.hochyvodit.ru/" rel="nofollow"&gt;&lt;img alt="hochyvoditru" height="187" src="http://www.futurecolors.ru/blog/wp-content/uploads/2010/05/20100514_034913_hochyvoditru_s_250-1.png" title="hochyvoditru" width="250" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;a href="http://www.hochyvodit.ru/" rel="nofollow"&gt;&lt;/a&gt;&lt;br /&gt;&lt;h3&gt;
&lt;br /&gt;&lt;/h3&gt;
&lt;h3&gt;
2. &lt;a href="http://www.eduedu.ru/" rel="nofollow"&gt;http://www.eduedu.ru&lt;/a&gt;&lt;/h3&gt;
Скопировано большинство анкет, фильтрация объявлений происходит автоматически и без пагинации.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.eduedu.ru/" rel="nofollow"&gt;&lt;img alt="20100514_043419_edueduru_s_250" height="187" src="http://www.futurecolors.ru/blog/wp-content/uploads/2010/05/20100514_043419_edueduru_s_250.png" title="20100514_043419_edueduru_s_250" width="250" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;h3&gt;
&lt;br /&gt;&lt;/h3&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h3&gt;
1. &lt;a href="http://www.uchuvodit.ru/" rel="nofollow"&gt;http://www.uchuvodit.ru&lt;/a&gt;&lt;/h3&gt;
Можно сделать копию клона,  тогда точно не промахнешься.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.uchuvodit.ru/" rel="nofollow"&gt;&lt;img alt="20100514_044615_uchuvoditru_s_250-1" height="187" src="http://www.futurecolors.ru/blog/wp-content/uploads/2010/05/20100514_044615_uchuvoditru_s_250-1.png" title="20100514_044615_uchuvoditru_s_250-1" width="250" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;P. S.&amp;nbsp;&lt;/strong&gt;Хит-парад не претендует ни на что более серьезное, чем пятничная шутка.&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6180190261543881757-5649656139099301076?l=blog.futurecolors.ru' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/futurecolors/~4/bAtKA05KIM0" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/futurecolors/~3/bAtKA05KIM0/blog-post_7574.html</link><author>noreply@blogger.com (Павел Воробьев)</author><thr:total>11</thr:total><feedburner:origLink>http://blog.futurecolors.ru/2010/05/blog-post_7574.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-6180190261543881757.post-4798889974367890920</guid><pubDate>Tue, 04 May 2010 11:14:00 +0000</pubDate><atom:updated>2011-04-01T15:35:57.074+04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Избранное</category><category domain="http://www.blogger.com/atom/ns#">django</category><title>Презентация Django</title><description>&lt;p&gt;Вот ещё одна презентация от нашей команды, которая прошла на прошлой неделе. Артём рассказал нам о том, почему так крут python-фреймворк Django.&lt;/p&gt;&lt;br/&gt;&lt;br/&gt;&lt;center&gt;&lt;div style="width:600px" id="__ss_3919346"&gt;&lt;strong style="display:block;margin:12px 0 4px"&gt;&lt;a href="http://www.slideshare.net/Coagulant/django-3919346" title="Введение в Django"&gt;Введение в Django&lt;/a&gt;&lt;/strong&gt;&lt;object id="__sse3919346" width="600" height="500"&gt;&lt;param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=djan-100430083528-phpapp01&amp;stripped_title=django-3919346" /&gt;&lt;param name="allowFullScreen" value="true"/&gt;&lt;param name="allowScriptAccess" value="always"/&gt;&lt;embed name="__sse3919346" src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=djan-100430083528-phpapp01&amp;stripped_title=django-3919346" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="600" height="500"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;/center&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6180190261543881757-4798889974367890920?l=blog.futurecolors.ru' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/futurecolors/~4/-xrjn6HEBRo" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/futurecolors/~3/-xrjn6HEBRo/django_9808.html</link><author>noreply@blogger.com (Илья Барышев)</author><thr:total>0</thr:total><feedburner:origLink>http://blog.futurecolors.ru/2010/05/django_9808.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-6180190261543881757.post-4376775624758771325</guid><pubDate>Fri, 30 Apr 2010 17:30:00 +0000</pubDate><atom:updated>2011-04-01T15:35:35.908+04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Избранное</category><category domain="http://www.blogger.com/atom/ns#">jquery</category><title>Презентация jQuery</title><description>В январе зарелизилась jQuery 1.4 и я сделал короткую презентацию о самой библиотеке внутри нашей студии и для пары гостей, чтобы рассказать, почему это так здорово. В ней я собрал самые интересные факты о новом релизе, возможно, некоторые из них будут вам интересны:&lt;br/&gt;&lt;br/&gt;&lt;center&gt;&lt;div style="width:600px" id="__ss_3931189"&gt;&lt;strong style="display:block;margin:12px 0 4px"&gt;&lt;a href="http://www.slideshare.net/Coagulant/jquery-future-colors" title="Презентация JQuery от Future Colors"&gt;Презентация JQuery от Future Colors&lt;/a&gt;&lt;/strong&gt;&lt;object id="__sse3931189" width="600" height="500"&gt;&lt;param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=jquery-100501121344-phpapp01&amp;stripped_title=jquery-future-colors" /&gt;&lt;param name="allowFullScreen" value="true"/&gt;&lt;param name="allowScriptAccess" value="always"/&gt;&lt;embed name="__sse3931189" src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=jquery-100501121344-phpapp01&amp;stripped_title=jquery-future-colors" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="600" height="500"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;/center&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6180190261543881757-4376775624758771325?l=blog.futurecolors.ru' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/futurecolors/~4/svq7-f-QYEU" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/futurecolors/~3/svq7-f-QYEU/jquery_6805.html</link><author>noreply@blogger.com (Илья Барышев)</author><thr:total>0</thr:total><feedburner:origLink>http://blog.futurecolors.ru/2010/04/jquery_6805.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-6180190261543881757.post-719243013005249571</guid><pubDate>Fri, 23 Apr 2010 17:53:00 +0000</pubDate><atom:updated>2011-04-01T12:55:39.876+04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Банкоматор</category><title>Как встроить Банкоматор к себе на сайт?</title><description>Новости от нашего проекта &lt;a href="http://bankomator.ru"&gt;Банкоматор&lt;/a&gt;:&lt;br/&gt;&lt;ul&gt;&lt;br/&gt;	&lt;li&gt;мы добавили ещё три крупных банка (это &lt;a href="http://bankomator.ru/y/#lat=55.741046&amp;amp;lng=37.60561&amp;amp;z=11&amp;amp;banks=13"&gt;Росбанк&lt;/a&gt;, &lt;a href="http://bankomator.ru/y/#lat=55.741046&amp;amp;lng=37.60561&amp;amp;z=11&amp;amp;banks=14"&gt;Уралсиб&lt;/a&gt; и &lt;a href="http://bankomator.ru/y/#lat=55.741046&amp;amp;lng=37.60561&amp;amp;z=11&amp;amp;banks=11"&gt;Газпром&lt;/a&gt;);&lt;/li&gt;&lt;br/&gt;	&lt;li&gt;&lt;strong&gt;появилась возможность встраивать Банкоматор на ваш сайт&lt;/strong&gt;&lt;/li&gt;&lt;br/&gt;	&lt;li&gt;геолокация для Яндекс.Карт (для браузеров, которые поддерживают эту фичу)&lt;/li&gt;&lt;br/&gt;	&lt;li&gt;теперь видно, сколько автоматов у банка, если подвести мышку к его названию;&lt;/li&gt;&lt;br/&gt;	&lt;li&gt;починили несколько минорных ошибок, на которые жаловались наши пользователи.&lt;/li&gt;&lt;br/&gt;&lt;/ul&gt;&lt;br/&gt;&lt;br/&gt;На следующей неделе ожидается появление новой порции банкоматов и некоторых новых фич. Следите за новостями.&lt;br/&gt;&lt;br/&gt;&lt;h4&gt;Как же встроить Банкоматор к себе на сайт?&lt;/h4&gt;&lt;br/&gt;&lt;p&gt;Очень легко. Надо &lt;a href="http://bankomator.ru"&gt;зайти на сайт&lt;/a&gt;, открыть нужный фрагмент карты, выбрать в фильтре тот банк, что вам нужен и просто скопировать URL из адресной строки в тег &amp;lt;iframe&amp;gt; на вашем сайте.&lt;/p&gt;&lt;br/&gt;&lt;p&gt;Например, вот так можно поместить у себя на сайте карту Райффайзена:&lt;/p&gt;&lt;br/&gt;&lt;code&gt;&amp;lt;iframe src="http://bankomator.ru/#lat=55.760022&amp;lng=37.604236&amp;z=12&amp;banks=5" width="600" height="500"&amp;gt;&lt;/code&gt;&lt;br/&gt;&lt;br/&gt;&lt;iframe src="http://bankomator.ru/#lat=55.760022&amp;lng=37.604236&amp;z=12&amp;banks=5" width="600" height="500"&gt;&lt;/iframe&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6180190261543881757-719243013005249571?l=blog.futurecolors.ru' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/futurecolors/~4/E0Asz3QKkuA" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/futurecolors/~3/E0Asz3QKkuA/blog-post_5824.html</link><author>noreply@blogger.com (Илья Барышев)</author><thr:total>2</thr:total><feedburner:origLink>http://blog.futurecolors.ru/2010/04/blog-post_5824.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-6180190261543881757.post-7550560753870175195</guid><pubDate>Wed, 07 Apr 2010 14:05:00 +0000</pubDate><atom:updated>2011-04-01T15:35:01.518+04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Яндекс</category><category domain="http://www.blogger.com/atom/ns#">Банкоматор</category><title>Банкоматор перешёл на технологию Яндекс.Карты.HotSpots</title><description>У нас несколько новостей:&lt;br/&gt;&lt;br/&gt;«&lt;a href="http://bankomator.ru" target="_blank"&gt;Банкоматор&lt;/a&gt;» теперь также и на &lt;strong&gt;Яндекс.Картах!&lt;/strong&gt; До сегодняшнего дня проект работал только на Google Maps, которые теперь существуют в качестве альтернативы  (&lt;a href="http://www.futurecolors.ru/blog/2009/08/bankomator-mobile/"&gt;версия для iPhone&lt;/a&gt; работает только на них). Теперь вы можете искать банкоматы и терминалы на любой карте по вкусу :-))&lt;br/&gt;&lt;br/&gt;Вторая новость — сегодня опубликован API модуля хотспотов для Яндекс.Карт. Технология Hotspots позволяет показывать на карте сразу много меток, не испытывая при этом проблем с производительностью в браузере. Размещение большого количества меток обычным способом приводит к тормозам, поэтому до недавнего времени мы отображали на Банкоматоре не более 100 объектов одновременно. Принцип работы хотспотов прост: серверная утилита на основе информации о карте, представленной в виде YMapsML-файла, генерирует набор картинок (тайлов) и скриптов. Картинки образуют собой дополнительный графический слой, накладываемый на карту Яндекса, а для обеспечения интерактивности используется информационный слой (он содержит логику работы с метками).&lt;br/&gt;&lt;br/&gt;Наш проект участвовал в тестировании новой технологии и одним из первых применил её. Благодаря технологии Hotspots, выбирая банк или платёжную систему, пользователь увидит на карте все объекты сразу. Сразу после &lt;a href="http://www.futurecolors.ru/blog/2009/11/zend-framework-bankomator/"&gt;перевода сайта на Zend Framework&lt;/a&gt; мы задумались над расширением географии проекта и над постепенным добавлением терминалов и банкоматов всей страны. Так как наиболее полные карты России у Яндекса, мы решили интегрировать их карты к нам на сайт. &lt;a href="http://www.futurecolors.ru/blog/2009/12/yandex-maps-seminar/"&gt;Вдохновившись открывающимися перспективами развития Yandex Maps API&lt;/a&gt;, мы написали небольшую абстракцию, которая позволила нам легко работать с обоими сервисами карт практически одинаковым образом. После того, как Яндекс предложил нам поучаствовать в тестировании нового способа отображения меток на карте, мы решили сразу же внедрить его, так как он более удобен и нагляден. Надеемся, вы оцените все преимущества новой технологии.&lt;br/&gt;&lt;br/&gt;Кроме того, мы полностью обновили базу по терминалам и банкоматам, теперь она самая полная и актуальная.&lt;br/&gt;&lt;br/&gt;Ну и напоследок — у Банкоматора теперь есть &lt;a href="http://twitter.com/bankomator/" target="_blank"&gt;твиттер&lt;/a&gt;. Там мы будем принимать от вас пожелания и сообщения об ошибках, а также обещаем писать о нововведениях проекта.&lt;br/&gt;&lt;p style="text-align: center;"&gt;&lt;a href="http://bankomator.ru" target="_blank"&gt;&lt;img class="size-full wp-image-668 aligncenter" title="Банкоматор на Яндекс.Картах" src="http://www.futurecolors.ru/blog/wp-content/uploads/2010/04/bankopost1.jpg" alt="bankopost" width="600" height="429" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6180190261543881757-7550560753870175195?l=blog.futurecolors.ru' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/futurecolors/~4/JVc9LblI_So" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/futurecolors/~3/JVc9LblI_So/hotspots_1572.html</link><author>noreply@blogger.com (Голиков Артём)</author><thr:total>2</thr:total><feedburner:origLink>http://blog.futurecolors.ru/2010/04/hotspots_1572.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-6180190261543881757.post-5230920466410737684</guid><pubDate>Tue, 09 Mar 2010 11:54:00 +0000</pubDate><atom:updated>2011-04-01T15:34:35.726+04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Новости</category><category domain="http://www.blogger.com/atom/ns#">jquery</category><title>Шпаргалка по API jQuery 1.4.2</title><description>&lt;p&gt;&lt;a href="http://futurecolors.ru/jquery/"&gt;&lt;img class="alignnone size-full wp-image-610" title="jquery_1_4_cheat_sheet" src="http://www.futurecolors.ru/blog/wp-content/uploads/2010/01/jquery_1_4_cheat_sheet.jpg" alt="jquery_1_4_cheat_sheet" width="281" height="61" /&gt;&lt;/a&gt;&lt;br /&gt;14 января мы представили &lt;a href="http://futurecolors.ru/jquery/"&gt;шпаргалку по jQuery 1.4&lt;/a&gt;. C тех пор уже успели выйти версии 1.4.1 и 1.4.2, добавились новые функции и мы обновили нашу шпаргалку. Также учли некоторые из пожеланий пользователей. Что нового:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Добавлены новые функции;&lt;/li&gt;&lt;li&gt;При наведении на имя метода или свойства всплывает подсказка.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Напоминаем, шпаргалку можно:&lt;/p&gt;&lt;ol&gt;&lt;li&gt;Смотреть в &lt;a href="http://futurecolors.ru/jquery/"&gt;online-варианте&lt;/a&gt; с ссылками на описание каждой функции на сайте официальной документации&lt;br/&gt;&lt;br/&gt;&lt;a href="http://futurecolors.ru/jquery/"&gt;&lt;img src="http://www.futurecolors.ru/blog/wp-content/uploads/2010/03/post.png" /&gt;&lt;/a&gt;&lt;br/&gt;&lt;br&gt;&amp;nbsp;&lt;/li&gt;&lt;li&gt;Распечатать в &lt;a href="http://futurecolors.ru/jquery/jquery.cheatsheet.1.4.pdf"&gt;PDF-варианте&lt;/a&gt; или &lt;a href="http://futurecolors.ru/jquery/jquery.cheatsheet.1.4.png"&gt;PNG-варианте&lt;/a&gt;, которые также были обновлены.&lt;/li&gt;&lt;/ol&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6180190261543881757-5230920466410737684?l=blog.futurecolors.ru' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/futurecolors/~4/8oIhCq1jguY" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/futurecolors/~3/8oIhCq1jguY/api-jquery-142_1364.html</link><author>noreply@blogger.com (Голиков Артём)</author><thr:total>1</thr:total><feedburner:origLink>http://blog.futurecolors.ru/2010/03/api-jquery-142_1364.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-6180190261543881757.post-7967062530080784601</guid><pubDate>Fri, 26 Feb 2010 14:32:00 +0000</pubDate><atom:updated>2011-04-01T13:03:01.284+04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Новости</category><category domain="http://www.blogger.com/atom/ns#">Яндекс</category><title>Когда не стоит отговаривать</title><description>За последние три года лично я потерял трех друзей. Трех коллег. Все трое были привлечены лично мной в компанию, где я работал.&lt;br/&gt;&lt;br/&gt;Первый ушел программистом в Яндекс. Группа поиска.&lt;br/&gt;&lt;br/&gt;Второй, спустя полтора-два года, доделав необходимые дела, ушел...программистом в Яндекс!&lt;br/&gt;&lt;br/&gt;И третьего, дизайнера, буквально на днях, забрали...в Яндекс, представляете?!&lt;br/&gt;&lt;br/&gt;Проблема даже не в том, что мы остались без ценных кадров. Проблема в том, что мы даже не пытались их отговаривать. Будь это любая другая компания, мы бы наверняка постарались сохранить сотрудников. Но с таким очевидным счастьем, как Яндекс, трудно конкурировать. Он воспринимается как идеал. И, отговаривая, ты тем самым врешь, преследуя свои интересы,  теряя последнее хорошее к себе отношение. Поэтому, к сожалению, это как раз тот случай, когда не стоит отговаривать вообще.&lt;br/&gt;&lt;br/&gt;Мы желаем всем ушедшим в Яндекс сотрудникам обрести себя и воплотить все идеи в жизнь, а наши двери всегда для вас открыты, что бы ни случилось.&lt;br/&gt;&lt;br/&gt;Яндекс! Возьмите нас к себе в качестве hr-службы. Получается, мы кузница кадров для вас. Сами того не желая.&lt;br/&gt;&lt;br/&gt;Тенденция говорит о том, что лет за 10 все наши к вам переберутся. Посмотрим, время покажет.&lt;br/&gt;&lt;br/&gt;А пока что, Гарик, Сережа и Хим, удачи вам еще раз. Давайте, чуваки, перетягивайте нас к себе :)&lt;br/&gt;&lt;br/&gt;P.S. Да, вполне логично, что теперь у нас открыта вакансия дизайнера\иллюстратора\проектировщика интерфейсов.&lt;br/&gt;&lt;br/&gt;Присылайте свое портфолио на &lt;a href="mailto:info@futurecolors.ru"&gt;info@futurecolors.ru&lt;/a&gt;, а также от вас хотелось бы в качестве тестового задания услышать предложения по оптимизации интерфейса &lt;a href="http://spokoino.ru"&gt;spokoino.ru&lt;/a&gt;, возможно, даже, какие-то наброски.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6180190261543881757-7967062530080784601?l=blog.futurecolors.ru' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/futurecolors/~4/AuqFI6uNhL0" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/futurecolors/~3/AuqFI6uNhL0/blog-post_622.html</link><author>noreply@blogger.com (Future Colors)</author><thr:total>8</thr:total><feedburner:origLink>http://blog.futurecolors.ru/2010/02/blog-post_622.html</feedburner:origLink></item></channel></rss>

