четверг, 29 июля 2010 г.

Альфы… Беты… Релизы…

Лето, июль. В белокаменной жара несусветная – ночью под тридцать, днем вообще к сорока подваливает! Мозги закипают и не распишешься даже. Разве что код. В нем хотя бы можно оставаться сестрой таланта. А посему выложу что-нибудь из давно написанного в стол. Сегодня о конфигурации бета-версий и финальных релизов. А именно, как свести выбор той или иной конфигурации к одной единственной строчке кода.

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

К примеру, в моей Aml Pages есть автоматическая проверка новых версий на сайте. Есть настройка как часто проверять, а еще есть настройка проверять только stable-версии или также проверять и наличие новых бета-версий. По умолчанию в финальной версии проверка бета-версий отключена, да и интервал автоматической проверки пореже. Совсем другое дело бета-версии. На сайте они обновляются почти каждый день, поэтому “есть смысел” включить проверку бета-версий, да и почаще проверять.

К чему всё это? А вот к чему: что же теперь делать? Менять значения настроек по умолчанию для бет и финальных версий да еще и ручками? Ну уж нет! Не хватало только перед релизом еще и в коде ковыряться (“солнце всходит, и ничего не трогай” ©). Давайте-ка эту рутину переложим на компилятор.

Прием прост как пилорама. Заводим в stdafx.h (precompiled header) два банальных макроса AP_BETA и AP_IS_BETA.

#define AP_BETA TEXT("Beta") /*это макрос для бета-версий*/
//#define AP_BETA TEXT("")     /*это макрос для финальных версий*/
#define AP_IS_BETA (_tcslen(AP_BETA)>0)  /*определить бета-версия или финал*/
Юзаем так. В коде, где нам нужно разное поведение для бет и финалов пишем нечто вроде:
if (AP_IS_BETA()) {
    //...код для бета-версий
}
else {
   //...код для финальных версий
}
Поясню мысли.
  1. Перед выпуском финального релиза крайне нежелательно лезть в дебри кода, и изменять какие-то конкретные строчки. Ошибиться можно запросто, и не заметим даже. Весело, не правда ли!?! Последняя бета стабильна, а релиз вот с багой. И все потому, что меняли какие-то мелочи да в разрозненных дебрях кода. Куда как проще поменять одну строчку в stdafx.h.
  2. Изменение precompiled header (stdafx.h) приведет к полной пересборке кода. Имхо, полная пересборка не лишнее дело перед выпуском финала.
  3. Нафига все эти определения “Beta” или же пустая строка? А когда строка не пустая, то указанный префикс “Beta” также можно автоматом куда-нибудь добавлять (окно “о программе”, заголовок окна и.т.д.). Причем если изменить само определение, ну скажем с “Beta” на “Beta 2”, код этих “добавок” менять и вовсе не придется. Только пересобрать приложение.

Собственно, на этом всё. Конечно, недостатки есть. Макрос развернется в код, отрабатывающий во время выполнения (run-time). Поэтому налево-направо может и не стоит применять этот подход. Но в моем случае было иначе: а) применение этих макросов было очень ограниченным, один раз за запуск, поэтому не накладно; б) эти  префиксы “Beta”, “Beta 2” были нужны, чтобы прописывать их в UI – так что все равно от них никуда не деться.

Не спорю, все то же самое можно свести и к времени компиляции (design-time) через те же самые шаблоны. Но как-то руки до этого и не дошли. В конце концов, мне Алесандреску шашечки надо, или ехать!?! Зато одно-единственное изменение в одной строчке, и новая конфигурация кода готова к сборке, причем безо всяких чреватых последствиями изменений где-то в недрах.

PS: как-то писал о бесплатности бета-версий. Стоит или не стоит?!? Дык вот описанный выше прием и в этом случае работает. Эксперименты ведутся. Об результатах отпишусь позже, пока еще рано о чем-то говорить (лето все таки, йоптыть – всем жарко: то ли юзера не видят полнейшей фривары в бетах, то ли я в толк не возьму, где последствия?).

четверг, 10 июня 2010 г.

Pro-чтиво: Об интерфейсе

Об Интерфейсе, Алан Купер Сегодня еще разок о профессиональном чтиве. Дочитал “Об интерфейсе” (About Face) Алана Купера. Что сказать? Читал сей манускрипт далеко ни один месяц, все-таки под 700 страниц томик. Впечатления остались весьма двойственные…

