четверг, 28 июня 2007 г.

Очередная попытка подружиться с Eclipse.

Попытки подружиться с этой замечательной средой разработки происходили давно. Каждый раз я пытался поставить Eclipse в результате обнаружения очередной фичи, которая в нём реализована. Это были три проекта IDE для php на основе Eclipse:

  1. PHP IDE
  2. PDT Project
  3. PHP Eclipse

Но ни один даже близко не подошел к Zend Studio. А именно этот редактор можно рассматривать как идеал. Хотя он заставляет лениться.

Есть ещё Aptana, но она больше подходит для HTML/JavaScript, что не является моим основным профилем.

Но вот начав изучать DoJo, я решил опробовать активно продвигаемый AJAX Toolkit Framework (ATF), который был создан всем миром для продвижения AJAX. И начались мучения со сборкой. В принципе, насколько я помню, я всегда собирал Eclipse по кускам где-то в течение дня, а потом забивал, и качал откуда-нибудь готовый проект. Уже собраный.

Но вот беда. Для ATF нет такого проекта. Поэтому надо все собирать самому. Не смотря на все Callisto и прочие фенечки обновлений, установить ATF спокойно не получилось. Он зависел от WTP, который совсем не WTS. Что характерно. Потом после чистки всего Eclipse, когда я уже запутался, что устанавливал, а что нет, оказалось, что я снес больше, чем надо, поэтому пришлось по кускам выковыривать URL фабрик обновлений для.

Пожалуй, хватит.

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

Однако, я не собираюсь расставаться с Eclipse. Потому что на главном сайте тикают часики до выхода новой версии, которая будет включать в себя 21 пакет. Они будут аккуратно подогнаны друг к другу. Может быть с Eclipse Europe мне повезёт больше ;)

пятница, 22 июня 2007 г.

Разработка сайта с использованием Subversion

Давно уже я хотел освоить svn и применить его в своих проектах. Да все не было идеи как же это сделать. Цикл разработки софта с использованием subversion был мне понятен. Однако четкого осознания как применять его в вебе не было. Однако, всё постижимо, и теперь я имею представление о цикле разработки.

Вот что получилось:

  1. Предположим, что хостинг у нас есть. И доступ к нему тоже есть, хотя бы и по FTP.
  2. Создаем репозиторий на любом компе. Если веб-сервера свои, то можно рядышком поставить ещё svn-сервер, а можно и на веб-сервере его развернуть. Но это будет ещё не скоро, поэтому сгодится любой комп, хоть даже и тот, на котором кодим. Не суть важно.
  3. Импортируем репозиторий на разработческую машину. Причем на этом же компе стоит весь необходимый софт, типа Apache, MySQL, PHP. Желательно версиями совпадающий с теми, что на хостинге.
  4. Вносим правки, тестируем. Тестировать надо не копию в репозитории, а локальную, чтобы правки вносить пачками, а не по одной строчке.
  5. Импортируем нашу протестированную и отлаженную копию в репозиторий, сопроводив её комментариями.
  6. Заливаем на веб-сервер.

Есть в этом сценарии ряд нюансов. С которыми я ещё до конца не определился.

  1. В какой среде будем разрабатывать. Есть Eclipse. В нём реализована поддержка svn. Если привыкну к нему, он и будет. Если не привыкну, тогда придётся подыскивать какое-нибудь средство для общения с репозиторием. Можно и из bash.
  2. Как заливать на веб-сервер. В идеале, должно быть инкрементальное копирование файлов. Но для этого, заливку надо запускать на веб-сервере. Т.е. на нем давать команду svn update. А для этого, нужен внешний IP для svn-сервера. А это расходы, которые пока хочется нивелировать. Следовательно, придется делать полное копирование. Для эти целей надо будет написать скрипт, который будет:
    • заходить на хостинг
    • скачивать все файлы
    • складывать их в архив на локальной машине
    • удалять их с хостинга
    • заливать на него копию из репозитория посредством svn export.

Вот такие пироги. Буду держать этот пост в тонусе при осуществлении изложенных здесь замыслов. Возможно, всё изменится ;)

четверг, 21 июня 2007 г.

Мои "must have" расширения для FireFox

Для работы

  • Web developer - первый и главный. Без него разработка html+css двигалась медленнее (project page).
  • FireBug - второй, но не менее главный. Без него отладка ajax-приложений и всего, что завязано на javaScript была труднее (project page).
  • Html Validator - проверка валидности страниц (project page)
  • IE Tab - если работать в Windows, то очень полезен (project page).
  • Tamper Data - просмотр отсылаемых запросов и заголовков в реально времени. С возможностью подмены ;) (project page)
  • YSlow - расширение для FireBug (именно), позволяющее контролировать выполнение 13 правил разработки JS от Yahoo (project page)
  • Firecookie - ещё один плагин для FireBug, позволяющий отслеживать и менять печеньки. В принципе, ту же функциональность предоставляет Web Developer, но здесь чуть удобнее реализовано (project page).

Не для работы

  • Gmail Manager - проверять гмэйл (project page).
  • Google Reader Wathcer - проверять ленту от Google (project page)
  • del.icio.us - закладки с одноименного сайта (project page).
  • Session Manager - сохранение всех вкладок, открытых в FF и прочие удобства.

Первая запись, или зачем я завел себе блог.

Долгое время я не не поддавался эпидемии блоггерства и лайвЖорналства, считая их производной формой графоманства.

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

А этот блог я завел исключительно для себя. Точнее для своего склероза, чтобы ему было сложнее жить.

Дело в том, что довольно часто, почитывая какую-то литературу, приходишь к мысли, что неплохо было бы задокументировать полученную информацию. Делать это на листочках TomBoy'я или заводить себе локальную wiki не хочется.

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

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