Не меняя стиля жизни

16 апрель, 2002 - 23:00Андрей Зубинский
Познакомились мы случайно. В ней трудно было уловить черты привлекательности -- чернокожая, миниатюрная, но не изящная, молчаливая и, несмотря на всю эту экзотику, неприметная. Товарищи, бывшие свидетелями нашего знакомства, долго убеждали меня -- она смертельно больна, ей остался от силы год. Но пообщавшись с ней несколько часов, я твердо решил -- она будет моей. Потом выяснилось, что я не ошибся.
Она очень неприхотлива и напрочь лишена обычного для столь миниатюрных заграничных созданий снобизма -- ее совершенно не тревожат ни характер, ни социальное положение, ни именитость моих старых друзей. В мой дом она вошла тихо и незаметно, к моим привычкам отнеслась с пониманием и терпимостью. И вот мы уже достаточно долго вместе. Всегда, иногда даже ночью, в одной постели. С каждым днем она становится все незаменимее, в ней открываются новые, неожиданные и подчас восхитительные черты. И я ни о чем не сожалею -- ее недостатки мне хорошо известны, но они ни на секунду не омрачают наших отношений. Даже прощать ей особенно нечего. Казалось бы, при такой идиллии можно заскучать смертной скукой уже через неделю, но она не дает скучать. И делает это не так, как умеют некоторые особы, требующие ежедневного, быстро становящегося мучительным внимания, -- напротив, она неустанно развлекает меня, прося взамен лишь нечастых копеечных подарков, которые можно купить по ходу дела в любом магазине...


Ее зовут Palm

Не меняя стиля жизни
"Тонкая натура толстушки" -- электронная начинка модели M100. Ни одной лишней детали...
"Ага, автор, тут у тебя ошибочка вышла! Palm называют PDA или карманным/наладонным компьютером, или геджетом (gadget), и все эти слова мужского рода!". Ну да. В том смысле, что "ну и что?". Называют и так. А можно и иначе -- универсальной вычислительной машиной или ЭВМ. Туманный собирательный термин gadget слишком пренебрежителен (gadget -- это и техническая новинка, и безделица). А уж слово "компьютер", давно ставшее синонимом серого ящика IBM PC, и вспоминать не хочется. Так что, уважаемый читатель, увольте -- Palm в нашем разговоре будет исключительно женского рода.

Теперь, естественно, наступило время второго, куда более ехидного "ага". Действительно, не чересчур ли громко звучит название "универсальная вычислительная машина" по отношению к Palm? Что вообще может быть универсального в комбинации по-черепашьи медленного процессора (тактовую частоту которого в приличном обществе можно называть только глубоко покраснев и шепотом), нескольких мегабайт памяти и крохотного экранчика? И mp3 она, как правило, проигрывать не может, и для видео у нее ни быстродействия, ни экрана не хватает. И еще много-много чего "не" можно перечислить. А перечислив, задуматься -- должна ли "вычислительная машина" вообще это все уметь? Даже "универсальная"... Впрочем, мы не будем терзаться подобными сомнениями -- Palm совершенствуется и с каждым днем приобретает все новые возможности (правда, пока стоящие немалых денег больше из-за новизны, чем из-за сложности реализации).


Какими они бывают

Не меняя стиля жизни
Два шедевра freeware -- программы чтения электронных книг Plucker и Weasel. При малом размере они обеспечивают наилучшее соотношение "стоимость -- возможности -- размер документов" для моделей Palm с разрешением экранов 160 x 160
Не меняя стиля жизни
Не меняя стиля жизни
Оболочка LauncherLight реализует настолько удачную модель интерфейса, что высвобождает "море" места на крохотном экране (кнопка в правом нижнем углу) без потери функциональности! А если дополнить ее возможности бесплатным Filez, получается практически непревзойденная комбинация, требующая минимум памяти
Не меняя стиля жизни
Выбор спутницы жизни (а эту маленькую машинку иначе называть нельзя) -- дело непростое. Всевозможные классификации неизбежно будут весьма условными, и все же...

