Home

thumb После того, как я полтора гора работал с одним израильским контрагентом, мой знакомый for the lulz презентовал мне брошюру «в помощь программисту» посвященную вопросам иммиграции и последующего трудоустройства в Израиле.

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

Под катом брошюра и/или 3 Мб трафика. )

Tags:

rss-proxy: 100'000 хитов в сутки

  • 18 Июн, 2009 at 1:51 AM

Google appengine — чудесная штука для бомж-проектов. Например, мой сервис для чтения френдленты в онлайн-агрегаторах без каких-либо проблем обслуживает 100'000 хитов в сутки. Конечно, 99% этих хитов — боты Яндекс.Ленты, Google Reader и других подобных web-приложений, но всё равно цифра сама по себе остаётся забавной. Огорчает лишь тот факт, что rss-proxy уже отъедает 35% от бесплатной квоты в 657'084 запросов к внешним сервисам в день. Рано или поздно придётся что-то с этим делать.

10% HTTP ответов в логе — это «200 Ok», 80% — «304 Not modified», еще 6% — «502 Bad gateway» из-за проблем сети и/или backend'а, таким образом кэшированием неверных паролей и/или удалённых журналов можно выиграть всего около 3% квоты. Не густо. С другой стороны, если верить User-Agent'у бота гуглеридера, то порядка 40% запросов идут к фидам, на которые никто не подписан, то есть User-Agent имеет следующий вид:

Feedfetcher-Google; (+http://www.google.com/feedfetcher.html; feed-id=...),gzip(gfe),gzip(gfe)
В то время как «живой» фид выглядит так:
Feedfetcher-Google; (+http://www.google.com/feedfetcher.html; 1 subscribers; feed-id=...),gzip(gfe),gzip(gfe)
А 40% — это уже стоящая оптимизация.

Знает ли кто, насколько можно полагаться на данную информацию от гуглебота? Увы, дискуссии в посвященной Google Reader группе на эту тему как-то игнорируются представителями Google. Вопроса «почему Feedfetcher проверяет rss-поток, на который никто не подписан?» тоже в FAQ до сих пор нет.

10 суток назад, 22го мая в 17:08:47 пришел последний понг от Acorp W400G, служивсего мне верой и правдой два с половиной года. «Позитроника» в Омске уже успешно загнулась, поэтому заморачиваться с гарантийным ремонтом сей железки я не стал и понёс на вскрытие к Басаеву (хорошее прозвище для радиолюбителя, да?). Вскрытие показало, что железку внутри перекоротило и годится она нынче только на запчасти и/или в качестве декоративного элемента интерьера. Время выбирать новый SOHO-роутер.

Если Gentoo больше не радует и не приносит счастья, при разруливании битых зависимостей в коктейле из x86, ~x86 и ~*, то можно спуститься на уровень ниже и купить роутер с поддержкой DD-WRT, что и было сделано. Выбор пал на вариант D-Link DIR-320. Дешево (1750 р.) и сердито. В комлпекте Wi-Fi, 4+1 Ethernet, 1 порт USB (по слухам даже 2.0) и 32 Мб оперативки.

Залив DD-WRT, я незамедлительно наступил на грабли, которыми чуть не брикнул роутер. Точнее, попытался залить прошивку, которая была на несколько килобайт больше, чем размер внутренней флэшки. Как оказалось, загрузчик прошивка не меняет, и это хорошо. Осталось только поправить работоспособность WPA2, прикрутить к USB что-нибудь помимо принтера... например, USB-колонки и mplayer и получить на выходе замечательный будильник с интернет-радио.

Может быть у кого остались в закладках другие интересные рецепты на базе DD-WRT?

В конце того самого треда несколько людей написали, что проблему с транспортами на GTalk наконец-таки пофиксили. Я проверил — действительно всё работает.

Ура, pymeta-t оказался действительно временным костылём!

Среда, пятница, суббота, воскресенье.

  туда обратно туда обратно
Центр 8:00 16:00
Ленинск 8:25 12:50 16:25 20:50
Сады 9:05 12:15 17:05 20:15
Шинник 10:30 11:20 18:30 19:20
Радуга 10:50 11:10 18:50 19:10
Зеленый берег 11:00 19:00

Как и в прошлый год цена — 15 р. в один конец, при скорости ветра выше 14 м/с рейсы отменяются.

Местный code contest

  • 14 Май, 2009 at 9:06 PM

Сходил с одногруппниками на местный межуниверситетский code contest, который гордо звался «региональная олимпиада по программированию». 5 задач, 4 часа и ЭЛТ-мониторы, после которых пришлось два часа проветривать голову, вкручивая педали. Увы, правила олимпиады запрещали использовать свои ноутбуки.

Вцелом, наказ Директора ИМИТ мы с одногруппниками выполнили на все 100%: Егор Непомнящих на первом месте, я на втором и Антон Вальтер на третьем.

Из недостатков contest-а можно отметить только скользкую формулировку одной из задач — решая совершенно другую задачу я потратил полтора часа и искренне сожалел, когда дубовое решение, написанное за 20 минут, прошло все тесты с первого раза. Обсуждение этой задачи после соревнования вернуло мне веру в собственные когнитивные способности — получив дипломы, мы так и не смогли решить, что же именно хотели сказать авторы третей задачи, хотя все трое эту задачу решили, судя по турнирной таблице.

Также изрядно доставило решение Егора задачи о рюкзаке: вместо ожидаемого решения динамическим программированием он поступил как настоящий спешащий турист — в течении полутора секунд, оставшихся до отправления поезданаступления time-limit, генерировал случайные решения и проверял, подходят они под условия или нет. Если за полторы секунды решение не находилось, то максимум считался недостижимым. Неожиданно, но все тесты такой метод прошел с первого раза.

Всё это вполне согласуется с моими планами поучаствовать в ACM ICPC один раз на пятом курсе. Если, конечно же, меня не отчислят из университета до этого момента. Пойду, пожалуй, готовиться к экзамену по механике сплошных сред, уравнения Навье-Стокса такие уравнения.

Это кросспост моей записи из хаброблога Jabber, also в сообществе ru_jabber


То там, то здесь в течение последнего полугода возникают сообщения о том, что люди не могут подключить к их jabber-аккаунту на Google Talk новые транспорты. Как показал анализ трафика и несколько обсуждений в списке рассылки jabber-operators, дело в том, что GTalk «не любит» JIDы в формате srv.example.org, а предпочитает исключительно node@example.org и поэтому честные транспорты не могут запросить у пользователя авторизацию.

Если количество ссылок вас еще не утомило, то ниже я в двух словах расскажу, что с этим можно сделать, пока инженеры Google полгода чинят этот лютый баг.

Read more... )

Это кросспост моей записи из хаброблога программирование под *nix.


Хаброюзер allan_sundry во флейме про ботнет под Mac OS X не поверил, что недавняя уязвимость в Linux-овом udev действительно широка, глубока и в ряде случаев даже опасна. В ответ я решил написать этот топик, демонстрирующий, что создать рабочий эксплойт для опубликованной уязвимости нередко может даже фриланствующий студент-недоучка, потратив пару-тройку часов воскресным вечером.

Read more... )

