Writing
I don't write as much recently, but there's still plenty of essays.
Categories
-
О состоянии проекта pivotal_shell
В двух словах – пивотал шеллом я больше заниматься не буду.
-
Установка Ruby 1.9 на Lion через RVM
Проблема: в OSX Lion стандартным компилятором C++ стал Clang, заменив собой GCC. Clang по сравнению с GCC довольно сырой, кроме того, им не компилируется добрая половина расширений Ruby.
-
Устранение конфликта версий Rack на Passenger + Bundler +RVM
Последний раз для себя пишу:
-
Обзор MacBook Air 13" 2011
Я покупал Air, чтобы таскать его в поездки, валяться с ним на диване и сидеть в туалете. И я им доволен.
-
Самое простое введение в юнит-тесты
Про юнит-тесты сказано, написано и надумано столько, что очень легко ошибиться и воспринимать их как нечто сложное и неестественное.
-
Что делает deliver! в Rails 3
Потратил некоторое время на поиск неполадки в premailer-rails3 – гем, который «разворачивает» определения стилей в письмах. Наконец, нашел причину.
-
How to insert the encoding: UTF-8 directive automatically in Ruby 1.9 files
I had to upgrade a project to Ruby 1.9.3, and, as usual, the encoding problem came up – if your source file is in UTF-8 (or any other non-ASCII encoding), you have to explicitly declare that.
-
Расстановка директивы encoding: UTF-8 для Ruby 1.9
В процессе переноса проекта на Ruby 1.9.3, как всегда, возникла проблема кодировки файлов, а именно того, что кодировку UTF-8 (как и любую другую, отличную от ASCII), нужно указывать явно.
-
Иерархия ошибок в Ruby, а также какие исключения нужно бросать, а какие - ловить
Исключения — единственный механизм обработки ошибок в Ruby. Это одновременно и очень мощный, и опасный инструмент. Поэтому важно правильно пользоваться исключениями, и в первую очередь — понимать, какие классы исключений нужно бросать, и какие — ловить.
-
Hoptoad Notifier теперь Airbrake, а также обработка ошибок в задачах Rake
Во-первых, Hoptoad окончательно переименовался, и даже вместо гема hoptoad_notifier нужо использовать гем airbrake. Во-вторых, я заметил, что аж два месяца назад в основную ветку hoptoad_notifier добавили мое дополнение, перехватывающее исключения в Rake-задачах.
-
Обзор Kindle 3G
В двух словах: Kindle — замечательная читалка художественной литературы, которую больше всех оценят любители поваляться на иностранных пляжах, не идеальная, но вполне стоящая своих денег.
-
Readable Google Reader
Readable Google Reader is a Greasemonkey userscript that lets you change Google Reader article width and font.
-
Удобочитаемый Google Reader
Юзерскрипт Readable Google Reader, который делает приблизительно то же самое, что и Readability, но для статей в Google Reader.
-
А у вас настроен logrotate?
Сегодня шесть часов пролежал продакшн из-за того, что логи съели все свободное место на системном диске (который, собственно, был размером всего в 8G).
-
Экскурсия по моей кофейной полке
Никакой другой напиток не сравнится для меня с чашкой свежесваренного эспрессо, такого крепкого, что от него губы пытаются одновременно скривиться от горечи и расплыться в улыбке наслаждения. Однако, не всегда же ходить за эспрессо в кофейню! Делюсь опытом приготовления кофе дома.
-
ImageMagick и миниатюры
Оказывается, стандартные настройки ImageMagick далеки от идеальных, если говорить о генерации уменьшенных версий изображений.
-
Установка пакета из более новой версии Ubuntu
Бывает такое, что версия определенной библиотеки, включенной в состав репозитариев Ubuntu, обладает определенным багом. А исправленная версия этой библиотеки уже не попадает в данную версию системы, и, следовательно, ее невозможно обновить традиционным способом. Этот способ заключается во временной подмене репозитариев.
-
Деструкторы в Ruby
Почему в Ruby нет деструкторов и чем их заменить.
-
Как сделать обалденный почтовый шаблон
Недавно я был озабочен версткой (и подключением к Rails) целого комплекта шаблонов рассылок и почтовых уведомлений и решил извлечь из этого процесса наибольшую пользу.
-
Строгий режим MySQL и почему он должен быть включен
В MySQL есть такой специальный режим, предназначенный для введения в базу неправильных данных. Например, чтобы вместо 20000000000 вставлять в INT-поле 2147483647. Или наполнять базу несуществующими датами. Или обрезанными строками. Ну или мало ли для чего этот режим может тебе пригодится.