"Чернокожие толстушки" -- это модели M-серии: снятые с производства m100, m105 и наиболее развитые последние представительницы немодной, но и не рубенсовской полноты -- m125 и m130. "Толстушки", несмотря на внешнюю неказистость и кажущиеся внутренние слабости, не так уж и плохи. Модели m100 и m105 оснащены "хилым" 16-мегагерцевым процессором DragonBall серии EZ и не располагают перепрограммируемой системной памятью, что ограничивает возможности модернизации ОС только нерадикальными обновлениями. Предпоследняя из "толстушек" -- m125 -- обладает куда более "горячим сердцем": CPU DragonBall VZ 33 MHz, развитой "интуицией" -- ОС новой (по сравнению с предшественницами) версии и совсем не девичьей памятью -- кроме встроенных 8 MB ОЗУ, можно применять "внешние" карты памяти SD (Secure Digital) и MMC (MultiMedia Card). Все перечисленные в краткой характеристике "толстушки" обладают одним общим свойством -- их экраны монохромны. Последняя же из семейства -- модель m130, фактически является модернизацией m125 цветным экраном, способным отображать 65535 цветов.

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

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

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

8 MB -- это много или мало?

В Palm-мире 8 MB -- цифра более чем приличная. Оценить насколько, может помочь следующее краткое описание программной конфигурации, выбранной автором.

Оболочка LauncherLight российской компании Megasoft2000 (56 KB).

Модуль управления "хэками" X-Master (55 KB), "ускоритель" AfterBurner (11 KB), GlowHack -- автоматическое включение подсветки экрана в заданный период времени (2 KB), FindHack -- существенное расширение возможностей общесистемной утилиты глобального поиска (20 KB), MultiClipHack -- "функциональный усилитель" буфера копирования (21 KB).

Файловый менеджер Filez (59 KB) и программа мониторинга времени наработки и состояния батарей RunTime (27 KB), программа-"напоминатель" Reminder (56 KB) и аналог Unix-утилиты cron -- Crony (15 KB).

Русификатор CyrHack II (47 KB).

Программы чтения компрессированных неформатированных (Weasel, размер 86 KB) и "почти HTML-форматированных" документов (Plucker, размер... тоже 86 KB), отличная шахматная программа ChessGenius (79 KB) и... музыкальный редактор Noter (на выходе -- нотная запись и MIDI).

Почтовый агент MsgAgent (128 KB), программа чтения news-конференций Yanoff (72 KB), telnet-клиент с эмулятором алфавитно-цифрового терминала VT100 Ptelnet (38 KB), текстовый броузер EudoraWeb (150 KB), утилиты быстрой загрузки файлов по протоколу http LGet (13 KB) и проверки наличия/доставки почты из POP-3 ящиков LPop (7 KB), универсальный "командир всех мобильных телефонов" GSMtool (ведение книги номеров, отправка/прием SMS и т. д, 88 KB).

Текстовый редактор "офисного класса" Quickword (244 KB), электронная таблица Quicksheet (233 KB) с модулем построения диаграмм Quickchart (41 KB), реляционная СУБД JFile (190 KB), фреймовая база данных/знаний db2go (48 KB).

Cистема разработки и исполнения интегрирующих скриптов-расширений PopletKit (189 KB), интерпретатор C-подобного языка программирования PocketC (95 KB), текстовый редактор Qed (40 KB).

Карманные редакторы электронных схем (pDraft, 67 KB) и диаграмм (Draft?, 21 KB) с поразительно "некарманными" возможностями, мощный математический пакет EasyCalc (173 KB), калькулятор "попроще" со встроенным конвертором единиц измерения Calcul-8! (49 KB).

