Русский
Русский
English
Статистика
Реклама

Foss

Из песочницы Остановите Total Commander! или главная проблема свободного ПО

19.08.2020 16:20:48 | Автор: admin

Сегодня мы попробуем разобраться, почему Open Source приложениями никто не хочет пользоваться. Статья получилась довольно длинной, но не пугайтесь, будет интересно.


Поехали!


Предисловие. Почему я выбираю свободное ПО и какое право я имею его критиковать?


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


Критерий был простой: разработчик должен уважать моё право на частную жизнь. Впрочем, после историй, подобных сливу Сноудена, я не готов был верить компаниям на слово, поэтому обратился к FOSS.


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


Не подумайте, что это хейт. Я все ещё фанат СПО и считаю его нашим будущим, тем, что спасет мир от зверства государств и IT монополий. Я сам периодически помогаю разработчикам, как могу: открываю issues, рапортую о багах и сбоях, перевожу интерфейсы. Я пишу эту статью как раз потому, что желаю СПО развития и процветания и хочу ему в этом помочь.


Ну и дисклеймер: Все, что я пишу в этой статье моё личное мнение, я буду рад конструктивной дискуссии в комментариях. Довольно болтать, перейдем к основной теме этой статьи.


Причем тут Total Commander?


Думаю, все знают примеры продуктов, которые устроены или выглядят настолько странно и отталкивающе, что, кажется, ими невозможно пользоватьсявообще. И каждый может вспомнить своего знакомого/коллегу/преподавателя, который чем-то подобным пользуется и, что самое главное, искренне убеждён: нет ничего удобнее.


Каждый вспомнил что-то свое: кто-то VIM, кто-то 7-Zip, а кто-то, как я, Total Commander.


image

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


Никто не хотел бы писать свой первый "Hello world" в VIM'е. Никто не хотел бы, чтобы на его первом ПК стоял CLI Arch Linux. Это слишком сложно, непонятно, отталкивающе для новичка. Должна быть простая, приятная глазу, интуитивно понятная и дружелюбная альтернатива. Что-то, с чего можно начать, и только потом, если захочется, переходить к чему-то более сложному.


Так в чем же проблема СПО? А в том, что среди всего многообразия свободных программ красивых, дружелюбных и интуитивно понятных единицы. И это огромная проблема для всего FOSS движения.


Порог входа настолько высок, а UI/UX настолько уступает проприетарному ПО, что новых пользователей привлечь никак, кроме как запугиванием, невозможно.


Я и сам заинтересовался этой темой только потому, что переживал за приватность своих данных.


На самом деле, вы и сами можете взять телефон, поставить на него F-Droid и поустанавливать оттуда разные приложения (мы будем рассматривать только мобильные приложения, где удобный интерфейс особенно важен ввиду отсутствия мышки и характера использования устройства "на ходу"). Вы быстро поймёте, что дизайн у абсолютного большинства приложений, скажем так, сугубо утилитарный, лишён всяких украшательств и, зачастую, довольно неудобный, но я сделаю это за вас.


Давайте рассмотрим примеры, и вы сами в этом убедитесь


Сейчас я буду сравнивать интерфейсы популярных проприетарных программ и наиболее достойных свободных альтернатив. Альтернативы буду брать с сайта alternativeto.net. Всеми этими приложениями я пользуюсь уже довольно длительное время.


1. Google Play VS F-Droid


F-Droid это магазин приложений, такой же как Google Play, однако там распространяются исключительно приложения с открытым исходным кодом. Приложения также проходят модерацию и "проверку на открытость". Так, например, клиент для YouTube может получить пометку "Популяризирует несвободные сервисы". Звучит здорово, давайте посмотрим, как это выглядит.


Начнём сравнение со стартовой страницы:


image

В Google Play, едва зайдя в приложение, мы видим игры. Вверху и внизу мы видим кнопки филтров и категорий, строку поиска. Довольно удобно. Все иконки оформлены в едином стиле (прямоугольник со скруглёнными углами). Под каждым приложением сразу виден его рейтинг. К дизайну у меня вопросов нет.


Посмотрим теперь на домашнюю страницу F-Droid:



Мы видим множество плиток разного размера и формы с иконками приложений, их названиями и кратким описанием. Внизу мы видим кнопки вкладок и плавающую иконку поиска (который, кстати, работает так плохо, что вы можете не найти там приложение, даже если наберете его название буква-в-букву, не говоря уже о том, чтобы, как в


Google Play, набрать "редактор фотографий" и увидеть в выдаче подходящие варианты).


Сразу возникает множество вопросов. Почему плитки разных размеров? Почему все иконки разной формы? Почему какие-то иконки растянуты и потеряли четкость? Что значит "Последние"? Они недавно обновились? Разработку сворачивают и это их последний релиз? Их последними добавили на площадку? Ничего не понятно. Кстати, никаких анимаций, в отличие от Google Play, тут нет, все выглядит очень дергано и топорно. Кроме того, прежде чем сделать этот скриншот, мне пришлось подождать, пока иконки прогрузятся практически 10 секунд При скорости соединения в 90 мбит/с! Проекту 10 лет, с финансированием ему повезло больше, чем многим другим, ну почему всё так плохо?


