четверг, 11 октября 2018 г.

Популяризация LibreOffice и поиск начинающих разработчиков на С++

Поглядел я на количество открытых багов в багзилле проекта, оценил количество активных разработчиков в gerrit, плюсом внимательно поглядел на общую фотографию с конференции в Тиране. И сделал печальный вывод: разработчиков, которые непосредственно пишут код в проект крайне мало и они все достаточно возрастные. И задумался я о преемственности поколений девелоперов, и пришла мне в голову мысль попробовать привлечь в проект студентов или начинающих программистов, которые возможно захотят поучаствовать в большом проекте с открытым исходным кодом, повысить свои навыки программирования, а также иметь несколько патчей в проекте, чтобы было что показать работодателю в не таком и далёком будущем.
Написал я объявление, нацеленное на развешивание в профильных ВУЗах (вот ссылка на ПДФ), которое попросил распространить среди студентов там, где мог (не так кстати и много мест, где я попробовал, надо расширять ареал распространения информации). В объявлении ищутся именно начинающие кодеры на С++ (это важно).
На сегодня прошло не так много времени с момента просьбы о размещении объявления, однако есть уже некоторые результаты:
1. Появилась пара человек, которые захотели поддерживать инфраструктуру проекта, пока в виде русскоязычного сайта ru.libreoffice.org, и будут разрабатывать/поддерживать новую версию сайта в дальнейшем.
2. Из этой пары человек один также будет пробовать писать код, начав с Easy hacks
3. Ещё один человек заинтересовался проектом LibreOffice, как ещё одним проектом, куда он может слать патчи на С++. Не факт, что он будет это делать, но хотя бы он теперь знает, что можно.
4. И ещё один товарищ написал мне отдельное письмо, что также желает писать код в проект, и как только настроит необходимое окружение, так появится на нашем IRC канале #libreoffice-ru в сети freenode.net (вот вэб-интерфейс для простоты вхождения в IRC, если кто-то заинтересовался).
И это собственно вовсе не те люди, на которых было ориентировано само объявление. Это люди, которые узнали о теме из просьбы разместить объявление. Это как в теоретической науке: исследуют нейтронные звезды, а в качестве практического применения люди получают технологию wi-fi. 
В общем и целом, я не уверен, что само объявление появится хоть в одном ВУЗе и что хоть один человек заинтересуется проектом, однако то, что хоть какой-то результат есть уже сейчас - это хорошо.
Если кто-то заинтересуется кодингом на С++ в проект LibreOffice - милости просим.
Если кто-то может распространить объявление среди студентов ИТ специальностей - буду благодарен.

четверг, 4 октября 2018 г.

Использование кода, написанного в рамках GSoC, в LibreOffice

Я уже писал про то, что в этом году студенты со всего мира писали код в рамках спонсируемого гуглом мероприятия GSoC. В том числе код писали и для LibreOffice. Одним из заявленных проектов была переработка диалога Печать. Студент (Daniel Silva) с заданием справился, диалог переделал, код соответствующий написал (об этом я тоже писал ранее). Однако, по какой-то причине, код он писал не в основной мастер-ветке, где ведется разработка следующей версии LibreOffice 6.2, а в отдельной. И теперь сложилась достаточно неприятная ситуация: студент код написал, а в основную ветку его не влил. Бог знает по каким причинам. Самое плохое, что и наставник его из сообщества LibreOffice, который курировал именно этот проект, не спешит делать это сам и не спешит чем-то помочь или как-то ускорить студента.
Получается, что вроде бы успешно завершенный проект, запрошенный TDF в целях улучшения LibreOffice, и оплаченный гуглем студенту, в проект LibreOffice не попадает.
Самый простой вопрос: если так происходит, зачем вообще подавать заявки в гугл на участие в GSoC?
Ещё вопрос: почему разработка велась в отдельной ветке, хотя все остальные проекты (почти) просто писали в мастер сразу? Да и простые контрибьютеры с улицы пишут код сразу в мастер, а не плодят себе отдельные ветки. И их код вполне себе принимают, конечно же после ревью опытными товарищами.
Еще один вопрос: почему наставник отстранился от логического завершения проекта, от слияния кода с основной веткой? 
Изменение диалога Печать - это достаточно серьезно, это надо специально и отдельно тестить. А когда тестить, если этого нету в билдах ежедневных?
В общем и целом - получилось совсем нехорошо для проекта.

пятница, 28 сентября 2018 г.

Фото с конференции LibreOffice 2018 в Тиране

Прямо сейчас проходит ежегодная конференция разработчиков и вообще всех причастных к созданию LibreOffice в столице Албании городе Тирана. Ниже общее фото всех присутствующих:
PS: Майк, я тебя вижу :D

четверг, 27 сентября 2018 г.

Выпуск LibreOffice 6.1.2