Итого, такой набор "съедает" 2539 KB, оставляя свободными под данные более 5,5 MB памяти. Чтобы осознать весомость этой цифры: комплект справочной документации по программированию в ОС Unix в формате Plucker занимает 630 KB (почти в три раза меньше размера исходного набора HTML-страниц), две большие книги (каждая размером более 900 KB чистого текста), подготовленные для Weasel, "отнимают" еще всего 730 KB. Более 600 записей системной базы контактов умещаются в 65 KB. Так что "чистый остаток" в 5,5 MB позволяет носить в кармане целую библиотеку, несколько десятков больших документов, которые легко преобразуются в rtf- и xls-форматы, пяток-другой персональных справочных баз данных и много-много чего еще...


Жизнь с Palm

Не меняя стиля жизни
Редактор e93 при подготовке e-book удобен функцией визуализации сразу всех определенных шаблоном РВ строк
Иначе назвать этот самый большой раздел статьи было трудно. Степень персонификации героини нашего повествования очень велика -- несоизмеримо выше настольных компьютеров, даже тщательно "вылизанных" за годы эксплуатации. Плюс -- карманный характер и "постоянство" (в смысле присутствия). Так что Palm -- это именно та машина, с которой живешь. И, естественно, уживаешься. Благо, никаких особых требований к стилю жизни своего партнера она не предъявляет. Ни выбор операционной системы "большого брата" -- настольного компьютера, ни потребности "хозяина" Palm практически ничем не ограничивает.

Последнее немаловажно -- все мы слишком разные, чтобы без проблем находить способы не менять свой стиль жизни под неумолимым натиском однообразия Digital Millennium. К счастью, Palm, в отличие от многих других "карманных спутниц", в этом смысле абсолютно нейтральна -- какая бы ОС не была установлена на вашем "большом" компьютере, Palm найдет с ней общий язык. Windows, Linux, Free/Net/OpenBSD, Plan9, Oberon, Solaris, Mac OS и Mac OS X -- похоже, даже этим немаленьким перечнем ваш выбор не ограничен. Мы не будем оговаривать спорный в этом контексте термин "удобство", определяющийся сформированными за годы работы привычками. Например, личный опыт автора убедительно доказывает, что, несмотря на существование ряда весьма развитых GUI-программ "общения" Palm и компьютера под управлением ОС Unix, наиболее употребимой оказалась утилита coldsync, с помощью которой, в частности, производятся установка программ и запись данных на Palm без продолжительной процедуры синхронизации (этот термин в Palm-мире используется очень часто, в данном же случае мы говорим о процедуре создания образа памяти Palm на "большом" компьютере, что позволяет при необходимости восстанавливать работоспособную программную конфигурацию вашей карманной машинки). Пользователям ОС Windows на это также стоит обратить внимание -- особенно тем, кто уже обзавелся или собирается обзавестись батарейной "толстушкой" M-серии: процедура синхронизации весьма существенно "подсаживает" батареи Palm.

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

