bash.im ithappens.me zadolba.li

Веб-разработка

2426

Потёмкинские пасеки

Я веб-разработчик, сейчас работаю на небольшом проекте средней фирмочки. Согласно договору клиент должен предоставить свёрстанный дизайн — верстальщиков у нас нет. Во время одного митинга он упоминает, что собирается прислать нам PSD-шки. Когда разговор заходит о том, что мы так не договаривались, человек с абсолютно спокойным лицом заявляет, что лично не видит разницы, но если нам существенно, он что-нибудь придумает. По прошествии часа приходит письмо с «дизайном». В дизайне — HTML-файл и одна картинка. Тело HTML состоит из единственного <img>. Все дружно выпадаем в осадок.

По прошествии некоторого времени и разбирательств он всё-таки присылает свёрстанный дизайн. Идет разработка, и в один прекрасный день клиент выдает:

— Я тут посадил джуниора, он за два дня наколбасил больше, чем ваши хваленые сеньоры за три недели!

Присылает ссылку: тот самый дизайн, никакой функциональности, и только картинки из техзадания вставлены... Мораль истории: проект следует начинать с UI. Пофиг пчёлы, пофиг мёд, главное — пасека стоит.

2383

Национальные семантические тонкости

Делали сайт для городской строительной компании. Показываем прототип: флеш, RSS, бегущая статистика с данными из базы данных — как в лучших домах. Один из клиентов даёт свою оценку:

— Красиво, но мне не совсем понятно, зачем.

Другой уточняет:

— Да нет, как раз понятно, зачем. Вопрос: на х@я?!

2347

Полцарства за клик

Сайт студии веб-дизайна. Понятно, что нужно как-то выделяться из конкурентов именно в веб-дизайне. Почесали мы с ребятами репу и сделали: первая страница — логотип в центре экрана, при наведении на который выскакивают всякие менюшки, и сайт оживает. Красота нечеловеческая.

Возникла проблема: открыв сайт с одной картинкой в середине, незадачливый пользователь не наводит никуда мышку, а закрывает его к чертям. Соотношение хитов главной страницы к хитам внутренних составляло 200:1.

Взяли думательной жидкости и пару бубнов, посмекали. Решили, пусть логотип будет на очевидной кнопке. Какой русский откажет себе в удовольствии жмякнуть по кнопке? В чём-то помогло — 70:1.

Ну не вставлять же туда мигающий баннер «Click me»! Сделали кнопку слегка мерцающей. Блестящий предмет привлек внимание части пользователей — 40:1.

Чудеса веб-шаманства: фон пульсирует сходящимися к кнопке кругами. Кнопку сделали здоровой, чтобы не промазали. 30:1.

Сидели, посыпали голову пеплом. На помощь пришел здравый ум офисной блондинки. Она, правда, брюнетка, но в Питер приехала поступать и не поступила, шифт от альта отличает плохо, а работает курьером на полставки, так что в образ вписывается. «Ребят, да напишите вы им, чего делать надо!»

Закопаться на месте не получилось, потому что полы бетонные — пришлось ссылаться на «горе от ума». Неделя экспериментов выдала шедевр юзабилити и минимализма. Все навороты в топку; в левом верхнем углу экрана осталось одинокое «Для начала работы наведите мышь на æ (знак на логотипе)». 7:1, а это для сайта с «голой мордой» лучше, чем отлично.

Видно, «мелкомягкие» своё «Начните работу с нажатия этой кнопки» тоже потом и кровью вырабатывали.

2299

Стыд && срам

Работаю web-программистом. Достался мне как-то проект на сопровождение, который представлял из себя форум phpBB 3 с двумя достаточно объёмными модулями. Сами модули были написаны предельно аккуратно, с использованием всех возможных стандартов и правил: XHTML, MVC, «верблюжья» нотация, адекватно названые переменные. Я искренне порадовался, что на PHP пишут не только быдлокодеры.

Однако факт крайне плотного взаимодействия с phpBB (в том числе использование его механизмов отображения представлений) накладывал некоторые ограничения на стандартизацию. Думаю, это и стало причиной появления следующих строчек, найденных мной в одном из представлений внутри тега <body>:

<!-- Стыд -->
<link rel="stylesheet" href="{T_TEMPLATE_PATH}/js/datepick/humanity.datepick.css" />
<script type="text/javascript" src="{T_TEMPLATE_PATH}/js/datepick/jquery.datepick.pack.js"></script>
<script type="text/javascript" src="{T_TEMPLATE_PATH}/js/datepick/jquery.datepick-ru.js"></script>
<!-- Конец стыда -->