Чудеса coreutils

  • 10 Апр, 2009 at 2:07 AM

[info]blinalexya рассказывал недавно, что на его работе ls падал в корку при обработке директорий с ~100'000'000 файлов. Не знаю, что за PohmelFS там использовалась, но учитывая тот факт, что ls сортирует имена файлов и пытается расставить их по нескольким колонкам — упасть, отожрав кучу памяти, оно действительно шансы имело.

Я же на днях наткнулся на другую смешную особенность коры утилит — seq работает с вещественными числами, а не с целыми, как может сложиться впечатление после сотни HOWTO, упоминающих код в духе $(seq 1 100). С целыми числами около нуля всё в порядке, но, если выйти за диапазон точности вещественного числа, начинают лезть артефакты, кстати, показывающие, что промежуточные вычисления делаются с точностью более высокой, чем double:

$ i=100000000000000000000; seq $i $(echo $i + 10 | bc) | uniq -c
5 100000000000000000000
7 100000000000000000008
$ i=1000000000000000000000; seq $i $(echo $i + 10 | bc) | uniq -c
33 1000000000000000000000

Уронить seq в core таким образом не получается, но загнать в бесконечный цикл — легко.

Да, и еще к вопросу о точности. [info]gasadov давненько провел чудный эксперимент и закодировал фотографию в mp3. Что я могу сказать — даже в 320kbps преобладает теплый ламповыйцветной электронойз.

Profile

firefox
[info]darkk
Leonid Evdokimov
Website

Реклама

Syndicate

RSS Atom
Разработано LiveJournal.com
Designed by Tiffany Chow