Тут кто-то меня перебьёт и скажет: "Какие анимации? Работает и слава богу. Какой дизайн? Ну потерпи ты 10 секунд, пока загрузится. Тебе шашечки или ехать надо?"


В этом и есть проблема. Всем кажется, что дизайн и удовольствие от пользования продуктом излишества, на которые нет времени. Я напомню: F-Droid существует уже 10 лет, а времени все нет. Нет не времени, а понимания. Эту проблему я и пытаюсь поднять. О каком развитии Open Source можно говорить, если ворота в его мир выглядят так?


Продолжим наше сравнение. Посмотрим на страницу приложения в обоих магазинах:


image

В Google Play все четко, понятно и красиво. Вижу скриншоты, видео-презентацию, рейтинг, количество загрузок. Ниже описание, теги и категории, отзывы пользователей, похожие приложения. Вопросов никаких, все сделано на уровне.


Теперь F-Droid:


image

Четверть экрана занимает шапка. Хочу заметить, что я видел ее заполненной от силы 3 раза, чаще всего там просто ничего нет. Четверть экрана на выброс. Ниже у нас Не угадали! Changelog! Зачем он мне? Я еще никогда не устанавливал это приложение, я зашёл сюда прочитать про него и решить, нужно ли оно мне. Зачем мне знать, какие баги вы недавно исправили? Ниже мы видим скриншоты. Тут у меня много претензий. Не к этому приложению в частности, а к F-Droid в целом. Разработчики магазина добавили поля для описания и скриншотов, шапки, но не сделали их заполнение обязательным. Множество девелоперов оставляет их пустыми. Что еще страннее, я регулярно нахожу в F-Droid приложения, у которых есть скриншоты, но сделаны они были На Android 4.4 KitKat! Помните такой? Интерфейс на фото давным-давно был изменен, уже годы приложение выглядит по другому. При этом обновления выходят стабильно, там пишут изменения, но никто и не думает обновлять скриншоты. У меня это не укладывается в голове. Кстати, скриншоты, по доброй традиции, грузятся 10 секунд. Оценки или счетчик скачиваний отсутствуют в принципе. Я просто не знаю, как я должен судить о приложении до его загрузки.


2. Google Maps VS OsmAnd~


Представим, что вы ищете открытую и свободную альтернативу Google Maps. На ум, естественно, приходит Open Street Map (OSM), однако OSM это только сама карта. Для мобильного телефона нужно еще приложение-просмотрщик. Наиболее популярным является приложение OsmAnd, расширенную версию которого можно скачать в F-Droid. Давайте сравним его с популярнейшим Google Maps.


Попробуем выполнить поиск "Москва" в Google Maps:


image

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


Посмотрим на OsmAnd.


image

Цветовая схема более пестрая, чем в GMaps, но пользоваться этим можно. Шрифты легко читаются, карта как карта. Доп. информацией о месте приложение нас не балует, но бог с ним. В чем же проблема? А проблема в том, что приложение не умеет загружать карты в режиме реального времени Совсем! Когда я набрал в поиске "Москва", мне было предложено загрузить карту региона (90 МБ) с не самых быстрых серверов OSM. На это ушло в больше минуты моего времени. А жизнь ведь коротка Помимо этого, приложение работает ну очень так себе. Тормозит, дергается, подвисает, ни о какой плавности прокрутки карты речи не идет. Не подумайте, это работает, но плохо. Да, 5-7 лет назад, не имея возможности с чем-либо сравнить, я бы сказал, что это отличное приложение, но в 2020 году, зная, как могут и должны выглядеть качественные карты для Android, пользоваться OsmAnd совсем не хочется.


Не в пользу приложения играет и сам Open Street Map. К сожалению, проект, похоже, переживает не лучшие времена. Карты обновляются очень редко и выборочно, информация, даже в крупных городах, серьезно устарела: иногда на OSM не найти целых улиц и дорог, построенных за последние 5 лет. Большая часть заведений возле моего дома, отмеченных на карте, также уже давно не работают, а новых на картах нет. Довольно грустно, ведь это практически единственный проект открытых карт такого масштаба, и другого у нас просто нет.


3. Mi-Fit VS Gadget Bridge


Gadget Bridge это аналог проприетарным приложениям для работы с фитнес браслетами и умными часами (в нашем примере Mi-fit от Xiaomi). Без облаков, синхронизаций и отправки данных куда-либо. Идея крутая, посмотрим на реализацию.


Начнём с домашнего экрана:


image

В Mi-fit нас встречает экран со всеми основными показателями: сон, шаги, последняя тренировка, вес (для тех, кто пользуется умными весами). Отсюда же можно начать запись тренировки. Дизайн приятный глазу, хоть и пёстрый. Мне не к чему придраться.


Посмотрим на Gadget Bridge:


image

Нас встречает меню со списком подключенных гаджетов. Зачем? Я не знаю. Видимо, я один не пользуюсь пятью фитнес-трекерами одновременно, иначе я не понимаю, зачем это нужно. Из этого экрана мы можем извлечь ровным счётом ничего, кроме заряда батареи браслета. Сравните это с Mi-fit.


Лично я пользуюсь браслетом в основном для того, чтобы мониторить свой сон и шаги. Посмотрим на то, как эти экраны выглядят в Mi-fit.


image

image

Тут я ничего плохого сказать не могу. Все просто, понятно и наглядно. Есть приятные графики, детализация измерений, даже сравнение с другим пользователями (которое, впрочем, либо очень общее и не обновляется, либо взято с потолка, потому что приложению выключен доступ в интернет уже несколько месяцев).


А сейчас будет больно, приготовьтесь. Gadget bridge:


image

image

Я не знаю, как это комментировать. Я не знаю, как это читать. Я не знаю, кому пришло в голову вставить это в релизную версию приложения. Какую информацию я могу извлечь из этих экранов, помимо того, что разработчик сно дал понять, что ему наплевать на меня? Ну, я вижу, что, оказывается, глубокого сна у меня выдалось целых 12 минут за всю ночь. Звучит не очень убедительно. А еще у меня было 8 часов и 13 минут чего-то. Не знаю чего, надпись находится за пределами экрана. Наверное, речь о беге трусцой или занятиях кросс-фитом. Экран "Активность" я оставлю без комментариев и просто молча удалю приложение.


Есть и исключения


Но, к сожалению, их доля в общей массе исчезающе мала. Однако, эти продукты по-настоящему хороши, и с точки зрения UI/UX сделаны отлично. И потому популярны.


Приведу несколько примеров таких продуктов, которыми сам пользуюсь и получаю от этого удовольствие:


  • Рабочая среда KDE Plasma
  • Федеративная соц. сеть Mastodon (веб-клиент)
  • Менеджер паролей Bitwarden
  • Браузер Firefox от Mozilla
  • Офисный пакет LibreOffice

Наверное, есть и еще примеры, но факт остаётся фактом: качественный и продуманный интерфейс в СПО скорее исключение, чем правило, и это печально.


Почему так происходит?


Я вижу три причины:


  1. Нет понимания. Многие свободные программы пишутся энтузиастами-одиночками или маленькими группами программистов. Проблема в том, что программист не дизайнер и в дизайн не хочет, не может, не умеет и не должен. Дизайном должен заниматься профессионал, но программисты зачастую не имеют понимания, что этого профессионала нужно к делу привлечь. В итоге делают сами, как умеют.
  2. Нет ресурсов. СПО не коммерческий проект и разработчики, чаще всего, работают на голом энтузиазме и редких донатах. В таких условиях, конечно, никто не будет нанимать дизайнера (оплатить бы хостинг за следующий месяц).
  3. Нет мотивации. Тяжело работать, не получая никакой отдачи. Запал заканчивается, человек выгорает. Я видел десятки заброшенных проектов и проектов, которые годами ходят по рукам, их забрасывают одни, подбирают другие и так далее. Почему так случается? Я думаю, это наша вина, как пользователей. Разработчикам не донатят, в проекты не коммитят, большинство ленится даже написать хороший отзыв приложению в плей-маркете или на Alternativeto. В коммерческих проектах есть зарплаты, целые команды, менеджеры и HR'ы, занятые тем, чтобы команда была замотивирована, сплочена, и работала эффективно, потому что это приносит деньги. В сфере разработки СПО это большая редкость. Результат предсказуем: разработчики просто забивают на свои проекты, потому что не видят причин ими заниматься дальше.

Что можно с этим сделать?


Я не являюсь профессионалом, но поделюсь своими мыслями на этот счёт. Буду рад услышать ваши варианты в комментариях.


Опираясь на описанные выше проблемы, я могу предложить только одно решение создать НКО, занимающееся дизайном и UI/UX свободного ПО. Эдакий "FOSS Design foundation". В организации должны работать несколько штатных дизайнеров на зарплате, а также волонтеры (например студенты соответствующих направлений). Организация будет финансироваться за счёт пожертвований и будет заниматься просвещением разработчиков, выпуском инструментов и материалов для них, консультациями и курированием проектов.


Если разработчики понимают, что код нужно писать по PEP8, но не понимают, что UX важен, значит им просто никто этого не объяснил. Этим и может заняться новое НКО. Также важно дать разработчикам качественные инструменты: если в распоряжении девелопера только пыльный шаблон из Android Studio, слабое понимание того, как делаются интерфейсы и желания заниматься этим на час, то результат будет соответствующий. Команда профессионалов должна заняться разработкой шаблонов, рекомендаций и готовых материалов (например палитр и шрифтов), которые будут распространяться под свободными лицензиями. Организация также могла бы консультировать, курировать, брать на себя отдельные проекты, которые покажутся ей достойными.


