On automation tools

Ever since I made an automatic publishing infrastructure for highlight.js releases… there wasn't a single time when it really worked automatically as planned! There was always something: directory structure changes that require updates to the automation tool itself, botched release tagging, out of date dependencies on the server, our CDN ...

"Shallow" reviews

12.11.2014

Блоги

Here's the question: Why write articles like "I spent two days with that tech and here's what I think" and why they seem to be so popular? The "Rust and Go" is a recent example of such an article. It's not really shallow I, for one, think it's an excellent ...

On being 36

20.10.2014

Разное

This quote has made my day. Frédéric de Villamil in his Docker review: If I was still 25, the whole production would most certainly be full dockerized. At 36, I’m more reluctant to change everything for the latest hype. Not that I’ve became old and boring. But I’ve enough experience ...

ijson 2.0

Yesterday I released version 2.0 of the streaming JSON parser ijson. It mostly includes bug fixes accumulated over the last year and the only reason to change the major part of the version number was that import ijson doesn't do any discovery magic anymore. Import Previously, when you did import ...

Refactoring discovery protocol

It's been a while since my last update on the python3-openid refactoring. Though I still work on it pretty actively, I totally failed at documenting the process as I planned in the beginning. So I came up with a new plan. New plan First of all, I admit to gravely ...

Anti popup policy

07.09.2014

Web

I just adopted a new policy. Whenever I come upon an article that I want to read and possibly share, if the site obstructs my reading with a popup telling me to take part in their survey (or some such, I don't really pay attention to them) I respectfully close ...

HTTPS on highlightjs.org

08.08.2014

Разное

I finally followed the crowd and got an SSL certificate for highlightjs.org. The canonical read on the issue seems to be "Private By Default" by Tim Bray. However, Tim's piece is somewhat theoretical, so I took some additional real-world perspective on Hacker News. The process wasn't terribly difficult, though whenever ...

Carpet testing

Carpet bombing is a "large aerial bombing done in a progressive manner to inflict damage in every part of a selected area of land." Similarly, carpet testing is done by progressively tossing random data samples at your code without regard for its internal structure, hoping that sufficient amount of data ...

highlight.js: what's next

This is a loosely ordered dump of ideas about the future of highlight.js presented for purposes of information and discussion. The project is already big enough that the best I can do for it is not writing code but trying to get people interested in joining in. Let's see if ...

Dissecting fetchers

This is the first installment of my diaries on refactoring python3-openid. The post is turning out pretty big so may be I should try doing them more often. Warm-up I started with fixing failing tests, because you can't do refactoring without tests. The root cause of errors was somewhere inside ...

OpenID library for Python 3

Apparently, there is no obvious choice for an OpenID library in Python 3. In Python 2 there's python-openid which — despite being an ugly over-engineered mess of a code — works and conforms to the spec. Unfortunately, the same can't be said about its independent port to Python3 python3-openid, which ...

Форум переехал

30.06.2014

Python

Ура! Мой старый форум обрёл сегодня новое место. И нового хозяина, который, правда, не хочет публичного внимания, поэтому попросил его не называть. В любом случае, спасибо ему большое! http://pytalk.ru/forum/ Прошу любить и жаловать! (Да, штамп. Ну и что?) Несмотря на мой пессимистичный прогноз, переезд случился как нельзя более просто. Я ...

Memory is slow

Did you know that memory is slow compared to CPU? I kinda knew too but recently I've got a revelation from two unrelated sources about how it affects design of programming languages. I also learned about a new thing called "value/reference type dichotomy". I've stumbled upon this term while reading ...

PyCon Russia 2014

18.05.2014

Python

К вящему моему удивлению, мой бложик всё ещё читают люди, которые связывают свою профессиональную деятельность с Питоном. Так вот, друзья, специально для вас хочу напомнить, что через 2 недели начинается второй российский PyCon. Там опять будут умные люди, и как показывает мой опыт, на питоньих конференциях можно очень запросто пообщаться ...

Про форум (и русскоязычное питонье сообщество)

11.05.2014

Python

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

Девятый

04.05.2014

Разное

Моему блогу сегодня исполнилось девять лет, и я по случаю завёл себе нового лохматого яка, которого собираюсь теперь стричь: Хочу снова стать знаменитым! Больше блогить Выбрать время (сделано) Блог выглядит несолидно Комментарии архаичны Заменить OpenID на что-нибудь современное Убрать легенду Маркдауна WYSIWYG? Внешний вид устарел Переработать первую страницу Переработать архив ...

Glyph Lefkowitz on threads

I value very much the ability to put complex concepts into words in a systematic manner. And I thrive to do the same (at least, I did try when I was blogging actively). So now I'm a big fan of Glyph who laid out everything that is problematic about threads: ...