воскресенье, 11 октября 2015 г.

Бурленье началось...

По ссылке пост на КЫВТ про особенности локализации декстопных приложений. Рекомендую-с.

От себя. Действительно почитайте. Все что там описано, я прочувствовал на собственной шкуре причем глубоко подкожными нервными центрами. И нимало новых матерных слов выдумал, пока решал проблемы. Зачем наступать на собственные грабли, если можно почитать про чужие?

Второе. Некоторые решения там спорны, но автор поста выбрал то-то или то-то решение. Ну например UTF8, мол как его рисовать в программе? От себя - решаемо. Причем легко и непринужденно. Или инициализация сразу всего языка. Опять же спорно, но решаемо с тем же результатом, но чуть иначе. Или навскидку: текст об окончании триала на не том языке. Решаемо! Легко! Но не автоматизируемо, к сожалению.

Дело тут совершенно в другом. У автора поста на КЫВТ были свои резоны выбирать то или то решение. Спорить зачем? Разные резоны, разные подходы, разные точки зрения.

От себя в том же посте написал про фокус с ценовыми группами в зависимости от языкового файла. И полностью согласен с автором. Никогда не кладите цену в языковой файл.

PS: на Alconost слишком сильно не ведитесь, робяты... Они вам про плюсы в комментах то расписали, а вот про минусы умолчали. А геморроев в их подходе хватает причем с избытком. Причем не виню я их. Их система для них, а не для нас. Соответственно и плюсы\минусы там под их аудиторию.

PPS: к слову, именно примерно похожая система локализации у меня применяется в Aml Maple и TwinkiePaste. Что характерно, число языков растет как на дрожжах не по дням, а по часам. Alconost ау-у :).
Правда, в TwinkiePaste, как в значительно более поздней разработке система куда как круче и несколько дружественнее нашему брату программеру. С поддержкой генераций полных языковых файлов, обновления старых новыми строками, с аналитикой изменений, поддержкой разных библиотек (pure C++, MFC, WTL), локализацией диалогов, меню, строк - чего угодно. Ну что ж вы хотите. Опыт то накапливается.

среда, 16 сентября 2015 г.

Юзабилити. Разделитель в меню

Сегодня про маленький авторский фокус в юзабилити. В частности в меню.

Разделители в меню архиважная вещь. Они помогают группировать команды в визуальные группы. Давно известный факт, что человеческий глаз более-менее хорошо ориентируется, когда в группе от 3-ёх до 7-ми элементов. Если больше, то визуальная навигация будет затруднена. Взгляните на старый GIMP, без разделителей в меню. Это же просто ужас.

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

Меню TwinkiePaste с разделителем с надписью
Пример: меню из TwinkiePaste справа на скриншоте. Разделитель меню показывает число элементов в истории буфера обмена (там цифр больше, но это уже особенности твинкипасты, не имеющие отношения к вопросу).

По-моему неплохо получилось!?! Изначально я этот прием придумал и использовал в Aml Pages. Там команды плагинов, которые встраивались в контекстные меню, как раз отделялись разделителем с надписью "Плагины". Прижилось.

Потом это уже было применено в Aml Assist. Там и вовсе распрекрасно пошло. В меню Ассиста есть группы однотипных команд "Вроде открыть как" (не важно что именно "как", ну например только для чтения), или же "Показать так-то". Эти группы команд однотипны по своей сути. Они выполняют одно и то же действие, но над разными объектами.

Разделитель с надписью выручил на ура. Вместо того, чтобы в каждой команде меню писать "Сделать то-то [название объекта]" был прилеплен разделитель с надписью "Сделать то-то", а ниже уже команды меню с названиями объектов. Шикарно получилось. Вместо однотипных заголовков "Сделать то-то XXX" получили наглядную группу команд меню. Причем сами команды в группе содержат только названия объектов. С одной стороны: для новичков понятное действие в надписи в разделителе. С другой стороны для привычных пользователей, которые знают и пользуются этим действием, группа команд содержат только названия объектов. Позволяя им сосредоточиться, с чем именно будет выполнено привычное для них действие.

Вот такой вот фокус был придуман в последние месяцы. Причем настолько удачный, что благополучно начала растекаться по соседним проектам. Улучшения в массы!

пятница, 17 июля 2015 г.

Акция Aml Maple на Giveawayoftheday

