«Go!messenger» для PSP вышел!

«Go!messenger» — официальное приложение (имеется ввиду не «homebrew»), которое работает на обеих версиях PSP («fat» и «slim») и позволяет обмениваться видео- и аудио-сообщениями. Приложение доступно в Европе, но это не мешает установить его прямо сейчас:

  • качаем его себе
  • распаковываем архив
  • содержимое PSP/APP/ULES00856 записываем в PSP/GAME/ULES00856
  • копию файла DATA.DRM кладём в PSP/APP/ULES00856
  • запускаем «Go!messenger» как обычное приложение

Оставить комментарий

Чудесный Lua

Язык программирования Lua (переводится с португальского как «луна»), в целом, мне нравится — очень гибкий, красивый, целостный. Программировать на нём приятно, а модель, заложенная в основу, настолько гибкая, что позволяет создавать ООП-конструкции без нативной поддержки их языком.

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

mt = {}

function mt.__add (a,b) 
    return { x = a.x + b.x, y = a.y + b.y }
end

Задаётся метатаблица (mt) у которой ключ __add (функция, отвечающая за сложение) определена как функция сложения вектора с двумя координатами. Например, в следующем примере (все примеры взяты из статьи «Язык Lua и использование скриптов на нём в программах на Си++») я устанавливаю заданную метатаблицу «mt» для переменной «u», причём сложение «u» и «v» работает правильно — поскольку Lua ищет обработчик сложения сначала у второго оператора, в случае неудачи — у следующего.

u = { x = 1, y = 2 }
v = { x = 0, y = 1 }

setmetatable ( u, mt )   -- установить для таблицы u метатаблицу

w = u + v                -- осуществить сложение таблиц
print ( w.x, w.y )

Самое интересное — дальше. Тут мой мозг не ломается, но без руководства я бы не догадался. Дело в том, что метатаблица «mt», точнее её операция «__add» определена некорректно. Сложение пройдёт великолепно, но у переменной «w» новой операции сложения не будет — метатаблица «mt» для этой переменной не установлена. Правильный способ определения вот такой:

function mt.__add (a,b) 
    return setmetatable ( { x = a.x + b.x, y = a.y + b.y }, mt )
end

Т. е. таблица устанавливается ещё и для получившегося выражения.

Для тех, кто уже ничего не понимает, но знает PHP. Запись { x = a.x + b.x, y = a.y + b.y } на PHP выглядела бы как array('x'=>$a['x']+$b['x'], 'y'=>$a['y']+$b['y']).

9 комментариев

Каганов про генетически-модифицированные продукты

Понравилась статья Леонида Каганова «Хочу питаться генетически-модифицированными продуктами», полностью совпадает с моей точкой зрения на предмет (время от времени я тоже писал небольшие заметки на эту тему, ещё тогда, когда эти продукты только появились). Кстати, узнал из статьи что значит «модифицированный крахмал»:

Друг рассказывал: его знакомая отказалась есть печенье, прочтя в составе «модифицированный крахмал». Будучи пищевиком по образованию, напрасно он ей объяснял, что крахмал C6H10O5 генетически-модифицированным быть не может просто за неимением генов, и это специфический термин технологий обработки, навроде «вода родниковая исправленная». Тщетно.

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

Резюме статьи на основной аргумент против генетически-модицифированных продуктов (мат я убрал) очень точно совпадает с тем, что я когда-то писал:

Гены встроятся в организм… Ну армагидец  же! В наш организм поступает через ротовой мусоропровод килограммы клеток со своими генами — животные, растительные, грибы, микробы, сырые, вареные, жареные. Это все — гены. И если вы съели генетически-модифицированный апельсин с пересаженным геном лосося, то не один ли хрен, как если б вы съели лосося и закусили апельсином? Если бы наша пищеварительная система не представляла из себя охрененный биореактор, наполненный едкой соляной кислотой, активными ферментами, химикалиями, фильтрами и прочим оборудованием, а наши клетки были бы открыты для любых генов извне, то у нас бы выросли рога от первой же мясной котлеты, а ботва на макушке — от котлеты вегетарианской.

6 комментариев

sgn(x) на ассемблере

Давненько я не брал в руки ассемблер. Лет так 8, наверное (речь идёт об ассемблере под 80x86, это, кстати, 3-й ассемблер, который я учил). Всякие там MMX и SSE уже и не знаю, о программировании на ассемблере в защищённом режиме — тоже, но остальное сидит крепко. У Анатолия Воробья в журнале увидел интересный код — самая быстрая реализация функции знака на ассемблере 80x86:

cwd
neg ax
adc dx, dx

Вот объяснение как это работает:

Здесь начальный аргумент лежит в ax, значение помещается в dx. Работает следующим образом: сначала cwd расширяет знак ax в dx, после чего в dx лежит -1, если аргумент отрицательный, а иначе 0. neg ax меняет знак ax, но это на самом деле неважно, а важно то, что эта инструкция помещает в флаг carry единицу, только если аргумент был ненулевой.

Наконец adc dx, dx складывает dx с самим собой, добавляет carry от второй инструкции, и помещает результат в dx. В результате выходит:

— если ax<0, то dx вначале -1, carry равен 1, результат равен -1*2+1 = -1 (во как!) — если аx=0, то dx вначале 0, carry равен 0, результат 0*2+0=0 — если ax>0, то dx вначале 0, carry равен 1, результат 0*2+1=1

1 комментарий

Aubergine iMac Pro

Как известно, если в фильме есть компьютер, это чаще всего «Мак», очень уж они фотогеничны. В анимэ «Афросамурай» вместо надкусанного яблока, логотипа фирмы «Apple», используется баклажан.

Баклажан на ноуте из фильма «Афросамурай» (23.30КиБ)

6 комментариев

Программисты на PHP — новые чукчи?

Мне кажется, про программистов на PHP скоро будут складывать анекдоты, как про чукчей. Посмотрите какой чудесный перл из конференции ru_php в ЖЖ:

Пытаюсь сконвертировать .doc файл в .txt , но php не понимает команды без точного объяснения:

$wf=fopen(«myfile.txt»,«w»); $i=0; $f=file(«laplap.doc»); while($i<10) { fwrite($wf,$f[$i]); $i++; } fclose($wf);

может есть другой способ? спасибо

Я очень боюсь поверить, что человек это пишет всерьёз.

11 комментариев

Мозг vs. Знания

Безграмотность — состояние, в котором человек не знает, что такое местоимение, и не умеет извлекать квадратный корень из двадцати семи целых четырех десятых. Зато знает кучу всякой ерунды, а в частности: какой из семидесяти практически неотличимых друг от друга видов лиловой морской змеи ядовитый; как обработать смертоносную мякоть дерева саго-саго, чтобы приготовить питательную кашу; как предсказать погоду по поведению древесного краба-взломщика; как управиться с лодкой в безбрежном океане при помощи кусочка веревочки и глиняного изображения дедушки; как извлечь необходимые витамины из печени свирепого ледяного медведя — ну и всякие подобные мелочи. Как ни странно, все образованные люди прекрасно знают, что такое местоимение, но понятия не имеют о саго-саго.

Терри Пратчетт. «Санта-Хрякус»

7 комментариев

Поздравляю (лытдыбр)!

Марина, поздравляю тебя с защитой второго красного диплома! Завтра рано утром прилечу поздравить лично!

♥♥♥

9 комментариев

N-dash, M-dash — всё что нужно знать из типографики?

На «Хабрахабре» появилась очень интересная статья «Чёрточки: только ли тире, минус и дефис?», цитата из финальной части:

Итак, девять различных чёрточек:

«дефисоминус» (-) — вместо всех остальных чёрточек при отсутствии технической возможности «дефис» (&#x2010;) — для разделения частей слова: «светло‐серый», «по‐моему», «кое‐кто» и т. п. «минус» (&minus;) — математические выражения: 2 − 3 = −1 «цифровая чёрточка» (&#x2012;) — номера телефонов и другие цифровые коды «символ переноса» (&shy;) — в (длинных) словах в тех местах, где можно сделать перенос «чёрточный буллит» (&#x2043;) — маркер списка «короткое тире» (&ndash;) — западная типографика «длинное тире» (&mdash;) — русская типографика «горизонтальная черта» (&#x2015;) — диалоги

6 комментариев

Вопрос о неудобном: «юзабилити» на сайте

Хочу обратиться ко всем тем, кто часто посещает мой сайт и умеет оставлять на нём комментарии: чтобы вы хотели измениться в навигации по сайту? Я хочу поменять местами стрелочки движения, сделать вывод статей по ключевым словам, сделать вывод трёх похожих статей (опять же по ключевым словам) и доделать навигацию по календарю.

Думаю, у меня глаз замылился. Что-то ещё? Только про анонимные комменты не пишите — это делать неправильно, я не хочу. Я уже сейчас могу заспамить ящик любого ни в чём неповинного человека, автоматически прописав его мыло на тысячах блогов, где разрешены анонимные комментарии.

21 комментарий

Полный дур дом!

Кстати, обсолютно чудесное сообщество есть в ЖЖ — bestof_woman_ru, полное желчи, но познавательное, ведь это реальные выдержки из женских форумов. Сегодня встретил там просто очаровательную ошибку — «полный дур дом». Хотелось бы сделать эту фразу названием этого сообщества.

2 комментария

Закон «об административной ответственности за нарушение покоя граждан и тишины в ночное время в городе Москве»

Такое ощущение, что некоторые граждане даже не подозревают о том, что существует закон г. Москвы от 12 июля 2002 г. №42 «Об административной ответственности за нарушение покоя граждан и тишины в ночное время в городе Москве» (и его аналоги в других регионах).

Этим гражданам кажется, что требования тишины в ночное время — это что-то смешное и нелепое. Кстати, никто не знает что сейчас действует вместо закона города Москвы от 29 сентября 1999 года №37 «О порядке переустройства помещений в жилых домах на территории города Москвы», который был отменён 7 декабря 2005 года законом города Москвы №66?

6 комментариев

Самара! Самара! Самара!

Я на КВН (64.81КиБ)

Я на КВН, Высшая лига, болею за Самару (СОК). Ребята действительно хорошо играли, совершенно не стыдно было носить их футболку.

14 комментариев

Мы начинаем КВН!

Бесплатно побывал на выступлении высшей лиги КВН, благодаря ведущему сайта «КВН для ВСЕХ» (спасибо тебе большое!), которому я в свой время помогал доделать «Регистр» под нужды сайта. В составе болельщиков команды «СОК» (новая футболка дома).

Видел вживую Маслякова, Медведева, членов жюри — Верника, Гусмана, Ефремова, Макаревича, Эрнста, Ярмольника.

P.S. «Дом-2-вопрос» — фраза месяца!

11 комментариев

Samsung D880 DuoS

Samsung D880 DuoS (29.41КиБ)

Купил папе в подарок (у него день рождения скоро) Samsung D880 DuoS. Это пока один из немногих (не считая китайских) телефонов, который «честно» умеет работать с двумя SIM-картами, т. е. принимает звонки и SMS сразу с двух номеров. Интерфейсно сделано всё достаточно разумно, мне понравилось — раздельные уровни приёма для разных SIM, управление SMS и звонками для разных номеров разведено — переключение выполняется специальной кнопкой, мгновенно.

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

Комплектация и форм-фактор. Всё достаточно стандартно: это слайдер, 104x51x19 мм, 64-голосная полифония, USB, Bluetooth 2.0, GPRS/EDGE, TFT-экран, 240x320 пикселей, фотокамера на 3.2 мегапикселя, FM-приёмник, проигрыватель поддерживает MP3 и WMA, поддержка Java, карты памяти — microSD (TransFlash), аккумулятора должно хватить на 3 .5 часа, время ожидания — около 200 часов.

6 комментариев

Крылаааатые качели, летят-летят, летят…

Все в детстве делали оборот 360° на качелях? Ну, если кто-то не делал, наверняка видел, как это делают другие. Лично я делал оборот на сварных качелях жёсткой конструкции, которые стояли у нас во дворе. Было страшно, особенно после самого оборота, когда уже хотелось остановиться. Особенной глупостью это казалось из-за того, что никого не было рядом, в основном из-за того, что я боялся опозориться, если не получится. Это Россия, а  вот что по этому поводу пишут американцы (канал «Дискавери», передача «MythBasters», второй сезон):

Утверждение мифа: на качелях жёсткой конструкции, раскачавшись, можно сделать оборот 360°. Статус: частично подтверждён. Комментарии: циркач в седьмом поколении подтвердил миф, сделав несколько полных оборотов на цирковых качелях, пока Тори, Кэри и Грант наблюдали за ним. У членов команды не хватило сил сделать полный оборот самостоятельно.

Циркач в седьмом поколении! Ну надо же!

13 комментариев

Если вас обрызгал скунс

Рецепт жидкости для удаления запаха скунса:

  • литр трёхпроцентного раствора перекиси водорода H²O². Перекись со временем превращается в воду, так что используйте новую, нераскупоренную бутылку
  • ¼ чашки (50 мл.) пищевой соды
  • 1 чайная ложка (5 мл.) жидкого мыла
  • 1 пару резиновых перчаток
    Жидкость надо смешать непосредственно перед использованием в открытом контейнере, хранить её нельзя — может взорваться! Втирать жидкость перчатками, избегать попадания на лицо и глаза, через 10 минут смыть.

6 комментариев

PHP 5.3.0: Прощай .htaccess

Я уже достаточно давно работаю в конфигурации nginx + FastCGI PHP (без Apache в качестве backend). Это более эффективно — экономит память и система, в целом, более устойчива, производительна, легче в управлении (приходится конфигурировать один сервер, а не два). Единственное, чего нехватало — настройки PHP для определённого хоста (так называемые «Local Value» в phpinfo).

Так вот, в PHP 5.3.0 ситуация изменится:

— Improved php.ini handling: (Jani)
. Added «.htaccess» style user-defined php.ini files support for CGI/FastCGI
. Added support for special [PATH=/opt/httpd/www.example.com/] and [HOST=www.example.com] sections. Directives set in these sections can not be overridden by user-defined ini-files or during runtime.

Этого мне нехватало куда больше, чем пространств имён и «?:», который там тоже появятся. По правде говоря, там есть ещё более значительное для меня изменение — Late Static Binding вкупе с __callstatic и $foo:myFunc(). Или даже «Improved PHP runtime speed and memory usage: Added garbage collector».

12 комментариев

Разрушители

Оказывается, в «Википедии» можно найти краткое изложение всех выпусков передачи «Myth Busters». Это единственная передача по которой я скучаю с тех пор как перестал смотреть телевизор.

Greg Dean goldfish comics (38.86КиБ)

Например, известный миф:

Утверждение мифа: золотые рыбки не могут запомнить что-либо больше, чем на 3 секунды. Статус: опровергнуто. Комментарии: Джейми натренировал свою золотую рыбку двигаться по сложному маршруту, руководствуясь цветными картинками. Через месяц его рыбка проплыла такой маршрут без помощи со стороны Джейми.

6 комментариев