Поделиться

четверг, 24 декабря 2009 г.

"Порт приписки": минусы портирования игр

Вел за корону смертный бой со Львом Единорог.
Гонял Единорога Лев вдоль городских ворот,
Кто подавал им черный хлеб, а кто давал пирог,
А после их под барабан прогнали за порог.
-
Льюис Кэрролл "Алиса в Зазеркалье" (Кэрролл Л. Приключения Алисы в Стране Чудес. Сквозь зеркало и что там увидела Алиса, или Алиса в Зазеркалье. - СПб.: Эксмо, 2005).

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

Я не люблю фильмы по играм и игры по фильмам, я разве что под дулом пистолета соглашусь прочитать какую-нибудь книгу по фильму или игре. Задумывая игру, фильм или книгу, автор, если, конечно, он предан своему делу, в создании атмосферы, характеров, сюжета и прочего ориентируется на те средства, которые доступны и специфичны для произведения конкретного типа (опять-таки игры, фильма или книги). Следовательно, перенос всего этого в произведение другого типа приведет неизбежно к рихтовке, циклевке, "обстругиванию" его содержания или наоборот добавлению не Бог весть откуда и зачем взявшихся составляющих. Практика неоднократно доказывала мне справедливость подобных убеждений:
  • За исключением довольно качественного фильма "Сайлент Хилл", который, тем не менее, непонятно по какой части игры создан (если по первой, то с явными переиначиваниями сюжета), все остальное вызывает у меня ухмылку: Resident Evil, Mortal Kombat, Street Fighter... Эти творения не обязательно плохи, но они обязательно не соответствуют духу игр, на основе которых созданы.
  • Фильмы по книгам ушли дальше, но все же недостаточно далеко: киношные "Дозоры" - это издевательство над книгами Лукьяненко; "Обитаемый остров" - к нему можно по-разному относиться, но все же у меня от книги сложилось совсем иное и более сильное впечатление, чем от фильма (книги вообще дают большую свободу для фантазии - режиссеры и продюсеры фильмов как бы загоняют зрителя в свой мир, в свое представление, в то время как автор книги в силу специфики литературного творчества оставляет большее пространство для маневра читателя); фильмы о Гарри Поттере забавны, но книжные эпизоды стали выпадать, по-моему, уже из второго фильма, а учитывая, что каждая следующая книга больше предыдущей, все сразу становится понятно (экстраполяция, так сказать); в классике тоже не все гладко, я был на днях в Академическом театре им. В.Маяковского на "Как поссорились..." - конечно, спектакли в "Маяковке" всегда замечательные, но, видимо, из некоторых даже классических произведений спектакли "выжимать" просто не стоит, потому что процесс выжимания будет слишком уж заметен.
  • Про книги по играм я вообще говорить не стану - сайт VG Cats с его комиксами более чем точно отразил мое мнение по данному вопросу.
Все это - книги по играм и фильмам, фильмы по играм и книгам, а также игры по книгам и фильмам - по сути "порты" фантазии автора произведения с одного носителя на другой со всеми вытекающими. Основные минусы я обозначил.

А вот теперь конкретно об играх. В компьютерной науке слово "портирование" (англ. porting) означает адаптацию программного обеспечения программистом для запуска его в аппаратном и/или программном окружении, отличном от того, для которого оно изначально создавалось. Например, компьютеры Apple и наиболее распространенные ныне ПК (эволюционировавшие от IBM PC), предоставляют для ПО разное аппаратное окружение, а компьютеры с установленными Windows и Linux - разное программное.

Около окружений складываются культуры и наборы расхожего, предназначенного для них ПО: текстовых редакторов, электронных таблиц, программ для работы с WWW и e-mail и так далее. Окружение, то есть марка компьютера и операционной системы иногда диктуется обстоятельствами (например, в случае с компьютером на работе), личными пристрастиями, убеждениями, реже - имеющимся объемом денежных средств (в случае операционных систем, в особенности у нас в РФ). Какие-то программы портируются с одних окружений в другие, какие-то разрабатываются одновременно для нескольких платформ параллельно. Естественно, что такие гиганты как, скажем, Microsoft или Kaspersky Lab не могут сосредоточиться на PC-версиях своих продуктов, "плюнув" на рынок Mac-ов. В целом ситуация довольно благостная... была бы, однако есть еще компьютерные игры.

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

Играми зарабатывают на жизнь многие разработчики, но этот вид бизнеса весьма отличается от остальных. Не забывайте, компьютерные игры относятся к категории "развлекательных программных продуктов". И ключевое слово здесь - развлекательных. Создать популярную игру так же просто, как и популярную рок-группу. Если у вас получается зарабатывать на жизнь, выпуская компьютерные игры, примите мои искренние поздравления. Я вам завидую. По-моему, куда легче продавать программное обеспечение, которое решает какие-то проблемы. (Синк Э. Бизнес для программистов. Как начать свое дело. - СПб.: Питер, 2008).

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

Все бы ничего, но приставок современного поколения на рынке больше одной (их еще называют NextGen, но какое же, извиняюсь, нафиг "Next", когда они уже более четырех лет как "вот"). Чтобы не ходить вокруг да около - этими приставками являются Sony Playstation 3 и Microsoft XBox360 (Nintendo Wii я не рассматриваю, потому что это совсем другая история для другого поста). Большая часть игроков имеет только одну из этих приставок, не обе, а играть в хорошие игры хотят обладатели и тех, и других, и среднему игроку за его жизнь нужно куда больше игр, чем марок или даже версий текстового процессора. Не так давно на рынке приставочных игр царила Playstation 2, у нее не было конкурентов, не было особого выбора и у разработчиков. Однако Microsoft подложила всем "приставочникам" здоровенную свинью, начав экспансию на этот рынок со своими "Х-коробками". Дело не в качестве приставок, если бы Microsoft появилась на рынке первой, а Sony - второй, то я бы аналогичным образом наехал на "Станции" (хотя сложившееся в таком случае положение можно было бы оправдать хотя бы требованиями технического прогресса, что в нынешней ситуации невозможно). Дело в том, что появление второго крупного игрока на приставочном рынке дало пользователям и разработчикам выбор, который, хоть и кажется изначально нужным и оправданным, никогда не должен был бы существовать, поскольку он контрпродуктивен во всех отношениях - на сегодняшний день это уже хорошо заметно.

Но давайте по пунктам. В результате одновременного присутствия на рынке приставок "льва и единорога, дерущихся за корону", сложилась крайне неприятная ситуация.

Пользователи вынуждены выбирать по большей части одну из двух приставок. Благодаря борьбе Sony и Microsoft за разработчиков и, как следствие, разделению игр на те, "в которые я смогу поиграть" и те, в которые нет (причем это касается игр всех жанров - а ведь раньше во времена Playstation 2 такой проблемы не было), разделилось и сообщество игроков. Появились даже термины "fanboy"/"fangirl", обозначающие людей, словесно дерущихся за преимущества своей марки приставки и игр для нее и незаслуженно принижающих достоинства приставки-противницы без смысла, без цели, без разумных аргументов. Можно открыть практически любую ветку обсуждения любого сайта об играх (например, Gametrailers) и воочию убедиться в размахе этой бессмысленной войны.

Разработчикам тоже "не сахар": нужно делать выбор, для какой приставки разрабатывать игру. Такие решения принимаются, естественно, исходя не только из достоинств и недостатков Playstation 3 и XBox360 или квалификации программистов, но и из маркетинговых соображений и договорных отношений с компаниями - производителями аппаратуры. Вот здесь-то и начинаются настоящие проблемы, которые громко "аукаются" игрокам.

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

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

У Playstation 3 в комплекте имеется жесткий диск объемом до 250 Гб в современных моделях, а в качестве носителей с играми используются Blu-ray диски, которые могут вмещать до 66 Гб данных каждый, то есть записать на такой диск можно много чего, но чтобы не отвлекать привод на поиск наиболее распространенных текстур, моделей и т.д., часть ресурсов можно или нужно заблаговременно перенести на жесткий диск. С другой стороны у XBox360 Arcade System жесткий диск отсутствует как таковой, а это значит , что никакая игра для этой приставки не должна требовать его наличия (во имя совместимости); в качестве носителей же с играми используются двухслойные DVD-диски с максимальным объемом хранимых данных в 8,5 Гб, то есть приводу искать на таком диске конкретные данные легче. Очевидно, что стратегии управления ресурсами должны быть разными при реализации игры для разных приставок. Если мы изначально разрабатывали ее для Playstation 3, то при переносе на XBox360 (даже если закрыть глаза и опустить разницу в API и других технических характеристиках) очень много чего придется обрубить в плане объема данных, а также пересмотреть технологию использования жесткого диска, которого попросту нет. Если же мы, напротив, создавали продукт под XBox360 и адаптируем его под Playstation 3, то без должной проработки и использования жесткого диска, данные, искомые и читаемые исключительно с Blu-ray, могут подвешивать игру то тут, то там (что в играх, появившихся на консоли от Sony таким образом, можно наблюдать довольно часто).