С одной стороны, одно слово – эпохальная вещь! Все-таки Купер это гуру юзабилити и UX-дизайна. Чего только стоят его принципы проектирования взаимодействия. Как обычно: всё гениальное просто. Вот только некоторые из них, особо импонирующие:

  • Считайте пользователей людьми очень умными, но очень занятыми и Пользователи не понимают булевы алгебру. В точку: когда я убрал булеву формальность в фильтрах Aml Pages, все вопросы пользователей исчезли. Пофиг, что с формальной точки зрения раздел документа не подпадает под условия фильтра (считай, запроса) – раз пользователю надо увидеть раздел, значит надо! Ни к чему заставлять отменять или изменять фильтр. Юзеру точно виднее, что ему нужно.
  • Избегайте чистого листа. Как только в Aml Pages появились категории страниц по умолчанию, все вопросы по их использованию тут же улетучились сами собой. Редактор категорий есть, да и раньше был. Но как только появились умолчательные примеры категорий – вопросы по ним отпали в принципе.
  • Прячьте рычаги катапультирования. И не уговаривайте меня, нет и не будет в Aml Pages команды “удалить все”.
  • Пользователи готовы прикладывать усилия соразмерно результату. Действительно готовы. Но только вот не стоит их заставлять достигать результата сразу. Лучше оставлять пользователю возможности для принятия решения, для “маневру” до последнего момента.
  • Компьютер работает, а пользователь думает. Вот-вот, робяты! Это по закону Мура производительность процессоров удваивается каждые два года. А производительность пользователя нет! Ну так хотя бы не мешайте ему. Пусть думает, пусть размышляет – этого никакой софт за него не сделает никогда.
  • Никогда не подгоняйте интерфейс под метафору. Сколько не прикручивал пружинный, стилизованный под бумажные аналоги, разделитель панелей в Aml Pages – все равно он торчал как в одном месте заноза. Снёс!
  • Удаляйте элементы, пока продукт не сломается, а затем верните последний удаленный элемент на место. В яблочко! “Совершенство, это когда не нечего добавить. Совершенство, это когда нечего убрать” (© Антуан де Сент-Экзюпери). Много раз сталкивался с тем, что из продукта что-то пора и выкинуть. Итеративный такой процесс получается. Сначала фичи накапливаются, потом переосмысливаются, а со временем некоторые и канут в воду. Резать, однозначно резать – причем не дожидаясь перитонита.
  • В ошибках может и не быть вашей вины, но вы несете за них ответственность. Да здрям автоматический бекап и автосохранение. Сколько нервов они сберегли моим пользователям, а мне времени, потраченного на поддержку.
  • Диалоговое окно – это еще одна комната, не ходите в комнату без веской причины. Без разговоров! Все что имеет смысл делать не модальным, просто необходимо так и делать. Модальные диалоги нужны только для группировки сходных функций.
  • Не создавайте многострочные вкладки. Вот дернул меня черт за руку, сделать в Aml Pages режим многострочных вкладок, славу богу хоть не по умолчанию. Теперь вот теперь кручу попой изворачиваюсь в общении с пользователями, как бы это убожество в новой версии незаметно убрать. (этот блог читают и пользователи: я ж не спроста хочу убрать. Убрать надо для другого, значительно более удобного решения…).

В общем, что сказать… Книга действительно серьезная, must have однозначно. Но вот с другой стороны, ну такое количество в ней воды, что таки пару раз она мне обеспечила здоровый и быстро наступивший сон. Очень много про то, как “не надо”. А вот изложения как у Дженифер Тидвелл, “как надо” все-таки маловато. Примеры есть, но они не разобраны методично. По стилю изложения About Face немного напоминает легендарную “Психбольницу в руках пациента”. Но! Для такого в стиле “манифеста” 700 страниц имхо все-таки многовато – либо уж кратче, либо методичнее. Хотелось бы больше конкретики, причем с разбором, а не просто примеров из жизни – 700 страниц примеров все-таки требуют хоть какой-то каталогизации.

Но все равно не жалею о времени, потраченном на эту книгу. Чувствуется перо мастера – там такая концовка, такое послесловие, что отрицательные эмоции сильно поутихли. Das ist, проще говоря.

