Записи за месяц: May 2011

Кстати, пришла посылка из Амазона

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

(В посылке)

Английская “Меланхолия Харухи” и ещё три книги. Все в твёрдом переплёте, оригинальном оформлении и большого размера. Если японские покетбуки примерно с треть листа А4 и буковки в них маленькие, так что держать можно даже одной рукой, то американские – почти что в два раза больше и в длину, и в ширину.

Картинки все тоже растянуты.

Перечитывать в десятый раз я, наверное, не буду – купил для коллекции.

Пять книг по Коду Гиасса. Ну хорошо, пять ранобе по Коду Гиасса. Википедия обещала, что их авторы – Горо Танигути и Итиро Окоюти, то есть, режиссёр и сценарист эпического аниме-сериала соответственно. Но это враньё: сочинять подписали, как всегда, автора-контрактора.


Особой интриги в тексте нет, описываются чувства второстепенных и главных героев во время событий сериала. Не фонтан книги. Впрочем, читать можно, картинки красивые и вообще американское оформление очень и очень приятное. Даже в руках держать книги нравится. В общем-то, в руках держать их нравится больше, чем читать.

Последние два тома Тригана. В том самом официальном переводе, который невозможно читать. Но я уже настолько потерял нить сюжета, что мне хочется просто полюбоваться на картинки, а потом скачать сканлейты и разобраться, наконец, что происходило в манге.

Теперь у меня есть полная коллекция этого убожества, даже не знаю, радоваться или грустить.

И тома 13-17 Клеймора. Правда, с сюрпризом. Если помните, в прошлый раз Амазон первым прислал том из середины. Теперь он 13-го тома вообще не прислал. На складе кончился. Ну ничего, прочёл в сканлейтах…

Так вот, о манге. Когда-то я возлагал на неё большие надежды. К сожалению, они не оправдываются. Последние несколько томов Клеймор всё-таки выродился в бесконечные драки. Сюжет застрял, вместо похождений Раки, который просто не появляется, приходится читать о бессмысленных стычках Исли с севера и Ринул с востока (ну какая мне разница, кто кого порешит) и об однообразных экспериментах Организации по созданию очередных боевых тёток (я в них уже путаюсь).

Я уже готов поверить, что в Бакумане говорили правду, и журналы типа Shonen Jump действительно вынуждают авторов “отуплять” мангу и пихать в неё больше драк, поскольку никакого смысла тратить на них время я не вижу.

Ценность драки – не в процессе набивания морды, а в конфликте, который драку вызвал. Драка – это просто яркий способ выразить чувства героев. Например, когда Кёске почти дал папе в глаз, чтобы тот разрешил Кирино играть в эроге – это было интересно, поскольку стало ясно, как Кёске любит свою сестру. А если бы папа с Кёске тридцать глав напрягали рейацу и ударяли друг друга хиссацу ваза просто потому что это батл-шонен, то было бы разве что над чем поржать.

AniDB tool

Обновил AniDB tool, консольную утилиту для хеширования и добавления аниме на anidb.

Из интересного в обновлении добавилось распараллеливание работы. Медленных точек в программе три: таймауты AniDB (команды не чаще, чем раз в 2 секунды), чтение диска и вычисление хеша. Последнее – нагрузка на процессор.

С таймаутами AniDB сделать ничего не получится. Чтение диска тоже, в общем, не ускоришь, единственное, что можно сделать – это устранить любые промедления. Как только один кусок считывается, сейчас же надо начинать читать другой.

Для этого хеширование, обычно отнимающее примерно 30% времени, было вынесено из главного потока. Сам по себе MD5 вычисляется строго последовательно и параллелится очень плохо, однако хеш ED2k, который использует анидб, хоть и основан на MD5, но файл в нём разбивается на кусочки, каждый из которых хешируется, а потом от всех хешей берётся хеш. Поэтому хеширующих потоков можно сделать несколько.

К сожалению, так можно максимум устранить те самые 30%, поскольку чтение с диска всё равно никуда не денется.

Если здесь есть программисты, интересно, есть ли у кого-нибудь ещё какие-нибудь идеи, как процесс можно ускорить?

Всё должно быть файлами

Первое правило хранения пользовательских данных: всё должно быть файлами.

Букмарки, заметки, пароли, контакты, сохранённые игры, адреса серверов – каждый пункт списка должен лежать отдельным файлом, и если хранилище поддерживает группировку, то группы должны сохраняться как папки.

