28.11.2009

Об RSS лентах на mevio.com

Давно заметил, что подкасты с mevio.com мой телефон обновляет очень, очень медленно, минут 10. Это не считая загрузку самих эпизодов, только обновление RSS. Сегодня случайно выяснил, в чём дело.

Оказывается, RSS ленты некоторых подкастов весят аж по полтора мегабайта. Об этом мне сообщил FeedBurner, с помощью которого я думал «пересобрать» ленту. Там 100 записей, но некоторые шоуноты весят более 60К, причём визуально это — 11 строк текста, сами ссылки на сайте не видны, а в RSS бесполезны, т.к. испорчены.

Сообщил куда следует. AC ответил, с копией AG, попросил поработать. Надеюсь придумают что-нибудь, и не придётся писать какой-нибудь RSS minimizer.

Об ответственности для автошкол

Кирьянов — директор ДОБДД — предлагает разрешить сдачу экзаменов на права прямо в автошколах, и добавляет: «хотелось бы поднять ответственность автошкол, чтобы они чувствовали ответственность за тех, кого выпускают на дорогу».

По-моему отличная идея. Чем меньше функций выполняет МВД, тем лучше. Лучше и для тех оставшихся функций, что оно выполняет, и для потребителя, за счёт конкуренции.

Что касается ответственности, у меня есть для товарища Кирьянова идея: пусть ответственность за выпускников несут учредители автошкол, лично. Пусть страховые компании приносят им счета от медиков, тогда все быстро научатся и экзамены принимать, и со врачами консультироваться. Продажные медкомиссии, конечно, возможны, но всех существующих проблем реформой БДД не решить — пусть эти учредители через суд уже разбираются, а МВД пусть борется с преступностью, а не экзамены принимает. Не знаю, есть ли сейчас у автошкол стимул качественно обучать, но личная ответственность может легко им послужить.

О креационизме и эволюции

ВЦИОМ сообщает, что сторонниками теории эволюции Дарвина являются ~35% жителей россиян. Это, естественно, вызывает бурные дискуссии на тему деградации общества и вечное противопоставление дарвинизма креационизму.

Я не очень понимаю этих споров; мне кажется, одно другому не противоречит: человека создал «Бог»? На здоровье.  Он сам при этом был разумным и живым, то есть являлся формой жизни, которая ниоткуда возникнуть вряд ли могла, то есть снова здравствуй, теория эволюции, только на другом уровне?

Я как раз в последнее время являюсь сторонником обеих теорий: креационизма в рамках Земли и эволюции в более широких рамках. Только всё равно не очень укладывается в голове, как из ничего могла возникнуть хотя бы такая форма жизни, как наша? И если у вселенной, на самом деле, не было начала и не будет конца, почему жизнь ещё не заполонила её всю? Или заполонила?

По-моему ВЦИОМ какой-то фигнёй интересуется, есть вопросы гораздо интереснее.

23.11.2009

Google Chrome и прокси

Оказывается, интерфейс Хрома меняет не собственные настройки прокси, а общепользовательские, которые распространяются на всё подряд. Это не всегда хорошо; я, например, использую privoxy, от которого apt периодически входит в штопор.

Оказывается, у Хрома есть ключ --proxy-server=ip:port, который эту проблему решает. Жаль, нет способа указать это через окружение, только для Хрома, чтобы не менять ярлыки и скрипты.

И, раз уж пишу о прокси-серверах, не могу не вспомнить 84й выпуск FLOSS Weekly, посвящённый  Foxy Proxy — расширению, которое позволяет для разных сайтов использовать разные прокси серверы. Они там как дети радовались этой возможности, как это нереально круто. Я, конечно, не Leo Laporte и не Randal Schwartz, но как же proxy autoconfig? Уже 13 лет люди этим пользуются.

18.11.2009

Universal Edit Button для Chrome

Создал расширение для поддержки универсальной кнопки редактирования в Chrome. Интересно было, как это делается. С некоторыми заморочками, но достаточно просто. Надо будет что-нибудь ещё написать.


17.11.2009

Об использовании системных функций в браузерах

В продолжение темы использования кросс-браузерного механизма закладок: оказывается, управлять сертификатами с помощью системных утилит уже придумали.
Rather than reinvent the wheel and create another certificate configuration tool, we are going to wait for a system certificate configuration utility to be created and launch that.
Уже, вон, додумались опрашивать ffmpeg на предмет поддержки кодеков. Жаль, про gstreamer пока ничего не слышно.

