16 декабря 2009 г.

Схема навара

15.12.2009 случилась смешная история на ММВБ. Оказалось, что имея всего 1,2 млн. руб. можно подвинуть индекс ММВБ на 6%. Казалось бы: и что? А то, что существует такая замечательная штука, как индексный фьючерс. Это сколько ж можно наваривать, если двигать индекс куда надо когда надо?

24 ноября 2009 г.

Лампы делать уже не умеем, микросхемы еще не умеем

В Россию запретят ввозить устаревшие модели телевизоров
С 2010 года власти могут ограничить ввоз в Россию телевизоров, не поддерживающих цифровые форматы.

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

Я хренею, дорогие товарищи! Инновации, модернизационная экономика, … А какой-то сраный аналоговый ретранслятор сделать уже некому. Или почему, Вы думаете, запрещают? Да потому что к 2015 году жалкие остатки советского наследия догорят, а заменить нечем, кроме буржуйской техники, которая уже не поддерживает аналоговый сигнал.

Лампочки в кредит

Lenta.ru: В России: Медведев утвердил запрет на лампы накаливания
Для облегчения перехода на энергосберегающий режим правительство планирует предоставить россиянам потребительские кредиты. Это должно компенсировать разницу в стоимости товаров - сейчас энергосберегающие лампы стоят в разы дороже, чем обычные лампы накаливания.

Это просто п****ц, господа! Какая, нахрен, энергоэффективность? Лампочки не спасут от нехватки электроэнергии — электростанции строить надо, а не лампочки менять, да еще и в кредит. А если еще учесть, что энергосберегающих ламп у нас в стране практически не производят, то получается, что население загоняют в долговую яму ради финансирования зарубежных производителей.

23 ноября 2009 г.

Стамбул

Ананасы растут прямо на улице.

Древнетурецкое бомбоубежище подземное водохранилище.

С запасами воды и еды.

Высокоточное оружие со спутниковым наведением.

Счастливые люди — турки. У нас как ни зайду в магазин, так просто «Нишиша-центр», а у них

Народ всегда не любил императоров-угнетателей. Вот, на основании Египетской колонны только императору морду-то и набили (это тот, который в ложе по центру сидит).

А через 10 секунд выключился свет...

20 ноября 2009 г.

Табуретовка

Итак, наше любимое правительство таки установило минимальную цену на водку: 89 р./0,5 л. c 1 января 2010 г. Конечно, зайти в магазин и содрать мзду, если продается водка дешевле минимальной цены, гораздо легче, чем расследовать, откуда взялась водка по 40 р. В порядке предсказания:
  1. Бизнес 2010 года — производство самогонных аппаратов. К концу года следует ждать постановлений об их обязательной сертификации и обязательной гос. регистрации.
  2. Теперь «паленая» водка, которая раньше не стеснялась продаваться за 40 р. и была видна невооружённым глазом, будет продаваться за те же деньги, что и нормальная. Следовательно,
  3. Смертность от алкогольных отравлений повысится.
Ну, хоть алкоголики вымрут, и то хорошо. Ибо нормальные люди, по-моему, уже давно водку почти не покупают, ибо производители уже давно поняли, что нет смысла за 200 р. продавать что-то иное, нежели продается за 40 р. — цвет тот же.

30 октября 2009 г.

Хороший, плохой, отвратительный

Эрик Рэймонд писал в своем блоге о проблемах форджей — системах хостинга программных проектов, вроде SourceForge, Gna!/Savane, GForge/FusionForge и прочих. Писал он про их проблемы, но я отвлекусь на другое.

В очередном своём посте, Эрик посмотрел на все эти системы чуть глубже. Что же он там увидел? А увидел он там PHP с SQL'ем и отвратительнейшей архитектурой. Казалось бы, уважаемые крупные проекты, у SourceForge даже деньги водятся, а такую фигню ляпают. Как так? Ведь известно, что хороший программист может писать хорошо на любом языке. Да и языки, вроде как, не бывают хорошими или плохими.

