Бумажный «Идеальный код»

Покупка бумажной книги в местном Уссурийском магазине для меня — событие из ряда вон. Все из-за цен и ассортимента.

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

Цены на книги меня убивают. Уж не знаю, но 700 рублей за 600 страниц в мягкой обложке… Подобные издания вымрут очень скоро — что может быть очевидней?

Последний раз оффлайновая покупка случилась в прошлом году. Я купил книгу O'Reilly «Идеальный код» («Beautiful Code» в оригинале). Не скажу, что я прям всю её прочел — нет, читать её сразу целиком бессмысленно; к каждой главе нужно подходить в свое время — надо быть готовым воспринять смысл, а для этого нужно иметь хоть какое-то понимание соответствующей области.

Книга разбита на совершенно независимые главы, и в каждой главе профессиональные программисты рассказывают о виденных ими образцах красивого кода. Код, проекты и языки очень разные: от кусочка образцово-показательного учебного двадцатистрочника на C до ядерного кода FreeBSD, перлового сортировщика генов, парсера JavaScript на JavaScript'е, гигиенической макросистемы Scheme, расширения для озвучки Emacs (да, он не только варит кофе, он, сцуко, при этом еще и разговаривает ;), Google MapReduce и решения на хаскелле задачи Деда-Мороза с помощью транзакционной памяти.

Единственное, что портит общее впечатление от книги, так это перевод. Текст довольно тяжело читать. Иной раз я ловил себя на мысли «как бы не заснуть» во время чтения очередной главы.

В общем, книга хорошая. По крайней мере, я смог извлечь из нее некоторую пользу — глава про говорящий Emacs вдохновила меня форкнуть и немного отрефакторить «ловушки» technomancy, но это уже совсем другая история.