PS: все ссылки как-то сами собой получились именно на фичи моей Aml Pages, а не Aml Maple. Но Aml Pages приложение значительно более богатое фичами, чем “Мапля”. Более того, оно как раз и есть то самое “монопольное приложение”, в отличие от Мапли. На тему разницы между монопольными и временными приложениями у Купера тоже весьма толково и аргументировано расписано.

воскресенье, 30 мая 2010 г.

Скидки. Опыт и впечатления

Учинил я тут было скидки на Aml Pages и Aml Maple (она же попросту, “Мапля”). А надо сказать, что со скидками я как-то все больше на “вы” – мало у меня от них почему-то толку :(. Но не на этот раз! В последнем апрельском эксперименте результат вполне устроил: пользователи оключеваны, лаве заработано.

Скидки были сделаны 30-процентные и продлились с 12 апреля по аж 4 мая. Т.е. изначально период было до 22-25 апреля, но за завалом работы над новыми релизами некогда было убирать инфу о скидках с сайта, и они просто-напросто продлевались и еще на недельку. Опять же нужно давать время пользователям узнать о скидках, иначе попросту не успеют сработать. Однодневные продажи как у Бегемота, имхо, попросту не успеют сработать. Или же нужно делать более существенные скидки, а еще лучше более внятно “колоть” Бегемота, как инфа о скидках доносилась до пользователей. Не представляю своих пользователей, которые заходят на сайт каждый день – а у меня инфа висела именно на сайте (т.е. ежедневных пользователей у меня хватает, но эти все уже с ключами, кто тестер, кто просто поклонник и активный участник, кто еще как).

Скидки организовывал только через Plimus и Avangate, для отечественных каналов продаж вроде Web Money на скидки забил – там и так цены существенно, и главное, постоянно ниже.

Итак, общие ощущения. Во-первых явно сработал “сезон” скидок. В апреле народ, похоже, вполне активен по жизни, и многие же скидками и воспользовались. А вот прошлые скидки в декабре мало чего дали. Думаю, под новый год все же не время для скидок на софт. Конец года, у народа и так запар хватает – какие-уж тут покупки софта!?! Возможно и стоит все-таки держать сезон скидок до какого-нибудь 15 января, но это скорее чтоб хоть “ручеек” был – а вала продаж это время все равно не дает. Ну, пьяные уже клиенты, что поделаешь. Не сезон-с. Да и на RSDN не раз мелькали мысли, что новогодние скидки надо заряжать еще в ноябре.

Во-вторых, на этот раз положил с прибором на размещение скидочных купонов где-то в сети. В предыдущий раз все эти купоны у меня не сработали. С другой стороны: с чего бы им срабатывать, если купон на софт лежит в каких-то “купонопомойках”, вперемешку с другим софтом!?! А зачастую и вообще вперемешку с купонами на совершенно что-то иное, а-ля колготки и видеотехника. Целевая аудитория в таких “купонопомойках” нулевая – кто там скидки на софт будет искать-то? Зато намного больше уделил внимания собственному сайту: анонсы о скидках постоянно появлялись в RSS и новостных страницах, ну и во всяких боковых блоках да новостных врезках о скидках и, о неумолимо приближающемся времени их окончания, инфа постоянно обновлялась. Сдается мне, такой пиар на родном сайте дал толку куда больше, чем все “купонопомойки” вместе взятые.

Единственное, что так и не успел за ворохом дел написать выпуск новостной емейл-рассылки про скидки. Черт его знает!?! Может и проиграл в чем-то, но емейл-рассылка русскоязычная. А скидки были исключительно на западных каналах продаж, считай через русские каналы соотечественники и соседи по бывшей эсэсэсэрии и так могут постоянно купить почти по тем же ценам скидочного уровня. Но тем не менее было неожиданно много продаж именно в Россию. Их было порядка 80% – чего я ну никак не ожидал. Вот вам батенька и отдельный маркетинг на Запад, отдельный на Рассею-матушку!?!

Наконец появился первый клиент из Бразилии. Как говорится, “й-е-е-ес!”! Все ж Бразилия по темпам экономического развития сейчас один из главных лидеров в мире; все ж пора, давно пора окучивать бескрайние просторы Южной Америки. Правда, португальскую версию Aml Pages последнее время причесывал отдельно, тщательно, да со всякими маркетинговыми фокусами вроде бесплатных бета-версий. Короче, начало положено – сбылась мечта, но не идиота. Мечта идиота это клиент из Франции (и эта мечта тоже воплотилась, но то было уже позже, и не под эти скидки).

Кое в чем, пожалуй таки лажанулся – как же без этого!?!

Не стоит заставлять клиента вводить промо-код в форму покупки. С Avangate все значительно проще: у них можно выставить настройку “Показывать цену со скидкой автоматически”, без необходимости ввода кода скидки. На Плимусе такой фичи нет и изначально форма покупки открывается с пустым полем ввода кода. Не есть гут! Это смущало сильно, ну тут выкрутился быстро. Ко всем ссылкам на покупку добавил еще один параметр: couponCode=COUPON_VALUE. И полный зергут – Плимус начал сразу открывать форму с уже заполненным кодом и подсчитанной скидкой. Но пока все это приделывал, сдается мне, как минимум одного клиента я на этом все-таки потерял. Ну да бог с ним – клиент все равно был какой-то маловменяемый, бомбил меня гневными письмами, и ответов моих и вовсе не читал, хотя все ссылки я ему лично отправил, и пояснения про цены у разных партнеров тоже. Ну да ладно – бог с ним, от таких клиентов мороки больше, чем выгоды! Клиент далеко не всегда прав. Зато на ошибках учатся.

Плимус напродавал куда больше копий и Aml Pages, и Мапли. А вот Avangate наработал дай бог 3 продажи. Может быть, тут все дело и в том, что на странице заказа ссылка на Плимус у меня стоит первая. А вот Aml Maple и вовсе не распространяется через Avangate (пару месяцев назад они меня основательно подзатрахали с некоторыми техническими вопросами в настройках, и я пока сложил на них болт по поводу распространения Мапли). Но вот с другой стороны авангейтовская форма покупки имеет с моей точки зрения очень весомый косяк в области дизайна. Посмотрите-ка на скриншот формы ниже.

Ошибки дизайна в форме заказа Avangate

Какого черта ставить цену без скидки вверх? А актуальную цену со скидкой ставить куда-то в за…вниз?

Конечно, замечательно, что клиент узрит размер самой скидки! Но имхо ему куда как интереснее знать, сколько он заплатит в сумме прямо сейчас. А вот вся арифметика его должна волновать в значительно меньшей степени, тем паче, что размер скидки и так есть в форме. Чем думали дизайнеры, непонятно… У Плимуса в этом плане все куда как кошернее: цена со скидкой стоит первой, более того она даже выделена красным шрифтом. То бишь сразу привлекает к себе внимание, что собственно от цены со скидкой и требуется.

Кстати, был и еще проблемный клиент, который покупал на гмейловский ящик. Все бы хорошо, только водки было много гугловский антиспам рубил абсолютно все мои письма. Причем неважно какие: с вложениями или без, с официальных ящиков на amlpages.com или с таких же гмейловских. Рубил и все тут! А клиент-то нервничает, шлет мне в саппорт письма  в стиле “хде ключик, который день пошел”. А что я могу сделать? Мои же ответы антиспам рубит точно так же, как и письма с регистрационным ключом. Но – к чести Плимуса – их саппорт разрулил эту ситуацию практически мгновенно: переслали им мое сообщение со своих ящиков. Клиент прислал адреса запасных почт, и мгновенно был оключеван :) Так что, похоже зря последнее время так поносят Плимус на RSDN`е. Сносно он работает. Имхо, тот же Avangate куда менее вменяем.

К примеру, в Avangate был приделан какой-то ну такой мудренный контрол календаря для выбора даты скидок, что мама не горюй.  Уж до чего там было геморройно поменять месяц с апреля на мая, не то слово. Кликал до опупения и выставил дату окончания только с попытки наверное аж с 8-ой.

Ну ладно, ок! Скидки закончились, инфу с сайта поубирал, RSS`ки все вычистил. И вдруг, у-у-упс! В почту сваливается нотификация заказом на Avangate. Представьте себе мое удивление: скидки уже дня четыре-пять как закрыты, а ордерок обработан с этой самой 30-процентной скидкой! Валю бегом в Avangate, просматриваю скидки и вижу что дата окончания все таки в мае, но только следующего, 2011-го года. Вот вам батенька и календарик выбора дат :(

Итого: скидки дело нужное и полезное, если соблюдать несколько правил:

  • Не жмись! Размер скидки должен быть приличный.
  • На сайте цена со скидкой должна торчать на видном месте.
  • Никаких вводов кодов купона. Здесь вам не лотерея! Задача увеличить продажи.
  • Купоны в купонопомойках не работают. Нашего клиента там нет, он на нашем сайте.
  • Напоминать про скидки надо почаще, пусть мелким шрифтом, но почти по любому информационному поводу. RSS, новостные страницы, форумы и.т.д.

Ну, а с емейл-рассылкой как-то так и не сложилось. Надо было просто написать выпуск исключительно про скидки. А я все собирался изваять какую-нибудь статью по использованию Aml Pages, а внизу тиснуть про скидки. Собирался, собирался, да прособирался. Просто реально было ну никак не досуг, закрутился с релизами. Нужно было взяться за одну задачу, но выполнить хотя бы ее, а не спаривать две разные цели в одно дело. Каюсь, был не прав! Ну да ладно: кто бежит – тот падает: кто лежит – тот не падает. На ошибках учимся :)