Разработчики могут создавать:
  • игру для определенной консоли и только для нее - в таком случае игра будет "эксклюзивом" для той или иной приставки. Если такой продукт окажется успешным, он добавит еще одно полено к костру распрей внутри игрового сообщества - к войнам фанатов приставок. С другой стороны, при таком характере разработки можно учесть все сильные и слабые стороны конкретного устройства (не забываем, кроме прочего, и про ПК). То есть хорошо выполненный эксклюзив - это костюм, сшитый именно по вашей фигуре - оттеняет прелести и скрывает изъяны, и кроме вас никто его носить не сможет.
  • псевдо-эксклюзив. Все чаще и чаще появляются именно такие игры: Ninga Gaiden 2/Ninja Gaiden Sigma 2, StarOcean: The Last Hope / StarOcean: The Last Hope International и так далее. В начале процесса разработки, вплоть до выхода или даже несколько месяцев после выхода игры разработчики / издатели доказывают с пеной у рта, что она - полноценный эксклюзив и на второй приставке никогда не выйдет. Однако проходит немного времени и мы видимо объявление о том, что игра выходит и на другой платформе. Причины такого подхода, конечно, могут быть разными: может быть, разработчики действительно не знали о том, что "рынок поманит", а, может быть, изначально задумывали такой ход, но в результате люди, купившие приставку, скажем XBox360, только из-за этой игры (что не редкость), и узнавшие через пару месяцев, что могли бы сэкономить, поскольку та же игра выходит на уже имевшейся у них до того Playstation 3, явно не оказываются в восторге. Кроме того, если разработчики изначально не предполагали выхода игры "везде", то результат портирования, как правило, явно не дотягивает до оригинала. Псевдо-эксклюзив - это перешитый костюм: изначально он предназначался на человека коренастого, но, ушив там и добавив здесь, мы получили наряд для баскетболиста. Если портной - мастер своего дела, то может получиться вполне прилично, но все же кое-где будет выпирать, а кое-где тянуть (это хорошо заметно на Ninja Gaiden Sigma 2 и Bayonetta для Playstation 3). Если же портной дилетант...
  • мультиплатформенную игру. В этом случае разработчики изначально заявляют, что игра разрабатывается для нескольких платформ. Вариант, как правило, не обещающий ничего хорошего: скорее всего, игра будет разрабатываться таким образом, чтобы использовать только те возможности (в первую очередь графические и сетевые), которые в том или ином виде поддерживаются всеми типами устройств, например разнокалиберными PC, XBox360 и Playstation 3. Мы это видели, например в случае с Elder Scrolls: Oblivion (где из-за ошибки в сценарии я один раз завалил весь сюжет, и один раз - очень важный квест на должность руководителя магов), Fallout 3 (бесконечно количество раз виснувший на моей Playstation 3 - под конец игра непрогнозируемо зависала буквально каждые полчаса) и Dragon Age: Origins (замечательная игрушка, но, о Боги, до чего же там ужасная графика - как будто я вернулся на 5-10 лет назад в прошлое... хотя дает богатую почву для фантазии и, честно признаюсь, атмосфера, качество игрового процесса и диалогов искупают визуальные неприятности). Мультиплатформенная игра - это промышленно выпускаемый костюм максимального размера (например, плащ-палатка), в который влезет кто угодно, но ценой возможно полной потери человеческого облика.
Примерно такие мысли. Почему все это так неприятно именно в отношении игр? Да потому, что в случае текстовых процессоров на PC и Mac вы можете делать одно и то же... да, по-разному, но одно и то же. А вот в случае игр - до Dragon Age я на Playstation 3 все никак не мог дождаться нормальной RPG. В свое время, год назад из-за этого пришлось купить XBox360, для которой имелась Lost Odyssey (до сих пор считаю, что это замечательная игра, но четыре DVD - это перебор, думаю никакой черт, кроме очень богатого, не смог бы уговорить разработчиков делать игру для Microsoft).

Интересно, что будет дальше. В новом году посмотрим. Краткая мораль поста: портирование игр - пусть и неизбежное, но зло!

пятница, 18 декабря 2009 г.

Gosuslugi impressions: первые впечатления от взаимодействия со справочно-информационным порталом "Государственные услуги"

Противоречивые впечатления, скажу честно, разные.

Ну, во-первых, "Ура!": пронеслось почти десять лет, куча денег, корректировок, перестановок, документов, два с половиной президентских срока, дети мои уже могли бы родиться и пойти в третий (или четвертый - не знаю, как сейчас) класс, но зато наконец-то можно "руками" пощупать (только очень осторожно, чтобы не сломать) результат великой (и не менее затяжной) киберстройки под названием "Электронная Россия". Это самое, что можно потрогать - портал в тестовом режиме, который (цитата с самого портала): "является единой точкой доступа граждан и организаций к информации о государственных услугах, предоставляемых органами исполнительной власти Российской Федерации, а также о возможности получения этих услуг".

Честное слово, когда я все это пишу, я не иронизирую, да и сарказм здесь ни при чем. Просто по-разному можно относиться к наконец-то свершившейся материализации результатов работы нашего государства по "электронификации":
  • можно радоваться, что наконец-то что-то есть - мне, например, всегда не доставало единой точки, в которой можно сдать государству или взять с него в электронной форме все, что можно; правда такого места и сейчас нет - есть некоторая информация и тестовый режим, зато уже имеется надежда на дальнейшее совершенствование и наполнение;
  • можно жаловаться на то, что такого сайта не появилось раньше;
  • можно обреченно вздыхать по поводу государственных денег, потраченных на то, чтобы таки донести электронные радости до населения - в самом деле, если речь идет о технической стороне дела, то примерно такой же портал (разумеется, я сужу по тому, что вижу - может быть там внутри что-то супер навороченное и неведомое простым смертным) мы с двумя-тремя моими друзьями-коллегами можем построить где-то за тройку месяцев и 60-70 тысяч рублей; прикидка грубая, если я где-то ошибся, они меня поправят, а я поправлю здесь, но сколько бы мы все друг друга не корректировали, цифра в рублях вне равно не сильно приблизится к 150 или 180 млн. (о которых говорили, если я не ошибаюсь), а срок - к десяти годам.
В любом случае не об этом хотелось порассуждать, рассуждать вообще не хотелось - делюсь первыми впечатлениями.

Сначала я собирался обругать представления услуг:
  • По категориям.
  • По жизненным ситуациям.
  • По ведомствам.
"Кому нужны ведомства?" - подумал я. - "Ведь разделение по ведомствам - это представление, основанное на реализации структуры органов гос. власти, а не на восприятии необходимости гражданами".

Честно говоря, меня всегда удивляло, что на сайтах вузов, например, с которыми я знаком лучше всего, очень любят разделы: "Руководство", "Кафедры", "Факультеты"... Скажите, хоть кому-нибудь было когда-нибудь интересно из посетителей (вот вам, в частности), кто является проректором по административно-хозяйственной части вуза, если, конечно, это не ваш знакомый? Впрочем, сейчас не об этом.

Что касается гос. услуг, то, поразмыслив, я понял, что разделение правильное: для некоторых процедур необходимы четкие формы документов для или из конкретных ведомств, так что, если вы заранее знаете, что и куда или откуда вам нужно, то такое представление полезно... скорее уж вызывает сомнение необходимость двух представлений "по категориям" и "по жизненным ситуациям".

Вообще-то, довольно грамотно сделано, близко к принципу "чем меньше, тем лучше", по крайней мере, на первом уровне иерархии страниц. Заходишь и можешь достаточно быстро сориентироваться. Например, мне приспичило выяснить (по случаю), как зарегистрироваться в качестве индивидуального предпринимателя. Прошел по пути "Физическим лицам" -> "По жизненным ситуациям" -> "Открываем собственный бизнес". Форм там пока нет, ссылка из соответствующего раздела ведет на Федеральный портал малого и среднего предпринимательства, но в любом случае по этой ссылке я узнал за пять минут о рождении и жизни индивидуальных предпринимателей больше, чем за всю предшествующую жизнь.

Кое-что странное все же бросилось в глаза (не мне - моему коллеге), и это наблюдение потянуло за собой кучу вопросов. На каждой странице портала в самом низу имеется фраза: "Информация об ошибках будет оперативно передана в ведомство, разместившее информацию. Обращаем ваше внимание на то, что оператор Портала не несет ответственности за некорректную информацию, размещенную на портале". Насколько фраза достойна подобного портала - это сложный вопрос, хотя лучше было бы написать кто ответственен, а не акцентировать внимание на том, кто нет. На каждой же странице имеется телефон и ссылка для отправки предложений по работе портала, что приятно. Тут вопрос формулировок и регламента: "оператор портала" - это кто? Тот кто осуществляет хостинг? Администрирование? Это государственный орган или частная компания? Попытавшись найти определение для "оператора портала" через Google, я обнаружил, что первой ссылкой в результатах поиска стоит... не поверите - все тот же портал гос. услуг.

"Информация на портале размещена федеральными и региональными органами власти Российской Федерации", - гласит еще одно предупреждение, то есть все зависит от того, насколько часто и оперативно они будут ее выкладывать/обновлять, а единый орган, координирующий деятельность портала за его содержимое не в ответе. Может быть это и паранойя, но чудится мне, что мы еще столкнемся с проблемами. Если совсем утрировать, то в соответствии с предупреждениями абсолютно все, что есть на портале, юридически может быть полной "липой".

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

В целом, я рад, что портал появился. Надеюсь наполнения и функциональности со временем прибавится, регламенты и термины утрясутся, так что сайт таки станет первой реально значимой вехой на пути построения "электронного государства". Посмотрим, как будут развиваться события. Если кто-то из читателей еще что-то заприметил: "+" - сы, "-" - сы, делитесь - не стесняйтесь.

суббота, 12 декабря 2009 г.

"Вечная память": информация, которую мы оставляем о себе в сети

Как отметил в своей известной книге Якоб Нильсен (Нильсен Я. Веб-дизайн: книга Якоба Нильсена. - СПб.: Символ-Плюс, 2007), "данные живут вечно":

Данные, находящиеся в Интернете (преимущественно в виде страниц), будут жить гораздо дольше, чем программное и аппаратное обеспечение. Даже если большинство пользователей приходит на новые страницы, старые страницы по-прежнему кому-то интересны.

Господин Нильсен использовал это выражение в качестве обоснования для использования стандартов при разработке страниц (чтобы и через много лет с ними можно было работать), но мне оно кажется метким и в другой связи: в связи с "цифровыми личностями" тех, кто оставляет следы в Сети. Здесь под "следом" я не подразумеваю путь с сервера на сервер, я имею в виду сообщения, посты, статьи, ответы на форумах и прочее подобное, что мы сознательно оставляем на хранение, но не всегда сознаем, что срок хранения в данном случае теоретически не ограничен.

Большинство людей рано или поздно с той или иной целью пробуют "найти себя" через поисковики, но это праздность, а я предлагаю провести исторический экскурс. Псевдоним (или "никнейм") Ikshot я выбрал лет 10 тому назад. Собственно, по следам, оставленным данной цифровой личностью в Интернет, можно проследить (что логично) и мой реальный жизненный путь. Весь фокус в том, что когда выискиваешь себя по псевдониму, а не по ФИО, то всплывают совершенно другие этапы развития, вехи и памятные даты.

