Про тих, хто робить Математику
Візитна картка
Wolfram Research, Inc.
Рік заснування: 1 987
Засновник і президент: Стівен Уолфрем
Штаб-квартира: Шампейн, шт. Іллінойс
Персонал: більше 200 чоловік
Обсяг продажів: близько $ 100 млн. В рік
Флагманський продукт: Mathematica
WWW: www.wolfram.com
В кінці червня цього року в Чикаго відбувся ювілейний конгрес: програмі 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 років. У цій компанії беруть даром вже готову математику - плід багатотисячолітніх зусиль кращих умів людства - і перетворюють її в відмінну комерційну комп'ютерну програму з до гіркоти схожою назвою. Ну що ж, якщо таке робити можна, то потрібно робити це краще за всіх.
Сергій СІРИЙ
Для чого потрібні комп'ютери?Яку?
Мало?
Розмріялись?
Що ж роблять більше двохсот чоловік, що працюють в Wolfram Research?
Structural Mechanics і Mechanical Systems: як себе почуває двотаврова балка, зав'язана морським вузлом, або колесо в експлуатаційному режимі "то-яма-то-канава"?