PS: Что-нибудь, возможно, и упустил, что-то может вообще специфично, а что и спорно… Ну и ладно. Всё выше написанное безусловное и категорическое imho, зато проверенное на личной шкуре :)

Technorati Теги: ,,

воскресенье, 2 мая 2010 г.

Ох уж мне эти онлайн-сервисы…

Решил я тут на днях поиграться с EverNote – это такой “онлайн-сервис и ряд приложений для различных платформ, предназначенные для сохранения, синхронизации и поиска заметок” (©). Вообще говоря, штука любопытная, ну, а для меня как автора записной книжки Aml Pages уж тем более – как никак конкурент все же, ёпырш.

Однако нарвался! Ох, не зря я не любитель всех этих бесконечных онлайн-сервисов. Онлайн это, конечно же, прекрасно (на этой фразе за кадром звучит марш Мендельсона – “поют сердца” :), но все-таки как-то стремно свои приватные данные сливать куда-то вовне. И не думаю, что так уж важна именитость и репутация сервиса, будь то Evernote, или хоть Google Docs. Безусловно, есть огромные преимущества у подобных онлайн-сервисов. Но есть и свои недостатки, причем, похоже, никуда от них не деться.

В общем, запущаю Evernote и любуюсь вот на такое развеселое сообщение.

