Про цикл книг Дэна Симмонса «Песни Гипериона»

Я редко пишу про художественные книги, но тут не удержался. В моем списке для чтения книги Дэна Симмонса про Гиперион (этот цикл часто называют «Песни Гипериона») висели с давних времен. Несколько раз мне попадались упоминания этого цикла на просторах интернета при обсуждении фантастических книг. И вот, наконец-то, я это все прочитал. На неспешное чтение всех четырех книг: «Гиперион», «Падение Гипериона», «Эндимион», «Восход Эндимиона» у меня ушло три месяца. Если сравнивать этот цикл с другими произведениями, то в первую очередь на ум приходит «Дюна» Френка Герберта, хотя по сюжету и общему антуражу эти книги мало похожи. Общее у них — масштаб происходящих событий и политическая борьба на разных уровнях.

Твердой научной фантастикой серию про Гиперион я бы не назвал, в основном ее называют космооперой. Наверное это неплохое определение, хотя лично у меня со словом «космоопера» ассоциируется всякие низкокачественные произведения, к чему серия про Гиперион точно не относится.

В первых двух книгах описывается будущее XXIX-го века (по нашему летоисчислению), сюжет третьей и четвертой книг начинается примерно через 300 лет (через 274 года, если быть точным) после событий, описанных в первых двух томах. Тут вам и множество рас: люди и так называемые Бродяги (по сути люди, но которые стали модифицировать себя для жизни в космосе вместо того, чтобы терраформировать планеты), искусственный интеллект (ИскИны), андроиды. И главное — самый загадочный персонаж всех книг — Шрайк (кто-то его считает богом и ему поклоняется, кто-то считает его машиной-убийцей a la Терминатор и пытается его уничтожить). У людей и ИскИнов внутри своего сообщества есть отдельные кланы, которые конкурируют за влияние и проталкивают свои интересы. Отношения людей с ИскИнами тоже сложные: благодаря ИскИнам были созданы порталы, которые позволяли людям перемещаться в пространстве мгновенно, но при этом люди не понимали, как эти порталы работают, а у ИскИнов на порталы были свои планы. Но это я уже чуть не начал спойлерить.

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

Книга Джульена Вехена «Безопасный DevOps»

В последнее время я больше стал заниматься разработкой для серверной части веб-приложений, короче говоря, бэкендом. И хотя я не особо люблю заниматься админскими делами (самый страшный сон для меня — это искать проблему, почему что-то не работает в сети), но иногда приходится заниматься настройкой серверов, планированием структуры микросервисов и тому подобными делами. Ну и куда ж сегодня без DevOps-а? Грань между программистами и админами размывается, и по крайней мере нужно разбираться, как аккуратно должно развертываться приложение на серверах, каким образом взаимодействуют микросервисы и т.п. И в этом деле меня всегда беспокоит безопасность. Как делать это правильно? На какие грабли наступали другие разработчики, чтобы не повторять хотя бы элементарные ошибки? Держа в голове эту цель я начинал читать книгу Джульена Вехена «Безопасный DevOps».

Автор этой книги c 2013 года работает в Mozilla и занимается безопасностью облачных сервисов. Собственно безопасности и облакам посвящена книга. Конкретно про DevOps в ней сказано не так много (в основном в первой половине книги), зато рассматривается безопасность на различных уровнях, начиная с того, какие типичные ошибки допускают разработчики приложений, что позволяет злоумышленнику провести атаку, и до безопасности на уровне предприятия.

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

OutWiker 3.0.0 Release!!!

OutWiker 3.0.0 Release!!!

Как говорится, разработку очередной версии программы невозможно завершить, ее можно только прервать. Слишком уж долго я откладывал релиз OutWiker: то нужно было перейти на Python 3, то выходила очередная версия библиотеки wxPython, в которых были добавлены полезные возможности или исправлены давно надоедавшие проблемы, то в очередном обновлении Ubuntu переставали работать нужные библиотеки и пришлось прекратить поддержку deb-пакета и перейти на snap. Были проблемы с библиотекой проверки орфографии и вовремя попавшаяся удачная замена. Недавно решилась проблема с тем, что антивирусы обзывали OutWiker трояном.