Считается, что PHP хорошо подходит для веб-разработки. Но так ли это? Возможно, лет 15 назад он хорошо подходил для этой цели, во всяком случае, гораздо лучше, чем что-то другое, имевшееся в то время. Но каков был веб в то время? Сайты состояли, в основном, из статических страничек, изредка попадались странички типа «простой отчет», сгенерированные по выборке из БД, да простенькие веб-формочки. Даже когда появился JavaScript, поначалу ситуация изменилась не слишком: ну присутствует в страничках еще какой-то текст (код JavaScript), ну выполняется он на стороне клиента — серверную часть это колыхало мало.

Тут пришел набивший уже всем оскомину AJAX. На самом деле, изменения произошли чуть раньше, но AJAX подлил немало маслица в огонь. Теперь серверная часть веб-приложения обрабатывает не один запрос на страничку, а десятки. API, выставляемый «наружу», стал на порядок больше и сложнее. Теперь веб-приложение — это довольно громоздкая штуковина, которую, как правило, нахрапом не наколбасишь. Веб-приложения стали более полноценными приложениями и требуют к себе не меньшего внимания, чем обычные клиент-серверные приложения, которые родились несколько раньше своей вебовской ипостаси. А вот тут уже выясняется, что есть языки, мало пригодные для создания приложений. Для небольших скриптов — пожалуйста, даже удобно, никаких лишних телодвижений, что надо, то сразу же и написал, но вот для чего-то большего… Можно, конечно, но слишком большой оверхед в самом процессе разработки. Без каких-либо плюсов, ибо все плюсы скриптовых языков кончаются на 5 000-й строке кода, а плюсы языков, предназначенных для больших проектов, тут только начинаются.

Так что, начать проект можно и на PHP/Perl/Python — быстрый старт и всё такое, но на 5 000–10 000 строк стоит задуматься о том, чтобы переделать проект с нуля, воспользовавшись инструментом, более соответствующим ситуации. Ибо дальше будет только хуже.

4 сентября 2009 г.

Не пить — вредно

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

18 августа 2009 г.

FreeCR — консольный форум

Довольно оригинальная идея представить форум в виде файловой системы и сделать интерфейс пользователя в виде текстового терминала с шеллом. Набор команд, правда, пока бедноват. Надо бы еще find, какие-нибудь «расширенные атрибуты», pipe'ы и прочие sed/awk — будет супер :)

17 августа 2009 г.

Еще один источник утечки privacy

Vizitator - дознаватель пользовательских предпочтений: Vizitatorα - сервис позволяющий узнать интересы посетителей впервые открывших Вашу страницу.
Казалось бы, ничего особенного — уже сто лет как браузеры умеют подсвечивать посещенные ссылки другим цветом, многие этим пользуются, а кое-где без этого совсем плохо (например, на LOR). Так теперь можно собирать на сайте информацию о посещении пользователем ссылок при помощи JavaScript. Хорошо хоть, не просто выгребать все уже посещенные ссылки, а только проверять конкретные, заданные проверяльщиком, но и это не так уж мало.

14 августа 2009 г.

Цифровая подпись online

