Yoga Color Theme

Уже около месяца использую Yoga в качестве темы для IntelliJ IDEA.

Скриншот цветовой схемы Yoga

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

Понятно, что изначально всё делалось для языков, на которых я программирую в IDEA сам: это Java и Kotlin. Но с Yoga вполне неплохо выглядит Groovy, и, кажется, даже Scala.

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

Оставить комментарий

Lite-Mobile: туда и обратно

Решил наконец воплотить идею по превращению настенного телевизора из элемента интерьера во что-нибудь полезное. Российский телеэфир я предпочитаю не смотреть, слишком дорого своё психологическое здоровье, и, по большому счёту, весь необходимый мне функционал сводится к просмотру 笑点 и ракуго с YouTube, да, временами, японской анимации, часть из которой ещё не успели удалить за нарушение прав правообладателей из Vk.

Иллюстрация к рассказу 'Паутинка' Акутагава Рюноске

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

А хочется-то всего ничего – работающего решения для простой проблемы, и самый очевидный кандидат, конечно, Google ChromeCast. Стоит он, пожалуй, как недорогая китайская TV-коробочка на Android, но мне очень не хотелось становиться системным администратором коробочки. Из альтернатив, которые не противно взять в руки, есть Xiaomi TV Box и Apple TV, но первая коробочка имеет, кажется, неизгладимые китайские корни в отношении поддерживаемых сервисов, а вторая стоит три хромкаста, предоставляя при этом совершенно бесполезные для меня возможности вроде игры в Angry birds.

В общем, решил я попробовать Chromecast, а там – как пойдёт. Первым магазином поблизости, в котором девайс продаётся по вменяемой цене, оказался Lite-Mobile – одна из десятков контор категории “Рога и копыта”, разве что чуть более известная, чем остальные. Насчёт покупки сложной техники в таких местах у меня есть большое предубеждение: основной продаваемый там товар — мобильные телефоны, и они порой оказываются очень сомнительного происхождения и ещё более сомнительного качества. Но хромкаст – другое дело: штука эта простая и не имеет региональных залочек. В общем, не мудрствуя лукаво, я заказал хромкаст на сайте упомянутого магазина, и здесь началось моё приключение.

Что удивило сразу:

  1. Обязателен звонок оператора. В то время, как во многих интернет-магазинах от практики звонков отказываются (в них нет ровно никакой необходимости, достаточно сообщения на E-mail или SMS, а уж если склад находится в одном помещении с магазином, то и подавно), здесь без звонка никуда. Ну, что ж, невелика беда.

  2. Оператор поведал о том, что хромкаст у них “в малом количестве”, и перед тем, как идти его забирать, стоит позвонить в магазин и узнать, не распродан ли он. Иными словами – ни в заявке на сайте, ни в звонке оператора нет, в сущности, никакого смысла. Прийдя с номером заказа на следующий день, можно обнаружить, что товар уже ушёл в другие руки. Эти “гонки наперегонки”, право, выглядят очень по-деревенски, хотя я понимаю, что цель магазина – максимально быстрая конвертация имеющегося на складе в цветные бумажки.

Что ж, следующим днём я решил уточнить, остались ли ещё устройства на складе, или у жителей Петербурга в дождливое воскресное утро не нашлось других занятий помимо приобретения хромкастов, имеющихся “в малом количестве”. На этот раз, видимо, удостоверившись в моём искреннем желании купить заветный донгл, оператор соизволила забронировать его специально для меня аж на ближайшие два часа. Делать нечего — через сто двадцать минут бесценный гаджет непременно попадёт в лапы неприятеля, оставалось лишь надеть свой старый макинтош и поспешить отдавать свои денюшки.

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

Сама по себе электронная очередь — нечто, как кажется, явление очень несвойственное для интернет-магазинов. Я помню лишь Юлмарт, в котором приходилось ждать своей очереди на выдачу по “номерку” аж три минуты, – но все отделения Юлмарта, в которых мне доводилось побывать, были просторными залами с кондиционером и достаточным количеством удобных стульев; здесь же невольно вспомнился ад из “Паутинки” Рюноске.

Отдельного упоминания стоит тот факт, что покупатели при достижении своей очереди перемещаются в следующую комнату, уже побольше и почище. Но покуда твой черёд ещё не пришёл – знай своё место, тварь дрожащая. Не хочешь мариноваться со всеми в тамбуре – добро пожаловать на улицу; собственно, там мне и учтиво предложил подождать как минимум минут пятнадцать гражданин в роли охранника, лишь только я “обилетился”. Догадайтесь о моих действиях.

А о хромкасте я напишу в следующий раз. Как только найду его в магазине, где меня будут считать человеком.

Оставить комментарий

Два дня с Windows 10

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

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

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

Старый новый блог

Три года назад мой блог перестал управляться WordPress и стал статическим. Многих из популярных сегодня статических движков ещё не существовало, самым известным на тот момент был Pelican. Но он, как и некоторые другие решения, на которые я тогда смотрел, чем-то очень не устраивал, и мне пришлось написать свой собственный движок.