Возможно я чего-то и не понимаю, но, на мой взгляд, запрос на такую организацию назрел уже давно.


Вместо вывода


Вместо вывода предлагаю всем сочувствующим FOSS движению поделиться своим мнением, взглядом на проблему и предложениями по ее решению в комментариях. Все-таки это и есть подход Open source сообщества: работать вместе ради достижения общей благой цели, то есть в интересах всего общества.


Спасибо за внимание!

Подробнее..

Изучение иностранных языков с помощью программ для чтения

22.11.2020 00:21:34 | Автор: admin

Всем здравствуйте!


Прошло уже какое-то время с моей первой статьи на хабре. Спасибо всем. Статья, насколько я могу судить, принята сообществом достаточно тепло. Сегодня хотелось бы поговорить о возможностях читалок с точки зрения изучения иностранных языков. Есть много разных методик и способов изучения языков, но один из самых простых, очевидных и доступных начать читать книгу на другом языке: в адаптированном варианте, если пока так не получается, или в нормальном, если уже получается. По своему опыту могу сказать, что особенно приятно читать в оригинале любимого автора.
Так что же нам могут предложить читалки? Размышления на тему под катом.


Должен сразу оговориться, что больше рассказ коснётся KnownReader (он же KR), который мы разрабатываем, а также близкого семейства, построенного на одном движке (CoolReader, он же CR; KOReader). Но кое-какие ссылки и на другие приложения будут даны, если потребуется. Хотелось не столько поделиться собственными ноу-хау, сколько рассказать, как оно работает изнутри, с какими проблемами пришлось столкнуться и как они были решены, а заодно и познакомить читателя с интерфейсом и возможностями приложения. Потому что читалка это целая философия, без понимания которой можно не заметить целый океан возможностей, скрытых от взгляда обывателя.


Выделяем, переводим


Вернёмся к нашим баранам. Напомню, остановились на вопросе о том, как читалки могут помочь в изучении иностранного языка. Самое простое выделение одного или нескольких слов с последующим переводом выделенного текста в словаре. Выделение больная для меня тема, так как я убеждён, что вариант с подержали, подвигали ползунки, реализованный в большинстве приложений (не только в читалках), медленный и жутко неудобный. Благо тут в KR есть возможность:


  1. Выделить одно слово двойным тапом (при включенной соответствующей настройке);
  2. Двумя быстрыми тапами в разных местах текста выделить текст между ними.
    При должной сноровке это получается сделать практически мгновенно. Этим KR выгодно отличается от других читалок. Обязательно попробуйте и поделитесь своим мнением в комментариях здесь или на форуме.
    Остаётся только выполнить перевод в словаре. Словарь, по сути, является отдельной программой. Для перевода текст передается в неё, и дальше уже в её интерфейсе происходит магия. Этот базовый функционал хорош тем, что он надёжен, доступен оффлайн и реализован практически во всех читалках.


Для некоторых словарей (в том числе онлайн) есть возможность уточнить направление перевода.


Направление перевода
Направление перевода Перевод (Lingvo)

Про элементы управления


Должен сделать небольшое отступление о том, как устроены элементы управления в программах для чтения. Читалка вещь уникальная тем, что она должна быть похожа на книгу. Поэтому на всём своём пространстве она рисует текст. А если везде текст, как же ей управлять? И вот что обычно предлагают читалки:
Тап-зоны это зоны экрана (в KR их 9 3х3), на нажатие которых можно назначить действия. Очевидно, должны быть как минимум следующая/предыдущая страницы, но не только. Разнообразие действий очень велико, а потому тут каждый развлекается как может. Буквально. В настройках KR можно настроить тап-зоны под себя;


Тап зоны


Жесты. Всякие смахивания, проведения слева направо, сверху вниз и т.п.;
Панель с кнопками. Её не все любят, считая её визуальным мусором, но не все и не любят.


Про ноу-хау


И эти самые базовые возможности в KR заиграли по-своему, т.е. даже в таких в некотором смысле стандартных аспектах взаимодействия с читалкой KR отметился своим подходом. Вот что здесь было доработано:


  1. В качестве словаря в KR можно указать любую программу, которая может принимать в себя текст (хоть СМС отправляйте). Это удобно, если у вас есть какой-то словарь, про который KR не знает. Отмечу также, что и переключение словарей также можно вынести на тап-зону;
  2. Сделали несколько настроек словарей, между которыми можно быстро переключаться (режимы переключить на 2 словарь, переключить на 2 словарь на один следующий перевод, потом вернуться обратно);

