Как я делал buyrealty.su

buyrealty.su

buyrealty.su

Решил рассказать, о том какие проекты/сайты мне приходилось делать и что было интересного в процессе разработки.

Начну, пожалуй, с проекта http://www.buyrealty.su/ — ничего особенного, простой каталог объектов недвижимости.

Изначально заказчик (мой хороший товарищ) обратился ко мне с просьбой просто сменить дизайн сайта. «Нет ничего проще !» — подумал я и немедленно согласился.

Однако, после того, как я взглянул на код, с которым предстояло работать — я был просто в шоке. Может из-за того, что я не представляю себе проекта без использования современного фреймворка (типа Yii или Catalyst), то что я увидел — было похоже на «лапшу», начала 90-х годов. PHP код в перемешку с HTML и JavaScript, обращение к базе данных из всех возможных мест, 1000 инклюдов с версткой и дополнительной логикой — в общем «картина маслом». Я уже не говорю о схеме базы данных.

По хорошему все это нужно было бы переписать, сделать конвертацию базы и т.д. Но как всегда, две проблемы — время и деньги. Я решил изменить только «морду» сайта, а все его внутренности (админка, схема базы данных и т.д.) оставить прежними. По готовой «схеме» базы данных были сгенерированны все необходимые модели Yii. После чего написаны необходимые контроллеры и представления (вьюхи). Новый дизайн прекрасно «лег» на новый «движок» сайта и через некоторое время (все про все заняло около 10 дней свободного от работы времени) портал приобрел новое лицо.

После этого были долгие пляски с mod_rewrite, однако все прошло хорошо и Яндекс успешно переиндексировал сайт с новыми url-адресами.

Не скажу, что я супер-мега программист и что после моих переделок сайт стал быстрее/круче/прикольнее, но то, что он приобрел более четкую архитектуру — это факт. Сайт, по крайней мере его публичную часть, теперь значительно легче поддерживать и если вдруг будет очередная смена дизайна — сделать это будет гораздо проще. Слава MVC!

http://www.buyrealty.su/

Продолжение следует =)

Жаль, что не верстальщик….

Серое, хотя и пятничное утро…Настроения нет…Открываю почту, а там парочка вакансий от HeadHunter.

Вот такие вот нынче зарплаты

Вот такие вот нынче зарплаты

Спасибо тебе hh, развеселил!

Переезд. Мегафон 3G модем. Windows.