Прошла, значит, акция на Aml Maple на Giveawayoftheday. Итого, что в профите. Подобьем бабки, как говориться, посчитаем пулю и гору.

  1. Очень много комментов было, что не может не радовать. Флуда, конечно, развелось немало, но и какие-то приятные тексты попадались. А мотивация настроением в разработке тоже кое-что значит.
  2. Немало комментов было и в английском обсуждении. Традиционно: англоязычные пользователи из ГрейтБритан и Пиндоссии ни в какую просто не могут воткнуть, как это так, и зачем вообще нужен второй язык. Некая тенденция в ограниченности наблюдается явно.
  3. Контр-довод. Есть все ж пользователь(ницы) из USA, которые были просто в восторге от софтины. Видимо, сказывается засилье испаноязычных мексиканцев :)
  4. Традиционный всплеск новых переводов пользовательского интерфейса для Мапли. Новый китайский перевод, абсолютно новый арабский, еще пяток переводов, и еще несколько были обновлены в течении пары недель. Бесплатные ключики за переводы с радостью розданы. Кстати, один из шикарнейших переводов сделала именно пользовательница из Штатов, описанная в предыдущем пункте. Интересное наблюдение: вы не поверите, но ее фамилия не МакКейн.
  5. Гивэвейцы, засранцы, забыли повесить ссылки на "купить полную версию" :((( Это полный вперед. Поэтому всплеска продаж не было в день акции. Так себе, ни шатко, ни валко. Отсюда вывод: при работе с Giveawayoftheday завсегда сначала сочиняем им пост со ссылками на покупки, а только потом даем ссылку на дистрибутив. Ибо я сначала сделал им инсталлер, они написали свой собственный пост, про ссылки забыли. Потом мы в пару недель что-то обновили, я прислал ссылки, но их забыли вставить. Извинились. Ладно, и на старуху бывает проруха. Но зарубку на память ставим.
  6. Регистрация через выбор ZIP-файла с лицензионной инфой стандартным виндовым диалогом "Открыть" - проходила на ура. Так оно пользователям понятнее. Но все равно, были письма где взять файл с лицензией. Но уже на порядки меньше таких писем. И это при том, что ZIP-файл был распихан во все места, и включен в стандартную установку.
  7. Из веселого: приходил пользователь, сказал что 500 рублёв за персональную лицензию это очень дорого, и максимум 200. "А двести рублей не могут спасти отца русской демократии??? Я думаю, торг здесь неуместен!". Гы :) Спасибо за фидбек. Горячо с ним согласился :) Хочу взять на вооружение, пригодилось бы вчера когда клубнику жене брал. Хотя такое ощущение, что я и так в тренде. Догадываюсь, что мне бы сказал на предложение скинуть цену в 60 процентов продавец клубники... Впрочем, я то же самое отвечаю, с улыбкой и пожеланиями всего наилучшего.
PS: с локализациями в очередной раз убедился, что выслушай, как рекомендует сделать Microsoft, и сделай наоборот!
Такие бро, дела.

понедельник, 15 июня 2015 г.

Aml Maple бесплатно

Завтра, во вторник, 16 июня Aml Maple будет доступна на сайте Giveawayoftheday абсолютно БЕСПЛАТНО.
Акция продлится ровно сутки, и не более. Следите за новостями.

Условия акции:
  • нет бесплатных обновлений
  • нет бесплатной технической поддержки


  • Или можно будет купить полнофункциональную версию Aml Maple со всеми вытекающими (поддержкой, бесплатными обновлениями и прочими печеньками) с 50 процентной скидкой. Используйте код купона GOTD.

    50 процентная скидка распространяется и на прочие платные продукты: Aml Pages, TwinkiePaste. Тоже со всеми плюшками: обновления, поддержка и.т.д.

    суббота, 25 апреля 2015 г.

    Костыль памяти. Раз, два, три, много

    Есть такое мифическое племя — мумбу-юмбу. Так вот у них очень интересная система счисления. Она не похожа ни на распространенную арабскую, ни на римскую, ни на не в коем разе какую-нибудь шестнадцитиричную. Она проще — и называется Раз, Два, Три, Много. Вот вам и все порядки, и арифметические операции.

    Дык вот в разработке софта владение этой замечательной системой экономит ну просто уйму усилий, времени, и денег. Просто нужно никогда не забывать про Раз, Два, Три, Много. Если есть раз, то может быть и два, а если два, то может быть и три. И уж тогда совершенно точно будет и много.

    Этот пост для меня самого. Ну случай очередной амнезии. Костыль памяти.

    пятница, 27 февраля 2015 г.

    Про автозагрузку

    Блин, есть куча софта, который мне нужен практически при каждом запуске Windows. Но далеко не сразу, не сию прям секунду через минуту после загрузки. А чуток погодя. А вариант только один: или запускать ручками, или запускать сразу и автоматически. Ясен перец, во втором случае автозапуска процессор загружен по самые небалуйся.

    Почему бы не сделать третий и вполне очевидный вариант: автозагрузка вместе с виндой, но несколько отложенная. На минуту, другую, третью!?! У себя в софте я такое сделал - это есть везде: в Aml Pages, Aml Maple, TwinkiePaste. Уж не помню в каком проекте было сделано в первый раз, но потом разошлось мгновенно по всем проектам.

    Реализуется на раз-два-три: софтина запускается, и падает в ожидание магического евента на эти самые минуту-другую. Потом просыпается и начинает работать. Если же софтину пользователь запустил ручками раньше, чем та проснулась, то все элементарно. Вторая копия дергает этот магический эвент, и завершается. А первая, которая спала в автозагрузке, просыпается раньше. Всё! Тривально, Ватсон!

    Юра!!! Сделай пожалуйста плагин к TLB? Там писать-то? 20 строк всего? Алгоритм уже просто в голове рисуется. И сам бы сделал. Но я в твоем Plugin API ничего не понимаю...
     А какой был бы профит! И волки сыты, а овцы целы. И автозагрузка есть, и нет оверхеда при старте винды.


    пятница, 6 февраля 2015 г.

    Aml Pages на BitsDuJour

    В субботу, 7-го февраля Aml Pages будет на доступна на BitsDuJour. Давненько я там не появлялся, уж пару лет поди минуло.

    Посмотрим, что выйдет на этот раз. Но что-то сомневаюсь я. Вряд ли чего нить путного выйдет. Суббота опять же. Новая политика битсдиджура. Да и вообще... Не-то батеньки, не то! Ну да ладно, чем черт не шутит.