Словари и режимы выделения
Настройки словарей Настройки различных видов выделения в разных режимах: режим чтения, выделения, инспектора

  1. Добавили уникальное действие длинный двойной тап. Это когда вы делаете двойной тап, но не отпускаете палец после второго тапа. На это уникальное действие можно настроить что душе угодно. Например, вызов другого словаря. Если вы знаете другую читалку, которая умеет длинный двойной тап, напишите об этом в комментариях или в личку. Мне правда интересно;
  2. К жестам (это не про словари, но все равно напишу) добавили возможность менять размер шрифта диагональным щипком и размеры полей горизонтальным и вертикальными щипками. Тут следует отметить, что аудитория читалки отреагировала хорошо. Но не вся аудитория. А потому без правок не обошлось. В следующем же релизе пришлось вынести в настройки возможность отключения управления жестами;
  3. Разнообразили панель с кнопками её теперь можно очень гибко настраивать: изменять список и функции кнопок, регулировать её размер (больше, меньше, средний) и цвет. Вообще, гибкость настраивания это про KR. Возможно, кого-то это может запутать поначалу, но было замечено, что к такой свободе люди быстро привыкают и неохотно от неё отказываются.

Несколько словарей


Одна из моих любимых тем.


Минутка заботы от автора материала

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


  1. Элемент управления или пункт меню в читалке;
  2. Приложение для отображения словарей (Abbyy, GoldenDict и т.д.);
  3. Конкретный словарь (например Толковый словарь Ушакова), отображаемый в пункте выше.
    Как правило, из контекста понятно о чём идет речь. Если непонятно, спрашивайте, отвечу.

Как правило, хватает двух словарей. Но в KR их больше. И вот что это даёт:


  1. Разнообразие. В одной программе могут быть одни словарные статьи, в другой другие. Где-то есть транскрипция, где-то нет. Какие-то умеют переводить фразы (Яндекс, Гугл, Промт), какие-то могут оперировать только словами.
  2. Словари языковые и толковые. Может быть интересно посмотреть как перевод слова, так и его толкование (википедия, энциклопедии и т.д.).

Стоит сказать пару слов о приложениях-словарях, достойных внимания:


  • Lingvo. Очень достойное приложение от уважаемой фирмы ABBYY. Всё на уровне, даже с проговаривателем. Умеем показывать его в карточке (т.е. на часть экрана). Есть хороший такой минус это платно. Как сама программа, так и словари. Я покупал английский словарь за 20 долларов (а для России ещё и с НДС). Другой значимый минус в том, что нельзя повлиять на развитие. Например, я просил поддержку добавить кнопку скопировать словарную статью уж столько воды утекло, а её до сих пор не добавили.
  • GoldenDict. Очень хорошая вещь, практически не имеющая аналогов, у которой есть куча словарей. Их очень много. Также GoldenDict умеет найти словари из Lingvo и использовать их. Есть форк на форуме 4pda, который привносит некоторую функциональность и осовременивает интерфейс. От минусов совсем грустно становится развитие остановилось, исходников программы нет. Да и платный он, этот GoldenDict.
  • Aard 2. Совершенно уникальная вещь. Программа создана для обработки больших (даже не больших, а огромных) словарей. На сайте Aardа выкладываются дампы википедий. Представляете, оффлайновая википедия в телефоне? Ух...

Любопытный вариант использования Aard

Аард один раз лично мне очень помог в работе (в настоящей, за которую деньги платят). У него есть утилита Slob (на питоне), которая позволяет выполнять поиск словарных статей и выгружать их в html формат. Нам (моей команде на работе) нужно было обогатить информацию о населённых пунктах РФ данными из википедии (численность населения по годам и т.д.). Мы разработали свою утилиту, которая запускала Slob и давала ей на вход название населенного пункта (например Пермь). Далее находились все статьи (с околопермской тематикой), после чего мы пакетно обрабатывали файлы и легко вычисляли нужный (через jsoup) по наличию определённых атрибутов коды ОКАТО, ОКТМО и т.д., затем забирали из него нужные данные (страницы википедии хорошо шаблонизированы и структурированы). Так задача была решена в автоматическом режиме по всем населённым пунктам РФ.


  • Яндекс Переводчик / Гугл Переводчик. Это уже новое веяние, они в представлении не нуждаются. Работают, развиваются, очень хороши. Недавно, правда, Яндекс немного расстроили, переведя свой API переводчика на платные рельсы. Мы об этом писали на форуме и даже инструкцию оформили о том, как его теперь готовить для использования в KR. Поэтому здесь повторяться не буду. Если кому интересно станет, заходите, в нашей ветке на форуме уютно.
  • Если знаете другие хорошие словари добавляйте в комментарии, обсудим.

Пользовательский словарь


Немного многословно, но до сих пор мы с вами обсудили только базовую функциональность выделили слово, перевели слово (возможно, даже в нескольких словарях и с множеством хитрых настроек). Хорошо, но мало. Ведь есть нерешённая проблема. При чтении нам иногда встречаются трудные слова, которые мы переводим. Эти слова могут встречаться и на следующих страницах, а мозг устроен таким образом, что сразу слово можно и не запомнить. А потому одно и то же действие мы вынуждены повторить несколько раз. Чтобы этого не делать мы добавили то, что называем пользовательским словарём. Это наше нововведение и в какой-то мере отличительная особенность.
Сейчас расскажу, как оно работает. Мы завели небольшую панель под книгой, в которую помещаем слова из пользовательского словаря (до 10 слов), встретившиеся на текущей (читаемой) странице. Можно быстро нажать и подсмотреть перевод.


