28 5 / 2011

REDMINE > 2 месяца, полет нормальный

«Само по себе хорошо не бывает,
само по себе бывает только плохо».
Андрей Жинжер

Теперь можно сказать с уверенностью, что мой проект по внедрению системы управления проектами Redmine оказался успешным. Успешным даже более, чем я мог себе представить. 

С некоторых пор одной диаграммы Ганта и полуонлайнового прожект-менеджера для управления проектами стало не хватать. Специфика создания программных продуктов, в частности веб-ресурсов, заключается в постоянной необходимости проведения мелких ошибок и доработок, багов. Любой проект (подпроект) обрастает ими как сентябрьская яблоня в урожайный год.

Они могут быть как самодостаточными, когда от них не зависят остальные баги и задачи, так и достаточно серьезными, когда от них могут зависеть подпроекты и даже проекты, в  целом. Для обработки подобных задач есть специальные менеджеры под названием баг-трекеры.

Redmine — почти единственный прожект-менеджер с хорошим встроенным баг-трекером. Сама программа — серверное приложение на «рельсе», фреймворке Rubi on Rails.

Естественно, пришлось повозится, но результат уже двухмесячного использования вполне меня устраивает, мы перевели на его управление все самые сложные и ответственные проекты.

Вы можете задать мне вопросы по его использованию,
пишите на ginger {на} gingerwebsolutions.com 

12 5 / 2011

Постпродакшн фотосессий для FORBES Russia

FORBES ставит наши иллюстрации без правок, настолько качественный у нас постпродакшн.

http://sofyasukhova.ru/portfolio/items/items-drinks.html#

12 5 / 2011

Брендирование автопарка «Такси ритм»

Скоро на www.gingerwebslutions.com

12 5 / 2011

Новая фотосессия для Антона Винера

 

Новая фотосессия всех блюд сети кафе Антона Винера «Урюк». Более 100 блюд, более 1000 снимков. Скоро на www.gingerwebsolutions.com

11 1 / 2011

Мы родили искусственный интеллект :)

Процесс подгрузки логотипа (и еще кое-какой корректировки форматирования внешнего вида) в нашем новом проекте (в зависимости от платформы, браузера и разрешения клиентского монитора) доведен до состояния искусственного интеллекта :)

Страшное дело: логика стала пугающе самостоятельной.

OMFG!

11 1 / 2011

Как посмотреть сайт в нашем «любимом» IE6?

Существует масса сервисов для просмотра, создания скриншотов в различных браузерах. Они стараются произвести на молодых веб-разработчиков впечатление количеством доступных браузеров и функций.

Я считаю, что в идеале браузер должен запускаться на машине. Да, именно запускаться, а не эмулироваться какими то «умными» способами. Вам нужен в чистом виде оригинальный 6-й «осел» со всеми его «коленцами».

Как же можно запустить IE6, когда у вас уже снабдили на платформе Windows IE7 как минимум? (Если я не ошибаюсь, то начиная с Win XP SP3 Microsoft, поплевывая свысока на дух антимонопольного законодательства, вруливает свое браузеро-чудовище 7-й версии.)

Был такой проект Xenocode, там предлагалось скачать исполняемый файл, который запускал на вашей машине любую версию IE, не зависимо от установленной.

Теперь проект закрыт, стоит редирект на другой сайт с другими приложениями. Браузеры там тоже есть, но старых нет.

Но не все так плохо. Специально для вас я сохранил этот милый файлик http://www.megaupload.com/?d=B8YIG66N Всего 13 метров.

Это хорошее решение, правда, с кешем не всегда у него здорово, для таких случаев есть решение от производителя под названием Microsoft Expression SuperPreview.

Бесплатно можно скачать только пробную версию (вы то, наверно, думали, что Microsoft будет бесплатно помогать вам вылавливать баги своего уродского детеныша? Как бы не так!).

Удачи :)

03 1 / 2011

Примеры кода редиректа для iPad, iPhone и Blackberry

Для ифона и ипада вместе:

<script type=“text/javascript”> if ((navigator.userAgent.indexOf(‘iPhone’) != -1) || (navigator.userAgent.indexOf(‘iPod’) != -1)) { document.location = “http://www.scottrockers.com/iphone.html”; }</script>

Токма для ипада:

<script type=“text/javascript”> if ( (navigator.userAgent.indexOf(‘iPad’) != -1)) { document.location = “http://www.scottrockers.com/iphone.html”; }</script>

Для мобильных устройств на BlackBerry:

<script type=“text/javascript”> if ((navigator.userAgent.indexOf(‘BlackBerry’) != -1) ) { document.location = “http://www.yourwebsitename.com/yourwebpagename.html”; }</script>

Источник мыслей

03 1 / 2011

Дело Internet Explorer 6 цветет и пахнет: iPad как новый источник головной боли от Apple

источник фото

«Паны дерутся, а у холопов чубы трещат.»
Украинская поговорка.


Исключительно для удобства своих пользователей компания Apple решила прекратить поддержку технологии Flash от Adobe. Стив не хочет пускать на свой рынок мобильных приложений чужаков. Это вполне понятно.

Не понятно другое: как могла компания позиционирующая себя Большим Другом в одночасье послать в жопу всех своих пользователей? Ведь на flash сделана большая часть анимации в интернете, это основной инструмент внедрения видео в HTML. 

Стива не очень заботит как будут решать эти проблемы люди с «яблочными» мобильными устройствами, главное — БАБЛО.

Куда же делась вся клиентоориентированность, забота о покупателях? Оказывается, что все это ложь, прикрытие беспринципной алчности Apple.

Мало нам аудитории, снабженной усилиями Microsoft браузером 10-летней давности, так еще и Apple снабжает аудиторию своими кривыми поделками. Скоро придется писать по 5 версий каждого сайта: для неандертальцев с IE6, для прогрессивной «яблочной» общественности с iPad, парочку мобильных версий для всех операционок и одну версию для «нормальных» современных браузеров.

03 1 / 2011

Как расположить горизонтально CSS-кнопки?

А в чем вопрос? Любой HTML+CSS верстальщик превосходно знает, что для того чтобы расположить элементы горизонтально есть, как минимум, решение базирующееся на создании списка 

<ul>

  <li>

  item1

  </li>

  <li>

  item2

  </li>

  <li>

  item3

  </li>

</ul>

Извините, это не WordPress и подсветки цитат кода в Тумблере нет; он даже табуляции не показывает :( 

Потом список упаковывается в div со следующим определением горизонтального расположения элементов списка (в данном случае я использую селектор smartnav):

#smartnav ul li {

display:inline-block; 

}

Вопрос решен. Да. А если вам надо горизонтально вывести CSS-кнопки у которых при наведении должен меняться фон? Фон кнопки больше фона текстовой ссылки и для его отображения необходимо использовать определение display: block, т.е. делать из нее кнопку с фоном.

Но у нас уже есть display:inline-block за счет которого наши кнопки выстраиваются горизонтально. Что делать?

Достаточно добавить «прокладку» в виде span, заключив в нее текст ссылки. Определить display:block для span, оставив display:inline-block для элемента списка li

В итоге получим:

#smartnav {

 /*здесь вы задаете форматирование всего блока с кнопками*/

}

#smartnav ul li {

display:inline-block; /*определение вывода кнопок горизонтально через элементы списка*/

}

#smartnav ul li span a:link, #smartnav ul li span a:visited {

display:block; /*определение вывода ссылок блоком*/

background-image: url(img/index/smart-nav-bg-regular.gif); /* фон без наведения указателя мыши*/

}

#smartnav ul li span a:hover, #smartnav ul li span a:active {

background-image: url(img/index/smart-nav-bg-over.gif); 

/* фон при наведении указателя мыши*/

}

Чтобы вас не грузить я опустил в листинге определения не имеющие отношения к теме.

31 12 / 2010

Красота по-итальянски или рекламная кампания Acqua di gioia на GiorgioArmaniBeauty.com

Выше приведен скриншот рекламной кампании с  сайта http://www.giorgioarmanibeauty.com на мониторе с разрешением 1280х1024 пикселя. Браузер Google ChromePlus 1.5.1.1

Черная полоса внизу не элемент дизайна, а просто фоновая картинка, которую поленились подгрузить в соответствующем разрешении. В итоге лично мне совершенно не ясно за что платились деньги людям, создававшим этот сайт.

Понятно, что подгружать фоновые картинки исходя из разрешения монитора это головная боль. Для того, чтобы максимально качественно это сделать придется грузить разные картинки для разных групп форматов и размеров мониторов. Но это если вы, действительно, хотите все сделать на высшем уровне (например как у Суховой http://sofyasukhova.ru/) чтобы иллюстрации не «пикселили» и смотрелись пропорционально.

А если просто надо слобать что то, то достаточно влепить фоновую картинку низкого разрешения и фиксированного размера как сделали авторы сайта рекламной кампании Armani.

Не понятно зачем тратить столько денег на ролик чтобы потом его показывать таким образом.

p.s. Я уж не говорю что на иллюстрации у модели совершенно не естественная поза: такое ощущение, что ей свернули голову, а потом сфотографировали труп.