Мир меняется. Электронные документы становятся уже не просто личными, ни на что не влияющими сообщениями, но юридически значимыми. Почтовые сообщения могут использоваться для доказательства в суде, наше государство обещает (давно, правда, обещает, но может все-таки сделает) наладить взаимодействие с населением посредством электронных, а не бумажных документов. И самым важным средством этого взаимодействия будет, скорее всего, электронная почта, а самая популярная нынче почта — веб-почта. Одно из основных нареканий на всяческие веб-почты — небезопасность. Теоретически, почту могу прочитать, подделать и т.п. Причем, провайдер веб-почты имеет вообще все средства для этого, он может подделать почту даже задним числом. Для оффлайновых программ давно есть решение — цифровая подпись и шифрование. Однако, в веб-почте это удовольствие недоступно по вполне очевидной причине — т.к. приложение работает на сервере, то и подписываться должно там же, на сервере. Однако, необходимость передачи секретного ключа провайдеру почты разрушает всю безопасность на корню. Сегодня я начал опробовать решение этой проблемы. Решение называется FireGPG — расширение для Firefox, позволяющее шифровать и подписывать тексты (не только почту), передаваемые online: сообщения в веб-почте, сообщения в форумах или сообщения в блогах (вот на этом самом сообщении я сейчас это и попробую). У FireGPG есть отличная особенность — интеграция с Gmail. При включении этой интеграции, функции подписи и шифрования появляются в интерфейсе Gmail, как будто тут и были. Удобно, теперь сообщения, которые я отсылаю через Gmail тоже будут подписаны, как и те, которые я отсылаю mutt'ом. P.S. Мда... С подписью блог-постов наблюдаются определенные проблемы.

24 июля 2009 г.

Учимся считать

Получил тут на днях “выгодное” предложение от якобы Citibank:
С 15 июля по 31 августа 2009 года воспользуйтесь Вашей кредитной картой Ситибанка за границей, и Вам будет начислено вознаграждение в размере 5% от суммы трат, превышающей 66600 рублей. Максимальная сумма вознаграждения составляет 1 000 рублей.
Настораживает. 5% от 66600 = 3330, т.е. заявленный процент от минимальной суммы более чем в три раза превышает максимальную выплату. Похоже на какую-то разводку. Посмотрел служебную информацию — письмо пришло каким-то необычным маршрутом с subscribe.ru, а не как обычно с citigroup.com, но при этом в письме правильно указаны мои Ф.И.О. Что бы это могло быть? Citibank разводит клиентов? У Citibank скрали базу клиентов? P.S. Да и само число 66600 как-то не выглядит соответствующим солидности Citibank.

18 марта 2009 г.

Финский программист сделал себе палец-флэшку

У меня вот зуб развалился. Может, вставить себе синий протез с флэшкой? Интересно, есть ли такие миниатюрные источники питания (не батарейки), чтобы запитали Bluetooth с флэшкой? Офигительный девайс для хранения паролей и авторизации бы получился :)

14 марта 2009 г.

Социализм, капитализм...

Занятная статья об общественном строе. Хотя некоторые положения вызывают как минимум скепсис, как например, взаимоотношения владельцев aka акционеров и менеджеров, однако в целом статья вызывает ощущение правильности. Хотя автор говорит, что Перестройка была своего рода революцией и переходом от социализма к следующей эволюционной ступеньке общественного строя, однако у меня складывается ощущение, что революция не удалась. Одним из важнейших факторов, приведших к такой революции, по мнению автора, является «перепроизводство инженеров» и повышение инженерной сложности продукции. Однако, что наблюдается сейчас в России — деградация образования, деградация производства от высоких технологий до производства пластиковых ведер и зажигалок. Даже автомобиль на современном уровне сделать уже некому — можно только собирать из импортных комплектующих. Так что, хотя автор и завершает статью бодренькими «впереди планеты всей» и «правильной дорогой идем, товарищи», но чувствуется, что с правильной дороги мы давно свернули и движемся как раз в противоположном направлении — лет через несколько доля высокообразованных граждан будет на уровне 1917 года (получение корочки о В/О еще не делает гражданина высокообразованным) и общественная формация вернется к той же, что была тогда.

11 марта 2009 г.

Emacs: вставка русского текста