Evernote лег! Информации ноль, даже для разработчика ноль.

Здрасти-мордасти! Срали, срали и упали… И так продолжалось весь день. Причем Evernote даже не смог открыть и локальную базу. А если б мне надо было не поиграться, а действительно был нужен доступ к своим заметкам? Что тогда? Больше всего убила информативность сообщения: “невозможно соединиться с сервером”! Отлично просто! Все остальные – веб-браузеры, аськи, почтовики могут, а оно видишь-ли не может! Полный зер гут! Зато в этом же окне рекламы сколько хочешь, в стиле “найдете свои заметки” и “это так просто”.

В общем, долго ли коротко, но к вечеру свободного времени немного прибавилось, и полез я расковыривать Evernote обстоятельно, “с чуйством, с толком, с расстановкой”.
И что бы вы думали? Оказалось, все просто: это та самая банальная бага с выставленным автономным режимом Internet Explorer, которую я описывал в этом посте. IE, Outlook, и еще пол диска софта вполне корректно обрабатывают автономный режим, а хваленный Evernote лег с потрохами. И мало того что лег, выдал ну такой ноль информации о происходящем, что даже я – девелопер – далеко не сразу просек в чем дело. Причем даже в логах Evernote поковырялся – информации о соединении там и вовсе не оказалось. А чтобы делал самый обыкновенный пользователь? Одним словом – ппц!

И э-э-эх, все же здоровый скепсис по отношению к онлайн-сервисам штука оправданная. Как-то оно самое себе спокойнее, когда мои личные пользовательские данные находятся полностью под моим контролем. Ибо нет ничего священнее пользовательских данных. Баги, они удел разработчика – поправим все (и новых наплодим). Но вот потерянные пользовательские данные – как багфиксить прикажете!?! Так что уж лучше я пока по старинке, в своей же Aml Pages. Опять же создать плагин для сброса данных из Aml Pages в аккаунт Evernote дело нехитрое.