Онлайн-словарь
Перевод в онлайн-словаре Перевод в онлайн-словаре

Пользовательский словарь
Сохранённые слова в пользовательском словаре Быстрый просмотр слова из пользовательского словаря

Цитаты, история поиска
Диалог пользовательский словарь / цитаты / история поиска в словаре Диалог пользовательский словарь / цитаты / история поиска в словаре

Возникает закономерный вопрос о том, как же пополнять пользовательский словарь? В этом есть техническая сложность. Отправить слово на перевод в стороннее приложение мы ещё можем, а вот получить его, как оказалось, уже совсем не тривиальная задача. Вот что тут придумано и реализовано:


  1. При выделении слова оно запоминается внутри KR как последнее выделенное слово.
  2. Дальше оно уходит во внешнюю программу-словарь.
  3. Мы в свою очередь прочитали, посмотрели, дальше ВДЕЛИЛИ словарную статью и СКОПИРОВАЛИ её в буфер обмена, затем вернулись в KR и нажали действие (мы же помним, что его можно назначить на тап-зону) создать элемент пользовательского словаря по последнему выделению и содержимому буфера обмена (знаем, что надо поработать над формулировкой, но как есть), после чего осталось только нажать OK. Можно даже без буфера есть возможность отправить текст в KR через всплывающее меню андроида функциональность PROCESS_TEXT.
    Что здесь сложно? Копирование словарной статьи. Это снова подержать, подвигать ползунки (не у нас, а в программе-словаре). Хорошо, мы упорные. Поговорили с коллегами из GoldenDict mod, сделали для них доработку добавили кнопку в GoldenDict, чтобы можно было хотя бы выделить словарную статью. Коллеги обещали нашу доработку включить в свой билд и выпустить. Ждём-с.

Онлайн словари


Пользовательский словарь это не только нижняя панелька. Это полноценное окно пользовательский словарь / цитаты / история поиска в словаре. С поиском и т.д. Вызывается также по действию, либо можно нажать на ссылку слов: Х.
Вроде бы и звучит хорошо, но мало. Мы живем в современном мире. Современный мир живет в онлайне. Поэтому тут мы добавили онлайновые словари Яндекс, Lingvo, Wikipedia (пока еще в ранней реализации).:


  1. Яндекс хорош тем, что переводит несколько слов (добавили действие перевести всю страницу). Лингво расширенными словарными статьями и транскрипциями. Википедия хороша сама по себе.
  2. Технически онлайновый словарь вызывается не выходя из KR, т.е. вызывается в собственном интерфейсе KR. Таким образом мы получили главную ценность у нас нет необходимости копировать перевод, вставлять в пользовательский словарь и т.д. Перевод в онлайновом словаре автоматически заносит слово в историю с переводом. И мы сразу видим его на следующих страницах. Профит.
  3. Минусы онлайновых словарей тоже очевидны зависимость от внешних сервисов с их ограничениями (которые могут меняться), а также необходимость быть онлайн.
    Ну, это, в целом, более чем приемлемо.

Режимы


Ещё не уснули? Тогда пойдём дальше, в глубь. Про выделение слов и текста я уже сказал, но тут есть ещё возможности:


  1. Режим выделения.
    Включается режим выделения (страница текста обводится сплошной рамочкой), в котором слово можно выделить в один тап, а несколько слов тапнули и провели. Что мы поменяли. В режиме выделения можно настроить другие словари на действия. Действий три: выделение слова, выделение нескольких слов, выделение слова по длинному двойному тапу. Это расширяет возможности использования выделения. Допустим в обычном режиме перевод в англо-русском словаре, в режиме выделения в википедии.
  2. Режим инспектора.
    Страница текста выделяется штрихпунктирной рамочкой. Режим выделения после перевода отключается. Режим инспектора это такой залипающий режим выделения, который включен, пока не выключен. Удобно, например, если хочется протыкать много слов на странице друг за другом и получить быстрый перевод по каждому. Также в режиме инспектора тоже можно настроить свои словари (на три варианта выделения).

Режимы
Режим выделения Режим инспектора

Википедия
Поиск в Википедии список статей Википедия выбранная статья

Что дальше?


Много всего сказано, но хочется большего:


  • У нас есть возможность отображения в горизонтальном расположении устройства текста в виде двух страниц (выглядит совсем как раскрытая книга). И это можно как-то обыграть. Есть мысль сделать возможность на одной странице показывать исходный текст, а на второй перевод этого текста.

