OutWiker 3.3.0.934 beta. Векторные иконки и новое окно настроек

OutWiker 3.3.0.934 beta. Векторные иконки и новое окно настроек

Выложил первую в 2024 году бета-версию OutWiker. В этой версии было сделано достаточно много изменений, в том числе такие, которые в будущем позволят сделать интерфейс намного более удобным. Те, кто читают Телеграм-каналы @outwiker или @jenyaynet, уже в курсе основных изменений в этой версии, хотя и они не знают всей правды, потому что одну возможность я реализовал совсем недавно.

Читать далее…

Книжные итоги 2023

Книжные итоги 2023

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

Читать далее…

OutWiker 3.3.0.932 beta — Контекстное меню меток и более аккуратное главное меню

OutWiker 3.3.0.932 beta - Контекстное меню меток и более аккуратное главное меню

До конца года хочется успеть вложить еще одну бета-версию OutWiker, номер версии предновогодней сборки — 3.3.0.932 beta.

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

Читать далее…

OutWiker 3.3.0.930 beta. Исправление ошибок в библиотеках

OutWiker 3.3.0.930 beta. Исправление ошибок в библиотеках

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

Читать далее…

Про книгу Дэвида Сиббета «Визуализируй это!»

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

Читать далее…

Переписал еще одну статью про Matplotlib

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

Новую версию по сути переписанной заново статьи вы можете прочитать по ссылке — Как рисовать графики в разных окнах.

Все статьи про рисование графиков в Python с помощью библиотеки Matplotlib можно увидеть по ссылке — Использование библиотеки Matplotlib.

Первые впечатления об электронной книжке Meebook P10 Pro

Вчера получил электронную книжку Meebook P10 Pro, которая должна стать заменой моей старой Pocketbook 902, она у меня аж с 2011 года. Из-а того, что я читаю технические книги, то мне мне нужен был принципиально большой экран. Моя старая книжка уже многое пережила, и ей пора на пенсию по инвалидности. Ей и материнку меняли (ровно через месяц после окончания гарантии), и аккумулятор, она уже почему-то перестала сохранять страницу, до которой дошел при чтении (приходилось перед ее выключением добавлять закладку). Про старую читалку я когда-то даже писал обзор.

    

На второй фотографии можете сравнить две книжки. Слева — Meebook, справа — Pocketbook.

Про Meebook я узнал на Хабре и заказывал в AliExpress. В отличие от Pocketbook 902, она работает на Android, имеет подсветку, и, чем она меня подкупила больше всего, она позволяет черкать в книжках стилусом. Это основная причина, почему я до сих пор покупаю бумажные книги. В Pocketbook выделять цитаты можно было, но это была очень медленная процедура. Я думал купить полноценный планшет для чтения, но все-таки глазам приятнее читать книги на электронных чернилах, чем на светящемся экране. А тут вроде как и недопланшет, в котором есть Google Play.

Пока один из недостатков софта Meebook, который заметил, заключается в том, что встроенная читалка не умеет работать с книгами, запакованными в zip. Конечно, можно установить сторонний софт (поставил CoolReader), но там не работает рисование стилусом (возможно, я что-то не нашел в настройках). Надо поискать читалку, которая умеет работать со стилусом.

Новая версия статьи про Matplotlib

Переписал еще одну древнюю статью про использование библиотеки Matplotlib — Применение объектно-ориентированного стиля.

В ней рассказывается о том, какие есть способы ее использования, начиная с устаревшего модуля pylab, использование функций из модуля matplotlib.pyplot и использование более низкоуровневых объектов Figure, Axes, Line2D, Legend и др.

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

Продолжаю обновлять старые статьи про библиотеку Matplotlib для построения графиков на Python.

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

С момента написания первоначальной версии статьи прошло 10 лет (ужас какой!) и принципы работы с календарными данными в Matplotlib кардинально изменились (в лучшую сторону). Старые примеры там вообще уже не работали, и не только потому, что были рассчитаны на Python 2.x, но еще потому, что из Matplotlib одни используемые функции исчезли, а другие стали считаться устаревшими. Кроме того, внешний вид графиков в новых версиях Matplotlib намного симпатичнее.

OutWiker 3.3.0.928 beta

OutWiker 3.3.0.928 beta

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

Больше всего меня озадачили сообщения от нескольких пользователей о том, что наблюдаются проблемы с работой программы, запущенной из snap-пакета в Linux (при этом с flatpak все нормально). У себя пока я эту проблему отловить не смог (попробовал на двух компьютерах с Manjaro и Ubuntu), попробую еще в виртуалке с разными настройками поиграться.

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

А теперь перейдем к новой бета-версии под номером 3.3.0.928, которая начинает новую ветку OutWiker 3.3. В августе, пока я был в отпуске, удалось достаточно много сделать. Те, кто следит за развитием OutWiker в специально заведенном для этой цели Телеграм-канале @OutWiker, уже знают, чем я занимался, а остальным сейчас расскажу. 🙂

Читать далее…