Назывался он Adelaide, и поддерживал всё, что было необходимо на тот момент: markdown с расширяемым синтаксисом (чего достичь в большинстве markdown-парсеров до сих пор очень нетривиальная задача), несколько параллельных независимых блогов внутри одного проекта, и всякие другие интересные штуки.

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

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

Здесь произошло неожиданное: я вдруг начал приходить к тем же решениям, что и команда Jekyll. То, что в Jekyll я изначально считал странным и неуклюжим, на практике оказалось (почти) разумным компромиссом. Отдельные части (например, система плагинов) у меня получились более развитыми и удобными, но перед тем, как потратить кучу времени на написание велосипеда, я решил убедиться, действительно ли Jekyll настолько меня не устраивает.

Если кратко — то я ожидал гораздо большего количества проблем. Вот, что не понравилось:

  1. То, что в Jekyll нельзя создать несколько независимых блогов внутри одного проекта, я знал с самого начала. Но был очень неприятно удивлён отсутствием пагинации по категориям или тегам, которыми я хотел это эмулировать. Решения есть, но каждое из них лежит где-нибудь в Gist, и либо работает из рук вон плохо, либо устарело и не работает совсем. Пришлось взять наименее страшное за основу и дописать ручками.

  2. Да и в целом, Jekyll хвалится огромным количеством плагинов, но де-факто они — некачественные и/или неконфигурируемые самоделки. За примером далеко ходить не надо: в jemoji размер иконки 20px прибит гвоздями, и для исправления сего недоразумения приходится городить очень страшные и некрасивые хаки.

  3. Движок местами шаткий. Легко совершить ошибку в YAML и потом долго размышлять, отчего не выходит каменный цветок. Я бы ожидал увидеть ошибку при сборке.

  4. Мой скромный блог собирается более 20 секунд. Почему так долго?

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

{% thumbnail data/posts/2016/07/design1.png %}

Вместе с движком сменился и дизайн. Он пока ещё в бете, принимаю любую конструктивную критику. Вот, кстати, то, что было раньше: в 2010-2013 годах и до недавнего времени.

Оставить комментарий

What an irony!

Each time I leave Japan, I go to the Ueno park.

There’s almost no one there in the evening, especially in winter. So I just strolling around the pond or watching cats doing their business near the Ueno shrine. It’s cold there in such a late hour, though I think it’s good to feel cold sometimes. As it’s good to become alone from time to time.

When you’re with other people, it’s easy to lose the weight of the words you say, the importance of your deeds. You just talk about the ‘weather’ from day to day, and you’re fine with it.

But then you become alone and nothing can disturb you, you suddenly realise that lots of things everyone does (and you, in particular) is a waste. A very huge waste, you feel you can’t bear its weight anymore. Then you throw away all that waste, let your thoughts, both good and bad, go somewhere else. And beneath the garbage you see the pure silver shining brigthly. You smile, realising how the life is simple. You found yourself, again.

Now you say a word, and this word is not like what you say every day. Now the Word has a Meaning. You don’t say anything meaningless, or anything you don’t want to say, because you see no reason for saying that. You keep the silence.

Some people are afraid to become alone: that’s you, that’s the ‘dangerous’ world, and there’s nobody here to protect you from it. But it’s just not true. There’s no thing like ‘you’, and no thing like ‘world’. It is completely the same, and you feel no need in giving it a name because that’s not important.

The next day you forget all this, and you’re fine talking about the ‘weather’. What an irony!

Оставить комментарий

Банзай

Вчера японские друзья объясняли на пальцах значение одного слова: обозначает оно ситуацию, когда два человека, стоящие на сцене без особой атрибутики, ведут юмористический диалог. А сегодня великий интеллект YouTube предложил мне посмотреть что-то из サンドイッチマン; тут я и решил вспомнить то слово, которое, конечно же, было благополучно забыто вчера уже через полчаса после той беседы. Помнилось лишь, что произношение похоже на известный всем русским клич banzai.

Итак, что же может быть похоже на banzai?

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

Rapida adventure

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

А сегодня я отправился произвести идентификацию веб-кошелька системы Рапида.

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

Впечатления от (попытки) разработки Android-приложений на языке Scala

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

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

蛍 – светлячок

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

Выбравшись наружу, чтобы добыть еды, смотришь на мир во всём его разнообразии, как однажды смотрела лягушка, родившаяся в колодце и прожившая в нём всю свою жизнь, но возвращаешься назад – и вокруг лишь кромешная темнота. “Счастье не греет, оно где-то за стеклянной стеной”. Где былой свет?

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

  • Продолжать своё дело в темноте, оставляя себе право считать, что свет ближе, чем может казаться;
  • Ничего не делать.

Мне кажется, второй вариант никогда не сможет быть лучше первого.

Оставить комментарий

Три месяца с ежевикой

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

Государыня,
Помнишь ли, как строили дом –
Всем он был хорош, но пустой.

Кажется, это самый короткий обзор Blackberry 10 в мире.

Оставить комментарий