Журнал Компьютерра - Журнал «Компьютерра» N 32 от 5 сентября 2006 года
Что же касается классических программ для распределения времени, веб-сервисами не являющихся, то их неплохой сравнительный анализ можно найти на страничкеengtech.wordpress.com/2006/06/17/painless-estimation-evaluated. Блоггер, скрывающийся под псевдонимом engtech, приводит описание подходящих инструментов, начиная от Microsoft Excel и заканчивая продуктом с открытыми исходными кодами ToDo list. Последний и рекомендуется к использованию в том случае, если планирование времени должно осуществляться только на одном компьютере.
Резюме
Если тратить каждый день по несколько минут на поддержание графика в актуальном состоянии, то эти несколько минут окупят себя сторицей. Окупят насыщением и удорожанием времени текущего и разумным сохранением времени будущего. Такая вот получается экономика. Экономика минут.
Автор благодарит Ю. Лифшица и А. Шалыто за помощь при подготовке статьи.
CMS для домохозяек: гонки на выживание
Автор: Андрей Шипилов
Вряд ли найдется хоть один чудак, который бы заказал софтверной фирме разработку текстового редактора для своего офиса. Зачем, когда есть Word? А если Word не устраивает, имеется куча готовых специализированных редакторов на любой вкус. А вот сайты - заказывают.
Хотя на первый взгляд ситуация на этом рынке подобна ситуации на рынке текстовых редакторов. Рынок веб-разработок переполнен так называемыми Content Manager System (CMS), которые позволяют сделать сайт любой сложности, не прибегая к программированию и не зная языка HTML. Большинство CMS являют собой готовые сайты с очень высокой (даже, пожалуй, избыточной) функциональностью, и пользователю надо просто отключить ненужные функции, заполнить сайт своим содержимым и «подключить» свой дизайн. Все это делается через веб-интерфейс, а разработка сайта в среде CMS сопоставима по сложности с разработкой документа в Word.
Появление CMS породило даже новый сектор рынка, который в многочисленных публикациях называют «сайты для домохозяек», имея в виду, что теперь даже обычная домохозяйка, не владеющая высокими технологиями, может запросто сваять сложнейший динамический сайт, разработка которого еще три-четыре года назад обошлась бы в несколько десятков тысяч долларов.
Все это так. Но не так-то все просто.
Здравый смысл подсказывает, что появление массовых CMS должно было бы похоронить рынок веб-разработок или хотя бы сильно изменить его. Однако этого не произошло. Программистские веб-студии продолжают благоденствовать, разве что теперь вместо «программирования сайта» предлагают «разработку сайта на базе CMS», а цены на их услуги не только не падают, а даже растут.
Получается нонсенс. Если CMS настолько упрощают разработку сайтов, то почему веб-студии берут немалые деньги за разработку сайта на их основе? Ведь заказчики - отнюдь не дураки и вряд ли будут платить за то, что могут не напрягаясь сделать сами.
Эпизод первый: постановка задачи
Итак, ставим «следственный эксперимент».
Берем четыре разных CMS и делаем на их основе три разных сайта - самый простенький (для домохозяек), средней сложности, в котором реализованы всякие динамические штучки, и очень сложный, такой, за разработку которого веб-студии обычно берут не меньше десяти тысяч условных единиц.
После небольших раздумий в качестве тестовых было решено взять две бесплатные CMS и две коммерческие.
В качестве бесплатных были выбраны очень популярные Joomla (которая ранее называлась mamba) и Drupal, в качестве платных - две отечественные разработки Twinlight CMS и «Битрикс: управление сайтом», именуемая в просторечии «Битрикс».
С их помощью нам предстоит решить три тестовые задачи.
1. Сделать простенький сайт-визитку для фирмы из десятка статических страничек.
2. Сделать сайт спортивной школы с форумом, рассылками и динамическим содержимым.
3. Сделать сайт о цифровой фотографии портального типа, объединяющий сайт СМИ с каталогом камер, возможностями поиска по разным критериям и сравнения разных элементов каталога.
Эпизод второй: первые жертвы
Увы, две CMS отсеялись на первом же этапе.
Из-за трудности освоения ни Drupal, ни Twinlight CMS не отвечали критерию «для домохозяек» и вообще оказались малопригодны для решения первой задачи.
Drupal, по сути, не столько CMS, сколько инструментарий для профессиональных веб-разработчиков, очень неплохой, но слишком сложный для домохозяек.
С Twinlight CMS все оказалось гораздо интереснее. Несмотря на мой довольно большой опыт веб-разработок, установить систему на сервер мне так и не удалось. Обратившись в техподдержку продавца, я получил ответ, суть которого сводилась к следующему: «если у некоторых покупателей руки растут не оттуда, нечего покупать нашу крутую и замечательную систему». На этом можно было бы закончить, поскольку мое твердое убеждение, что, платя деньги за софт, я в первую очередь плачу за возможность получать от техподдержки советы, а не вежливое хамство.
Однако долг журналиста заставил добиваться того, чтобы все точки над i были расставлены. После трудоемкого исследования Twinlight CMS с привлечением сторонних консультантов выяснилось, что система требует экзотических и тонких настроек веб-сервера Apache и работает без проблем лишь на одном виртуальном хостинге в России - том, что предоставляет сам разработчик CMS.
Этих факторов оказалось достаточно, чтобы и Twinlight CMS сошла с дистанции. В конце концов, я ставлю эксперимент, а не наживаю себе головную боль.
Эпизод третий: первые впечатления
Первое ощущение - полный восторг, аж до поросячьего визга. Система установилась с первой же попытки, и через три минуты я получил готовый, очень сложный динамический сайт с кучей всяких возможностей. Оставалось, отключив лишние опции и настроив оставшиеся, получить то, что нужно.
В стандартную поставку входят следующие модули:
Модуль управления меню.
Модуль управления баннерами.
Модуль управления правами пользователей.
Модули генерации оглавлений.
Модуль статистики.
Модуль, выводящий материалы, тематически связанные с текущей статьей.
Модуль, отображающий случайный контент из заданного списка.
Модуль, отображающий текущих посетителей сайта.
Модуль опросов и голосований.
Визуальный HTML-редактор.
Модуль поиска.
Модуль вывода случайных изображений.
Модуль отображения наиболее популярных материалов.
Модуль архивации старых материалов.
Модули экспорта новостей.
Модуль рассылок.
И многое другое.
Кроме того, с сайта разработчика русского дистрибутива можно скачать множество бесплатных компонентов, таких как форум, галерея фотографий, файловый менеджер и пр.
Проблема с дизайном тоже решается чрезвычайно просто: в Сети лежат тысячи бесплатных шаблонов дизайна для Joomla. Причем установка нового дизайна, подключение-отключение дополнительных модулей и компонентов осуществляются простым нажатием кнопки и не вызовут затруднений даже у домохозяйки.
Однако после первого ознакомления восторг несколько поумерился. Причину этого я бы сформулировал так: перенастройкой готового «установочного» сайта Joomla вы можете без проблем получить сайт нужной вам функциональности и устраивающего вас (в целом) дизайна. Но вы вряд ли сможете получить таким образом сайт, который устраивал бы вас во всех отношениях.
Забегая вперед, приведу в качестве примера ссылочку на наш «тестовый» сайт спортивной школы, который и был реализован на Joomla. В «установочной» версии на первую страницу по умолчанию выводится оглавление последних публикаций. Мне бы хотелось, чтобы вместо оглавления выводился начальный фрагмент «основного» материала о школе. В принципе, подобные переделки в рамках Joomla делаются без всякого программирования, путем нажатия кнопочек, но чтобы понять, как и на что нажимать, надо тщательно изучить логику работы CMS, что совсем непросто. Ибо эта логика сильно отличается от интуитивно понятной логики сайтостроения.
Дело в том, что структура сайта на Joomla - чисто логическая, и тех каталогов, которые отражаются в адресах на сайте, физически не существует. Вся информация хранится только в базе данных, а не в файлах и каталогах, и принципы ее организации понять сразу довольно сложно.
В рамках CMS Joomla вы не можете просто взять и нарисовать нужную страницу, расположив на ней элементы так, как вам нужно. Сначала вы должны указать в шаблоне, в какие области (в Joomla они называются «слоями») страницы будет выводиться та или иная информация, а потом организовать вывод туда информации из базы данных.
Дело усложняется еще и тем, что подробная и внятная русскоязычная документация по этой CMS отсутствует. Утешает лишь, что Joomla - open source-система, и существует огромное количество форумов «любительской» поддержки, где можно задавать вопросы и надеяться, что на них ответят.