Например, что знает об Ikshot-e Яндекс (вообще-то, поисковик можно выбирать на свой вкус - "Яндекс" мне просто подвернулся)? Нужно сказать, что немного - обнаружилось всего 24 позиции. Некоторые не навевают никаких воспоминаний, а вот другие весьма любопытны:
  • Профили: ЖЖ (LiveJournal), Twitter, Blogspot, Weblancer, Alyonka's forum... хм, ах да, помню, помню - познакомились в 2005 году, в Новороссийске, на здоровенной конференции по параллельным вычислениям и научному сервису в Интернет. Весьма забавно было - тепло, природа, Абрау, голицынские тоннели, Брют... Занятно, что именно тогда я впервые увидел море (которое меня не впечатлило, хотя я считал, что должно) и горы (которые меня поразили, хотя я на это и не рассчитывал).
  • Отметки в профилях друзей по ЖЖ. Сам-то я ЖЖ не веду, хотя и имею учетную запись - для технических целей. В любом случае друзей у Ikshot-а как-то маловато... Нигде это не заметно лучше, чем на страницах Яндекса с результатами поиска (заметка себе: предложить это Яндексу в качестве слогана).
  • Множество ссылок на мои посты в этом блоге и других местах, включая ссылки с посторонних сайтов - пустячок, а приятно, что при практически полном отсутствии раскрутки (только иногда в Twitter анонсы постов даю) кто-то ставит ссылки, а может быть даже читает.
  • Сообщение на Kamrad, где я задавал вопросы по поводу квестов в Neverwinter Nights - было это в 2002 году, когда я еще играл на PC (с 2003 года я перешел на консоли).
  • Пост от 2008 года на Gameland, в котором я предлагаю обмениваться картами для игры Eye of Judgment. Игра карточная, но при этом на консоли. В общем-то высокотехнологичная штука: камера, подключенная к Playstation 3, распознает карты, используемые игроком и разворачивает в телевизоре трехмерное графическое сражение. Жаль, что я больше собирал карты, чем играл в эту игру. Сейчас альбом с ними пылится в углу.
  • Благодарность в статье на RSDN от Garik-a (AKA Игорь Семёнов) - хоть и не имеющая практического смысла, но все же, пожалуй, самая приятная ссылочка.
Вот, собственно, и все. Маловато, но могло быть и хуже. Могли бы, например, всплыть какие-нибудь тексты моего авторства, подрывающие мой имидж интеллектуала (странно, кстати - я ведь где-то видел ссылки на них и, по-моему, даже на Яндекс-е).

Итог всего этого таков: у Ikshot-a мало друзей, он любит компьютерные игры и форумы девушек, а мораль - бывает весьма полезно составить свой цифровой автопортрет.

суббота, 5 декабря 2009 г.

Семь шапок из овцы: теория и практика в образовании, кто настоящий клиент вуза?

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

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

Задумался: мы так привыкли слышать про необходимость вот этой спайки теории и практики, про ужасы отрыва первой от второй, про беды и нечеловеческие усилия компаний-работодателей по переучиванию новоиспеченных специалистов, что, кажется, уже несколько оторвались в этом страхе и потугах от здравого смысла. Моя мама заканчивала МИТХТ по специальности "Общая технология резины" с квалификацией химик-технолог. Вряд ли она могла подумать в процессе обучения, что ей предстоит попасть по распределению в СоюзГлавРезинСнабСбыт (я не забуду это название никогда), а затем в ГосСнаб и всю жизнь работать, по сути, экономистом. Вряд ли ее кто-то плановой экономике в вузе по ее специальности сильно учил, но проблем не возникало. А сегодня-то что изменилось?

Примерно семь лет назад (цитирую глубоко уважаемого мною А.В.Хорошилова бывшего тогда первым проректором МЭСИ по статье "Система управления знаниями в Образовательном научно-производственном комплексе МЭСИ" в кн.: 6-я Российская научно-практическая конференция "Реинжиниринг бизнес-процессов на основе современных информационных технологий. Системы управления знаниями". / Сборник научных трудов. - М.: МЭСИ, 2002.):
Сегодня обществу необходимы профессионалы не узкого, а широкого профиля...

А вот в "нынешнем" сегодня, судя по всему, "уже опять" все наоборот.

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

С чего вообще взято, что отличие теории/обучения от практики - это большая беда? Еще Ганс Юрген Айзенк весьма здраво высказывался по этому поводу (Айзенк Г.Ю. Психология: польза и вред. Психология: смысл и бессмыслица. Психология: факты и вымысел. - Мн.: Харвест, 2003.), говоря о том, что практик должен обязательно дать решение к предложенной задаче, причем за ограниченный промежуток времени, тогда как у теоретика/ученого время не слишком ограничено, и ответом к задаче может быть отсутствие такового. Видите? Как бы вы ни приближали теорию к практике - все равно не превратите одно в другое.

Есть, конечно, разные специальности/направления и, возможно, что практические занятия студента при обучении попросту будут совпадать с тем, что ему придется делать после ее завершения. Однако, например, в случае обучения программистов, невозможно научить человека писать именно те программы, которые он будет писать в будущем. Подчеркиваю: сейчас у нас настоящее, а будущее будет потом.

Сумятицы добавляют и сами работодатели: в отрасли ИТ (которая мне ближе всего), много активно развивающихся небольших и средних компаний, которые появились уже после того, как нынешние студенты стали студентами, и эти компании не всегда верят в то, что просуществуют до момента становления нынешних студентов в качестве специалистов. Именно небольшие компании чаще всего и предъявляют претензии к несоответствию выпускников их требованиям, но одновременно, если их разговорить (что получается не часто, но получается) сообщают о том, что им невыгодно и неинтересно сопровождать студентов пять лет в процессе обучения. Я сам (в качестве декана факультета) пытался нескольких специалистов уговорить почитать лекции и провести практические занятия - результат чаще был неудовлетворительным, что и понятно - им не до этого, они еще не понимают ценности воспитания кадров, хотя уже жалуются на их "неформатность". Крупные компании, например, жаловались реже - они уже привыкли, у них есть свои учебные центры, свои отделы и департаменты обучения, своя образовательная инфраструктура, дотягивающая "специалистов широкого профиля" до профиля, укладывающегося в формат компании. Тогда вопрос, кто в вузе должен приближать обучение к реальной деятельности? Преподаватели без помощи тех самых работодателей? Так процентов 50% из этих преподавателей никогда за стенами вуза не работали (я сам таким был, так что ругаться могу смело), о существовании других работодателей (окромя родного вуза) они лишь догадываются, либо принимают на веру рассказы друзей.

Еще один момент во всем этом связан с тем, кого вуз реально считает своим клиентом? Студента? Работодателя? В Советские годы таких вопросов не возникало, а сегодня он ой как остро стоит! Должен ли я готовить студента для работы у конкретного работодателя, если неизвестно, хочет ли студент у него работать? Должен ли я, прежде всего, угождать работодателю, если учесть, что платит мне, вообще-то студент?

Чтобы завязать с философией, расскажу, как я поступал. Я считал клиентом студента. Я всегда опирался на непреложное правило: функция декана и деканата - обучение и защита студента от всего в стремлении дать ему:
  • достаточно знаний для самоопределения в смысле будущего направления работы;
  • систему, в которую можно уложить все приобретенные знания, умения и навыки, а также те, что он приобретет в будущем;
  • повод гордиться и чувство гордости за свою профессию.
Теперь о том, как это делалось. Чтобы получить образованного и компетентного специалиста, который сам сможет решать, какой род деятельности (или область) ему ближе и преуспеть в нем (в ней), нужна широта охвата знаний и глубина. Очевидно, что и то, и другое одновременно недостижимо в рамках учебного плана, поэтому я делал так: общие дисциплины должны были максимально широко охватывать отрасль, а дисциплины разных специализаций максимально уходить в глубину. Сами специализации выбирались по стратегии следования за трендами отрасли: в 2001-2003 годах были популярны: веб-программирование (сейчас студенты и сами этому быстро учатся), идеи искусственного интеллекта, компьютерная графика и прочее, чуть позже - мобильные приложения и Unix, еще позже - антивирусная борьба и интегративные решения. Насколько я был прав или неправ - это у моих бывших студентов нужно спросить (всем им привет, если кто увидит это сообщение).

Вот и все. Здравый смысл. В образовании развелось много лозунгов, которые, похоже, еще и ротируются периодически. Помните еще одну идею-фикс: всеобщее образовательное пространство на базе дистанционного образования (ДО), где разные вузы обмениваются компонентами учебных курсов между собой? Сколько лет назад это было? Что мы, в основном, видим сегодня? Не знаю, что видите вы, но я виду, что электронный курс в вузе может разрабатываться год - в корпоративном обучении при наличии сырого материала весь процесс от его компоновки до получения результата в виде готового пакета с курсом (например, в стандарте SCORM одной из версий), через вычитку, верстку, вторую вычитку, составление тестов и прочие стадии может завершиться за два дня. Множество вузов использует нестандартные "home-made" (доморощенные) системы ДО, не отвечающие никаким стандартам. Обо всяких там обменах наиболее продвинутыми частями курсов между продвинутыми вузами речи не идет. Почему? Идея опережала время? Да ничего подобного! Просто когда вуз говорит, что он "хочет влиться в единое образовательное пространство, да еще и обеспечить академическую мобильность студентов", он на самом деле думает "студенты мои, а в смысле пространства - нужно взять лучшее и ничего не отдать". Какое сотрудничество во время демографического и экономического кризиса? Тут бы бюджетные места заполнить, и еще как-то доходы сохранить.

Зато, пока суть да дело, идея и без вузов давно реализовалась:
Кому нужны университеты, когда у нас есть Google? Все переведенные в цифровую форму знания мира доступны нам в поиске. Мы можем соединить тех, кто хочет знать, с теми, кто знает. Связать студентов с лучшими учителями (которые сами могут быть студентами). Найти экспертов по любой теме. - Джефф Джарвис (Джарвис Дж. Что сделал бы Google? - М.: Аквамариновая Книга, 2009.)

