• Shortcuts : 'n' next unread feed - 'p' previous unread feed • Styles : 1 2

» Publishers, Monetize your RSS feeds with FeedShow:  More infos  (Show/Hide Ads)


Date: Friday, 02 Oct 2009 15:11
Получил сегодня загранпаспорт. Можете меня поздравить, для меня это было непросто, а уж сколько переживаний было. Милиционерша, принимавшая документы, язвительно прошлась по понаехавшим и сказала, что скорее всего мою анкету завернут. Тем не менее, прибежал сегодня за 15 минут до закрытия, и благополучно получил. Только рожа на фотографии напоминает, скорее, русского мафиози. У меня во всех паспортах жуткие фотографии, потому что всегда забываю, что фотографируюсь на паспорт и прихожу черт знает в каком виде.

На обратном пути решил отметить чашкой кофе в Венеции. Познакомился с обаятельным итальянцем, Альваро, который недавно приехал в Питер, говорит по-английски и немного по-испански. Но испанский он знает хуже меня, так что сразу перешли на английский. Оказалось, что он работает сисадмином в одной софтверной конторе, а в свободное время преподает латиноамериканские танцы. Удачное знакомство. :)

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

Завтра надеюсь дойти до занятия по реггетону, а после него наверное зайду на сальса-вечеринку, которую устраивает организатор нашего танцевального клуба. Танцевать я еще не смогу, но хотя бы взгляну, как это выглядит вживую.
Author: "--" Tags: "танцы, дневник, испанс..."
Send by mail Print  Save  Delicious 
Date: Monday, 28 Sep 2009 10:18
http://www.jgc.org/blog/2009/09/how-to-fail-at-journalism.html

Не только в России журналисты выдумывают небылицы.
Author: "--" Tags: "ссылки"
Send by mail Print  Save  Delicious 
Date: Sunday, 27 Sep 2009 10:51
Наконец начал читать «Сто лет одиночества» в оригинале. Уже давно собирался, но только сегодня появилось время и настроение. Я когда-то перевод начинал читать, но поскольку нет своего экземпляра, а с экрана читать не люблю, так и не дочитал.

Пока на каждую строчку уходит минут 20 времени. Грамматические конструкции вроде бы не особенно сложные, но очень много незнакомых слов. Едва ли не каждое второе. Все вношу в anki, надеюсь, дальше читать станет легче.

Еще накачал клипов по сальсе. Периодически отрабатываю движения перед экраном. Наверное, ужасно коряво, но надеюсь это поможет мне догнать нашу группу. Очень хочется начать танцевать.
Author: "--" Tags: "сальса, дневник, испан..."
Send by mail Print  Save  Delicious 
Date: Saturday, 26 Sep 2009 14:21
Author: "--" Tags: "youtube, reddit, ссылки, виде..."
Send by mail Print  Save  Delicious 
Date: Friday, 25 Sep 2009 13:21
Author: "--" Tags: "security, javascript"
Send by mail Print  Save  Delicious 
Date: Thursday, 24 Sep 2009 07:38
Вчера сходил впервые на танцы. Собирался начать еще в понедельник, но в понедельник притащил свою партнершу, а она прямо с порога зала убежала — еще более стеснительная, чем я. :)

Остаток понедельника и весь вторник я ее настраивал на то, что у нее все получится, и в среду она согласилась сделать еще одну попытку, хотя пришлось впихивать ее в зал почти силой. Наверное помогло то, что нас было всего трое на первом занятии — я, моя партнерша, и еще одна девочка.