Косметика... Женщины ее любят, и наша "спутница" тоже не лишена склонности к использованию различных "украшательных" штучек. Обширный класс "косметических средств" для Palm можно условно разделить на две категории -- "визаж" и "дезодоранты". "Визаж", естественно, предназначен "для показа", и к нему относятся многочисленные, как удачные, так и не очень, усовершенствования пусть достаточно функциональной, но не слишком удобной стандартной графической рабочей оболочки ОС Palm OS. По большому счету, "визаж" -- прихоть, и без него можно обойтись, но мы же говорим о Palm в женском роде... К сожалению, "визаж" не бесплатен как в смысле самого дорогостоящего ресурса -- памяти Palm, так и в более прозаичном смысле. Но если говорить серьезно, то хорошая оболочка делает повседневную работу существенно удобнее. К наиболее удачным оболочкам (не только по мнению автора статьи) относятся развитые модификации уже ставшей легендарной в Palm-мире утилиты Эрика Кенслоу (Erik Kenslow), идеально соответствующей возможностям устройств с малым экраном. Таких модификаций две -- Launcher III хорватской компании Benc Software и LaunchEm компании SinergySolution. Объединяющая обе оболочки главная идея организации интерфейса -- обеспечение видимости на экране перечня категорий программ, всех программ в текущей категории, пиктограмм полезных утилит. Кроме того, обязательная поддержка очень уместной при этих условиях технологии drag'n'drop. Хорватская оболочка обладает малым размером, весьма приличной функциональностью для кода менее чем 70 KB (обычный порядок требований к памяти программ Palm-мира), для LaunchEm памяти необходимо в два раза больше, но и интерфейсную модель Кенслоу она доводит практически до совершенства. В целом, хотя без такого рода "косметики" обойтись и можно, но ее применение не только следует считать оправданным -- она действительно нужна. А вот без "дезодорантов", безусловно, в приличном обществе трудно. Как всякий программный проект, ОС Palm OS имеет свои специфические особенности, которые не обязательно должны нравиться всем. Чтобы Palm по-настоящему заблагоухала именно для вас, потребуется подобрать нравящийся именно вам букет запахов. Увы, составляющие "дезодоранта" в Palm-мире носят весьма подозрительное название -- хэки (hacks), однако ничего крамольного в нем нет. Hacks -- это предусмотренные архитектурой Palm OS системные расширения. Их существует необозримое множество, а "букет" из них образует важнейший связующий элемент -- утилита управления расширениями. Лучшая на сегодняшний день ее реализация легально бесплатна -- X-Master немецкой компании LinkeSoft. Из бесспорно полезных "составляющих" будущего "букета" следует отметить, например, хэки-ускорители, придающие даже устаревшей модели-"толстушке" неожиданную резвость. Бесплатные "ускорители", одним из лучших представителей которых является CruiseControl, действуют весьма грубо, но результативно, платные программы, несмотря на крохотный размер, обладают серьезной функциональностью, позволяя как тонко настраивать процесс повышения тактовой частоты в зависимости от запущенного приложения, так и конфигурировать аппаратные подсистемы Palm для достижения максимальной производительности (например, хэк Afterburner).

С небольшим перечнем очень полезных хэков мы познакомимся в дальнейшем.

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

Взаимопонимание. Для достижения полной гармонии это буквально необходимо, и Palm должна как минимум хорошо понимать ваш родной язык. Ну что же, здесь препятствий никаких нет -- для Palm существуют и свободно распространяемые, и платные программы локализации, поддерживающие русский и украинский язык. Опытная эксплуатация автором разных версий и вариантов "локализаторов" никакого открытия не сделала -- вопреки ожидавшемуся явному перевесу со стороны коммерческих разработок именно свободно распространяемая программа CyrHack II оказалась просто незаменимой. Но установка программы локализации -- это только одна составляющая успешности достижения "взаимопонимания". Вторая не менее важна, потому что является требованием к владельцу Palm -- языком общения со своей "спутницей" надо владеть в совершенстве. Язык этот -- Graffiti, достаточно прост и содержит свои маленькие особенности, именуемые "альтернативными граффити" (АГ). Начертание символов АГ не всегда похоже на обозначаемые ими буквы, но... АГ оказываются чрезвычайно удобным "диалектом" языка Palm, позволяющим одновременно существенно повысить скорость ввода текста и увеличить вероятность его правильного распознавания.

Пока мы говорили об очевидных требованиях к нашей "спутнице", достаточно общих и потому не сильно зависящих от наших пристрастий. Действительно, карманная "секретарша-ассистент" такой и должна быть. Но, согласитесь, этого очень мало. Шехерезада вошла в историю благодаря своей удивительной способности тысячу и одну ночь подряд тешить слух падишаха неповторимыми историями. Наша спутница, несмотря на "молчаливость", вообще может рассказывать Бесконечную Историю. Правда, доведение этой ее врожденной способности до совершенства требует от нас некоторого напряжения ума, с чем, не родившись падишахом, приходится смириться. Естественно, речь идет об использовании Palm в качестве электронной книги. Несмотря на малый размер экрана и невысокое разрешение, чтение с Palm совершенно не утомляет, кроме того -- к этому очень быстро привыкаешь. Тем более что перечень программ чтения электронных книг очень обширен, как и спектр готовых e-books различных форматов. Но на каждую бочку меда всегда можно найти ложечку дегтя -- после того как убеждаешься, что твои вкусы не совпадают со вкусами изготовителей e-books, начинается самое интересное -- процесс поиска и самосовершенствования: различной информацией, документацией, сборником стихов или текстов песен, случайно попавшимися в Internet, хочется пополнить собственную коллекцию e-"чтива"; неряшливость создателей e-books начинает раздражать, а виртуальные книжные полки ассортиментом напоминать "музыкальный" ларек возле метро. Значит, пора браться за дело самостоятельно.