13.11.2009

Про Google App Engine и "naked domains"

Оказывается, в Google App Engine нельзя добавить сам домен, можно только поддомен. Раньше было можно, но потом зачем-то это прикрыли. Это многим не нравится, но имеющимися средствами ничего не сделать. Предлагают общаться с регистраторами на тему веб-форвардинга. GoDaddy, например, умеет.

Мне такое решение не нравится, хотя бы потому, что за это просят денег. Есть решение не хуже, которое я давно использовал для каких-то других целей: регистрируем блог в Tumblr, прикрепляем его к нужному домену (у них никаких ограничений нет), идём в настройку внешнего вида, в редактирование шаблона, удаляем всё, что есть, и делаем перенаправление средствами HTML. Бесплатно и достаточно надёжно (уж лучше, чем домашняя ADSL линия). Надеюсь, тумблеряне не обидятся на такое, можно им комментарий в коде оставить.

Сам же Google агрументирует сложившуюся ситуауцию какими-то техническими сложностями. Я всё понимаю, бывает, но почему бы Гуглу не найти в кладовке свободный IP адрес и сделать на нём универсальный wwwizer? Пусть отвечает на любые запросы, добавляя префикс www, если его нет (и 404 если он уже есть). Дёшево и вполне приемлимо, мне кажется.

11.11.2009

V 2009 vs 1983

Посмотрел на днях первую серию «V» 2009 года выпуска. Посмотрел потому, что в детстве с удовольствием смотрел версию 1983 года по местному кабельному видеоканалу. В одном подкасте сказали, что там полно то-ли про-, то-ли антиобамовской символики, и действительно, полно: от транспарантов «HOPE for mankind» до «universal healthcare».

Новая версия, конечно, HD, и там есть Joel Gretsch, запомнившийся ещё по любимому мной The 4400 — предыдущий сериал Скотта Петерса — на который в V есть и более явная ссылка. И всё. Сюжет склеен кое-как, причём явно хотелось запихнуть в одну серию столько всего, что местами оно (всё) вообще не стыкуется. Ещё пару серий посмотрю, но пока я разочарован. Это больше похоже не на ремейк, а на одноимённый сериал на похожую тему, и очень посредственный.

Зато с удовольствием пересмотрел первую серию 1983 года. Сразу бросается в глаза продолжительность: тогда ещё не думали, что люди неспособны высидеть перед телевизором больше 45 минут, и серии были ровно на час больше. И это был не сериал в сегодняшнем понимании этого слова, а нормальный многосерийный фильм. Содержание отличается не меньше. Даже не буду пытаться всё описать. Фильм, который хочется пересматривать, и захочется ещё, я думаю.

Интересно и то, что старый фильм снят до «11 сентября», а новый — после. В старом параллели проводятся с нацистской Германией, в новом — нет, потому что моментально будет видно, что всё это что-то очень сильно напоминает. Ну и, конечно, сейчас вы нигде не увидите эпиграф:

To the heroism of the Resistance Fighters -- past, present, and future -- this work is respectfully dedicated.

О новом языке Go

Джет показал golang.org — новый язык программирования, разрабатываемый кем-то в Google. Я сначала подумал, особенно в связи с сегодняшней главной страницей Википедии, что первое апреля перенесли на 11 ноября, но видеолекция на официальном YT-канале Гугла подсказывает, что всё серьёзно.

Серьёзно, в частности, пишут, что «Go has fast builds, clean syntax, garbage collection, methods for any type, and run-time reflection.» Новый язык ради быстрой компиляции, сборки мусора, методов и отражений? Может у меня просто киша тонка, чтобы придумать новый язык, но мне кажется, что зная 2-3-4 распространённых существующих языка можно решить любую задачу, а если не получается — дело не в том, что медленно компилируется или плохо отражается, а в том, что руки растут оттуда, откуда должны ноги.

Я вот походил весной на питерское кофе с кодом, послушал восторги от языков вроде Groovy и Scala. Люди там серьёзно друг другу объясняли, что стрелочки так неудобны, а если вместо них вопросики, это же так здорово, увеличивает скорость набора программы на 0.13%! Скорость набора? Это — самое важное в программе? Я думал, для программиста важнее думать, чем печатать. Ещё я тогда подумал, что было бы хорошо, если б эти люди так и продолжили общаться между собой, и работали бы где-нибудь фотографами. Однако, вот, попадают такие и в Google. И для них эффективный код выглядит так:

go func() { for { dst <- <-src } }()

Одну строчку может ещё можно понять, а если такого несколько страниц? Я бы отказался работать с таким кодом. Это просто мозги не туда свёрнуты, либо та часть, что отвечает за здравый смысл, либо чувство юмора, что-то одно свёрнуто, на 100%.

Серьёзно, люди, хотите эффективности? Помогайте повсеместно внедрять LLVM. Изобретение новых последовательностей пунктуации по-моему ничего общего с эффективностью не имеет.

09.11.2009

О системе на флэшке

В субботу посыпался жёсткий диск. После установки Кармической Коалы новая дисковая утилита мне постоянно жаловалась на то, что диск надо срочно эвакуировать, но я это игнорировал, т.к. она заодно жаловалась и на SSD, и многие другие жаловались на её неадекватность. Возможно, она была не так уж и неадекватна.

С утра основной раздел оказался в режиме R/O, перезагрузиться уже не получилось. Придумал воспользоваться нетбуком, поставить чистую систему на флэшку и поработать с неё. Оказалось, что флэшка тоже какая-то проблемная: система на неё ставилась около часа, в работе постоянно подвисала. Думаю, это — какое-то совпадение, но первый опыт оказался не очень удачным.

Пока отформатировал заново НЖМД (старый, на 20ГБ). Надеюсь ещё хотя бы месяц продержится, пока я нормально эвакуирую все ценные данные с 1ТБ NAS-а и вставлю его внутренности в рабочую станцию.

03.11.2009

NB: автоматический запуск screen

Оказывается, очень удобно при заходе на некоторые машины автоматически использовать screen, а иногда — сразу что-нибудь запускать, вроде top. Сделал себе такой скрипт в $PATH:

#!/bin/sh
test -z "$*" && CMD="screen -dRR" || CMD="$*"
ssh -ACt hostname "bash -i -c \"${CMD}\""

При вызове без параметров запускает/открывает screen, с параметрами — выполняет указанную команду. При завершении команды SSH сессия закрывается.

Без -t для ssh ничего не получится: будет ругаться, что не выделен терминал, а без -i для bash не будет настраиваться окружение, отчего screen у меня не работал с Юникодом.

02.11.2009

О браузерах и динамических библиотеках

Посмотрел на Ubuntu One blueprints. Это план развития, на сколько я понял. Здорово, что придумали шарить логи IM и браузерные закладки, только, мне кажется, как минимум с последним будут проблемы, т.к. все браузеры делают это по-своему. И это вызывает у меня недоумение. Казалось бы, производители браузеров — все, кроме IE — вменяемые люди, почему бы вместо написания мастеров импорта не создать сообща библиотеку для работы с закладками? Это же примитивная функциональность, наверное, полторы страницы кода на 100% кроссплатформенном C!

То же самое касается и интеграции в системный keychain, хотя это уже чуть сложнее, вопросы безопасности. Но ведь есть же SSH-агенты, справились с безопасностью как-то, чем браузеры хуже?

Непонятно.

PS: ссылки по делу:

gaewiki

Опубликовал обещанные исходники вики для GAE.

Так и назвал: gaewiki.

О новых окнах

Поменяли в доме все старые, дырявые окна на новые, пластиковые. Теперь в доме тихо, а зимой ещё и тепло будет. Заснял процесс работы над одним из окон (ускорил в 25 раз).

О переходе на Google App Engine

Очередной случай выдёргивания неизвестно кем сетевого кабеля из моего сервера подтолкнул меня к переводу некоторых своих личных сайтов на Google App Engine. Оказалось, изучив один-два примера, написать что-то своё очень просто. За один день сделал простенькую Вики, с минимумом функций, использующую Markdown для форматирования. Вскоре опубликую исходники.

Следующим в списке сайтов к переносу был наш миниатюрный подкаст-терминал. Собрался уже искать, как на питоне взаимодействовать с S3, и случайно наткнулся на документацию, из которой следует, что это совершенно не нужно: можно форму отправлять прямо в Amazon, который, после успешной её обработки, вернёт пользователя куда скажут. Уважение.