Ведет занятия симпатичная веселая кубинка Дейзи, которая не знает ни слова по-русски (только «право» и «лево», но и их она путает) — и я, и моя партнерша, от нее в восторге. Именно благодаря ей Рита решила остаться, хотя у нее, также как и у меня, пока ничего не получается, и она очень стесняется. Меня Дейзи постоянно подбадривала, в конце занятия я поболтал с ней немного на своем ломаном испанском, и она сказала, что видно, что я никогда не танцевал, но также видно, что очень хочу научиться, значит, у меня все получится.
Author: "--" Tags: "танцы, сальса, дневник"
Send by mail Print  Save  Delicious 
Date: Sunday, 13 Sep 2009 00:41
Пил сегодня в «Венеции» кофе у стойки, когда зашла пара из Испании. Услышал, как они переговариваются по-испански и пытаются сделать заказ на английском, решил не упускать шанс и познакомиться. Поскольку их двое, приходилось обращаться к ним на «вы» (vosotros), а поскольку раньше никогда с двумя собеседниками одновременно не разговаривал, спрягать глаголы оказалось сущей мукой.

Зовут их Ферран и Кончи (Conxi, тоже в первый раз слышу такое оригинальное имя), живут в Барселоне, работают в банке, любят путешествовать. Специально берут отпуск осенью, чтобы поездить по миру. В Испании принято отдыхать в августе, но мои новые друзья говорят, что в августе работать в банке очень хорошо, потому что есть кондиционер и нет посетителей. А в сентябре, когда все возвращаются из отпусков и начинается стресс и неразбериха, они наоборот уезжают. )))

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

Под конец обменялись номерами телефонов и адресами электронной почты. Я сказал, что могу погулять с ними завтра или на неделе, показать город, но они отказываются, говорят, что не хотят злоупотреблять моим расположением. Впрочем, пообещали, что в понедельник позовут с собой во второй половине дня.
Author: "--" Tags: "дневник, испанский"
Send by mail Print  Save  Delicious 
Date: Saturday, 12 Sep 2009 12:03
Сдал экзамен по испанскому на «4». Что-то в последнее время перестало хватать времени на испанский, пропустил много занятий. Очень обидно, хотелось сдать на 5. Да и язык на уровне A2 оказался намного сложнее, чем я думал. Прошедшие времена, сослагательное наклонение, императив — все это очень сложно. Кажется, испанский значительно сложнее английского.Ну, разберусь. На уровень B1 решил пока не идти — нет времени и хочется отдохнуть. Пойду в конце октября-начале ноября. Еще не начал читать книги, все откладываю из-за нехватки времени. Зато периодически ставлю в качестве фона испанское интернет-радио, и, кажется, даже что-то понимаю.

Сегодня написал первый баг в баг-трекер Django. Натыкался на ошибки и раньше, конечно, но всегда кто-то сообщал о них раньше меня.
Author: "--" Tags: "дневник, испанский"
Send by mail Print  Save  Delicious 
Date: Wednesday, 09 Sep 2009 08:28
Однако, ALTER COLUMN SET STATISTICS с последующим ANALYZE реально помогает ускорить выполнение запроса в казалось бы совершенно безнадежных ситуациях. Почему-то я к этому способу обратился в самый последний момент.
Author: "--" Tags: "performance, sql, postgresql"
Send by mail Print  Save  Delicious 
Date: Tuesday, 08 Sep 2009 11:15
Есть такой запрос (сгенерирован Django ORM и отформатирован мной):
SELECT activity_activityevent.id, activity_activityevent.user_id, activity_activityevent.added_on
FROM activity_activityevent 
WHERE activity_activityevent.user_id IN (
   SELECT U0.user_id 
   FROM profile U0 
   INNER JOIN profile_friends U1 
   ON U0.user_id = U1.to_profile_id
   WHERE U1.from_profile_id = 5
) 
ORDER BY activity_activityevent.added_on DESC 
LIMIT 10
EXPLAIN ANALYZE с настройками по умолчанию:
Limit  (cost=4815.62..4815.65 rows=10 width=202) (actual time=332.938..332.977 rows=10 loops=1)
  ->  Sort  (cost=4815.62..4816.35 rows=292 width=202) (actual time=332.931..332.945 rows=10 loops=1)
        Sort Key: activity_activityevent.added_on
        Sort Method:  top-N heapsort  Memory: 19kB
        ->  Hash IN Join  (cost=2204.80..4809.31 rows=292 width=202) (actual time=12.856..283.916 rows=15702 loops=1)
              Hash Cond: (activity_activityevent.user_id = u0.user_id)
              ->  Seq Scan on activity_activityevent  (cost=0.00..2370.43 rows=61643 width=202) (actual time=0.020..126.129 rows=61643 loops=1)
              ->  Hash  (cost=2200.05..2200.05 rows=380 width=8) (actual time=12.777..12.777 rows=424 loops=1)
                    ->  Nested Loop  (cost=11.20..2200.05 rows=380 width=8) (actual time=0.260..11.594 rows=424 loops=1)
                          ->  Bitmap Heap Scan on profile_friends u1  (cost=11.20..62.95 rows=380 width=4) (actual time=0.228..1.202 rows=424 loops=1)
                                Recheck Cond: (from_profile_id = 5)
                                ->  Bitmap Index Scan on profile_friends_from_profile_id_key  (cost=0.00..11.10 rows=380 width=0) (actual time=0.208..0.208 rows=424 loops=1)
                                      Index Cond: (from_profile_id = 5)
                          ->  Index Scan using profile_pkey on profile u0  (cost=0.00..5.61 rows=1 width=4) (actual time=0.012..0.015 rows=1 loops=424)
                                Index Cond: (u0.user_id = u1.to_profile_id)