Буквально две недели назад обнаружилась новая проблема со snap-пакетами в некоторых дистрибутивах Linux, и поэтому в последнее время занимался тем, что учился создавать пакеты в формате flatpak. Так что теперь, если вам не нравится формат snap, то можете установить OutWiker с помощью команды

flatpak install flathub net.jenyay.Outwiker

В этом случае запускать OutWiker из командной строки можно с помощью команды

flatpak run net.jenyay.Outwiker

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

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

OutWiker 3.0.0.886 unstable

OutWiker 3.0.0.886 unstable

Всем привет! Наконец-то я нашел время выложить следующую нестабильную версию OutWiker.

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

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

Про книгу «Современный язык Java»

Обложка "Современный язык Java"В последнее время помимо языка Python (которому, кстати, на днях исполнилось 30 лет) я активно стал использовать Java, поэтому решил углубить свои знания в этом языке и почитать более специализированные книги, которые поподробнее рассказывают об отдельных элементах языка или библиотек. Этот пост будет посвящен одной из таких книг, которую в целом можно охарактеризовать словами «как нам из Java сделать функциональный язык программирования». Речь пойдет о книге трех авторов Рауля-Габриэля Урма, Марио Фуско и Алана Майкрофта «Современный язык Java», в оригинале она называется «Modern Java in Action». Англоязычная версия книги была издана в 2018 году, и на тот момент были актуальные версии Java 8 и 9, а Java 10, который только-только вышел.

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

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

OutWiker 3.0.0.884 unstable

Всем привет! Продолжаю исправлять в OutWiker разные шероховатости. Сегодня выложил очередную нестабильную версию под номером 3.0.0.884.

Самое крупное изменение, которое было сделано в этой версии, касается создания списков на викистранице. Спасибо Сергею Гольцову, который заметил эту проблему. Суть проблемы заключатся в том, что каждый элемент списка начинается с символа * или #, а заканчивается в конце строки.

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

OutWiker 3.0.0.882 unstable

OutWiker 3.0.0.882 unstable

И снова здрасьте! Выложил еще одну нестабильную версию OutWiker под номером 3.0.0.882.

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

Книга Брайана Кернигана «Время Unix. A History and a Memoir»

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

Пару месяцев назад, просматривая книжные новинки, я обратил внимание на книгу под названием «Время Unix. A History and a Memoir». Одно то, что это книга по истории софтостроения, было бы достаточно, чтобы я ее купил, а тут еще и автор книги — Брайан Керниган. У нас в России он известен как один из авторов учебника по языку Си, написанного в соавторстве с Деннисом Ритчи — автором языка языка Си. Но помимо этого достижения Керниган является одним из программистов, работавших в Bell Labs в том числе и над операционной системой Unix в 1970-х годах. Правда, не над ядром этой операционной системы, но, например, он был соавтором языка AWK, предназначенного для обработки текста (AWK — это сокращение из первых букв фамилий авторов, «K» обозначает «Kernighan»). Разумеется, проигнорировать книгу, в которой рассказывается о легендарной операционной системе от лица непосредственного участника тех событий, я не мог. Кстати, на тему истории Unix-подобных операционных систем я когда-то давно писал пост История UNIX-систем.

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

OutWiker 3.0.0.880 unstable

OutWiker 3.0.0.880 unstable

Всем привет! Пока у меня появилось чуть больше свободного времени, буду выкладывать новые нестабильные версии OutWiker почаще. К тому же за неделю накопились изменения, о которых есть что рассказать. Очередная версия OutWiker имеет номер 3.0.0.880.

В это версии изменения коснулись в основном инсталятора под Windows. Когда-то давно этот инсталятор я сделал на основе движка Inno Setup и больше к нему не возвращался, возможно из-за того, что сам им не пользуюсь, а просто копирую файлы OutWiker из папки сборки. Настало время обновить инсталятор и добавить туда несколько новых возможностей.

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

OutWiker 3.0.0.878 unstable

OutWiker 3.0.0.878 unstable

Всем привет.

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

Так что, если увидите какую-то проблему в новой версии, то пишите.

Скачать самую свежую версию можно со страницы https://jenyay.net/Outwiker/Unstable