К счастью, все необходимое для этого есть, и большинство программ материальных расходов не потребуют. Но прежде чем мы коротко рассмотрим процесс создания собственных e-books, следует оговориться -- художественные книги на Palm лучше всего читать в одном из raw-форматов, т. е. фактически в "чистом" тексте с минимальным форматированием. Всяческие "форматные излишества" здесь, судя по личному опыту автора и популярности программ чтения, никому не нужны. Зато наличие в e-книге закладок на главах, возможность программы чтения создавать заданные нами закладки и короткие аннотации -- свойства, можно сказать, обязательные.

Из обширного перечня программ создания e-книг автор выбрал всего две, обладающие немаловажными свойствами -- кросс-платформенностью, доступностью и полнотой возможностей. Первая -- текстовый редактор e93, вторая -- Pyrite Publisher (PyrPub). Обе программы -- представители семейства "скриптовых" (e93 создан на основе языка Tcl, PyrPub написан на Phyton). Текстовый редактор, ключевой элемент процесса e-книгопечатания, в принципе, можно выбрать любой -- главное, чтобы он "понимал" и поддерживал операции поиска и замены фрагментов текста, определенных регулярными выражениями (РВ). Несмотря на сложность последних, пугаться не стоит -- для использования в издательском деле вам будет достаточно минимальных сведений о РВ для того, чтобы любая из книг в коллекции М. Мошкова за пару минут могла занять достойное место на вашей собственной "книжной полке".

Если внимательно посмотреть на тексты книг в Библиотеке Мошкова, можно заметить, что в каждой из них названия глав и разделов представлены в таком формате: "некоторое_количество_непечатных_символов символ_точка название символ_точка символ_перевод_строки", например " .2.ЭДДИ ДИЙН.". Эта избыточная информация позволяет после выполнения минимальных процедур, избавляющих будущую e-книгу от "шумов", автоматически сформировать закладки.

Алгоритм подготовки e-книги таков: удаление html-форматирования -- устранение переносов -- ликвидация лишних пробелов -- устранение шумов -- проверка и коррекция названий глав и разделов. На этих этапах используется исключительно текстовый редактор (и их вообще можно автоматизировать). Первое действие выполняется заменой шаблона
'\<[^\<\>]+\>'

на пустую строку.

Устранение переносов нужно не всегда -- многие e-тексты их не содержат. Но уж если, просмотрев пару экранов текста, вы с ними столкнулись, избавиться от этой напасти просто необходимо -- переносы в "чистом" тексте привязаны к форматированию, которое на маленьком экране Palm окажется совершенно иным. Здесь поможет замена в редакторе e93 шаблона

'(\x20[а-я, А-Я]+)\-\n(^[а-я]+\x20)'

на... шаблон

'\0\1'.

Третье действие выполняется операцией замены описанных шаблоном
'\x20\x20+'

фрагментов текста на один-единственный символ
'\x20'.

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

'^[\x20\t]*\.[^\.\n][^\n]*\.\n'

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

Подготовительный этап можно считать законченным.

После предварительной обработки будущей e-книги остается подготовить ее дистрибутив для Palm. И здесь поможет программа PyrPub, поддерживающая самые распространенные форматы, в том числе и компрессированный с помощью ставшей неожиданно знаменитой благодаря ехидной ошибке библиотеки zlib. Последнее немаловажно -- e-книги в этом формате очень компактны. PyrPub -- программа командной строки, разобраться с которой можно буквально за десять минут с помощью сопутствующей документации. Типовой ее вызов выглядит так:

pyrpub -P zTXT -t 'Название книги' --indented-paragraphs --r '^[\x20\t]*\.[^\.\n][^\n] *\.\n' -o Имя_файла_ готовой_ книги.pdb Имя_текстового_файла

Повторно используемое "катастрофическое" регулярное выражение теперь полноценно выполнит свое предназначение -- в получившемся файле вашей e-книги будут присутствовать закладки-ссылки на главы. Остается стандартной процедурой загрузить полученный файл с расширением pdb на Palm, и можно наслаждаться чтением действительно качественно подготовленной книги.

Впрочем, чтобы окончательно превратить Palm в карманную Шехерезаду, понадобится программа чтения. Их существует множество, но одна из наиболее развитых -- легально бесплатная Weasel, поддерживающая самые разные "вкусности", в том числе очень удобный построчный автоскроллинг текста (автор замечательной идеи -- российский программист Максим Власов), поворот экрана (это бывает действительно удобно), чтение компрессированных zlib-документов, создание и аннотирование закладок по ходу чтения. Короче говоря, 85 KB программы weasel и 30 KB бесплатной библиотеки zlib даже для самых слабых моделей Palm не окажутся обузой, а экономия за счет размеров книг превзойдет все ожидания.

Не меняя стиля жизни
Как ни странно, но малое разрешение экрана ни в коей мере не ограничивает совсем не свойственные "карманному" характеру возможности Palm. Электронные схемы и диаграммы на виртуальном "пиксельном листе" с разрешением 800 x 600 -- хорошее тому подтверждение
Не меняя стиля жизни
Для менее романтических вещей -- чтения разнообразной документации и даже понравившихся Web-страниц, отлично подходят коммерческая программа iSilo или свободно распространяемый off-line-броузер Plucker. Обе программы прекрасно документированы, обладают бесплатными кросс-платформенными конверторами html в компактные документы для Palm, сохраняют форматирование и даже "умеют" конвертировать изображения. Что выберете лично вы -- зависит от ответов на многие неизвестные автору вопросы.

Общительность -- вот еще одна привлекательная черта. Ну, здесь вообще все просто -- устанавливаем бесплатную программу MsgAgent, разработанную не забывшим о существовании русскоязычного населения японцем Хироюки Окамото, бесплатный же текстовый броузер EudoraWeb компании Eudora, распространяющийся на тех же условиях отменный ньюсридер Yanoff, тратим пять минут на детские "разбиралки" с настройками и... получаем полноценный доступ к электронной почте (POP3) и Web из любого места, где способен работать мобильный телефон. Кстати, о последнем -- крохотная shareware-программа GSMtool, крайне неприхотливая в отношении производителя и модели вашего "мобильника", позволит существенно упростить ведение книги телефонных номеров, отправку SMS и прочие удовольствия, доводя "общительность" почти до максимума. Любители экзотики могут использовать Palm как мобильный графический дисплей своего Windows или Unix-компьютера с помощью бесплатной программы PalnVNC, имеющим потребность и возможность доступа к Unix-машинам пользователям и администраторам пригодится бесплатный эмулятор алфавитно-цифрового терминала и telnet-доступ к своим "большим" компьютерам. В общем, тему "общительности" можно развивать очень долго.

Аристократизм -- главное условие для того, чтобы быть принятым в "высшем свете". Palm этой черты не лишена -- машина легко уживается в современном legacy-мире -- мобильные офисные пакеты QuickOffice и Documents To Go с соответствующим ПО поддержки для MS Office занимают лидирующие места в рейтингах программ для Palm. Впрочем, использование таких пакетов может быть оправдано, даже если вы принципиально воздерживаетесь от употребления ОС Windows -- в них при невысокой цене входит весьма приличный, даже по настольным меркам, текстовый редактор, позволяющий создавать форматированные rtf-файлы и неожиданно функциональные электронные таблицы. Однако и бесплатный редактор FreeWrite оказывается далеко не бесполезным и дает возможность без проблем работать с текстовыми документами legacy-форматов.