И наоборот, примеры того, как делать ни в коем случае нельзя:
– Нельзя хранить весь пользователський профиль в одном файле, как это делает Миранда.
– Нельзя хранить весь контакт-лист в одном файле, как это делает Remote Admin
– Нельзя хранить все заметки, контакты и букмарки в трёх файлах, как это делает Опера.

Почему нельзя?

Потому, что для файлов уже сделана куча полезных вещей, которые работают вне зависимости от содержимого. Например, вы можете вручную удалять и перемещать файлы. Объединять содержимое папок и синхронизировать их с помощью программ вроде Dropbox. Отправлять отдельные файлы по почте.

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

Дополнение.
Разумеется, лучше всего хранить данные не просто в файлах, а в текстовых файлах. В них легче находить изменения и другим будет проще работать с вашим форматом. Сейчас моден XML, но я бы не стал использовать его без прямой необходимости: достаточно текста, любого текста.

Ещё одно правило: все пользовательские данные должны храниться в %USERPROFILE%\AppData\YourAppName. Тогда они не только будут переноситься с компьютера на компьютер при включенных Roaming Profiles, их ещё и будут автоматически бэкапить вместе со всем профилем пользователя.

Играйте по правилам, и совершенно бесплатно получите огромное количество бонусов.

LastPass FAIL

На примере LastPass только что можно было убедиться, что дуракам не надо грабель, они на пустом месте лоб расшибут.

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

На всякий случай цифрами: 100 из 1 000 000.

Эти скачанные аккаунты были зашифрованы, так что даже если они попали бы к злоумышленнику, никто не смог бы их прочесть! Тем более, что и злоумышленника, скорее всего, не было. В общем, как в игре Pandemic 2, на Аляске кто-то чихнул – SHUT. DOWN. EVERYTHING.

LastPass решили выпендриться и показать, как серьёзно относятся к безопасности.

Они заставили весь миллион пользователей сменить пароли.

Остановимся на минуту и сделаем то, чего не сделали в LastPass: задумаемся над последствиями. Чем чревата одновременная смена паролей всеми пользователями сервиса?

Ну во-первых, перегрузкой серверов. Что и произошло. Сервера LastPass весело легли и последние два дня почти не шевелятся. Из-за этого пароли сменить невозможно, а поскольку это требуется для продолжения работы, никто не может работать! А так как в LastPass хранятся все пароли, то десятки тысяч человек упорно долбят клавиши F5, всё повышая нагрузку на сервер.

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

И наконец, если загадочный хакер действительно взломал сервера LastPass, получил к ним доступ, и не знает теперь, что делать с зашифрованными данными, а тут все пользователи подключаются и шлют ему сначала свои старые, а затем новые пароли, как вы думаете, что он скажет?
Он скажет “Спасибо”.

Да и каким образом вообще могла смена пароля защитить от подбора старого, слабого пароля к уже скачанным данным? Украденное злоумышленником не перешифруется магическим образом новым, сильным паролем.

Из-за весьма ветренного подозрения на то, что 100 из 1 000 000 аккаунтов могли быть скачаны (при этом оставаясь зашифрованными и бесполезными), LastPass обрушил на несколько дней весь свой сервис, лишил десятки тысяч доступа к своим паролям и украл у них огромное количество времени.

Выпендрились, что я могу сказать.

Бакуман такой Бакуман

Херп дерп.

Затянут, конечно, и простоват, но интересен. Жаль только, что про сочинение мало рассказывают. “Левел-ап. Стиль героев улучшился! Сюжеты стали интересней!”

Об ответах

Наверное, нужно мысленно исключить из списка возможных реакций на чужое письмо вариант “отвечу или откомментирую потом”. Он просто значит “никогда не отвечу и не откомментирую”. На следующее утро, вечером после работы, в ближайшие выходные… все эти дни никогда не наступают.

Либо отвечаешь сразу же, либо оставляешь без ответа навсегда. Если тема важная, и оставить без ответа нельзя – значит, надо собраться с мыслями и подумать, что хочешь сказать. Откладывать бессмысленно, думать за тебя никто не будет.

Единственное, что тревожит меня в таком образе мыслей – не выйдет ли, что большинство тем я начну считать незначительными, и ещё сильнее замкнусь в себе? Ведь помимо желания что-нибудь писать и умения писать необходима ещё воля и осознание важности избранной темы. Иногда хотел бы написать о чём-то, но физически не можешь потому, что подсознание не считает тему важной или твои мысли заслуживающими формулировки.