Вчера переехали на новую квартиру, потихоньку обживаемся =). После переезда остался я совсем без интернета. Сетевой кабель к квартире подведен, но вот какой провайдер и где договор с ним — хозяйка не знает. Позже обзвоню наших местных провайдеров (хорошо, что их всего 2-3) может и удастся что-нибудь выяснить. А пока купил себе Мегафон 3G модем и выхожу в интернет через него. Скорость работы довольно приличная…пока +). Все про все стоит 850 рублей – сам модем и симкарта + 1100 рублей — ежемесячный платеж за безлимитный доступ (правда после 8 гигабайт скорость падает). Один единственный минус – снова пришлось вернуться на Windows =( Хотя сегодня буду гуглить может и получиться «завести» этот модемчик в Ubuntu. Если есть опыт – делитесь ссылками.

Этапы разработки веб-проекта

Однажды знакомый попросил написать краткий список этапов/стадий разработки веб-проектов.

И вот, что я смог набросать.

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

1. Общение с заказчиком. На этом этапе необходимо выяснить какие цели ставит заказчик, разрабатывая сайт. Это сайт-визитка, промо-сайт или интернет-магазин ? А может корпаративный портал компании или социальная сеть/сообщество?
2. Составить техническое задание для разработчиков и дизайнеров. В техническом задании необходимо как можно подробнее изложить требования к будущему сайту, его структуре, функциональности и дизайну.

На этом этапе не стоит забывать о том, что сайт состоит из двух частей:
- клиентская часть — та часть сайта, с которой взаимоидействует конечный пользователь
- административная часть — часть сайта, доступная сотрудникам компании и лицам, отвечающим за контент (наполнение сайта)
В зависимости от типа сайта сложность реализации той или иной части может меняться.
3. Имея представление о целях сайта, а так же составленное техническое задание — необходимо определиться с платформой для реализации сайта.
Возможны два варианта:
- использовать одну из популярных ЦМС (система управления контентом). Возможны как платные варианты (БИТРИКС, UMI CMS и д.р.), так и совершенно бесплатные альтернативы (WordPress, Drupal, Joomla и д.р.)
- написание сайта с нуля. В этом случае под каждый проект пишется своя мини-цмс учитывающая особенности данного проекта
4. Отрисовка концепции дизайна. На этом этапе дизайнер подготавливает макеты будущих страниц сайта и предоставляет их в одном их графических форматов (png,jpg и т.д.)
5. Разработка структуры и страниц сайта в соответствии с ТЗ и используя возможности инструментария, выбранного на этапе 3.
6. Согласование дизайна. После предоставления дизайнером предварительных макетов страниц — дизайн должен быть согласован и одобрен заказчиком.
7. Верскта страниц сайта. После согласования макетов — верстальщик приступает к верстке сайта.
8. Интеграция дизайна и разработанного сайта. Дизайнер и программист могут работать параллельно, используя информацию, полученную в пунктах 1 и 3. Однако наступает момент, когда плоды их труда необходимо объединить вместе. На этом шаге сайт приобретает практически окончательный свой вид.
9. Тестирование сайта. Очень большой и ответственный этап. Тестирование может включать в себя следующие пункты:
- юзабилити-тестирование (насколько удобно пользователю работать с сайтом?)
- тестирование производительности (как серверной так и клиентской частей)
- тестирование соответствия кода сайта общепринятым стандартам (HTML,CSS)
- совместимость со всеми популярными браузерами
10. Развертывание сайта на площадке, доступной заказчику — с целью продемонстрировать результат.
11. Тестирование сайта заказчиком и выявление недочетов.
12. Исправление недочетов и замечаний.
13. Передача сайта заказчику/развертывание на площадке заказчика.
14. Тестирование работы сайта на площадке заказчика.
15. Обучение/инструктаж ответственного персонала по работе с сайтом.
16. Техническая поддержка и сопровождение сайта.
17. Консультации пользователей и помощь в устранении проблем (если возникнут).

Вот такой список получился у меня, учитывая мои предыдущие проекты и разработки.

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

Планы на лето

Вот и наступило долгожданное лето!

Ухх! Давненько я не писал сюда =)
В этой заметке хочу рассказать о своих планах на данный период и о том, что хочу сделать.

Конечно же летом необходимо отдыхать. И отдыхать как можно больше (что не всегда получается).
24 июня уезжаем с женой на несколько дней в Питер, хотим просто погулять и отвлечься от всех забот.
По приезду из Питера останется еще пару дней отпуска — планируем поехать в деревню, насладится, так сказать, сельской жизнью.

От отдыха переходим к делам насущным =(
На летний период поставил перед собой несколько целей, которые направленны на увеличение  знаний и навыков в нелегком программистском деле:
1 Очень хочу подробней разобраться в новой для себя области — Клиентской оптимизации веб-приложений.  Для ознакомления с данным вопросом выбрал для себя следующие источники информации (вся информация на русском языке):

Книга «Разгони свой сайт»

Книга «Реактивные веб-сайты»

Ресурс webo.in

2 Хочу ознакомится и реализовать простенький проект на Django, а за одно и «пощупать» Python

Для этой цели выбрал следующие ресурсы для ознакомления:

Официальная документация Django

Книга «Django Разработка веб-приложений на PYTHON»

Одна вот из этих книг по Django

3 Хочу активнее взяться за наш проект о достопримечательностях — worldpoi.info (Старший и Вадег — привет! =) )

4 Хочу активнее развивать свой блог о программировании — allframeworks.ru

Хочу, хочу, хочу! Посмотрим, что из этого получится на деле!