Отображение двух страниц


  • Пользовательский словарь. Сейчас найденные слова на странице отрисовываются на нижней панельке. Есть желание просто подсвечивать их в тексте в виде примерно как гиперссылка.
  • Лингво-онлайн умеет отдать wav-файл с озвучкой. У нас пока не реализовано, но можно сделать проговариватель.
  • Википедия-онлайн у нас выводится без форматирования. Можно развиваться в эту сторону.
    К чему это я? Да к тому, что приложение живёт, пока оно кому-нибудь нужно. Желательно, чтобы оно было нужно не только его автору и паре-тройке его друзей. Нет, это, конечно, тоже уже кое-что, но всегда хочется большего. Если вы посетите нашу ветку на 4pda, то, возможно, заметите, что у нас ведётся достаточно активное обсуждение новых фич и старых багов. У нас есть своя аудитория, мы ценим её мнение и дорожим ей. Но взгляд со стороны довольно часто бывает полезным. А потому приглашаю вас, хабровчане, к обсуждению.
Подробнее..

Боль разработчика Никогда не давайте пользователям бесплатный тариф

15.03.2021 12:08:42 | Автор: admin


Если вы запускаете какой-то сервис в интернете, всегда есть соблазн предложить бесплатный тариф, чтобы завлечь публику.

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

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

Британский разработчик Гвидо Зюйдхоф (Guido Zuidhof) настолько устал от таких пользователей, что запустил специальный сайт No Free Plan, на котором излил всю свою боль по этому поводу.

Основной аргумент Гвидо заключается в том, что бесплатные пользователи дорого обходятся.

Цена бесплатного плана


На первый взгляд кажется, что в бесплатном тарифе одни плюсы. Вы практически не тратите ресурсов, предлагая чисто символический объём услуг, который не стоит вам почти ничего в плане серверной мощности. Это привлекательная конфетка для пользователей, которую они заглатывают и со временем переходят на платный тариф.

Но в реальности у каждого бесплатного плана есть конкретная цена. Она измеряется в вашем времени и усилиях.

Мы уже упомянули, что люди на самых дешёвых тарифах самые назойливые. Как думаете, от кого придёт больше запросов в службу поддержки: от десяти крупных корпоративных клиентов с подпиской за $100 в месяц или от тысячи пользователей, каждый из которых сидит на тарифе за $1 (включая школьников, студентов)? Очевидно, что в первой группе более высококвалифицированные специалисты и профессиональные IT-департаменты, которые задают меньше глупых вопросов.

Хотя по деньгам это абсолютно одинаковая сумма, но во втором случае седина покроет ваши виски гораздо быстрее, уверен Гвидо Зюйдхоф.

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

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

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

В итоге бесплатные тарифы слишком дорого обходятся.

Ничего бесплатного не бывает


Понятно, откуда идёт заблуждение об эффективности бесплатных планов. Мы видим, что крупнейшие интернет-компании Google и Facebook не берут никакой платы за основной набор услуг. Хотя у Google есть много платных сервисов, но для широкой публики всё основное бесплатно. И на Google Drive, и на Gmail есть бесплатный лимит, который устраивает почти всех.

И стартап YouTube тоже никогда не брал платы за просмотр видеороликов.

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


Сервис слежки за сотрудниками Hubstaff почти обанкротился с таким бесплатным тарифом

Прежде чем предлагать бесплатный сервис налево и направо, наращивая пользовательскую базу в геометрической прогрессии, нужно продумать бизнес-модель. Это проблема не только SaaS, но и онлайновых СМИ, которые хотят сохранить бесплатную подписку. Например, несколько лет назад закрылся Gigaom популярный и качественный сайт с техническими новостями и аналитикой. Один из лучших представителей IT-журналистики не смог выжить по модели фримиум.

Какие альтернативы?


Пробный период


Отлично работает пробная подписка. Особенно как в варианте Netflix когда одновременно с бесплатным пробным периодом заключается договор на дальнейшее платное обслуживание, так что через 30 дней счёт выставляется автоматически. Теоретически, пользователь имеет право в любой момент отменить подписку, хотя на практике очень многие забывают это сделать или ленятся это не совсем честно, но законно во многих странах. Ну а большинство действительно довольны платным сервисом Netflix и привыкают к комфорту.

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

Пробный период эффективен даже без тёмных паттернов. Лимит можно выставить по времени (30 суток) или по объёму услуг (в гигабайтах трафика, минутах просмотра и т. д.).

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

Фильтрация пользователей


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

Вы выбираете действительно достойных, кто вам нравится.

Теперь в сервисе будет не толпа крикливых халявщиков, а очень интеллигентная, интеллектуальная и благодарная публика. Вы будете гордиться, что предоставляете бесплатные услуги таким хорошим людям, это благоприятно для имиджа, репутации и кармы.

Здесь нет никакого снобизма, разработчик сервиса имеет полное право на такую избирательность, какую захочет.

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

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

Единовременный платёж


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

Например, это может быть чисто символический платёж в 1 доллар а затем тот же бесплатный тарифный план навсегда. Или ограниченный набор услуг, как в бесплатном плане, но за минимальную сумму.

Это не полноценная подписка на сервис, а некий промежуточный вариант между вечным пробным периодом и нормальной платной подпиской. По аналогии с фримиум (freemium) его можно назвать чипиум (cheapium).