вторник, 27 апреля 2010 г.

Девелоперский отдых-3. Лето

Как-то незаметно пролетели долгие зимние вечера, да все больше за написанием кода и иже с ним. Наступила долгожданная весна.  Впрочем, по погоде в белокаменной пока этого однозначно утверждать затруднительно – наступил какой-то вялотекущий извечный “ноябрь”. Ну да ладно,  пора бы и отдохнуть. Ну, а весенне-летний период, в дополнение к традиционным видам лучшего отдыха в выходные дни, предложит нам и новые направления в наших неутомимых поисках серебряной пули релакса.

А, что если, к примеру, вот так?

И, э-э-х, давненько я не брал в руки шашку! Тряхнуть что-ли стариной?

Да только вот незадача: в пылу наведения порядка в дому, куда-то подевал убрал на свое место защиту… То бишь, разделил свои наколенники на подзадачи. Первый – вот он, перед глазами, а второй – хрен его знает на своем месте (знать бы только где оно, это пресловутое “свое место”).

С одной стороны как-то сыкотно боязно без защиты, да к тому же после почти двухлетнего перерыва. Но с другой стороны: коленки у меня –  как у старого лося – уже давным-давно не страдают. Падать, так вдребезги! И в первую очередь достается главному орудию труда – рукам. Ну, а с другой стороны, нафига же мне защита? Старый конь ведь борозды не портит!?! Он в нее приходит, и спать ложиться :)

Technorati Теги: ,

пятница, 23 апреля 2010 г.

HTML5

Наткнулся на презентацию HTML5. Ну что сказать, когда говорить нечего – впечатляет! Уже успел поиграться с некоторыми новыми CSS-тегами у себя на сайте. Ничего так – местами по области даже и работает.

  • Google Chrome 5.0 (dev release): полет нормальный.
  • Opera 10.51: вы, конечно, будет смеяться, но тем не менее полет нормальный. Удивило!
  • Firefox 3.6.3:  как ни странно, но ни фига мне что-то огнелис и не продемонстрировал. Вот тебе и авангард планеты всей… Правда, стоит отметить, что не знаток я Firefox`а. Может было нужно что-то перенастроить!?!
  • Apple Safari 3.0: в пролете.

Ну, а про IE и говорить нечего – он у меня не просто старенький, а даже древненький – аж 6-ой версии. Он и не должен был ничего поддерживать. Maxthon 2.xx соответственно в ту же степь. Но от этих ветеранов и в принципе ничего не ожидалось.

Все ж таки иногда попросту приятственно поковыряться в новых технологиях. Отдельное спасибо Александру за новость об этой презентации.

BlogSport Tags:

понедельник, 19 апреля 2010 г.

Регистрация за статью-2

Как-то последнее время активизировался отечественный юзер с бесплатной регистрацией Aml Maple. Пока готовится версия 2.40, соотечественники вовсю ваяют статьи про Маплю. За последние недели уже штуки 3-4 новых написаны. Ну, и обещанные бесплатные регистрации раздаются налево и направо, а за одну статью отвалил аж две (статью сочиняли вдвоем, а от меня вроде и не убудет). 

Хотя конечно в семье не без уродов, кто-то да пытается продемонстрировать мастерское владение копи-пастой описания с официального сайта Мапли. Ну, сколько раз говорено: ну не нах оно не надо – не тратьте ни свое, ни мое время. Другие же демонстрируют умение набирать текст в поисковой строке Гугла. Вау! Хоспади, да “пожалста” – кто ж против-то!?! Пользуйтесь вы старыми версиями – но вот уж с пожеланиями да технической поддержкой тогда уж тоже к Гуглю.

С другой стороны ох как не может не радовать появление переводов пользовательского интерфейса. Мапля обзавелась теперь еще и итальянским переводом. За что самое искреннее спасибо Наталье Чибизовой. Мало того, что перевод качественный, мало того что практически мгновенно она доперевела интерфейс новой версии. Дык еще и сделала итальянское описание Мапли!

Э-э-х, братцы. Не-е-е, так жить можно! Теперь бы еще и французским переводом обзавестись, и житуха-то окончательно наладиться. “Французы” – где вы? Ау!