А вот теперь наступило время самого главного -- оставшегося в начале статьи без ответа вопроса об универсальности Palm как вычислительной машины. Понятие "универсальности" ЭВМ сегодня трактуется по-разному, но все же основной его составляющей остается возможность использования машины для решения поставленных самостоятельно задач, т. е. возможность программирования. Причем в данном случае мы будем говорить не о кросс-средствах, с помощью которых на "большой машине" можно разрабатывать программы для Palm -- они очень развиты, существуют и бесплатные, и платные их реализации, максимально нетребовательны к платформе и вполне заслуживают отдельной большой статьи. Нас будет больше интересовать возможность поддержки стиля жизни "Codito ergo sum" ("Я программирую, значит -- существую"), т. е. инструментальные средства, позволяющие разрабатывать и отлаживать фрагменты и даже целые полезные программы только с использованием Palm. Таких средств, принимая во внимание более чем скромные характеристики машины, неожиданно много -- легально бесплатная очень хорошая реализация интерпретатора скриптового языка Lua, интерпретатора знаменитого Python с элементами интегрированной среды разработки, блестящая система программирования на Sheme -- диалекте Lisp. Наконец, есть полноценный бесплатный инструментальный набор, включающий в себя компилятор (!) языка C, ассемблер, отладчик и библиотеки -- OnboardC.

И все же даже на фоне такого разнообразия легально бесплатных и очень качественных программ есть коммерческий продукт, обладающий настолько уникальными свойствами, что оставить его без внимания было бы просто недопустимо. Речь идет о программе PopletKit компании HandWave. Ее размер -- всего 188 KB, не должен смущать -- "крошка" являет собой полноценную среду разработки на незначительно модифицированном объектно-ориентированном языке JavaScript. Даже если бы программирование в PopletKit было самоцелью, этот продукт уже бы заслуживал уважения из-за интеграции удобных броузеров объектной иерархии и функций в модулях, текстового редактора и встроенного механизма контроля синтаксиса. Но все дело в том, что в отличие от большинства средств разработки PopletKit играет роль общесистемного интеграционного компонента, фактически полноценно реализуя в Palm одну из уникальных особенностей ОС Plan9 -- так называемый механизм "плюмбинга". Идея "плюмбинга" проста -- "централизация языковой обработки данных, позволяющая освободить приложения от части функциональности" (вольный вариант перевода фрагмента документации ОС Plan9). PopletKit воплощает эту идею таким образом -- любая программа-скрипт на встроенном языке (он называется HandScript) может принять в качестве параметра... содержимое общесистемного буфера выделения или копирования (clipboard), обработать его и результат "подставить" в другую программу. На практике это означает возможность расширения функциональности бинарных, уже имеющихся приложений без модификации их кода -- например, в почтовом агенте можно легко перекодировать фрагмент текста в "кривой" кодировке, выбрать из него ссылку и проверить ее на соответствие правилу описания URL, заставить броузер, никак не связанный со всеми предыдущими программами, открыть эту ссылку, создавать "всплывающие" словари, калькуляторы, способные работать в любом приложении, где есть любая строка ввода данных, и так до бесконечности. HandScript в таком деле -- незаменимый помощник, обеспечивающий автоматическую сборку мусора, поддерживающий встроенный тип данных "персистентный ассоциативный массив" (фактически -- базу данных) и массу прочих программистских удовольствий. А если к ограниченным только воображением и знаниями возможностям PopletKit добавить немного "косметики", например один из clipboard-хэков (Clipper или MultiClipHack), простенькую утилиту загрузки и установки файлов по протоколу http Lget, хэк, позволяющий переадресовывать ввод/вывод программ на разные устройства (IR-порт, RS232-порт, USB), ComLink и немного усердия, можно добиться почти невероятных результатов -- учитывая, что сервисы для мобильных пользователей у нас не развиты, и не ожидая прихода горы к Магомету с такой помощью можно легко создать собственный уникальный мобильный сервис.

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