Визитная карточка
|
В конце июня этого года в Чикаго состоялся юбилейный конгресс: программе Mathematica исполнилось 10 лет. Для компьютерных программ десятилетие - срок немалый. За такое время одни из них успевают скончаться, другие достигают зрелости и лишь немногие продолжают расти. Хотя в своей последней версии Mathematica уже переросла ожидания большинства пользователей, компания Wolfram Research, создавшая и развивающая эту программу, на достигнутом не останавливается. Конечно, ее стомиллионным годовым объемом продаж и штатом двести человек трудно поразить наше воображение, совершенно раздавленное китами современной программной индустрии. Однако то, что продукция Wolfram Research нашла себе более миллиона легальных пользователей (и, естественно, 3-5 миллионов нелегальных), дает серьезный повод для разговора о тех, кто делает Mathematica.
Для чего нужны компьютеры? Кому как. В наши дни с помощью компьютеров люди читают и пишут тексты, смотрят и рисуют картинки, слушают и создают музыку, находят и распространяют информацию, общаются и обучаются, играют и считают. Считают не только деньги. Современная цивилизация в значительной степени держится на интенсивных научно-технических вычислениях, хотя неспециалисты об этом думают редко. Миллионы инженеров и ученых в своей повседневной работе производят вычисления трех типов: численные, графические и символьные (или алгебраические). В области программных средств для численного счета имеются гигантские наработки, особенно в виде библиотек фортрановских программ, которые в последние годы интенсивно вытесняются программами на C. Все еще до конца не востребованная мощь распознающего нейрокомпьютера - зрительной коры головного мозга человека - стимулирует развитие сотен программ компьютерной графики и анимации. В программах CAD и CAM (компьютерной разработки и моделирования) графические средства весьма плодотворно сливаются с мощными, но очень узкоспециальными алгоритмами численного счета. Что же до символьных вычислений, то с середины 60-х годов появилось около дюжины серьезных программ компьютерной алгебры, и в последнее десятилетие интерес к ним сильно вырос не только у ученых, но и у инженеров: часто проблему удается упростить или даже точно решить, произведя над ней некоторые преобразования "в формулах". Хороших специализированных программ было, есть и будет очень много.
Однако значительная часть исследователей хотела бы иметь универсальную вычислительную программу - "на все случаи жизни". Какую? Могучую и в численном счете, и в алгебре, и в графике. С удобным современным многооконным графическим интерфейсом. С гибким и выразительным встроенным языком программирования, позволяющим определять новые объекты и функции, писать программы и пакеты и управлять свойствами интерфейса. С богатым набором встроенных функций и уже готовых специализированных пакетов. С удобным Help'ом, содержащим полную документацию "on-line". Со средствами связи с внешними приложениями и библиотеками программ. И чтобы ядро программы базировалось на самых быстрых, мощных и свежих математических алгоритмах. И чтобы интерфейс поддерживал на экране и на печати привычные двумерные математические обозначения со степенями, индексами, дробями, радикалами, греческими и готическими буквами, иероглифами, цветом и всеми возможностями форматирования текста, формул и графики, а "не для печати" - еще и анимацию со звуком. Мало? Ну так пусть этот суперпродукт будет истинно многоплатформенным: одинаковый интерфейс и набор команд ядра, одинаковая структура каталогов и формат файлов, абсолютная переносимость программ и документов на более чем 20 платформах - от Win95/NT до NextStep, от Linux до MacOS, от Sun OS до SG IRIX, от HP UX до IBM AIX. Размечтались? Нет, это было перечисление некоторых свойств 3-й версии программы Mathematica - флагманского продукта компании Wolfram Research. Поскольку данная статья - о самой компании, то о Mathematica пока хватит. Эта замечательная программа заслуживает особого разговора в ближайшем будущем.
Компания Wolfram Research располагается в небольшом городе Шампейн штата Иллинойс и имеет европейское отделение в Оксфордшире (Англия) и азиатское в Токио. Компания была основана в 1987 году Стивеном Уолфрэмом (Stephen Wolfram), остающимся ее бессменным руководителем. Уолфрэм - личность очень яркая и неоднозначная (потому подробнее о нем - в другой раз). Он родился в Лондоне в 1959 году и получил элитарное образование: сначала в Англии - в Итоне и Оксфорде, затем в США - в Калтехе. Вундеркинд: первую научную статью опубликовал в 15 лет, а степень Ph.D. получил в 20. Физик-теоретик, работал в Калтехе, Принстоне и Университете штата Иллинойс. Первую попытку создания коммерческого ПО предпринял с 1979 по 1981 год: это была SMP - Symbolic Manipulation Program. Сам Уолфрэм причиной провала SMP называет трения с администрацией Калтеха по правам собственности, но совершенно очевидна другая причина: он нескромно назвал SMP "первой в мире системой компьютерной алгебры", а к тому времени аналогичный заслуженный REDUCE перевалил уже за 15-летний возраст. Разработку Mathematica Уолфрэм начал в конце 1986 года, в следующем году создал свою компанию, а 23 июня 1988 года выпустил 1-ю версию программы. Конечно, слишком поспешные и чересчур восторженные отзывы о Mathematica Уолфрэму пришлось просто купить, но очень скоро ситуация изменилась в сторону самого искреннего восторга. Ученые и инженеры полюбили эту программу, объединившую "в одной коробке" средства для всех типов вычислений вместе с удобным и ясным языком программирования, который способен стать FORTRAN'ом XXI века. Вышедшая в 1991 году 2-я версия Mathematica расширила вычислительное ядро и добавила знаменитый графический интерфейс "notebook", чем заметно опередила конкурентов. А вот 3-й версии пользователи дожидались мучительно долго: компания проделала огромную работу по модификации почти всех алгоритмов ядра и полному обновлению интерфейса, а сам Уолфрэм в это горячее время отвлекался на научные дела, пока не запахло паленым... Вот и появилась Mathematica 3.0 только в 1996 году, довольно-таки "глючная" и с годовым опозданием. Однако все ей были очень рады, кроме конкурентов и иже с ними, потому что она - опять самая умная и самая красивая в ряду тех немногих программ, что дерзнут с ней сравниться.
Что же делают более двухсот человек, работающих в Wolfram Research? Системные администраторы поддерживают работу 550 компьютеров, от ноутбуков до рабочих станций, необходимых для развития Mathematica и ее тестирования на более чем 20 платформах. Библиотекари "перелопачивают" горы публикаций в поисках самых новых математических алгоритмов. Группа разработчиков алгоритмов берет все лучшее бесплатное математическое из опубликованного всем человечеством и превращает в "зеленое шуршание", в товар, то есть пишет и модифицирует код Mathematica и основанных на ней продуктов, совершенствует интерфейс, а также участвует в презентациях, лекциях и конференциях. Эти же люди анализируют и устраняют "баги" собственного производства, на которые им указывают как штатные тестеры, так и пользователи через группу поддержки. Ясно, чем заняты технические писатели, корректоры и графические дизайнеры: документация и коробки у Wolfram Research очень хороши. Штат поддержки сторонних разработчиков помогает тем многим, кто пишет прикладные пакеты и учебные курсы, основанные на Mathematica, и книги о ней. Кстати, таких книг - уже полторы сотни на 20 языках; плюс к этому десятки пакетов и курсов; и еще есть майки, шапочки, шарфы, чашки, мышиные коврики (и чуть ли не тараканьи тапочки) с символикой Mathematica. Всего же производственный и торговый персонал компании имеет дело с более чем 300 инвентарными наименованиями. А по дорогам Америки и Европы курсируют два ярких рекламных фирменных автофургона, которые развозят по университетам, колледжам и исследовательским центрам лекторов, литературу, сувениры и хорошую идею о том, что всем ученым и инженерам пора уж попробовать Mathematica, чтобы осознать, что жить без нее и дальше можно, но только в порядке мазохизма.
Не буду распространяться об учебных курсах, основанных на Mathematica: в них, на мой взгляд, больше рекламно-коммерческого угара, чем педагогической целесообразности. А вот о нескольких десятках прикладных пакетов, составляющих "The Mathematica Applications Library", рассказать следует. Эти пакеты пишутся как специалистами Wolfram Research, так и сторонними производителями при поддержке компании. Каждый пакет использует Mathematica в качестве мощного универсального "движка", но существенно расширяет набор ее встроенных функций и изменяет свойства интерфейса таким образом, чтобы наиболее полно соответствовать потребностям конкретной группы пользователей. Вот несколько примеров. Optica: линзы, призмы, зеркала, световоды, лазеры и все необходимое для конструирования и анализа оптических систем, от телескопа до спектроскопической установки. Scientific Astronomer: карты неба с 9000 звезд, орбиты планет и комет, затмения, поверхности Луны и Марса, Красное Пятно Юпитера, луны Сатурна и все астрономические вычисления. Dynamic Visualizer: сложную нелинейную динамику легче понять, если посмотреть на цветную 3D-картинку. Conix 3D Explorer: просто Open GL плюс Mathematica. Technical Trader, Finance Essentials и Mathematica in Finance: торговать надо с умом, а деньги счет любят. Geometrica: кое-кто жалуется, что Mathematica якобы не знает элементарной геометрии. MathTensor: для самых "крутых" геометров и гравитационистов. InterCall: если нужно обратиться к библиотекам численных программ IMSL, NAG, LINPACK и др. Structural Mechanics и Mechanical Systems: как себя чувствует двутавровая балка, завязанная морским узлом, или колесо в эксплуатационном режиме "то-яма-то-канава"? Signals and Systems и Electric Engineering Examples: ясно, это для членов IEEE и их друзей. MathLink for Excel и то же для MS Word: чтобы работать с Mathematica изнутри продуктов Microsoft. И еще много других пакетов - на любой вкус.
Компания Wolfram Research гордится тем, что ее Mathematica работала на борту орбитальной станции "Мир", исправляла ошибки в учебниках экономики или конструировала велодром для Олимпиады'96 - чемпионы и не догадывались, что носятся по интегралам Френеля. Точно так же человек, покупающий шампунь в бутылке замысловатой формы или рубашку с загадочным сюрреалистическим рисунком, не догадывается ни о том, что форму и рисунок сгенерировала Mathematica, ни о том, насколько весь окружающий его мир пропитан математикой - с малой буквы. Нет, математику не сделали в Wolfram Research: такое не по силам двум сотням людей среднего возраста 29 лет. В этой компании берут даром уже готовую математику - плод многотысячелетних усилий лучших умов человечества - и превращают ее в отличную коммерческую компьютерную программу с до горечи похожим названием. Ну что же, если такое делать можно, то нужно делать это лучше всех.
Сергей СЕРЫЙ
Горячие темы