Важно точно обговорить условия такой подписки. Очевидно, что в наше время никто не может гарантировать вечный сервис. Поэтому нужно установить минимальный срок работы сервиса (хотя бы 1-6 месяцев), а если тот закроется раньше, то деньги будут возвращены. Рекомендуется указать возможность закрытия аккаунта в случае неактивности (в течение полугода или больше), а также различные льготы подписчикам.

Автор концепции No Free Plan говорит, что на создание сайта его побудило чтение многочисленных дискуссий в сообществе Indie Hackers, где общаются основатели мелких онлайн-компаний и независимых бизнесов. Обычно это разработчики-одиночки, которые запускают платный сервис, SaaS, утилиту, игру или мобильное приложение или несколько таких сервисов, зарабатывая доход в качестве индивидуального предпринимателя.

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

Проблема опенсорсных мейнтейнеров


Эта проблема отлична известна в сообществе Open Source. Мейнтейнеры опенсорсных проектов работают бесплатно и быстро выгорают на этой работе, сталкиваясь с массой претензий от недовольных пользователей.

Не каждый выдерживает такое давление. Некоторые психуют и просто удаляют свои репозитории, как это сделал хабраюзер fafhrd91, автор веб-сервера Actix Web. После критики его профессиональных навыков автор отказался от дальнейшей поддержки проекта (репозиторий всё-таки восстановили и передали другому мейнтейнеру).

От работы больше никакой радости. Возможно, вы захотите уйти, но не сможете из-за чувства ответственности за свой код, сообщество и людей, которые используют ваше программное обеспечение, пишет мейнтейнер GNOME Calendar. К сожалению, работа мейнтейнером свободного ПО может плохо отразиться на вашем психологическом и эмоциональном здоровье.

В феврале 2021 года психически неуравновешенный пользователь угрожал расправой автору опенсорсной программы curl за ошибки в коде, которые привели к финансовым потерям.

Предлагая бесплатный тариф, вы рискуете столкнуться с теми же проблемами, от которых страдают мейнтейнеры опенсорсного сообщества. Не повторяйте чужих ошибок, пишет Гвидо Зюйдхоф.

Преимущества бесплатных тарифов


Конечно, его мнение крайне субъективное. Сам Гвидо запустил два простеньких инди-сервиса и на сегодняшний день не заработал ещё тысячи долларов. То есть у него пока не накопилось достаточно опыта, чтобы делать такие выводы и объективно оценить пользу бесплатных тарифов.

В то же время мы видим, что многие компании предлагают данный вариант. Бесплатные вечные тарифы есть у Trello, Jira, Slack, Asana, Dropbox. Миллионы профессионалов используют эти сервисы бесплатно, а потом рекомендуют их в компаниях, куда приходят работать и те покупают платную подписку. Ссылки на Dropbox разлетаются по интернету как вирусный маркетинг. Таким образом, здесь расходы на бесплатные тарифы многократно окупаются.

Вопрос только в том, это стандарт индустрии или исключение из правил?

Модель действительно работает в интернет-стартапах, у которых главная цель максимально быстро нарастить аудиторию, пусть и себе в убыток (инвесторы оплатят расходы). Эти убытки окупятся в будущем. А мы как обычные пользователи с удовольствием наслаждаемся бесплатным сервисом отличного качества, без рекламы.

Это модель будущих единорогов.

Но правда и в том, что бесплатный план не всегда конвертируется в продажи. Если по неосторожности выложить в бесплатный тариф что-то полезное, то вы рискуете попасть на деньги, когда налетят миллионы юзеров из Юго-Восточной Азии. Тогда 95% вашего трафика будут генерировать бесплатные пользователи, которые никогда не заплатят ни цента, а скорее найдут другую бесплатную альтернативу.

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

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



На правах рекламы


Наша компания предлагает аренду VPS для совершенно любых проектов. Создайте собственный тарифный план в пару кликов, максимальная конфигурация позволит разместить практически любой проект 128 ядер CPU, 512 ГБ RAM, 4000 ГБ NVMe!

Подробнее..

Категории

Последние комментарии

  • Имя: Макс
    24.08.2022 | 11:28
    Я разраб в IT компании, работаю на арбитражную команду. Мы работаем с приламы и сайтами, при работе замечаются постоянные баны и лаги. Пацаны посоветовали сервис по анализу исходного кода,https://app Подробнее..
  • Имя: 9055410337
    20.08.2022 | 17:41
    поможем пишите в телеграм Подробнее..
  • Имя: sabbat
    17.08.2022 | 20:42
    Охренеть.. это просто шикарная статья, феноменально круто. Большое спасибо за разбор! Надеюсь как-нибудь с тобой связаться для обсуждений чего-либо) Подробнее..
  • Имя: Мария
    09.08.2022 | 14:44
    Добрый день. Если обладаете такой информацией, то подскажите, пожалуйста, где можно найти много-много материала по Yggdrasil и его уязвимостях для написания диплома? Благодарю. Подробнее..
© 2006-2024, personeltest.ru