Total runtime: 333.190 ms
Теперь запрещаем seq scan (set enable_seqscan to off) и снова выполняем EXPLAIN ANALYZE:
Limit  (cost=9528.36..9528.38 rows=10 width=202) (actual time=165.047..165.090 rows=10 loops=1)
  ->  Sort  (cost=9528.36..9529.09 rows=292 width=202) (actual time=165.042..165.058 rows=10 loops=1)
        Sort Key: activity_activityevent.added_on
        Sort Method:  top-N heapsort  Memory: 19kB
        ->  Nested Loop  (cost=2201.00..9522.05 rows=292 width=202) (actual time=13.074..126.209 rows=15702 loops=1)
              ->  HashAggregate  (cost=2201.00..2204.80 rows=380 width=8) (actual time=12.996..14.131 rows=424 loops=1)
                    ->  Nested Loop  (cost=11.20..2200.05 rows=380 width=8) (actual time=0.263..11.665 rows=424 loops=1)
                          ->  Bitmap Heap Scan on profile_friends u1  (cost=11.20..62.95 rows=380 width=4) (actual time=0.232..1.181 rows=424 loops=1)
                                Recheck Cond: (from_profile_id = 5)
                                ->  Bitmap Index Scan on profile_friends_from_profile_id_key  (cost=0.00..11.10 rows=380 width=0) (actual time=0.210..0.210 rows=424 loops=1)
                                      Index Cond: (from_profile_id = 5)
                          ->  Index Scan using profile_pkey on profile u0  (cost=0.00..5.61 rows=1 width=4) (actual time=0.013..0.016 rows=1 loops=424)
                                Index Cond: (u0.user_id = u1.to_profile_id)
              ->  Index Scan using activity_activityevent_user_id on activity_activityevent  (cost=0.00..18.82 rows=35 width=202) (actual time=0.014..0.130 rows=37 loops=424)
                    Index Cond: (activity_activityevent.user_id = u0.user_id)
Total runtime: 165.323 ms
Время выполнения запроса уменьшилось в два раза. Тот же самый результат получается, если установить random_page_cost меньшим или равным 1.2. Оба подхода мне не очень нравятся, особенно с выключением seq scan. Просто не понимаю, каким разумным методом заставить postgres использовать здесь индекс. Видимо, я что-то не догоняю.
Author: "--" Tags: "performance, sql, postgresql"
Send by mail Print  Save  Delicious 
Date: Sunday, 06 Sep 2009 06:03
Питоновское расширение cmemcache для работы с memcached начало выдавать такие сообщения ни с того, ни с сего:
[NOTICE@1252216599.924163] mcm_storage_cmd():3339: unable to store value: add 
[NOTICE@1252216599.924494] mcm_storage_cmd():3339: unable to store value: add 
[NOTICE@1252216599.924764] mcm_storage_cmd():3339: unable to store value: add 
[NOTICE@1252216599.925048] mcm_storage_cmd():3339: unable to store value: add