Вот так-то. Есть реалии, а есть заезженные квази-великие псевдо-цели и вымыслы. Вуз (любой), услышь меня:
  • Определи, кто твой клиент.
  • Определи, что ты можешь ему дать, и как это лучше всего сделать.
  • Делай это... или умри! Хватит лозунгов - давайте работать.

суббота, 28 ноября 2009 г.

Переменная облачность: информационная безопасность при использовании облачных вычислений

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

Вот простой пример: большое количество моих документов хранится не на моем компьютере, а в сервисе Google Docs (где бы он реально ни находился). Я работаю с ними, не видя никаких файлов – просто выбираю название документа в веб-браузере и в нем же редактирую. Я могу дать доступ на чтение или чтение/редактирование этих документов своим друзьям и коллегам, вместо того, чтобы пересылать им отдельные файлы DOCX (иногда весьма немаленькие – на сегодняшний день размер файла с моей книгой «Реальность 2.0b», над которой я продолжаю работать, составляет уже 6 мегабайт, но встречаются файлы и по 30), просить их обязательно использовать режим рецензирования, чтобы можно было понять, что им не понравилось, а затем пытаться разобраться в перекрестных исправлениях и исправлениях в разных файлах (мне далеко не всегда нравится, как работает объединение исправлений в Word) или получать негодующие заявления от коллег о том, что они используют OpenOffice, в котором режима рецензирования нет. Google дает нам возможность совместно работать с документами независимо от того, что мы не входим в какую-то одну локальную сеть какой-либо компании – все происходит при посредничестве Интернет. Еще один плюс такого рода сервиса – я действительно вижу документы, а не файлы, что куда лучше с точки зрения человеко-машинного взаимодействия:
В мире цифровых технологий мышление, основанное на моделях реализации, сильнее всего проявляется свою мерзкую сущность в области управления файлами и в понятии "сохранение". Если вы когда-нибудь пытались научить свою маму обращаться с компьютером, то знаете, что слово трудно является недостаточно выразительным для того, чтобы передать всю серьезность проблемы. Начало не сулит ничего плохого: "Запусти текстовый редактор и набери письмо". Это вполне понятное для нее действие - то же самое, что писать на бумаге. Но, закончив писать, вы щелкаете по кнопке Закрыть - и появляется диалоговое окно с вопросом: "Сохранить изменения?" Вы оба раздосадованы. Она смотрит на вас и спрашивает: "Что это означает? Все ли в порядке?" (Купер А., Рейман Р., Кронин Д. Алан Купер об интерфейсе. Основы проектирования взаимодействия. - СПб.: Символ-Плюс, 2009).

Однако сейчас речь не об этом.

Другой пример: закладки в том же Google. Мой день обычно начинается с того, что я просматриваю сайты новостей (с некоторых пор еще и сайты с вакансиями), выясняю, какие компьютерные игры появились в магазинах «Gamepark», «Gamepost» и «ВИДЕОИГР.NET», а также отдаю должное Дилберту и его автору Скотту Адамсу. Закладки с адресами всех нужных сайтов занесены в мой домашний компьютер, но что, если я НЕ дома (на работе, в транспорте, в другом городе) за чужим компьютером, а утренний план-график соблюсти хочется? Вот в этот момент и проявляется ценность закладок Google, которые хранятся не на локальном компьютере, а в Сети. Мне нужно просто зайти на Goggle, авторизоваться и ву-аля – все загруженные мною на сайт закладки будут доступны с любой машины.

Такие вот «бытовые облака» имеют массу применений – реальных и потенциальных. Для отдельного пользователя подобные возможности могут быть настолько полезны, что Google дозрела до показа Chrome OS – своей операционной системы для людей, проводящих в Интернет большую часть своей жизни. Центром ОС является подключение к Интернет и браузер. Все остальные компоненты вторичны.

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

Сам термин «облако» появился в качестве метафоры – Интернет часто изображали на инфраструктурных схемах в виде облака, а английский оригинал слова – cloud – используется еще и в значении «рассеянный».

В своем документе «Cloud Computing. Benefits, risks and recommendations for information security» («Облачные вычисления. Преимущества, риски и рекомендации по информационной безопасности») Европейское агентство по сетям и информационной безопасности (European Network and Information Security Agency - ENISA) систематизировало основные плюсы и минусы облачных вычислений.

Я не стану все перечислять (оригинал по объему составляет всего 123 страницы, а с выжимкой основных мыслей можно ознакомиться на страницах с 4-ой по 10-ю). Отмечу лишь, что рекомендации по применению и развитию услуг в сфере облачных вычислений касаются укрепления законодательной, теоретической базы и базы доверия пользователей к провайдерам, а вот в части преимуществ и рисков все намного интереснее.

С моей точки зрения развитие и распространение облачных услуг вытаскивает «на свет Божий», на первый план все проблемы информационной безопасности, о которых мы не думали, не хотели, не могли или боялись думать. Судите сами: да, я храню документы в Google Docs: эссе, резюме, рецензии и так далее. Существует ли между мной и Google какое-то соглашение, подразумевающее, что Google:
  • не будет без моего ведома распространять, изменять или удалять мои документы?
  • обеспечит мне доступ к ним в режиме 24/7?
  • не имеет сотрудников, которые злонамеренны по отношению ко мне лично?
  • обеспечит возможность миграции моих документов туда, куда я захочу при необходимости или хотя бы возможность сохранить их на локальный диск?
  • обеспечит возможность работать действительно из любой точки мира с любого компьютера и из любого браузера (при работе с документами через Microsoft Internet Explorer в прошлом наблюдались проблемы – не знаю, как сейчас, поскольку давно перешел на Chrome)?
Поскольку я не плачу Google, сомневаюсь, что все так радужно, идеально и без оговорок, но даже буде какое-то соглашение имелось, я все равно его не помню, поскольку не читал. Я могу себе это позволить, поскольку эссе, резюме, рецензии не представляют для меня большой конфиденциальной ценности, скорее уж наоборот – чем больше людей их прочитает, тем известнее я буду. Однако если бы мне понадобилось сохранить в облаке реквизиты банковских счетов и другие подобные данные, я бы не смог относиться к этому вопросу с подобной легкостью – я изучал бы договора, соглашения и правила, я требовал бы гарантий безопасности – у меня просто не было бы другого выхода, я вынужден был бы это делать. Это касается и отдельных пользователей и компаний.

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

Выражаясь словами странной миссис Сэвидж из одноименной пьесы Джона Патрика (в постановке театра кукол им. С.В.Образцова):
Они будут копать!

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

пятница, 20 ноября 2009 г.

Голубой экран впереди, и зеленый - сзади...

Известный и неоспоримый постулат о том, что информационные технологии должны облегчать и улучшать жизнь людей получил какое-то странное и порочное воплощение в современной индустрии кино. Каюсь, мысль эта возникла неспроста, а после просмотра "Запрещенной реальности". Сам фильм я оценивать не буду, и без меня уже много чего про него написано. Скажу только, что я находился в достаточно выигрышном положении, поскольку уже и не ожидал чего-то, вызывающего восторг - просто хотел убедиться в собственных предчувствиях. Они оправдались на 100%.

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

20 лет назад все было намного сложнее, тогда не было таких вычислительных мощностей, как сейчас, и многие идеи, хоть и витали в воздухе, но еще не были воплощены в чем-то, что можно использовать. В частности поэтому "Terminator 2" получил в 1992 году 4 "Оскара" (в том числе за спецэффекты). Если разобраться, то значительный объем эффектов там был использован для создания персонажа Роберта Патрика - T1000, и эти эффекты в основном включали различные вариации morphing (постепенного "превращения" одного объекта или изображения в другое) и bump-mapping (наложение на объект в качестве текстуры отражений окружающих предметов), то есть такие техники, которые сегодня мы видим чуть ли не в каждом фильме или компьютерной игре. Тогда мы, конечно, об этом не задумывались, а просто восхищались: виртуальный персонаж проник в живой фильм, а Шварценеггера расплавили - вау! Тут, однако, важно сделать небольшое отступление и вспомнить, что лучшим фильмом по мнению киноакадемиков в 1992 стал не "Terminator 2", а "Молчание ягнят", где компьютерных спецэффектов было поменьше (по крайней мере, они не были так очевидно заметны).

Шли годы. В 1995 году Pixar и The Walt Disney Company выпустили "Историю игрушек" - первый полнометражный фильм, целиком сделанный на компьютере. Публика неистовствовала. Постепенно компьютерные эффекты, все более изощрявшиеся с появлением новых технологий и ростом вычислительных мощностей, стали неотъемлемой частью создания практически всех фильмов: где-то их было побольше, где-то поменьше. В скольких бы фильмах впоследствии ни применялись morphing+bump-mapping, сколько бы "Шреков" ни было сделано, ни один из этих фильмов не "Terminator 2" и не "История игрушек". С компьютерной графикой как технологией произошло то, что и должно было произойти - она взлетела как знамя, как нечто, что может перевернуть кинематограф, а потом органично вписалась в процесс как одна из составляющих. И все бы ничего, если б не такое явление, как кинематограф российский...

Мне все равно, сколько автомобилей и денег было уничтожено при съемках "Антикиллера" - фильм отвратительно смонтирован (второй значительно лучше, третий еще не видел). "Ночной дозор" - это извращение книги, несмотря на переворачивающиеся автобусы и вампира Лагутенко, а в каждом кадре "Дневного дозора" (который неясно почему называется именно так) сквозит желание киношников по-быстрому снять что-нибудь, отвязаться и уехать на "Фабрику грез". "Параграф 78" (оба) - это жалкое подобие "Resident Evil"; это не блокбастер, поскольку слишком много разговоров, и не глубокий философский фильм, поскольку разговоры эти довольно банальные и полные клише. "Запрещенная реальность" - это вообще феерия: если бы меня попросили кратко охарактеризовать сюжет фильма, мне осталось бы только сказать, что "есть типа добро, типа зло... и типа все", или, выражаясь словами моего друга, выдаваемыми по каждому поводу: "Что происходит"? Страшно жить - уже боишься выходов российских дорогих фильмов, поскольку заранее готовишься разочароваться, и, что типично, подготовка оказывается не излишней. Что еще хуже, отличные актеры вляпываются в это (в случае "Запрещенной реальности" - это И.Петренко, А.Балуев, В.Вдовиченков, причем последний еще раньше "въехал" и в "Параграф").

