Новый календарь для GNOME 3 - California
Компания Yorba по многочисленным просьбам представила приложение California [скриншот], призванное заменить стандартный календарь GNOME. В основе нового календаря лежат те же принципы, что и в разрабатываемом этой же компанией почтовом клиенте Geary:
простота настройки; скорость работы; выполнение лишь прямых функций календаря; гибкость для подстройки под конкретного пользователя. В качестве бэкенда для всех операций, связанных с календарём, используется Evolution Data Server (EDS), однако, код написан с учётом возможности подключения альтернативных движков, (к примеру, GData), которые впоследствии будут добавляться плагинами. Дизайнеры старались использовать самые современные виджеты GTK, включая GtkHeaderBar. Многие функции ещё не реализованы, работа над программой кипит.
Дополнительная информация размещена на домашней странице California. В багзилле будут рады сообщениям об ошибках. Настоящее и будущее программы обсуждается в списке рассылок.
В ближайших планах: реализовать добавление и удаление подписок на сетевые календари (Календарь Google или сервер CalDAV), поскольку в текущий момент для этого необходим какой-либо другой клиент EDS (например, Evolution); обеспечить более тесное взаимодействие между California и почтовым клиентом Geary.
Кроме того, разработчики ответили на один из самых популярных вопросов: отчего нужно было создавать новый календарь, вместо того, чтобы дорабатывать Календарь GNOME?
Во-первых, (несмотря на весь шовинизм подобного заявления) стандартный календарь написан на языке С, а это не тот язык, за которым будущее разработки GNOME-приложений. Разработчики Yorba предпочитают языки, позволяющие создавать зрелые (в оригинале «full-blown») приложения. Язык С вполне допустим для библиотек низкого уровня, хотя, даже в этом случае, более предпочтительным кажется язык Vala. С ростом кодовой базы проекта, разработка на C становится все более обременительной. Кроме того, повышается порог вхождения для новых разработчиков. На Vala уже были написаны Shotwell и Geary, поэтому вполне обоснованно написание и третьего приложения.
Во-вторых, стандартный календарь не соответствует дизайну календаря, каким его хотели бы видеть разработчики Yorba (у них особое видение не только интерфейса пользователя, но и строения с точки зрения кода). В California особое внимание уделено гибкой модели даты/времени, в которой промежутки между датами рассматриваются, как итерационные коллекции (iterable collections); различные промежутки времени (недели, месяцы, годы) могут выступать в качестве отдельных объектов; учитывается разница между временем в календаре и временем на настенных часах; присутствует возможность работы с часовыми поясами iCal; и так далее. Модель даты/времени полностью обособлена от сетевого бэкенда, и от пользовательского интерфейса. В полном объеме используются свойства и сигналы GObject, чтобы они могли быть непосредственно связаны с виджетами GTK.
В-третьих, подход, что в сообществе GNOME все должны работать с одним набором приложений, не является разумным, не даёт простора для развития. Нет ничего дурного в том, чтобы дать пользователям GNOME возможность выбора. Параллельная разработка приложений способствует развитию, команды могут обмениваться идеями. Кому-то по душе Thunderbird, кому-то Evolution, некоторым Mutt, а другим Geary; в этом нет ничего плохого. Идея направить все имеющиеся ресурсы на одну кодовую базу предполагает создание программного обеспечения из разряда «всех пользователей под одну гребенку», что в 2014 году совершенно неприемлимо.
california, gnome, yorba