На старых корнях
Автор: Илья Шпаньков
Опубликовано в журнале "Домашний компьютер" №3 от 7 марта 2007 года.
Компьютерные программы, как и любое другое творение рук человеческих, обладают множеством свойств, благодаря которым одни из них появляются и исчезают незамеченными, другие же занимают свое место в мире программного обеспечения и обретают заслуженную популярность среди пользователей на долгие годы.
Взлеты и падения, борьба с конкурентами, смена имени или принципов разработки, освоение новых технологий — эти и многие другие события, происходящие в жизни программы, с течением времени выкристаллизовывают из неказистого поначалу приложения красивое и функциональное программное решение, вобравшее в себя все лучшее, что было у предшественников. Именно к таким старожилам относится SeaMonkey, совсем недавно обновившийся до версии 1.1. Впрочем, наблюдательный читатель, пожалуй, заподозрит меня в неточности: действительно, как можно причислять к «старожилам» данное приложение, странное название которого стало известно широкой публике лишь в середине 2005 года, а номер текущей версии едва перевалил за единицу? Чтобы разрешить эту загадку, остановимся немного подробнее на «родословной» SeaMonkey — а она, скажу я вам, того заслуживает. Дело в том, что история данного приложения насчитывает около пятнадцати лет, и, уж если быть совсем объективным, — предки SeaMonkey являются практически ровесниками того Интернета, без которого уже невозможно представить современную жизнь.
Начало начал
В 1991 году англичанин сэр Тим Бернерс-Ли (Tim Berners-Lee) разработал и реализовал свою концепцию Всемирной компьютерной сети (той самой World Wide Web), в результате чего одни компьютеры смогли обращаться к данным, хранящимся на других, удаленных на многие километры. Но как следствие возникла необходимость в специальной программе, которая бы позволила осуществлять легкий доступ к файлам, а точнее, к их содержимому. Поэтому Бернерс-Ли, не откладывая в долгий ящик, написал и первый в мире браузер, назвав его очень просто — WWW (позже во избежании путаницы переименованный в Nexus). Графических изображений в Сети тогда еще не было, поэтому данная миниатюрная программа работала только в текстовом режиме. Между тем, появление первых рисунков в Сети (опять же результат кипучей деятельности уже известного нам английского сэра) было делом неизбежным и потому довольно скорым, и это, в свою очередь, потребовало соответствующего программного обеспечения, которое вместе с текстом отображало бы на экране монитора и графические объекты. И на этот раз сэр Бернерс-Ли был первопроходцем — взяв за основу код уже известного нам WWW/Nexus, он соорудил первый графический браузер Viola.
Бурное развитие Интернета заставляло разработчиков активно совершенствовать соответствующее программное обеспечение — новые технологии рождались ежемесячно, и уже через непродолжительное время возможности Viola устарели. К тому моменту сэр Тим Бернерс-Ли занялся новыми интересными проектами, а на базе кода Viola (на заре интернетизации все программное обеспечение было абсолютно открытым и свободным) его коллега Марк Андреессен (Marc Andreessen), работавший в американском «Национальном центре суперкомпьютерных приложений» (NCSA), создал новый браузер — Mosaic. И уже в следующие несколько лет существования первого текстового WWW произошло множество не менее значимых событий: появились коммерческие программы для просмотра веб-страниц, наиболее яркими представителями которых стали Netscape (кстати, одним из сооснователей Netscape Communications Corporation был все тот же Марк Андреессен), постепенно завоевавший львиную долю аудитории пользователей, и Internet Explorer, вошедший в состав молодой и многообещающей операционной системы Windows. Примечательно, что код обеих программ изначально основывался на исходниках именно Mosaic, поэтому Netscape, проигравший браузеру Internet Explorer конкурентную борьбу и переданный в 1999 году свободным разработчикам, в новой инкарнации стал называться Mozilla — слегка измененное сокращение от Mosaic Killer. С тех пор свободный браузер получил довольно широкое распространение, но в 2005 году ушел с «большой сцены», уступив место своему более шустрому потомку Firefox. Впрочем, говорить «ушел» — не совсем правильно в данной ситуации, ведь, на самом деле, выйдя из-под юрисдикции фонда Mozilla этот полюбившийся многим браузер отнюдь не канул в Лету — он перешел в руки группы энтузиастов и, пережив очередную инкарнацию, явился миру под новым именем. Думаю, вы уже сами догадались: совершенно верно — SeaMonkey. Таким образом, благодаря небольшому экскурсу в историю вы теперь знаете, сколь глубоко в прошлое уходят «корни» героя сегодняшнего обзора. Что ж, теперь самое время поближе познакомиться с возможностями SeaMonkey.
Больше, чем браузер
На самом деле называть SeaMonkey браузером не совсем правильно: по-английски его «порода» называется Internet Suite, что в вольном переводе означает «набор приложений для работы в Интернете». Другими словами, собственно браузер это лишь небольшая часть функциональных обязанностей SeaMonkey, который также позволяет полноценно работать с электронной почтой, обмениваться мгновенными сообщениями по протоколу IRC и даже заниматься разработкой и отладкой отдельных веб-страниц и целых сайтов (рис. 1).
Но прежде всего, как функционально, так и «по наследству», SeaMonkey — это мощный современный браузер, обладающий всеми стандартными возможностями, наиболее востребованными у сегодняшних пользователей Интернета. К наглядным примерам можно отнести просмотр нескольких страниц в одном окне с помощью системы табов, наличие боковой многофункциональной панели, блокировка всплывающих окон и нежелательных «куков»1, развитая система закладок, интегрированный поиск, тонкая настройка отображения веб-контента и многое-многое другое. Естественно, SeaMonkey поддерживает смену внешнего оформления интерфейса и локализован на несколько десятков языков, включая русский (рис. 2).
Причем в новой версии реализация многих функций получила значительные изменения, продиктованные инновациями, внедряемыми разработчиками других браузеров. В частности, система управления табами теперь позволяет обычным перетаскиванием мышью сортировать вкладки, а также перемещать сохраненные закладки, ссылки с просматриваемых страниц или локальные файлы непосредственно на панель табов, что автоматически инициирует открытие новой страницы между уже открытыми страницами или взамен существующей. Предусмотрен специальный указатель-стрелка для выполнения данной операции с максимальной точностью, отображаемый в зависимости от положения курсора мыши: или точно между вкладками (новую страницу между существующими), или посередине таба (новое содержимое вместо отображаемого). Для удобства ориентирования между одновременно открытыми страницами разработчики добавили дополнительную функцию, благодаря которой при наведении курсора мыши на вкладку отображаются всплывающие эскизы страниц (рис. 3).
Особо следует остановиться на возможностях боковой панели браузера. По умолчанию на ней размещены вкладки, позволяющие осуществлять быстрый доступ к закладкам; просматривать историю посещенных страниц за несколько дней; редактировать список контактов адресной книги и производить поиск в Сети различных данных по целому списку популярных поисковых сервисов. Вообще, довольно удобно держать под рукой набор подобных вкладок, позволяющих выполнять множество операций за пару кликов мышкой, но разработчики смогли и здесь внести несколько серьезных улучшений: так у каждого элемента, размещенного на вкладках, появилось всплывающее контекстное меню, открывающееся по клику правой кнопкой мыши и предоставляющее большое число дополнительных функций для более гибкого управления каждым элементом в отдельности. Но на этом список возможностей боковой панели не заканчивается: при необходимости пользователь может добавлять неограниченное число вкладок, созданных из обычных веб-страниц, по самой различной тематике. На специальном онлайновом ресурсе (sidebar.ru) энтузиастами этого браузера подготовлено несколько сотен вариантов дополнительных вкладок, которыми можно, согласно своим предпочтениям, наполнить боковую панель. После несложной установки новой вкладки ее содержимое будет отображаться на боковой панели, при этом ссылки, имеющиеся на вкладке (например, анонсы свежих новостей), можно открывать в основном окне браузера (рис. 4).
Пользователи браузера Internet Explorer (по сути — дальнего родственника SeaMonkey) будут приятно удивлены скоростью загрузки страниц, что особенно критично для владельцев модемного подключения к Сети. Дело в том, что в отличие от IE, который будет «радовать» пустым окном, пока все содержимое страницы не окажется на вашем компьютере, SeaMonkey использует способ раздельной обработки контента: в первую очередь из Интернета загружается текст, что позволяет незамедлительно приступать к ознакомлению с интересующей вас информацией, а все графические элементы, составляющие обычно львиную долю объема страниц, будут отображаться по мере поступления. Также при необходимости пользователь может совсем отключить загрузку изображений, тем самым превратив SeaMonkey в своего рода текстовый браузер, которому не будет равных по скорости отображения страниц. Дополнительную «скорострельность» программе придает грамотное использование кэша, хранящего большой объем данных. При повторном обращении к уже «обследованному» когда-то ресурсу браузер в первую очередь загрузит элементы, сохраненные в кэше, а из Сети будет получать только обновленные (если таковые имеются). К преимуществам кэша относится и практически мгновенное открытие страниц при перемещении по истории посещенных в течении одного сеанса страниц с помощью кнопок «Назад» и «Вперед».
Нельзя не упомянуть и о хорошей защищенности SeaMonkey от внешних «агрессоров», все больше наводняющих бескрайние просторы Интернета. Встроенная защита от фальшивых сайтов, пытающихся выудить из вас конфиденциальные данные, маскируясь под внушающие доверие веб-ресурсы, наглядно проинформирует вас о возможной опасности изменением цвета адресной строки. Также в нижней части браузера на панели состояния высвечивается точный адрес ссылки при наведенном на нее курсоре — данная полезная функция позволит вам легко определить, что, например, ссылка, внешне выглядящая, как часто посещаемый вами онлайновый магазин, на самом деле приведет на совершенно незнакомый ресурс. Подобные полезные мелочи — а их в SeaMonkey несчетное множество — превращают работу в браузере в настоящее удовольствие, предоставляя пользователям возможность быстро, безопасно и с максимальным комфортом исследовать Всемирную сеть. На этом рассказ о браузерной части SeaMonkey можно закончить, дабы оставить вам возможность самостоятельно изучить все тонкости, и перейти к обзору других компонентов программы, обладающих не менее интересными свойствами.
Письменные принадлежности
SeaMonkey обладает довольно развитым почтовым клиентом, возможности которого охватывают практически весь спектр операций, необходимых для полноценного использования электронной почты. Программа способна работать по протоколам POP3 и SMTP, используемым в большинстве случаев для получения и отправки почтовых сообщений, а также поддерживает становящийся все более популярным протокол IMAP для управления почтой непосредственно на сервере — подобная функция особенно полезна тем, чья работа связана с постоянными разъездами. Благодаря использованию IMAP владелец подобной учетной записи уже не зависит от провайдера и сможет обрабатывать почтовые сообщения в любом уголке планеты и с любого компьютера так, как будто никуда и не уезжал: все папки и архивы писем отображаются в привычном порядке, а шансы потерять важную корреспонденцию сведены к нулю. Продолжая разговор об удобстве почтового клиента SeaMonkey, следует отметить, что он позволяет создавать сообщения не только в виде обычного текста, но и в часто используемом формате HTML, что способствует приданию письмам дополнительной индивидуальности. Для этих целей в окне создания сообщений предусмотрен небольшой набор средств редактирования, способных превратить обычное скучное письмо в стильное и выразительное послание (хотелось бы вспомнить банальную истину: для написания писем рекомендуется использовать текстовый формат, оставив возможности форматирования HTML только для тех редких случаев, когда оформление несет смысловую нагрузку). Также во избежание опечаток и досадных ошибок, нередко возникающих при большой загруженности ежедневными переписками, почтовый клиент оснащен системой автоматической проверки орфографии (рис. 5).
Не менее ответственно разработчики отнеслись и вопросам сортировки поступающей корреспонденции. Помимо уже ставшего стандартным для всех уважающих себя почтовых программ фильтра нежелательной почты (спама), можно создавать собственные фильтры с большим набором правил, которые будут тщательно отслеживать всю входящую корреспонденцию и автоматически рассортировывать письма в папки, заранее указанные вами. Естественно, таких специализированных папок, созданных владельцем программы, может быть сколь угодно много, поэтому уже не придется искать в ворохе писем те, что относятся к одной тематике — достаточно будет проверить соответствующую папку, а многочисленные параметры настройки фильтрации позволят избежать ошибок в сортировке (рис. 6).
Остается добавить, что при необходимости сохранения повышенной конфиденциальности переписки имеется возможность использовать шифрование почтовых сообщений, а также цифровую подпись, позволяющую адресату удостовериться, что полученная депеша составлена именно вами, а не каким-нибудь неизвестным проходимцем. Впрочем, для следующего компонента SeaMonkey подобные меры предосторожности излишни — встроенный клиент IRC-чата предназначен для свободного общения с друзьями и знакомыми самым демократичным способом.
Общение без границ
Каждую секунду в Интернете трудятся тысячи серверов, обеспечивая круглосуточную работу не поддающихся подсчету сервисов для обмена мгновенными сообщениями, благодаря которым миллионы людей могут свободно общаться, не замечая границ и часовых поясов. Разработчики SeaMonkey решили не лишать пользователей своей программы такой возможности и интегрировали в набор соответствующее приложение ChatZilla (кстати, существующее и в виде отдельной программы) — рис. 7.
В настройках программы заложен небольшой список популярных серверов, работающих по протоколу IRC, каждый из которых насчитывает по несколько сотен чат-комнат на любой вкус. Для удобства визуального восприятия сообщений других пользователей предусмотрено несколько вариантов цветовых схем, дополненных гибкими настройками шрифтов и кодировок, что позволяет общаться с представителями других языковых групп. При этом можно не ограничиваться одной чат-комнатой: система вкладок допускает одновременное участие в нескольких чатах, а соответствующие средства индикации мгновенно известят вас о новых сообщениях и укажут вкладку, которую следует открыть для просмотра.
Работа как удовольствие
Нет, наверное, ни одного пользователя Интернета, который удовлетворился бы позицией стороннего наблюдателя и не захотел бы внести свой скромный вклад в развитие Всемирной сети. Кто-то создаст домашнюю страницу и на этом успокоится, но найдутся и те, для кого разработка веб-страниц станет увлекательным хобби, а, возможно, и работой. Для них разработчики SeaMonkey приготовили целый набор удобных инструментов, наиболее востребованным из которых является «Компоновщик» — удобный и простой в освоении HTML-редактор. С его помощью можно создавать достаточно сложные веб-страницы, отвечающие самым современным сетевым стандартам. Особое удобство для начинающих представляет наличие в «Компоновщике» возможности визуального конструирования HTML-страниц: предусмотрен набор средств форматирования текста, вставки графических объектов, гиперссылок и таблиц, при этом собственно код можно вообще не знать — работа ничем не будет отличаться от создания обычного документа, например, в текстовом процессоре, а «Компоновщик» самостоятельно расставит все HTML-тэги на свои места. При необходимости любой из уже существующих элементов можно редактировать, а все изменения будут оперативно вноситься программой в исходный код будущей страницы (рис. 8).
Впрочем даже «Компоновщик» не в силах предусмотреть все возможные ошибки, поэтому для более точной отладки готовых к публикации веб-документов, а также отслеживания на уже действующем веб-сайте возникших проблем предусмотрено сразу несколько полезных инструментов: это и «Инспектор DOM», позволяющий наглядно проверять структуру HTML-документов; и отладчик Java-скриптов, название которого вполне объясняет предназначение; и консоль ошибок, отображающая подробную информацию о каждом, даже самом незначительном нарушении любого из существующих на сегодняшний день веб-стандартов разработки в просматриваемом документе. Значение данных утилит трудно переоценить. Каждому из нас случалось наталкиваться на веб-страницы, которые некорректно отображаются в окне браузера, содержат неверно работающие элементы или просто тормозят работу, максимально загружая ресурсы компьютера, и все это по одной простой причине — разработчик подобных «шедевров» по незнанию умудрился нарушить массу правил, по которым принято сегодня создавать веб-страницы. И названные выше средства отладки, входящие в состав SeaMonkey, позволяют избежать подобного непрофессионализма (рис. 9).
Конечно, для серьезной работы лучше использовать специализированные программы, но даже если при создании веб-страниц применять только средства, встроенные в SeaMonkey, Интернет станет гораздо опрятней и удобней в использовании для всех нас.
Секреты долголетия
Как хороший коньяк с годами приобретает богатый вкусовой букет, так и SeaMonkey, вобрав в себя положительные качества своих предшественников и при этом сохранив заслуживающую похвалы надежность и стабильность работы, остается одним из лучших пакетов приложений для работы в Интернете. Но не только эти факторы стали причиной того, что и сегодня данный пакет пользуется популярностью. Благодаря открытому коду и свободным принципам разработки SeaMonkey одинаково хорошо выполняет свои обязанности во всех популярных операционных системах, распространяясь при этом совершенно бесплатно. Также немаловажное значение имеет и тот факт, что все приложения, входящие в состав SeaMonkey, обладают единым интерфейсом и тесно интегрированы друг с другом. Таким образом, снижается загрузка ресурсов системы и, что наиболее важно, обладатель SeaMonkey получает быстрый и удобный набор программ, легко взаимодействующих друг с другом без каких-либо дополнительных действий со стороны пользователя. Подводя итог всему сказанному, можно достаточно уверенно предсказать данному проекту долгую и интересную жизнь в мире программного обеспечения: свой благодарный пользователь у SeaMonkey будет всегда.