Создается впечатление, что наши киноделы в какой-то момент говорят себе: "Ну все, хватит снимать - остальное будет графика"! Причем происходит это, судя по всему, не на съемках, а еще при написании сценария. Скажу банальность, но: люди, графика не является определяющей для качества фильма и уж точно не является определяющей для сценария! Вспомним про "Молчание ягнят", я же не зря его привел в пример. Если вы разрабатывали программы для ПК, то должны понимать, что есть некая задача, и выбор средств для ее решения вторичен (по крайней мере, должен быть таковым) по сравнению с получением этого решения. Сценарист не имеет права думать: "Вот здесь будет зеленый экран", он вообще не должен знать о нем - это не его дело, как будет снята сцена. Кстати, это ответ и тем, кто считает, что "Запрещенная реальность" страдает сценарными и монтажными промахами, но задает качество картинки для отечественного кинематографа". Ужас, что такие идеи приходят в головы - я хочу кино смотреть, а не формат оценивать и не стандарт на него читать. Как специалист в области программирования интерактивной графики (не "голливудского" уровня, конечно), я, кстати, еще могу защитить свою психику, откатившись на этот плацдарм оценки, а остальным людям как это вынести?

Я не говорю о том, что такие фильмы снимают только у нас, а также не утверждаю, что у нас все фильмы такие. Проблема не в том, что графика есть, а в том, что нет такого ее гармоничного вливания в процесс создания фильма, о котором я ранее говорил. Пользователями, клиентами, то есть теми людьми, жизнь которых графические технологии в кино должны делать лучше - это зрители, а не киношники. Здесь можно провести аналогию с программными продуктами: как бы вам понравилось, если бы вместо компьютерной игры, вам выдали бы описание того, что может делать оборудование и средства разработки, используемые для ее создания, а также набор картинок, не связанных между собой, не объяснили бы к чему это все и какая между всем этим связь, да вдобавок предварительно взяли с вас денег за все это? А как вам офисное приложение, которое ничего не делает, зато показывает вам кучу красивых "скриншотов" со своими формами? - Смотрится впечатляюще, но использовать нельзя ни с какой разумной целью! Оно вам надо? Но ведь в кино происходит именно это! Выражаясь словами А.Купера (Купер А. "Об Интерфейсе". - СПб.: Символ-Плюс, 2009. Он говорит это о файловых системах, преподносимых в качестве систем извлечения информации.):
С таким же успехом можно вручить ему пакет с продуктами и назвать его вкусным ужином.

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

пятница, 13 ноября 2009 г.

Все за улыбку

29 октября 2009 года W3C разразился первым публичным рабочим вариантом документа, мимо которого я никак не мог пройти - Emotion Markup Language (EmotionML) 1.0. Этот стандарт описывает унифицированный «язык разметки эмоций» или, проще говоря, то, как W3C предлагает представлять эмоции в цифровом виде внутри компьютера, хранить их и обмениваться ими. Как следует из названия, EmotionML разработан как специализированный язык в рамках общего стандарта XML, что на сегодняшний день довольно типично.

Такой язык может использоваться, например для:
  • аннотирования любых электронных материалов (там, где это имеет смысл) – «Компьютер, выдай мне почитать что-нибудь веселое!»;
  • сохранения результатов работы сенсоров и автоматизированного распознавания человеческой реакции на что-либо (в частности, речь идет о распознавании мимических выражений) – «Компьютер, что за гадость ты мне выдал?»;
  • генерирования «эмоциональной» реакции цифровых систем – «Я тут ни при чем – поисковики замусоренные сбили с пути истинного!».
Здесь нужно сделать небольшую, но весьма важную оговорку. Действительно, слово «emotion» непосредственно переводится с английского языка на русский как «эмоция», но вот термины «emotion» и «эмоция» не обязательно являются эквивалентными с научной точки зрения. В психологии существует много определений для эмоции, например:
Эмоция (от лат. emoveo — потрясаю, волную) — психофизиологический процесс внутренней регуляции деятельности человека или животного, отражающий субъективное оценочное отношение к существующим или возможным ситуациям или поведению. Эмоции относятся к эмоциональным процессам наряду с аффектами, от которых отличаются большей продолжительностью и меньшей интенсивностью, а так же чувствами, от которых отличаются простотой: однозначной валентностью (либо положительные, либо отрицательные) и отсутствием привязки к объекту.

С другой стороны:
Чувство — психофизиологический процесс внутренней регуляции деятельности человека, выражающий субъективное оценочное отношение к материальным или абстрактным объектам. Чувства относятся к эмоциональным процессам наряду с аффектами и эмоциями, от которых отличаются, в первую очередь, наличием привязки к конкретным объектам, а также способностью быть амбивалентными (Леонтьев А.Н. Потребности, мотивы и эмоции. - Москва, 1971).

Чувства могут быть связаны с совершаемыми действиями, а также служить «звоночком» к тому, что человек только собирается сделать, впрочем, как и эмоции. Однако согласно приведенному определению чувства в отличии от эмоций могут быть двойственными (смешанными) и иметь разную степень, а также привязаны к конкретным объектам. Таким образом, мне кажется, что «Язык Разметки Эмоций» в русском языке на самом деле правильнее называть «Языком Разметки Чувств» (вдобавок, в этом есть что-то романтическое). Конечно, это мое «чувственное» мнение – профессиональным психологом я не являюсь, хотя сказанное выше в целом соответствует тому, чему меня учили на «Психологии».

В сущности, практически каждый пользователь систем мгновенного обмена сообщениями (Skype, ICQ и т.д.), большинство отправителей SMS и многие авторы электронных писем регулярно используют упрощенную схему «электронного обмена чувствами» в виде «смайлов».

На рисунке представлены наборы смайлов в ICQ 6.5 (вверху), в Skype 4.0.0.226 (внизу слева) и с форума на базе IP.Board (внизу справа).