The Document Foundation объявил о выпуске минорной версии LibreOffice 6.1.2. Данный выпуск состоялся после всего одного релиз кандидата, про который я писал в предыдущем посте. Если кто-то скачал и установил себе первый релиз кандидат с версией 6.1.2.1, то обновляться смысла нет, сборки побайтно идентичны.
Быстрый выпуск версии 6.1.2 был сделан для соблюдения сроков выпуска последующих релизов, в связи с тем, что предыдущий корректирующий выпуск версии 6.1.1 был выпущен с задержкой.
Скачать дистрибутив LibreOffice можно как всегда по ссылке https://www.libreoffice.org/download/.

воскресенье, 23 сентября 2018 г.

Выпуск LibreOffice 6.1.2.1

Доступен для скачивания первый релиз кандидат версии LibreOffice 6.1.2.
Скачивать как всегда отсюда - https://dev-builds.libreoffice.org/pre-releases/
Отдельно отмечу исправление 12 критических ошибок, приводивших к падениям офиса.
Советую всем, использующим в работе версию LibreOffice 6.1 обновиться до 6.1.2.1.

четверг, 20 сентября 2018 г.

Критичные для меня баги в LibreOffice. Шёл 2018 год

Я год назад писал мысли вслух на тему ошибок в LibreOffice, которые мешают мне использовать его в рабочем процессе (дома я его юзаю вполне успешно, мне хватает).
Так вот, изменилась ли ситуация с этими багами за год? Давайте поглядим (список из предыдущего поста):
1. Мерцает интерфейс пользователя, когда по меню водишь мышкой, причем для видеокарт от Интел в среде ОС Windows это никак не лечится, а глаза мне дороги. - в версии 6.1.1.2 присутствует до сих пор.
2. Рендеринг шрифтов в документе и в интерфейсе пользователя стал просто ужасный. - исправлено.
3. Рендеринг встроенных в документ изображений PNG также хромает, это не критично по сути, так как экспорт в ПДФ или печать выполняются с нормальным качеством, но смотреть на это убожество при работе в самом документе сил нет никаких. - это бага, связанная с OpenGL, и это не исправлено до сих пор.
4. В Calc не работает автофильтр при попытке фильтровать записи по дате. Это вообще нонсенс. По сути достаточно большой кусок реальной работы просто не может быть выполнен с использованием LibreOffice. - исправлено.
5. В текстовых документах Writer могут легко слететь стили, причем не все, а только некоторые и в произвольном порядке, а в больших документах, где стили обычно и надо использовать обязательно, это можно легко не заметить. По сути все преимущество стилей теряется для пользователя, поскольку необходимо постоянно глазами контролировать оформление текста и думать, а не слетели ли стили. - на сейчас такой бяки нет
6. До сих пор LibreOffice может выдать критическую ошибку в каком-то одном модуле и унести в ад ВСЕ открытые документы ВО ВСЕХ модулях. - не исправлено и не может быть исправлено! Ну давайте так, на мой взгляд критичных багов, приводящих к крашам в LibreOffice меньше не становится. В последнем чейнджлоге между 6.0 и 6.1 я насчитал 22 фикса крашей. Ну куда это годиться?! То, что в адъ уносятся ВСЕ документы - это архитектурная особенность LibreOffice - это мы выяснили ещё в прошлый раз, однако легче от этого не становится. Эта МЕГАошибка видимо будет присутствовать в LibreOffice всегда, пока будет ТАКОЕ количество крашей.

Итог: исправлена половина багов. Это достаточно хорошо.

А теперь немного новых бяк, которые меня огорчили за прошедший год в LibreOffice, и которые пока не исправлены:
1. LibreOffice безумно медленно открывает таблицы в формате Excel с большим количеством комментариев в ячейках. Не то, чтобы это беда беда, но приятного мало.
2. LibreOffice безумно медленно отрабатывает автофильтр в таблицах в формате Excel с большим количеством комментариев в ячейках. А вот это беда беда, потому что замедляет работу с таблицей. Автофильтр я дергаю в рабочей таблице достаточно часто. Это явно проблема фильтра импорта, потому что автофильтр на том же контенте с комментариями в формате ODS (родном) работает достаточно моментально.
3. Совсем не бага, но отсутствие функционала - не получилось найти вменяемый и производительный способ собирать данные из разных файлов и нескольких таблиц по 2000 строк и 20 столбцов в одну большую таблицу в отдельном файле. Для того же Excel нашлась надстройка Power Query, которая может кучу разных вещей и при этом, для получения нужного результата, мне, простому юзеру-ламеру, не потребовалось изучать работу БД и программирование макросов.

Я имею надежду, что что-то улучшится в плане исправления багов за следующий год.

ps: кстати, в багзилле есть приоритезация по критичности багов. Однако оперативно реагируют по сути только на critical (а это либо краши, либо некая штука, которая делает работу с программой просто невозможной). А все остальные статусы равноценны, поскольку разработчики все равно правят только те баги, которые им интересны, или за которые им заплатили, не глядя на приоритет совсем.

пятница, 14 сентября 2018 г.

Инфографика от Collabora