В течение некоторого времени меня мучала проблема: русский текст, выделенный в Firefox, вставлялся в Emacs не в русской кодовой странице, а в японской (да, в японской кодовой странице тоже есть кириллица!), символами двойной ширины, как иероглифы. В какой-то момент я сделал обходной маневр с использованием внешней программы xclip и это решение просуществовало у меня около года, хотя обладало внушительной коллекцией существенных недостатков. И вот, наконец, у меня таки дошли руки поковыряться и выяснить причину. Нет, совсем настоящую причину я не выяснил — она то ли в самом Firefox, то ли в X Window System, магическим образом тяготеющей к японским кодировкам. Однако, был найден более красивый обходной маневр. Для Emacs, причина кроется в функции x-select-utf8-or-ctext, которая выбирала этот самый ctext, если он длинее в байтах. Кто его такого туда клал, так и остется невыясненным, однако решение оказалось простым — переопределить функцию x-select-utf8-or-ctext таким образом, чтобы она без всяких лишних эвристик возвращала utf8, если он не пустой, и ctext в противном случае.
(defadvice x-select-utf8-or-ctext (around prefer-utf8 (utf8 ctext) activate)
  "Prefer UTF8_STRING to COMPOUND_TEXT whenever possible."
  (cond ((= (length utf8) 0) (setq ad-return-value ctext))
        (t (setq ad-return-value utf8))))

10 марта 2009 г.

Безопасность программ

После прочтения новости Анализ уязвимостей за 2008 год: в Firefox ошибок больше, но исправляют их быстрее на OpenNet в очередной раз задумался о безопасности. Почему же FireFox безопаснее, чем IE, да и безопаснее ли? Выскажу результат размышления на пальцах. Я попытался встать на позицию злоумышленника и минимизировать трудозатраты. Согласно теме, нас интересует только процесс заражения жертвы. Делать это хочется массово, а значит автоматически. Для проникновения используются дыры в безопасности (уязвимости). Дыры время от времени латаются, а значит нужно писать новые заражалки (эксплоиты). Сделаем некоторые упрощающие предположения для нашей модели.
  1. Уязвимости появляются через равные промежутки времени.
  2. Время на исправление уязвимости постоянно в пределах одной программы и не зависит от уязвимости.
  3. Тудозатраты на написание эксплоита постоянны и не зависят от уязвимости.
Представим себя на месте злоумышленника. Есть две программы: A и B. В программе A всего 6 уязвимостей в год, в программе B — 120. На первый взгляд, B — лакомый кусочек для нас. Смотрим дальше. В программе A уязвимость исправляются полгода, а в программе B — полмесяца. В среднем получается, что в каждый момент времени в программе A наличествует 3 действующих уязвимости, а в программе B — 5. Отлично! B — находка для злоумышленника. Правда ведь? Однако, теперь оценим объем работ. Для программы A нам нужно писать не менее 2-х эксплоитов в год, чтобы процесс заражения (который идет непрерывно) не прерывался. Для программы B нам нужно не менее 2-х эксплоитов в месяц, а это в 12 раз больше работы. Так что, наш выбор, как злоумышленников, все-таки программа A, а не B. Наша цель — заразить как можно больше машин, а значит мишенью должны служить наиболее популярные программы. Однако, если заражая A, B и C мы накрываем, скажем, 90% машин и пишем 6 эксплоитов в год, а заражая D накрываем те же 90%, но пишем 24 эксплоита, то выбор явно не в пользу D. Какое это имеет отношение к жизни? Очень простое. В последнее время многие отчеты по безопасности показывают, что уязвимостей в FOSS больше, но при этом исправляются они гораздо быстрее. Кроме того, исправление уязвимости производителем — это еще не все. Злоумышленников больше интересует исправление на местах, а это зависит от удобства и надежности системы обновлений — вспомним эпидемии Nimda и Code Red, которые использовали уязвимости, для которых Microsoft давно предоставила исправления. А с обновлениями у большинсва открытых *nix'ов дела обстоят не в пример лучше. Так что, я спокоен за безопасность FOSS вообще и Linux в частности, даже если Linux догонит Windows по популярности.