Чтобы понять, зачем нужен EmotionML или подобный язык (никто ведь не гарантирует, что вариант W3C получит значительное распространение), необходимо разобраться в том, чем «смайлы» плохи. Для обмена мгновенными (то есть сиюминутными и относительно короткими) сообщениями такая система вполне пригодна, однако для более серьезных целей она не годится:
  • наборы «смайлов» не унифицированы – каждый программный продукт использует и распознает свой набор;
  • эти наборы, естественно, фиксированы и расширяются только за счет выпуска новых версий использующих их программных продуктов;
  • «смайлы» не привязаны ни к фразе, ни к слову, ни к каким-либо объектам: сообщение может состоять из одного только «смайла», возможны сообщения вроде « :) Посмотри на это (ссылка) », где непонятно, чем является «смайл» - реакцией на предыдущую реплику собеседника или же реакцией самого отправителя сообщения на объект, расположенный по адресу ссылки – даже у людей иногда возникают сомнения по поводу того, что вы имели в виду под улыбкой в ответ на сообщение «Я подвернул ногу!», поскольку может быть не ясно, что это всего лишь (довольно странный) знак ободрения («Все не так плохо – мог бы сломать!»), что уж говорить о машинах;
  • «смайлы» не позволяют выразить степень чувства (за редким исключением типа «Ухмылка», «Улыбка», «Смех», «Катание по полу от смеха») или смешанные чувства: сообщение «:) :(» может трактоваться и как «Сначала было весело, а потом грустно», и как «Не пойму, то ли мне радоваться, то ли огорчаться».
Все названное не позволяет использовать системы выражения чувств в форме «смайлов» для обмена информацией о чувствах пользователей по тому или иному поводу между приложениями, делает невозможной машинную обработку таких данных и затрудняет аннотирование информационных объектов в форме чувств.

Конкретных же вариантов использования «чувственной информации» вкупе с ее машинной обработкой можно привести множество, например:
  • Синтез звуков речи с учетом чувств, которые испытывал в момент произнесения сообщения оригинальный докладчик.
  • Автоматическое распознавание/извлечение чувств из текста, ручное аннотирование чувствами любых информационных объектов и сохранение этих данных вместе с этим объектом.
  • Автоматизирований анализ впечатлений пользователей при работе с программным обеспечением и веб-сайтами (о, думаю, здесь разработчики программ и веб-сайтов узнают много нового).
  • Прогнозирование действий людей на основе выражаемых ими чувств – в частности, можно вылавливать из очереди пассажиров, ожидающих регистрации, субъектов, демонстрирующих страх, и, возможно, пытающихся пронести на борт что-то недозволенное и/или опасное (как и в предыдущем случае, для этого помимо языка разметки понадобятся сенсоры и программное обеспечение для распознавания человеческих мимики, жестикуляции и т.д.).
  • Мне почему-то видится электронное меню ресторана на экране и камера, подключенная к моему компьютеру: я быстро просматриваю все меню, машина анализирует мою мимику и в конце предлагает список из тех блюд, которые вызвали наиболее позитивную реакцию (тот же принцип отбора можно применить для наборов любых данных – покупок, туров, одежды и чего угодно еще).
Следует заметить, что стандарт EmotionML не определяет, как различать выражения чувств, как их фиксировать, анализировать и синтезировать, как ими обмениваться – только формат чувственных данных в электронной форме. Однако даже это значительный шаг вперед на пути к значительным достижениям, ведь на самом деле это шаг к тому, чтобы привнести чувственную форму коммуникации в виртуальное пространство: началось все с текста, продолжилось звуком, теперь очередь за более тонкими материями. Прогресс!

суббота, 7 ноября 2009 г.

Электронные голуби на "государевой" службе

Перспективы участия федерального почтового оператора в программе по созданию «электронного правительства» представил 27 октября 2009 года в рамках национального форума «Информационное общество, электронное государство, электронное правительство» глава Почты России А.Н. Киселев, сообщает пресс-центр Почты.

Редкий и приятный случай - начали, в общем-то, за упокой, а закончили за здравие.

Цитируя тот же источник:
Он (А.Н. Киселев - прим. мое, интересно, кто научил этих горе-пресс-центровцев заменять " ё " на " е " в фамилиях? Тут-то еще есть подозрение о замене, поскольку личность известная, но бывают ведь и вопиющие случаи.) отметил, что в современных условиях главным препятствием для широкого распространения электронных государственных и муниципальных услуг на основе высоких технологий является их низкая доступность ввиду недостаточной компьютеризации и «интернетизации» страны. Эту проблему поможет решить Почта России, которая имеет в своем распоряжении огромную территориально распределенную сеть почтовых отделений с Пунктами коллективного доступа, где гражданам оказываются услуги по передаче данных и предоставлению доступа в Интернет".

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

Вот это, ребята ("пардон", коллеги и господа), действительно круто! Видит Бог, когда я натыкаюсь на сообщение о высказываниях высокопоставленных лиц, первой реакцией моей является желание обругать... или нет, скажем так: первой реакцией является ожидание того, что они в очередной раз сказали что-то, что нельзя не обругать, но в данном случае... Когда все это заработает (в духе своего сегодняшнего оптимизма я не хочу употреблять слово "если"), останется только брошюрки по ящикам раскидать с заголовком "Теперь на почте Вы можете".

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

суббота, 31 октября 2009 г.

Playstation 3 - ты лучшая... но что же делают с тобой разработчики?! (окончание, часть 3)

Теперь обратимся к аппаратной части. Playstation 3 (PS3) - это продуманная консоль, мультимедиа центр и прочее, но и здесь не без изъянов.

С каждой новой версией системного ПО, у меня все чаще не обнаруживается роутер. Кроме того, с какого-то момента при тестировании соединения я стал получать сообщения о том, что оный не поддерживает IP-фрагменты, и потому (о чем система кокетливо сообщила) "возможны проблемы при сетевой игре". Секундочку, а кто говорил мне, что эти самые фрагменты нужны? Что это вообще такое, и почему я должен об этом знать? Представьте себе 13-тилетнего паренька, которому никак не удается поиграть по сети, он тестирует соединение и получает это сообщение... Делать-то ему с этим сообщением что? Об этом диагностика умалчивает. Вдобавок, означенные "проблемы" могут проявляться как угодно, когда угодно и где угодно - система максимум сообщит Вам о том, что "соединение прервалось" (а также, например, о том, что Вы были "кикнуты", "забанены", "другой игрок вышел из сети", и часто все это не имеет никакого отношения к действительности - о реальной причине система и игры то ли умалчивают, то ли не подозревают). Логичной реакцией на обнаружение проблемы игрой было бы не выкидывание Вас вон, а описание метода решения проблемы, например: "Ваш NAT Type 3, а наша игра требует 1 или 2 - Вы должны обзавестись публичным IP-адресом и перенастроить роутер (обратитесь к Вашему интернет-провайдеру)". В идеале же игра должна быть сделана так, чтобы эта ошибка не возникала, поскольку ни на одной коробке с игрой для PS3 не указан требуемый тип NAT.

С этим NAT (англ. Network Address Translation - метод преобразования сетевого адреса) вообще мрак и ужас. Я кучу времени потратил, чтобы выяснить, что это такое, и почему мой "Тип 3" создает проблемы при игре, скажем, в "Eye of Judgment". Многие опытные разработчики именно сетевых приложений и те не могли мне ответить. Я что действительно обязан все это знать? Да я всю жизнь дистанцировался от разработки сетевых решений, потому что не очень-то они укладываются в мою картину мира (каюсь).

Десктоп-решения+
Интерактивная графика (OpenGL + DirectX)+
Моделирование и визуализация процессов
=
Моя специализация.

Так что теперь, когда я вижу нехватку поддержки "IP-фрагментов", я уже потихоньку начинаю бояться.

Если по каким-то причинам в процессе работы роутер отключается от Интернет (возник сбой сети или сбой роутера), то PS3 выдает сообщение об "Ошибке DNS", что сбивает с толку - если уж подробно рассматривать этот вопрос, то должно было бы выдаваться сообщение "Ошибка шлюза". Понимаю - консоль видит в качестве шлюза роутер, который, вроде бы, работает. Тогда можно было бы сообщить: "Ошибка на пути к DNS". Зачем вообще консоли каждую секунду/минуту доступ к DNS? Конечно, выдавать обтекаемую информацию о том, что "у Вас все плохо" - это неправильно, но выдавать ложную информацию с видом полной уверенности - чудовищно и глупо! Вспоминается сериал "Уилл и Грейс":

- Ты все еще гей?
- Да, антибиотики не помогли!

Или вот еще более приближенный к ИТ пример: мне доводилось работать с крупной системой, которая во время выполнения любых операций часто могла выдать коротенькое сообщение: "Системная ошибка"! Это ХУДШЕЕ из сообщений, которое может быть выдано в любой программе! Еще раз - ХУДШЕЕ! Конечно, я работал в той компании, и одной из моих функций было обнаружение таких вот штук, но:
  • она выдавала их не только мне, конечным пользователям тоже;
  • на воспроизведение ошибочной ситуации у разработчиков уходила куча времени... это в случае, если ошибка была обнаружена мной, и две кучи времени уходило на то же у меня, если ошибка "всплывала" у пользователей.
При отключении роутера (то есть, когда он попросту пропадает), PS3 сообщает, что "Произошло отключение от точки доступа". И в случае "ошибки DNS" и в случае исчезновения роутера система не подхватывает их после ликвидации проблем - нужно либо "выйти и войти", пардон "выключить и включить", либо запустить тест соединения, в процессе которого будет сброшено неработающее подключение, прервать тест, в результате чего подключение снова будет сброшено, и после этого надеяться, что на этот раз все будет хорошо.

Ладно, довольно, поговорим о святая-святых - контроллере.

Мне кажется, что все версии контроллеров для PS, PS2 и PS3 - весьма удачны. Они удобны (за исключением случаев, когда фантазия разработчиков игр уж очень далеко простирается - тогда требуется зажать штук шесть кнопок и еще повертеть аналоговый джойстик), легки (SIXAXIS для PS3 весит примерно 100 грамм, DUALSHOCK 3 со встроенным устройством для создания вибрации где-то 150... контроллер для XBox360 - 250, то есть как оба предыдущих вместе взятые) и, в общем, одинаковы. Тут нареканий нет.


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

Иногда при попытке подключения новых джойстиков отключаются старые. Работают беспроводные контроллеры через Bluetooth, следовательно, их нужно перед использованием "спарить" (англ. pair) с консолью. Я "спаривал" много устройств в своей жизни, но таких проблем у меня не возникало. По идее Вы подключаете новый контроллер к консоли проводом, ждете, пока он подключится, отключаете провод и "вуаля". Консоль по идее поддерживает кучу контроллеров одновременно. Подключаю проводом - работает, отключаю - не работает, проверяю зарядку - есть, проверяю старые, уже "спаренные" джойстики - они тоже уже не подключаются без провода. Видимо, что-то случилось... Ищу в Интернете: вот радость - я не один такой, вот горе - решений ни у кого нет, официальных заявлений, объяснений, руководств - тоже нет. Остается действовать методом проб и ошибок, который и дает через полчаса эффект. Что изменилось, как, в какой момент - об этом я пытаюсь не думать.

На XBox360 есть кнопка для "спаривания", если на нее нажать, огоньки индикатора приставки мигаю по кругу. Это означает, что консоль сканирует "околоконсольное" пространство в поисках контроллеров. Если в этот период времени нажать такие же кнопочки на контроллерах, все будет в порядке - они с консолью друг друга узнают. Просто, как три копейки, сбоев на моей памяти не было, и явно видна причинно-следственная связь: нажал-получил, если не получил, значит что-то не работает. В случае PS3 непонятно, когда происходит "спаривание", когда оно разрывается, сломалось что-то само, или что-то неправильно делаешь ты - непросто и неэлегантно.

Теперь о том, что я называю "гироскопом" - о датчике перемещения и смены положения контроллеров для PS3. Расстреляйте меня, но я считаю, что эта возможность была добавлена вдогонку, когда стало известно, что Nintendo при разработке Wii делает ставку на новый игровой опыт, предлагая пользователю получить его за счет кручения, движения и других фокусов с контроллером. У PS3 это называется SIXAXIS (то же название было дано первой версии контроллеров, включающих "гироскоп", но лишенных устройства для создания вибрации).

Работает SIXAXIS замечательно - улавливает тряску вверх и вниз, в стороны, просто резкую смену положения, повороты и так далее. Замечательная штука, только вот никак не припомню, где бы она масштабно и удачно (что главное) применялась. То ли разработчики игр были не готовы к такому триумфу технологии, а те из них, что были готовы, уже радостно разрабатывали синтетические компьютерно-фитнесс игры для Wii, то ли случилось еще что, но, на мой взгляд, все игры делятся на три категории:
  • без использования SIXAXIS;
  • с вкраплениями его использования (Ratchet&Clank Future: Tools of Destruction, Uncharted: Drake's Fortune и т.д.);
  • с масштабным использованием SIXAXIS (Folklore и т.д.).
Конечно, я не играл во все игры для PS3 (и, что важно, я не люблю симуляторы и гонки - может быть там использование таких возможностей актуально и целесообразно), но из тех, в которые играл, реально масштабное использование SIXAXIS было к месту и времени только в Folklore (игрушка вообще классная, хотя из-за неудачного в некоторых отношениях сценарного режима каждый уровень приходится проходить по два и более раз, что быстро надоедает). Что касается игр с вкраплениями некоторых действий с "гироскопом", то они делятся, в свою очередь, на две категории:
  • те, где использование датчика положения уместно, но можно было бы и без него без особой потери удовольствия;
  • те, где удовольствие было бы куда больше, если бы без него все-таки обошлись.
В любом случае видны эксперименты и неуверенность разработчиков игр в применения сей возможности. Например, создатели Ultimate Alliance предложили игроку обезвреживать при помощи "гироскопа" бомбы... Перечитайте еще раз эту фразу и вдумайтесь в нее. Слава богу, что, во-первых, эту опцию можно было отключить (помимо прочего, обезвреживание было невероятно трудно произвести - одно дело, когда ты "не то нажал", другое - когда "не туда повел"), а, во-вторых, - игра была такой отвратительной, что на общем фоне указанный ее недостаток не был особо заметен. Компаниям Sony "first parties", проще говоря, принадлежащим Sony, было еще сложнее: подозреваю, что им настоятельно рекомендовали использовать сию "пространственную фичу" при разработке игр. Надо сказать, что в целом они справились неплохо, хотя получавшиеся игры, скорее все же относились к категории тех, где лучше было бы обойтись без SIXAXIS, чем к тем, в которых он действительно добавлял удовольствия. Например, в измученном мною Uncharted с помощью "гироскопа" бросаются гранаты: при выборе гранаты в качестве оружия появляется дуга, по которой граната предположительно полетит после броска. Конечная, дальняя от Вас точка дуги приближается или отдаляется посредством движения контроллера от себя по кругу и на себя. Теперь представьте: 4 человека бегут на Вас с автоматами, 2 с дробовиками, 2 с гранатометами, а Вы в это время "выгибаетесь дугой", высунувшись из укрытия и пытаясь поймать то место, где упавшая граната теоретически покалечит наибольшее количество противников. Если Вы играете на высоком уровне сложности, то, скорее всего, к моменту, когда Вы "определились", исход боя уже решили за Вас, поскольку Вы уже мертвы. Для сравнения: в Uncharted 2 не нужно переключаться на гранаты как на отдельное оружие, не нужно вертеть джойстик. Прицелившись в нужную точку из, например, пистолета, Вы просто нажимаете кнопку L2, и граната летит туда, куда Вы прицелились. Кроме того, в Uncharted 1 герой "SIXAXISo-управляемо" балансирует при переходе по бревну, кой он, на моей памяти, совершает раза три за все 22 главы.

Не знаю, увидим ли мы что-нибудь замечательное с применением SIXAXIS в будущем, но пока... В общем, я не верю, что данная возможность найдет какое-нибудь блистательное применение, и все скажут: "Ах"!

Сознательное включение проектирования в процесс создания продуктов возвестило о восхождении современной триады задач разработки, озвученных Ларри Кили (Larry Keely) из Дублинской группы: осуществимость, жизнеспособность, желанность. Если один из этих трех столпов значительно слабее двух других, продукт вряд ли выдержит испытание временем. (Купер А., Рейман Р., Кронин Д. Алан Купер об интерфейсе. Основы проектирования взаимодействия. - СПб.: Символ-Плюс, 2009.)

Столп "желанность" в данном случае явно слабее остальных. Хотя и жаль, конечно: идея-то замечательная. Пофантазировать что-ли на досуге?

И последний номер нашей программы (я и сам уже устал) - это беспроводная клавиатура для PS3. Маленькая, красивая, крепящаяся на контроллер... зачем купил - понятия не имею!


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

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


Если Вы хотите зарядить контроллер и клавиатуру, Вам нужно два провода или один, но заряжать придется по очереди. В принципе ничто не говорило об обратном, но я считал, честно говоря, что времена здоровенных составных девайсов, на каждый из которых приходится куча проводов, в прошлом, где-то там, где осталась Sega CD 32x.

На этом я, пожалуй, закончу обзор подводных и надводных камней, о которые спотыкался при работе... извините, развлечении с приставкой Sony Playstation 3 в последние 3 года. Еще раз хочу сказать: я все это описал не для того, чтобы обругать консоль - она мне нравится настолько, насколько только возможно. Позади и впереди отличные игры, и я еще много часов, дней и месяцев на них потрачу (я, вообще, слишком много времени трачу на игры). Я написал все это даже не для того, чтобы предупредить кого-то. Просто размышления о конкретном предмете, в данном случае - о PS3, склонны навевать интересные мысли и выводы об ИТ-индустрии в целом, а ее анализ - это, собственно, мое хобби, работа и призвание.

P.S. Спасибо всем, у кого хватило терпения дочитать до конца - перебрал я объема с этой темой.

четверг, 29 октября 2009 г.

Квази-шпионаж за настоящие деньги

Это гостевой пост Игоря Семёнова - моего друга, опытного разработчика ПО (в том числе для мобильных устройств), создателя и бессменного администратора портала для программистов Progz.ru. Как все тексты Игоря: конкретен, лаконичен и практичен. Ну, а за некоторые лексические обороты извините - авторские они... и весьма к месту.

Хотелось бы рассказать о двух ставших популярными в последнее время методах "развода лохов": "перехвате" SMS и определении местоположения человека по номеру сотового. Спам с предложениями подобных услуг валом сыпется на почту, в ICQ, везде где можно и нельзя висят банеры. Даже привередливый Google AdSense был замечен в рекламе этих "сервисов".

Не претендуя на полноту, хотелось бы прояснить некоторые вещи относительно этих относительно честных способов отъема денег (О.Бендер - И.Ильф, Е. Петров "Двенадцать стульев"). Сразу оговорюсь: т.к. текст предназначен не для профессионалов, некоторые технические аспекты намеренно упрощены для лучшего понимания материала.

Начнем с "сервиса" перехвата SMS. Чисто технически я представляю себе три возможности осуществить такой перехват:
  • на стороне оператора;
  • непосредственно на телефоне;
  • посредством дубликата SIM-карты.
Вариант в радио-перехватом я не рассматриваю, т.к., во-первых, он технически очень сложен и дорог, а во-вторых, подразумевает, что Вы будете носиться за объектом слежки с парой десятков килограмм сложного оборудования, а этого нигде в рекламе не упоминается.

Итак, рассмотрим варианты по порядку.

На стороне оператора действительно имеется техническая возможность читать любые SMS любых абонентов, кроме того, такая возможность предоставляется по программе СОРМ (средства оперативно-розыскных мероприятий) спецслужбам. Понятно также, что в нашем неидеальном государстве потенциально такая услуга может быть оказана и частным лицам. Однако, открыто рекламироваться в Интернет и оплачиваться посредством SMS такие услуги не могут по определению! Вы где-нибудь видели рекламу: "Отправь SMS - получи права!"? Тут же все намного более серьезно.

Далее - перехват на самом телефоне. Прежде всего, нужно заполучить сам телефон - а это само по себе усложняет процедуру. Далее, нужно установить на этот телефон некую программу, которая будет SMS-ки считывать и куда-нибудь отсылать. Притом, программу, которая запускается автоматически при каждой перезагрузке телефона и работает скрытно для пользователя. Для обычных телефонов с J2ME (попросту говоря, с Явой) это вообще задача нетривиальная, для некоторых моделей просто невозможная. Со смартфонами все несколько проще, но тоже не сахар. Разработка и поддержка такого рода ПО - занятие не для слабонервных. Создать программу, которая будет работать на всех телефонах - утопичная мечта. На сайтах же лохотронщиков нигде не предлагается выбрать модель телефона или хотя бы его систему - предлагается только заплатить.

И наконец, дублирование "симки". Для этого также нужен доступ к телефону жертвы. Кроме того, в сотовых сетях действует правило "кто последний, тот и папа". То есть, если вы вставите дубликат "симки" в свой телефон, вам действительно будут приходить SMS-ки жертвы, но у самой жертвы телефон отключится от сотовой сети. Раздосадованный абонент скорее всего перезагрузит телефон, и теперь уже отключенным окажется горе-шпион - Вы.

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

Большинство из этих утверждений относятся и к "сервисам" определения местоположения абонентов. Однако тут есть несколько "но".

Прежде всего, у сотовых операторов МТС и Мегафон есть сервисы (МТС-поиск и Мегафон-Навигатор), которые позволяют определять местоположение абонента по базовой станции подключения. Точность такого определения может быть до 1 км, а задержки при перемещении - до получаса. Для подключения сервиса требуется отправить с телефона абонента, чьи координаты собираетесь определять, SMS на специальный номер, после чего ввести особый код, который придет в ответ. В целом это действительно вариант, однако, эта услуга будет отображаться в личном кабинете абонента, а это делает слежку не такой уж незаметной.

Второй момент касается определения координат при помощи специальной программы, установленной на самом устройстве. Помимо всех сложностей, упомянутых выше для случая перехвата SMS-ок, есть еще хитрость с определением координат. Для GPS-устройств все просто и гладко, хотя, в случае постоянного отслеживания местоположения, батарея на смартфоне будет садиться довольно быстро. Что касается случая без GPS, то существует способ определения примерного местоположения по номеру вышки (т.н. CellID), но он дает довольно низкую точность, работает примерно для 40% всех сотовых телефонов и довольно трудоемок в реализации.

В сухом остатке: многочисленные рекламируемые "сервисы" по перехвату SMS и определению местоположения - не более чем мошенничество или, по-простому, лохотрон.

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

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

среда, 28 октября 2009 г.

Как подобрать автомобиль под цвет кроссовок

Группа исследователей, организованная в рамках W3C, представила отчет о своей работе над продолжающимся проектом по разработке «моделей продуктов» с помощью семантических веб-технологий (преимущественно упор делается на OWL - Web Ontology Language, язык описания онтологий для Веб).

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

Любой из «пожизненных потребителей», коими являемся мы все, поскольку хотим или нет, но потребляем те или иные продукты и услуги, сможет оценить эффект от «моделирования продуктов» (разумеется, когда появятся примеры успешных реализаций технологии).
Как сегодня мы выбираем, скажем, бытовую электронику? Предположим, что нам нужен телевизор с разрешением 1080p (Full HD) и Blu-ray disk player, а для максимального комфорта необходим еще и хороший звук. Для обеспечения качественного звучания можно прибегнуть к разным решениям, например:
  • приобрести проигрыватель дисков со встроенным ресивером и колонками в комплекте или
  • приобрести отдельный ресивер с колонками, а также комплект проводов для соединения проигрывателя и ресивера.
Помимо всего прочего, у нас имеется приставка Microsoft Xbox360, которую тоже было бы желательно качественно озвучить. Это означает, что независимо от того, какое решение мы используем для создания домашнего кинотеатра, необходимо действовать «с дополнительной оглядкой»:
  • в случае если мы приобретаем проигрыватель со встроенным ресивером, необходимо, чтобы в нем был дополнительный вход для оптического кабеля (или кабеля другого типа), передающего звук от Xbox к проигрывателю, а также режим, позволяющий использовать устройство исключительно как ресивер для внешнего звука;
  • в случае приобретения отдельного ресивера нужно пересчитать все его входы и изучить их типы, чтобы убедиться, что входов достаточно, и они такие, какие нужны, а также нужно закупить все нужные провода.
Дальше начинается самое интересное и «недетерминированное» - необходимо выбрать конкретные модели всех устройств, типы и длину проводов, в некоторых случаях мебель для будущего электронного сооружения.

Допустим, что у нас есть предпочтения в части марки телевизора. Самым логичным будет попытаться подобрать остальные устройства от той же компании, но:
  • делается это в предположении, что устройства будут однозначно между собой совместимы, что в общем случае неверно;
  • компания может, например, производить телевизоры, но не производить ресиверы;
  • даже если компания производит все нужные виды устройств, она может специализироваться на телевизорах, а ее ресиверы и проигрыватели могут быть посредственного качества.
Когда все это становится понятно, начинается поиск оборудования по его характеристикам: обсчет типов входов и выходов, габаритов, внешнего вида и поддерживаемых форматов. В некоторых случаях всплывают ограничения на отдельные параметры (например, мощность колонок) и так далее.

Выше описано то, как сегодня совершаются серьезные покупки, а ведь, если разобраться, образ действий, которые мы вынуждены предпринимать, диктуются нам принятыми и используемыми стандартами описания тех или иных продуктов. Мы производим поиск продуктов по тем параметрам, которые доступны, а то, какие из них доступны, на самом деле, вытекает из стандартов (в частности стандартов ISO), существующих с 80-х годов прошлого века. Эти стандарты морально устарели, поскольку:
  • в то время ассортимент существующих продуктов был совершенно иным;
  • мировое пространство информационных технологий (мне не нравится термин «облако ИТ» - облако это то, что загораживает солнце) было совершенно иным.
При сегодняшнем развитии ИТ, процесс выбора устройств для домашнего кинотеатра должен (и вскоре сможет, будем надеяться) выглядеть так: изначально потенциальный покупатель вводит свои предпочтения (например, марку телевизора и другие), затем система выдает ему подходящие проигрыватели, затем, подходящие к этой паре ресиверы и провода. На каждом этапе можно добавлять требования вплоть до цвета мебели, которая будет окружать устройства в комнате, и система будет их учитывать, выдав в результате картинку с изображением собранного комплекса и все адреса, по которым можно купить все выбранное, а в идеале – один общий счет по всем заказам и дату доставки всего этого на дом клиенту.

Вся информация, нужная для того, чтобы процесс выбора и покупки продуктов выглядел именно так или еще проще, имеется в том или ином виде. Проблема лишь в одном: поскольку нет новых стандартов, то даже интернет-магазины, которых в 80-х еще и не было, следуют стандартам тогдашним, в той или иной мере. Информации о продуктах – океан, но ее фрагменты не связаны между собой. Технология и стандарты, разрабатываемые упомянутой исследовательской группой, как раз и преследуют две цели: de jure заменить устаревшие стандарты описания продуктов, de facto помочь всем людям при их выборе, и обе цели благие.

Конечно, есть множество вопросов и тонкостей – все не так просто: унификация единиц измерения, системы, подсистемы и так далее, но для конечного пользователя результат, думаю, будет примерно таким, как я описал.

Есть еще одно замечание, которое хотелось бы сделать. На мой взгляд, метафорой, подходящей для определения места ИТ в мире на конец XX-го столетия является слово «автоматизация», а сейчас вначале XXI-го – «систематизация». Это изменение понимания места и целей ИТ видно везде: в разработке технологий формального описания семантики, в «облачных» вычислениях, в деятельности системных интеграторов… везде. Мы запихнули в цифровую вселенную огромные объемы информации, пора разобраться с тем, что именно мы туда поместили, и начать, наконец, получать дивиденды.

понедельник, 26 октября 2009 г.

Playstation 3 - ты лучшая... но что же делают с тобой разработчики?! (продолжение, часть 2)

Возьмем другой пример: Fat Princess. Игрушка во всех отношениях замечательная... была бы, если бы не режим Arena. Суть игры, если излагать ее до абсурда упрощенно, заключается в том, чтобы выкрасть принцессу из замка противника. Вы действуете в составе команды, в которую помимо Вас входят боты и другие удаленные игроки общим числом до 16-ти (в каждой команде).

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

Я получил некоторое количество устной критики по поводу своей эмоциональности (Garik и Faenir - большое Вам спасибо), так что попытаюсь держаться рамок логики, научно-популярной риторики и здравого смысла. Считайте, что я изучаю такое явление, как компьютерные игры, тем более, что это недалеко от истины.

Почему так раздражает арена в отличие от остальной игры? Давайте разберемся. Какова парадигма игры Fat Princess? Конечно, ближе всего она к Capture the flag, но это на среднем уровне (на уровне организации геймплея, нижний уровень - детали реализации, HP, оружие классы и так далее). На высоком же уровне абстракции парадигма игры - это коллективная ответственность без излишней ответственности со стороны конкретного игрока. Так вот арена полностью выпадает из этой парадигмы, из этого паттерна - она ставит игрока в положение, когда он один против всех, что и вызывает стресс.

А вот теперь вдумаемся: сегодняшним трендом является рейтингование или даже запрещение игр с излишней жестокостью и кровью, "борьба" за ограждение детей от всего такого. Но, как видно на данном примере, форма этой борьбы не имеет под собой реального обоснования. В Fat Princess крови - реки, частей тела - горы, пусть это и анимационные кровь и части. Стресс и агрессию вызывает совсем не это. В обычном коллективном режиме выигрываете ли Вы или проигрываете - Вы получаете удовольствие. Агрессия и стресс возникают не из-за крови и убийств, а из-за неверно выбранной парадигмы геймплея для одного из режимов.

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

То же касается и режимов сложности, о которых я говорил ранее: более "легкая" смерть игрока и более "мучительная" - врагов, вызывают сдвиг восприятия (еще раз подчеркну) одной и той же игры! На мой взгляд такая постановка многое меняет. После Uncharted 1 на легком уровне сложности я был доволен, а после высокого - хотел тяжких мук для ее разработчиков.

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

К примеру, предположим, что в купленном Вами текстовом процессоре не работает какая-то нужная Вам функция. Вот не работает и все или работает явно неправильно. Что Вы будете делать? Сначала пробовать и пробовать, потом думать, потом, возможно, читать руководство, потом форумы, потом, опять же возможно, переустанавливать, но потом - писать и жаловаться в службу поддержки. Если все пойдет нормально, то баг исправят... через некоторое неопределенное, но прижизненное время. Теперь возьмем игру, где я целюсь в противника за укрытием, вижу в прицеле его голову, БАХ! и в стену, БАХ! и в стену. Иногда это означает, что я, извиняюсь, косой, но иногда - что в игре явные проблемы с обнаружением коллизий (пересечений - collision detect). Ну и кому я буду жаловаться? Я могу общаться на форумах, я могу писать письма в техническую поддержку, но исправление такой ситуации - это, скорее, исключение, чем правило, в частности потому, что игры используются меньшим количеством людей и меньше по времени. Иными словами, в части игр имеет место бессмысленность ретроспективных жалоб.

Не верите? Пример: Red Alert 3, версия для PS3. Тысячи жалоб по всем просторам Сети сетей на исчезновение звука в миссиях при попытке выводить его в форматах Dolby Digital 5.1 или DTS (на самом деле во всех отличных от двухканальных). Не знаю, поступил ли какой-то ответ или решение от Electronic Arts, но полгода с момента выхода игры не было ни патча, ни официальных комментариев.

Даже, если бы разработчики хотели исправить упомянутую выше collision detect system, то я на 98% уверен, что не получилось бы, поскольку это такая штука, которая, наверняка, глубоко сидит в архитектуре ПО. Игра - не текстовый процессор, где можно одну функцию убрать, одну навесить, одну исправить, это система, в которой все между собой синхронизировано: от графики и звука, до управления, упреждающего чтения данных с диска и сетевого взаимодействия. Современные игры архитектурно во многом близки к системам реального времени.

Мы часто не задаем вопросов об играх - вопросов простых и, на самом деле, возникающих в мозгу: почему здесь блок - это назад, почему здесь нет Co-Op, ведь ясно, что он должен был бы быть для всеобщего удовольствия, почему такие тормоза в совместной игре по сети, они что - не видели сами, насколько это ужасно? Почему мы за собственные деньги не можем получить то, что нам нужно? Мы, фактически, нанимаем разработчиков, и нет тут никакой лирики и свободного творчества. Получается, что мы оплачиваем свое же разочарование и злость от игр, которые нам подсовывают - недоделанных, с ярко сверкающими фундаментальными глюками, которые заметны с первого же взгляда.

Снова возвращаясь к Fat Princess и арене: чтобы эффективно играть за лучника, нужно одновременно бегать по арене (с помощью левого аналогового джойстика), целиться (с помощью "плечевой кнопки" R1), менять цели (правый аналоговый джойстик), накапливать мощность выстрела и стрелять (соответственно, зажимая и отпуская кнопочку с квадратиком), менять оружие (кнопочка с треугольничком) и постоянно прыгать, избегая выстрелов врагов (кнопочка с крестиком). Я знаю, что есть люди, которые это делают, я знаю, что это возможно.

В свое время, когда активно распространялись клоны NES под маркой "Денди" и вообще без марок, я относился к той немногочисленной когорте игроков, которые не держали джойстик в руках, нажимая на кнопки большим пальцем, а клали его на колени и нажимали на кнопки A и B, соответственно, указательным и средним пальцами - это обеспечивало лучший контроль. Может стоит вернуться к этой системе? Вряд ли получится, поскольку "курковая" система контроллера SIXAXIS (или DualShock 3) этому явно не способствует.

Повторяю, я знаю, что есть люди, превзошедшие меня в управлении лучником на арене. Может у меня с рефлексами что-то не то, может еще с чем, но ребята-разработчики, извините уж, пожалуйста, но не пошли бы вы все в баню с такой системой управления и уровнем сложности? Будь у меня такая возможность, я бы с радостью показал вам тот самый палец, который я использовал для нажатия на кнопку B в далеких 90-х (прошу прощения еще раз).

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