Книга Рустама Агамалиева «Эффективное чтение»

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

За Рустамом Агамалиевым и его деятельностью в сети я наблюдаю с большим интересом уже давно — почитываю его канал Цеттелькастен и Персональные Базы Знаний в Телеграме и временами посматриваю его канал на Ютубе, где Рустам рассказывает о ведении заметок. Поэтому, когда я узнал, что он написал книгу «Эффективное чтение. Техники «нечтения» для профессионального роста», то сразу ее купил. Правда, прочитал я ее не сразу, и еще более не сразу пишу этот пост.

С подзаголовком у книги сложная история. Как рассказывал Рустам в своем канале, он хотел, чтобы слово «нечтение» было вынесено в название книги, но издателю это не понравилось. А на «профессиональный рост» в подзаголовке можно не обращать внимания — эта книга не про «успешный успех» и прочее инфоцыганство.

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

Про книгу Стефани Стимак «Дизайн для разработчиков»

Захотелось мне обновить свои знания по фронтенд-разработке, которые у меня застряли на уровне CSS времен Internet Explorer 6 9, а также принципов веб-дизайна примерно тех же годов. Начать решил с книги Стефани Стимак «Дизайн для разработчиков». Судя по названию, это должна была быть именно та книга, которая мне нужна. Но, как оказалось, ожидал я от нее слишком многого, и в первую очередь в этой книге не хватило глубины материала.

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

OutWiker 4.0.0.952 alpha 6. Большие внутренние изменения и незаметные внешние

OutWiker 4.0.0.952 alpha 6. Большие внутренние изменения и незаметные внешние

Перерыв с момента выхода прошлой альфа-версии несколько затянулся. Те, кто читает меня в Телеграм-канале, знают, что все это время я дописывал книжку про Python, поэтому разработку OutWiker временно поставил на паузу — для работы над двумя такими проектами просто не хватает свободного времени. Но несмотря ни на что, за это время я все-таки что-то делал и в рамках OutWiker-а.

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

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

Книга про Python. Прогресс за январь 2025 года

Закончился еще один месяц, а это значит, что пора рассказать о том, как за месяц продвинулось написание книги про Python. Раньше я беспокоился по поводу того, что уже выхожу за предварительно намеченные рамки по страницам. В конце прошлого месяца я неумолимо приближался к обещанным 500 страницам, а впереди остается еще много глав. Поговорил по этому поводу с представителем издательства, посчитал, что если дальше все пойдет таким темпом, то книга будет объемом чуть меньше 700 страниц. Оказалось, что это допустимо, и после этого я пообещал постараться не превышать 700 страниц,а это значит, не придется выкидывать никакие главы, и это хорошо.

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

OutWiker 4.0.0.950 alpha 5. Дополнительные значки и новый плагин

OutWiker 4.0.0.950 alpha 5. Дополнительные значки и новый плагин

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

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

Книга про Python. Отчет за декабрь

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

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

OutWiker 4.0.0.948 alpha 4. Новые возможности в дереве заметок

OutWiker 4.0.0.948 alpha 4. Новые возможности в дереве заметок

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

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

Про генерацию кода искусственным интеллектом

Про генерацию кода искусственным интеллектом

Понадобилось мне для OutWiker сделать новый контрол для выбора цвета. Это должен быть выпадающий список (в простонародье — ComboBox), который вместо текста отображал бы прямоугольники разных цветов. Я очень не люблю делать свои контролы, но в какую сторону копать было понятно. Решил эту задачу переложить на братьев наших меньших (а в перспективе — больших), то есть на искусственный интеллект, и попросить его сгенерировать код.

Начал с Copilot. Результат меня прям очень впечатлил. Первоначальный запрос был такой:

«Напиши код компонента на Python с использованием библиотеки wxPython, который использует wx.adv.OwnerDrawnComboBox, чтобы выбирать цвет с помощью выпадающего списка. Каждый элемент выпадающего списка должен отображаться в виде прямоугольника своего цвета. Напиши код приложения, который этот компонент использует.»

Код получился почти сразу рабочий, в течение нескольких запросов поправили некоторые косяки и даже улучшили внешний вид. Через полчаса в первом приближении я получил то, что хотел и потом буду исходники допиливать напильником. После этого даже не особо надеясь, что ИИ поймет, что мне надо, написал ему еще одну хотелку:

«Пусть теперь нулевой элемент будет обозначать «цвет по умолчанию» и выводиться текстом, а последний элемент списка — «Выбрать цвет» и тоже выводиться текстом.»

Удивительно, но он сделал именно то, что я имел в виду. В процессе общения поправили некоторые мелочи, и оно заработало.

После этого мне стало интересно сравнить результат с другими нейронками. Начал с Яндекс GPT 4. Результат получился унылый. Работающего контрола от него я так и не добился. В выпадающем списке цветные прямоугольники он не смог нарисовать (хотя честно пытался, но все время что-то было не то).

Попробовал после этого нейронку от Сбера — GigaChat. С ним пришлось помучиться подольше, чем с Copilot, — приходилось часто указывать конкретные строки, где ИИ был не прав, и что там должно быть. Но в итоге контрол начал делать то, что от него требуется, хотя некоторые оформительские моменты придется за ним все-таки править руками. А на дополнительной хотелке нейронка ушла в бесконечный цикл и начала писать без передыху по три одинаковые строчки, которые к делу вообще не относятся. В другой раз по этому же запросу у нее перепутались код и комментарии к нему. Ну ладно, с бонусом она не справилась, но в целом тоже молодец.

Еще я на днях локально себе поставил опенсорсную нейронку Llama 3 (запускал через ollama). Код, который она генерила, тоже с ходу не заработал. Но еще у меня и комп для нее слабоват. Сначала ИИ отвечал относительно шустро, но если надо было исправить ошибку, то он начинал думать минут 10, и результат совсем не впечатлял. В общем, у меня не хватило терпения заставить эту нейронку написать рабочий код.

PS. Если кому интересно, то вот код, который в итоге получился у Copilot. Для получения этого кода понадобилось 7 запросов. И код, который получился у GigaChat . Сколько понадобилось запросов для получения этого кода не знаю, потому что история не сохранилась.

Для запуска этих исходников нужна библиотека wxPython.

Книга про Python. Прогресс написания за ноябрь

Закончился ноябрь, надо подвести месячный итог написания книги про Python.

За этот месяц написал три с половиной главы:

  • про исключения — 21 страница;
  • про запись и чтение файлов, и тут же про двоичные строки — 24 страницы.
  • про работу с файловой системой (модули os.path, shutil и pathlib) — 25 страниц.
  • часть главы про обработку параметров командной строки — пока это скромные 6 страниц.

Итого, за месяц написал 76 страниц. Это очень много для этих глав. Изначально на исключения я закладывал 10 страниц, и все, что касается работы с файлами должно было занимать 20 страниц.

Всего на сегодняшний день написано 402 страницы. Потом во время вычитки придется все это сокращать раза в два.

По планам в декабре хочу написать главы про регулярные выражения и unit-тесты. После этого, наконец, можно будет перейти к описанию библиотек NumPy, Matplotlib и Pandas.

OutWiker 4.0.0.946 alpha 3

OutWiker 4.0.0.946 alpha 3

Хотя с момента выхода прошлой альфа-версии OutWiker прошла всего неделя, в этот раз я решил не затягивать с выкладыванием новой версии, к тому же изменения, которые я успел внести за это время, видны пользователям. Поэтому сегодня выложил новую нестабильную версию под номером 4.0.0.496.

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