Товарищи из компании Collabora опубликовали немного инфографики в своем блоге (см.ниже).
Коротенько: LibreOffice поддерживает 205 различных форматов файлов, имеет 200 миллионов активных пользователей по всему миру, тестируется на 105 тысячах документов, за год с июля 2017 по июль 2018 года в проект было сделано 16 749 коммита, из которых треть сделана сотрудниками Collabora, образ docker с онлайн офисом CODE был скачан 7,5 млн.раз, загод добавили 1753 юнит теста, из которых 41% заслуга Collabora, Collabora Office используют 250 тысяч пользователей в 55 странах.

четверг, 13 сентября 2018 г.

Выпуск LibreOffice 6.1.1

The Document Foundation объявил о выпуске первого корректирующего релиза LibreOffice 6.1.
Всем пользователям, использующим версию 6.1 крайне рекомендуется обновиться до 6.1.1.
Списки исправленных ошибок:
Скачать новую версию можно как всегда по ссылке https://www.libreoffice.org/download/.

четверг, 30 августа 2018 г.

Руководство по условному форматированию в LibreOffice Calc

Вздумалось мне пографоманить и я решил написать обо всех доступных вариантах условного форматирования, доступного в LibreOffice Calc. В итоге просто список опций перерос в небольшое руководство с картинками, комментариями и пояснениями. 
Скачать файл Руководства в формате гибридного PDF можно здесь
К сожалению, в текущей версии LibreOffice, в условном форматировании я обнаружил энное количество ошибок в графическом интерфейсе пользователя и в логике работы. Всё, что я накопал, я отправил в багзиллу проекта:

Ошибка
Статус
Суть ошибки
Новая
Запрос на улучшение: добавить настройку для указания дня начала недели (сейчас это Воскресенье!)
Исправлено
Неправильно отображалось количество дней в неделе, 9 вместо 7
Новая
Не работает прокрутка мышью в списке условий
Новая
Запрос на улучшение: позволить полный вид отображения условия в списке (сейчас отображается полностью только выделенное условие)
Новая
Изменяются настройки условного форматирования при копировании диапазона из Calc в Writer как OLE объекта
Дубликат
Запрос на улучшение: позволить импортировать стили из существующих документов в текущий, как это можно во Writer
Исправлено
Не обновляется тип значка в условном форматировании, если удалить минимальное или максимальное значение в диапазоне
Новая
Столбцы гистограмм слипаются, если в соседних ячейках одинаковые значения
Новая
Некорректная работа при использовании нового пункта контекстного меню ячейки "Условное форматирование"
Новая
Необходимо удалить элемент Максимум из списка, который задает Минимум, и удалить элемент Минимум из списка, который задает Максимум
Новая
Проблема с форматом числа при применении условного форматирования, если формат числа в ячейке был изменен вручную
Исправлено
Нужно изменить некоторые названия условий для типа "Значение ячейки" (там, где было указано число 10)

понедельник, 27 августа 2018 г.

Результаты GSoC 2018 для LibreOffice

Как я ранее писал, что несколько студентов пробовали этим летом писать код для проекта LibreOffice в рамках ежегодного мероприятия Google Summer of Code.
Ниже список студентов, их задач и, по ссылкам, доступны их отчеты и достижения (или мои комментарии, если студент вдруг себя так или иначе не проявил):
Daniel Silva - переработка диалога Печать (результат).
Kshitij Pathania - исправление ошибок и доработка Notebookbar (это ленточный интерфейс а-ля Риббон в MS Office) (результат в виде списка патчей).
Raghav Lalvani - доработка LibreOffice Viewer для Android и расширение его функциональности для возможности редактирования (я не увидел его результатов, возможно он просто ничего не сделал).
Vikas Mahato - реализация единого интерфейса для импорта данных из внешних источников в Calc (результат).
Nickson Thanda - исправление самых неприятных ошибок и внедрение запрошенных улучшений, связанных с интерфейсом пользователя (UI) и юзабельностью (UX) (я не увидел его результатов, возможно он просто ничего не сделал).
Hrishabh Rajput - улучшение для элемента Listbox в Base. (результат).
Ekansh Jha - реализация возможности редактирования объектов Smart Art в Impress (я не увидел его результата на соответствующей страничке проекта GSoC, хотя он явно занимался вопросом, но сделано было вероятно слишком мало, для того, чтобы результат был засчитан).
Saurav Chirania - улучшение тестирования и анализа ошибок UI в LibreOffice с реализацией DSL (Domain Specific Language) (результат).
Manuj Vashist - улучшение диалога Data Provider и добавление в него новых возможностей трансформации данных (я не очень понял, что вообще такое этот Data Provider, поскольку просто не нашел его в текущей версии 6.0) (я не увидел его результатов, возможно он просто ничего не сделал).
Muammer Mert Tümer - доработка LibreOffice Viewer для Android. Устранение проблем в скорости рендеринга документов (результат в виде списка патчей).
Shobhan Mandal - добавление поддержки Python в плагин LOEclipse (результат).
Итого, из 11 заявленных участников, справились с заданием 7. Это неплохой результат в принципе. Однако, просто для справки, в 2017 году все участники выполнили свои обязательства.

ps: в случае, если результаты по студентам будут обновлены (а такой шанс есть), я обновлю пост соответствующим образом.