Соответственно, кэширование не работает. Гугление этих ошибок никакого вразумительного ответа не дает. Видимо, придется откатываться к более медленному pure-python модулю memcache.

Искусственный интеллект PostgreSQL начинает задалбывать. Есть долгий запрос с несколькими JOIN'ами. В паре JOIN'ов не используется индекс, вместо этого Postgres ищет 1000 значений в таблице из миллиона записей методом seq scan. Развернул дамп базы локально на той же версии postgres. Сделал VACUUM ANALYZE для трех таблиц, которые используются в JOIN'ах. Postgres начал использовать индекс и время выполнения запроса уменьшилось более чем в два раза. На production VACUUM ANALYZE тех же таблиц ни к чему не приводит, запрос выполняется все так же медленно.

Может быть ему вообще запретить метод seq scan?

Author: "--" Tags: "memcached, performance, cmemcache, postg..."
Send by mail Print  Save  Delicious 
Date: Friday, 04 Sep 2009 12:11
CREATE OR REPLACE VIEW pg_table_nonindex_x AS
SELECT
x1.table_in_trouble,
pg_relation_size(x1.table_in_trouble) AS sz_n_byts,
x1.seq_scan, x1.idx_scan,
CASE
WHEN pg_relation_size(x1.table_in_trouble) > 500000000
THEN 'Exceeds 500 megs, too large to count in a view. For a count, count individually'::text
ELSE count(x1.table_in_trouble)::text
END AS tbl_rec_count,
x1.priority
FROM
(
SELECT
(schemaname::text || '.'::text) || relname::text AS table_in_trouble,
seq_scan,
idx_scan,
CASE
WHEN (seq_scan - idx_scan) < 500 THEN 'Minor Problem'::text
WHEN (seq_scan - idx_scan) >= 500 AND (seq_scan - idx_scan) < 2500 THEN 'Major Problem'::text
WHEN (seq_scan - idx_scan) >= 2500 THEN 'Extreme Problem'::text
ELSE NULL::text
END AS priority
FROM
pg_stat_all_tables
WHERE
seq_scan > idx_scan
AND schemaname != 'pg_catalog'::name
AND seq_scan > 100) x1
GROUP BY
x1.table_in_trouble,
x1.seq_scan,
x1.idx_scan,
x1.priority
ORDER BY
x1.priority DESC,
x1.seq_scan
;
SELECT * FROM pg_table_nonindex_x;


Отсюда.
Author: "--" Tags: "tips, performance, sql, optimization, po..."
Send by mail Print  Save  Delicious 
Date: Thursday, 20 Aug 2009 18:40
Author: "--" Tags: "ссылки, испанский"
Send by mail Print  Save  Delicious 
Date: Wednesday, 19 Aug 2009 04:13
Из комментариев на reddit к этой новости: US man 'stole 130m card numbers':

He would also have to pay a fine of $250,000 (£150,000) for each of the two charges.

Good thing he didn't download any music!
Author: "--" Tags: "reddit, ссылки, юмор"
Send by mail Print  Save  Delicious 
Date: Tuesday, 18 Aug 2009 15:31
От обилия информации голова идет кругом. Как заучить все спряжения? А в modo imperativo? А в pretérito? Ладно, есть правила, но все равно мне пока тяжело их запомнить и применять на лету. Не думал, что испанский настолько сложный. Он легкий только на поверхности.

Пока нашел простенький тест: http://www.studyspanish.com/verbs/