2196

Держи себя в рамках

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

Снится мне ночью, что я — Яндекс.Баннер с непрорисованными видимыми границами. В таком виде я, понятное дело, не пройду модерацию. Срочно нужно на редактирование: границы рисовать!

С трудом выдираюсь из рук спящего парня, откатываюсь в сторону и окончательно просыпаюсь. Ё-моё...

2191

Клиенты за открытые стандарты

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

Работал я тогда в конторе, которая постулировала следующую бизнес-идею: «Мы — сетевой „Макдональдс“!» То есть, быстро, дёшево и отвратительно. Свою нишу компания заняла крепко — всегда найдутся те, кто хочет разменять рубль сторублёвками. На все случаи жизни использовался набор «очумелые скрипты»: админка средней кривизны и подборка цельнотянутых халявных и не очень шаблонов. В офисе сидели один дизайнер, три верстальщика, три менеджера и директор. Последний знал такие внушительные термины, как «юзабилити» и «вебдваноль», умело оперировал бизнес-моделью «мы им это продадим, а когда попросят убрать — потребуем денег», да и вообще был редкостным душкой.

Получили заказ на сайт, в шаблоне которого используется анимированная «шапка» — естественно, на флеше. Кнопки подписывались через TXT-файл, который флешка читала при загрузке. Кириллицу подлый мультимедиа-объект признавать за текст не хотел — пришлось курочить исходник вручную, что для меня, на тот момент не имевшего дела с флешем вообще, было чуть сложнее, чем абсолютно невыполнимо. Плюс еще размеры кнопок и пути их миграции по «шапке» пришлось править, потому что разнесло там всё, как гуся к Рождеству. В итоге результатом был доволен даже директор — редкий случай!

Заливаем сайт на хостинг, предлагаем клиенту оценить — недоволен. Что, говорит, за ерунда? Где кнопочки? Я, мол, не за это вам целых две тысячи денег отдал! Оказалось, у товарища не был установлен флеш-плагин для браузера. Плагин он ставить отказывался — видите ли, всё должно работать и так. Пришлось делать скриншот «шапки», резать его на кнопки и в таком виде запихивать в тело сайта. Директор очень, помню, ворчал, что денег за это с клиента вытрясти не удалось. А через неделю я уволился.

2171

Админ — всему голова

Сдаём сайт крупному заказчику. Общаюсь в основном с начальником отдела IT, ему же на почту отравляю готовый сайт целиком. Параллельно судьба пару раз сводила меня с их весьма весёлым и разговорчивым сисадмином. Через три дня после отправки сайта пишет мне письмо этот самый сисадмин:

Вы бы, когда нашему безголовому отдавали архив, сказали бы хоть, какие модули в PHP необходимы (кроме MySQL — и так понятно). А то ползать по всем закоулкам, вычисляя по ошибкам, что используется, и каждый раз перекомпилировать PHP как-то напрягает.

Вот и думай, кто кому начальник.

2156

В красивой обёртке

Клиент принёс JPEG-картинку и попросил сделать флешовый баннер. Заплатил достаточно немаленькую сумму — баннер стоит дешевле, но цену предложил он сам, а мы согласились.

Отработали на полную катушку: дизайнер двое суток восстанавливал фотошопом исходник, флешер всё это дело анимировал. Отправили клиенту, приходит ответ: работа, мол, говно, не нравится. Спрашиваем, что не так.

— Мультики эти ваши тут нафиг не нужны. Надо, чтобы картинка висела как есть, спокойно, и нажималась с переходом на страницу.

Повесили картинку в ссылке. Всё нравится, но клиент недоволен: по условию задачи баннер должен быть флешовый. Зачем? Опять цитата:

— Графический баннер — прошлый век. Делайте флеш.

За пару минут одним слоем в флешку положили картинку, верхним — прозрачную кнопку, которая отправляла на нужную страницу. Клиент работу принял.

2155

Прозрачная метафора

Как-то попросили написать сайтик — дело нехитрое. Иконки и прочие элементы я рисовал сам. Заработался в один из дней, и голова перестала варить. В тот момент я как раз писал админку сайта. Нужно было добавить ссылку, переключающую видимость определённого раздела сайта. Ссылку решено было сделать в виде картинки. Всё готово, проверяю — нет картинки на месте. Еще раз проверил — пусто! Плюнул на всё и лег спать.

С утра стало очевидно, что дело в ночной логике: раз картинка управляет невидимостью элемента, то и должна быть выполнена в виде полностью прозрачной PNG.