Надо бы что-нибудь подобное для anki написать. Допустим, помечать глаголы меткой Verbo и генерировать дополнительные вопросы, типа, «как спрягается этот глагол в таком-то времени в таком-то наклонении»... Не знаю, когда время для этого появится.

P.S. Нашел еще одну полезную ссылку: Conjugación de Verbos/Spanish Verb Conjugation
Author: "--" Tags: "испанский"
Send by mail Print  Save  Delicious 
Date: Monday, 17 Aug 2009 08:11
На выходных посмотрел «Район №9». Очень понравился. Самый нестандартный фантастический фильм за последние годы. В кинотеатре рядом со мной народ приподнимался на креслах в определенные моменты, и не позднее середины сеанса все забыли про попкорн.

После сеанса пришло в голову, что это, возможно, пропаганда толерантности, но довольно ненавязчивая.
Author: "--" Tags: "кино, дневник"
Send by mail Print  Save  Delicious 
Date: Sunday, 16 Aug 2009 19:48
Фотографии.

Меня на этих фотографиях нет, поскольку в тот день сильно порезался бритвой, пришлось заклеить морду пластырем, постеснялся фотографироваться.

Длинноволосая брюнетка — Мария Кармен, переводчица из Андалусии, очень красивая. Не знал, что испанки бывают настолько красивыми. Девочка в белой толстовке и очках — дочь Игнасио, Соледад (странное имя, как им в голову приходит так детей называть).

Видео, как наш Игнасио играет на гитаре. Не перестаю удивляться талантам этого человека. На одном из видео поет Валя — секретарь центра. Ни слова не разобрать, но красиво. ))))

http://www.youtube.com/watch?v=Fj7TcR9bV6s
http://www.youtube.com/watch?v=bePx4oFDtPE
http://www.youtube.com/watch?v=X4ipaADjS9o
http://www.youtube.com/watch?v=S9moAsx4gmc (сиськи! но одетые, не обольщайтесь)
Author: "--" Tags: "фотография, видео, исп..."
Send by mail Print  Save  Delicious 
Date: Wednesday, 12 Aug 2009 09:02
Identifying unicode punctuation characters with Python regex. Хм, неужели нет более простого способа, как в Perl, например?..

Необходимость возникла из-за того, что pymmseg (основанный на mmseg-cpp) считает CJK-пунктуацию отдельными словами. :(
Author: "--" Tags: "закладки, python, cjk, unicode, ..."
Send by mail Print  Save  Delicious 
Date: Tuesday, 11 Aug 2009 08:15

Существует пакет MeCab для работы с японскими текстами. Предназначение его неизвестно, поскольку документация скудная и исключительно на японском. Мне надо всего лишь разбивать японские текст по словам (китайские тоже, но для этих целей есть простой и понятный pymmseg).

К счастью, нашел на Google Code Search минимальный пример на Ruby, который быстро портировал на Python:

import MeCab

def words(text):
    mecab = MeCab.Tagger("")

    mnode = mecab.parseToNode(text.encode('euc_jp'))
    word_array = []

    while mnode:
        infos = {}
        infos['word'] = mnode.surface.decode('euc_jp')
        feature = mnode.feature.decode('euc_jp')
        array = feature.split(",")
        infos['type'] = array[0]
        infos['dform'] = array[4]
        infos['reading'] = array[5]
        if not infos['type'] == "BOS/EOS":
            word_array.append(infos)
        mnode = mnode.next

    return word_array

sentence = u"共焦点レーザ走査型顕微鏡FV1000は、レーザ顕微鏡に求められる基本性能を極限まで追求しました"
print sentence
for w in words(sentence):
    print w['word']

Для работы необходимо установить пакеты mecab и python-mecab, например, из The Ubuntu NLP Repository (я использовал самосборный).

Author: "--" Tags: "python, nlp, mecab, mmseg, languages, ch..."
Send by mail Print  Save  Delicious 
Next page
» You can also retrieve older items : Read
» © All content and copyrights belong to their respective authors.«
» © FeedShow - Online RSS Feeds Reader