Но пойдем дальше. Такая штука, как «виджет» [Подробнее о концепции виджета см. Тимофей Бахвалов, «Столовые приборы» («КТ» #621 или offline computerra ru/2006/621/247558)] (он же, по версии Google и Microsoft, «гаджет» – в контексте «desktop gadget» или «web gadget»), – маленькое окошко с небольшим количеством элементов, запускается либо на рабочем столе, либо на популярной в последнее время «персональной домашней странице» (например, google com/ig или netvibes). «Движок для виджетов» встроен в последние версии Google Desktop и Opera, да и в самой Vista он есть; под Маком виджеты – уже давно неотъемлемая часть окружения; есть свои решения и для Linux’овых десктопов. Технология создания виджета – как правило, опять же простой язык разметки на основе XML (или HTML) + JavaScript (иногда другой скриптовый язык, например Python).

Можно ли эти виджеты, которые уже кто только не делает кустарно, считать полноценными программами? Существующие варианты – «часики» да «блокнотики» – может, и не стоит (хотя, наверное, по low-end шароварному рынку и эти «поделочки» ударили болезненно). Но как только виджеты научатся «соединяться в цепочки», передавая друг другу примитивные потоки данных (аналогично помянутым Yahoo! Pipes)… Интересно будет узнать, скольким пользователям пачка таких «недо-программ» (одна получает почту, другая показывает, третья статистику строит, четвертая в блог постит) прекрасно заменит современный зоопарк десктопных монстров. Не зря ведь Apple, считающая себя родоначальником идеи «настольного виджета», не планирует пускать на свой iPhone полноценные сторонние приложения – при том, что виджеты на нем вполне будут работать [Можно еще вспомнить такую штуку, как Opera 9 for Devices, тоже поддерживающую все те же виджеты и превращающую разработку простого ПО для встраиваемых устройств в занятие для «простого смертного»].

Из технологий программирования уровня «просто человека, а не разработчика» можно еще вспомнить Flash с его всеохватностью – от мультиков и YouTube-роликов до крутейших игр, а ныне агрессивно продвигаемый еще и как «более красивый и быстрый интерфейс для веб-приложений». Да и встроенный в SecondLife скриптовый язык для «оживления объектов», думается, используют не только (и не столько) профессиональные разработчики.

Это перечисление можно было бы продолжать, но идея уже и так понятна.

Возвращаясь к «платформам для всех», заметим, что к ним можно отнести и современные веб-фреймворки толка Ruby on Rails: точно так же они обеспечивают полный набор основных сервисов и типичных задач; точно так же для разработки простого приложения можно практически не знать Ruby (или Python, если речь о Django, или Groovy, если о Grails), ориентируясь на простые примеры и руководства для новичков. И даже.Net/JVM до некоторой степени представляет собой такую «платформу» [Тут можно привести в пример проект AnAppADay com, автор которого решил провести эксперимент и написать за тридцать дней тридцать несложных, но полноценных программ на C# 2.0; и действительно, целый месяц раз в день выдавал законченные программы– не слишком примечательные, но сравнимые с теми, что пару лет назад гордые авторы-шароварщики толкали по $19,99].

Представляется, что «десктопная система будущего» – это всего несколько «программ» в старом смысле слова (серьезных систем, написанных на эффективных языках подготовленными командами-«колхозами» профессионалов), населенных бессчетными мелкими «штучками на все случаи жизни» и тесно переплетенных с десятками веб-приложений [Веб при этом может разделиться на два разных «Веба»– старый (тексты, связанные ссылками) и новый (программы, активно работающие и на сервере, и на клиенте). Кое-кто даже предлагает ввести новый протокол HATP (HyperApplication Transfer Protocol в пику HyperText Transfer Protocol)]. К примеру, разработчики из Mozilla такие перспективы внимательно оценили: для Firefox 3 запланирована возможность работы с веб-приложениями при отсутствии подключения к Интернету (то есть «подключились к сайту приложения, загрузили его, отключились, но можем продолжать работать»), что подчеркивает роль этого приложения как платформы, а не просто «смотрелки страничек» [Кстати, каким бы фанатом «Огнелиса» ни выглядел автор, для повседневной работы он таки предпочитает «Оперу»].

О раскулачивании колхозов

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

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

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

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

Ценны и те и другие. Но жизнь у них – разная.


Платформы и платформочки

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

Что объединяет расширения Firefox, виджеты Google Desktop, Flash-игрушки? Главным образом – доступность. Она достигается за счет «несерьезного подхода к программированию», отталкивающегося от простой (но новой) идеи и красивого дизайна [Большинство пользователей новых виджетов и сервисов относятся к категории early adopters, энтузиастов; но это уже другие early adopters чем те, кто поддерживал ИТ-прогресс, скажем, лет 15 назад. Это уже не опытные технари, а как бы «простые» пользователи, которым не нужно много возможностей, но нужны «фишечки» (они готовы терпеть скорее здоровски прорисованный сервис с единственной функцией, нежели мощный двигатель в уродливом корпусе)]: разметка, стиль, иконки, ну и пара строк кода. Это, конечно, утрировано – штука вроде Firebug содержит несколько больше, чем «пару строчек кода» – но показывает суть: внешнему виду уделяется внимание на ранних этапах разработки, а код максимально «предметен», оставляя все служебные задачи (управление соединениями, контроль безопасности, высвобождение памяти, конвертацию данных) на долю «платформы»[То есть, соответственно, Firefox’а, Google Desktop’а и т. п.]. Входная планка для прото-программиста резко снижается: не нужно особо заботиться ни об ошибках, ни о сохранности пользовательских данных – ничего критичнее «соединение не может быть установлено» «платформа» сделать просто не позволит; не нужно даже глубоко знать и понимать язык разработки, достаточно иметь справку по нескольким необходимым командам.

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



Обобществленные истины

Автор: Ваннах Михаил

«Это верно, что в руках (у товарища Берии) дирижерская палочка. Прекрасно, но ученый все же должен играть первую скрипку, потому что скрипка его задает тон всему оркестру. Главный недостаток товарища Берии в том, что дирижер должен не только размахивать палочкой, но и понимать что к чему. Именно этого Берии не хватает».


П. Л. Капица, письмо И. В. Сталину от 25 ноября 1945 года


ФАКТ

Национальная лаборатория Эрнста Орландо Лоуренса в Беркли, Калифорния, США, основана в 1931 году и ведет нережимные работы.

Штат – 4000 человек.

Занимаемая территория – 80 га.

Бюджет – $500 млн.

Несмотря на более скромные по сравнению с Лос-Аламосом, из Лоуренсовской лаборатории (ею управляет не правительство, а Калифорнийский университет) вышли одиннадцать нобелевских лауреатов.


Вот слепой Гомер. Вот «Одиссея». Вот и сам благородный царь Итаки, странствующий по свету после разрушения святого Илиона. А вот далеко не полный перечень знаний и умений сына Лаэрта:

«Начал рубить он деревья и скоро закончил работу;

Двадцать он бревен срубил, их очистил,

их острою медью

Выскоблил гладко, потом уравнял, по снуру обтесавши.

Тою порою Калипсо к нему с буравом возвратилась.

Начал буравить он брусья и, все пробуравив,

сплотил их,

Длинными болтами сшив и большими

просунув шипами;

Дно ж на плоту он такое широкое сделал, какое

Муж в корабельном художестве опытный,

строит на прочном

Судне…»

То есть глава государства владеет и навыками лесоруба, и корабельного плотника, и – даже! – опытного судостроителя, сведущего в корабельной архитектуре. А прекрасная нимфа Калипсо не брезгует подсобными работами, поднося Одиссею инструмент. И поскольку —

«Радостно парус напряг Одиссей и, попутному ветру

Вверившись, поплыл. Сидя на корме и могучей рукою

Руль обращая, он бодрствовал; сон на его

не спускался

Очи, и их не спускал он с Плеяд,

с нисходящего поздно

В море Воота, с Медведицы, в людях еще Колесницы

Имя носящей и близ Ориона свершающей вечно

Круг свой, себя никогда не купая в водах океана» —

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

«Разом и Евр, и полуденный Нот, и Зефир, и могучий,

Светлым рожденный Эфиром, Борей

взволновали пучину…»

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

Много позже, на рассвете европейской науки, ум ученого тоже мог вместить практически все ее ветви и отрасли. Так было долго – от Аристотеля до «Аристотеля XIX столетия» – Александра-Фридриха-Вильгельма фон Гумбольдта (Humboldt, 1769—1859). Древние языки, археология, ботаника, горное дело, животное электричество, то есть прохождение сигналов по нервам, вулканология – в этих науках он не просто блистал, он порой создавал их, опережая современников на десятилетия. Его путешествия привели ко Второму, или же подлинному, НАУЧНОМУ, открытию Америки.

В 1829 году по просьбе российского правительства, выделившего на это 3200 червонцев, Гумбольдт путешествует по Уралу, Сибири, Каспию. А венчает его труды и жизнь пятитомный (последний том не завершен) «Космос», вышедший в 1845—1857 гг. и переведенный на многие европейские языки. Уникальный свод научных знаний середины XIX столетия, составленный крупнейшим ученым, сведущим почти во всех из них. Впрочем, чему удивляться – это было время универсалов…


Большая наука. Управление кадрами. Девятнадцатый век

Большой науки еще не было, но крупные научные учреждения уже были. В том числе и в России. Скажем, Главная физическая обсерватория Академии наук. С 1868 года этим учреждением заведовал уроженец Швейцарии, член Императорской Академии наук Генрих Иванович Вильд [Именно он, будучи членом Международной электрической комиссии, дал определение единицы сопротивления – ом].

Им в 1876 году была построена образцовая магнитная и метеорологическая обсерватория в Павловске, расширена находившаяся в ведении Главной физической обсерватории метеорологическая сеть. Благодаря Вильду число метеорологических станций в России увеличилось с 30 в 1868 году до 1035 (!) в 1890 году.

Предпринимал Генрих Иванович меры и к организации труда своих многочисленных ученых. Он ввел Tagenbuch’и [Отметим, что, находясь на российской госслужбе в чине тайного советника, Вильд все делопроизводство учреждений вел на немецком…], дневники, в которых каждый сотрудник обсерватории должен был указывать свои занятия. И вот что рассказывает о результатах попыток Вильда упорядочить труд ученых академик, генерал-лейтенант флота Алексей Николаевич Крылов, принявший Обсерваторию в 1916 году.

«Вернусь к Г. Вильду. Весьма характерен также «Tagenbuch». Каждый служащий должен был заносить в соответствующую графу то, что он делал. Но догадлив наш брат моряк. Служил в обсерватории при Вильде лейтенант И. Б. Шпиндлер, который затем был штатным преподавателем и в Морской академии и в Морском корпусе. По совместной с ним службе я его знал. Так он в вильдовский дневник вписывал по-немецки: «Habe Humboldts “Kosmos” studiert und darueber nachgedacht», то есть «изучал «Космос» Гумбольдта и размышлял над этим» или «Изучал теорию земного магнетизма Гаусса и размышлял по этому поводу»… и везде стояла одобрительная птичка Вильда.

Так как размышление никаких видимых знаков не оставляет, то, конечно, при всей своей учености Вильд не мог установить, о чем Шпиндлер размышлял, а знавшие Шпиндлера могли с уверенностью сказать, что размышлял он не о Гумбольдте и Гауссе, а о том, как назначил малый шлем в бубнах и остался без пяти» [А. Н. Крылов, «Мои воспоминания», Л., 1979. (Крылов рассказывает и о вычислительных работах Вильда, о гармоническом анализе наблюдений, попытках разложения по шаровым функциям. Абсолютно характерные для современной вычислительной техники задачи.)].




Век специалистов

ФАКТ

Национальная лаборатория в Лос-Аламосе, Нью-Мексико, США, основана в 1943 году для режимных работ.

Штат – 12500 человек.

Занимаемая территория – 5720 га.

Бюджет – $2,2 млрд.


К веку двадцатому сумма знаний, накопленных человечеством, превысила возможности даже самого выдающегося ума. Отдельные отрасли, скажем физика, казались еще вполне обозримыми и даже завершенными, но… заблуждение развеялось быстро – даже у Эйнштейна были весьма непростые отношения с квантовой механикой. А «Техническая энциклопедия», выходившая в СССР в 1927—1936 годах, – это уникальный памятник эпохи, когда всякий раздел технологии был доступен практически любому инженеру. Уже через десяток лет дифференциация знаний, сопровождающая их накопление, сделала это невозможным. Некоторая осведомленность об успехах смежных наук, достигаемая в результате даже самого усердного чтения литературы, не более чем иллюзия. Парадигмы наук, их методы (ведь еще Лейбниц говорил, что «есть вещи поважнее самых прекрасных открытий – это знание метода, которым они были сделаны»), остаются вне рассмотрения. На это просто не хватает сил…

И вот – Первая мировая [Кстати говоря, бесплатная Вики, в отличие от Британники, возводит историю Большой науки именно к Первой мировой (Big Science – Wikipedia). Это к тому, что у проприетарных источников знаний в наше время появилась серьезная и бесплатная альтернатива]. «Настоящий Двадцатый Век» – как назвала Анна Ахматова этот небывалый шторм, до основ потрясший мироустройство европейской иудеохристианской цивилизации. И вот тут-то четко прорисовалось появление на исторической сцене социальных и технологических Больших Систем: Большой политики [Политики и дипломаты (Европа тогда была преимущественно монархической) вели привычную Большую Игру. Но только сходились в ней не профессиональные армии королевств и империй, а целые нации. Одетые в хаки, фельдграу, отечественные серые шинели…], Большой промышленности, Большой экономики и Большой науки.

Причем, как и подобает Большим сущностям, явление Большой науки не заметить было невозможно: во времена Первой мировой Большой наукой была химия. Придуманный Нобелевским лауреатом Фрицем Габером способ производства азотных соединений из атмосферного воздуха в изобилии обеспечил кайзеровскую армию взрывчаткой и порохами (на удобрения ресурсов не хватало – дети в Германии рождались без ногтей…). Затем тот же Габер предложил использовать хлор для удушения солдат Антанты. И – понеслось… Хлор в смеси с фосгеном. Синильная кислота с треххлористым мышьяком. «Синий крест» – так маркировались германские снаряды со смесью дифенилхлорарсина, который вызывал кашель, заставляя солдат сбрасывать противогазы, и удушающего их фосгена. Затем – германский Lost, бетабеташтрих-дихлордиэтилсульфид, прозванный отведавшими его сполна французами, ипритом; не менее насладившиеся им британцы звали его горчичным газом. США, вступая в войну, срочно создают жуткий Эджвудский арсенал, рассчитывая на запасы которого, Антанта планировала перейти в 1919 году к массовым атакам крупнейших германских городов с использованием ОВ.

С другой стороны – противогазы. Противодымные фильтры. Защитная одежда.

И – параллельно – краски для флота и лаки для авиации.

А еще – металлургия. Стали и сплавы.

И – молниеносное совершенствование авиационной техники. Новые модели «Фоккеров», «Ньюпоров», «Де Хевилендов» появляются каждые три месяца. Не менее стремителен прогресс авиамоторов. И – средств связи. И – наблюдения. И – первых корабельных баллистических вычислителей.

Но ни одно средство нападения не превратилось в меч Зигфрида. Ни одно средство защиты не стало щитом Ахилла.

Впрочем, сам термин «Большая наука» появился позднее… «Big Science» был впервые употреблен в 1961 в журнале «Science». Тогда Элвин Вайнберг (Alvin Weinberg, 1915—2006), крупный физик, создатель энергетических реакторов большой мощности, и не менее крупный администратор – директор Окриджской Национальной лаборатории, – опубликовал статью «Impact of Large-Scale Science on the United States» («Влияние крупномасштабной науки на Соединенные Штаты»). По Вайнбергу «классическая» Большая наука началась с проектов, оплаченных в ходе Второй мировой войны правительством Соединенных Штатов. Это проект «Manhattan» и менее известный проект Лаборатории излучений (Radiation Laboratory), центра радарных исследований Массачусетского технологического института [Использование радаров было одной из важнейших причин победы Объединенных наций во Второй мировой, точнее – одним из важнейших путей, по которым реализовывалось экономическое и научное преимущество держав антигитлеровской коалиции. Битва за Англию, разгром фашистского флота у мыса Матапан, охота на надводные рейдеры нацистов – «Бисмарк», «Шарнхорст» (радиолокаторы тогда носили британское прозвище RDF, Radio Direction Finding)…].

То, что современная эпоха есть эпоха Большой науки, сегодня знают практически все. Даже те, кто ограничивается СМИ общего назначения, слышали кое-что о телескопе Хаббла и о расшифровке человеческого генома. А кто совсем не читает газет и журналов, мог видеть в голливудских лентах радиотелескоп в Аресибо. Не только в «Контакте» по Карлу Сагану, но и в похождениях Бонда, Джеймса Бонда…

Как обычно определяют основные признаки Большой науки?

– большой бюджет, куда больший, чем могли дать филантропия или даже промышленность;

– большие штаты – количество ученых возрастает такими темпами, что уже создает трудности в управлении такими коллективами; [Впрочем, задача управления коллективом, занятым в проекте Большой науки, достаточно тривиальна. Тривиальна не в том смысле, что легко решаема, а в том, что на удивление традиционна. И здесь та же неразбериха, та же грызня, игра амбиций и уязвленных честолюбий, склоки, служебные романы. К тому же, если занятый в Большой науке коллектив организован правильно, большую часть его составляет вспомогательный персонал, управление которым неплохо описал Тейлор – отец научной организации труда, систему которого не раз упрекали в бесчеловечности. А научные коллективы, составленные сплошь из научных работников, мы наблюдали на закате СССР. Но об успехах подобных коллективов автор ничего не слышал. Успехи же одиночек, выбравшихся из таких клоак и встроившихся в мировую науку, – это совсем другая история, о человеческой воле и нонконформизме…]

– большие инструменты – первым из них считается циклотрон Эрнста Лоуренса в его Лаборатории излучений;

– большие лаборатории. Увеличение размеров и стоимости научных приборов приводит к появлению гигантских лабораторий. Таких как Лоуренсова Национальная лаборатория в Беркли, CERN или Объединенный институт ядерных исследований советской эпохи.

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


Большая наука – Большие телескопы

Европейская наука, породившая НТР, стартовала тогда, когда Галилео Галилей усовершенствовал и направил на небо изобретенную самоучкой Яковом Метиусом зрительную трубу – первый телескоп [Вот это – наука малая. Делающаяся одиночкой. Легко воспроизводимая. Лет сорок назад «Пионерская правда» учила, как сделать Галилеев телескоп из «плюсовой» и «минусовой» очковых линз, приклеенных к трубке из зачерненных изнутри газет. Получалось вполне адекватно]. Эпохальные открытия – горы Луны, фазы Венеры, спутники Юпитера.

Но еще до Галилея был «нулевой цикл» европейской науки. И относился он, скорее, к науке Большой. Это – Ураниенборг на острове Гвеен в Зундском проливе. Датский король Фридрих II подарил его Тихо Браге (1546—1601) и субсидировал возведение Небесного города. Весьма дорогого. Один лишь колоссальный медный небесный глобус стоил пять тысяч талеров. И не дешевле были гигантские бронзовые угломерные инструменты, с помощью которых велись наблюдения высочайшей точности. День за днем. Год за годом. Именно те, которые позволили Кеплеру вывести его законы. И работал в Ураниенборге внушительный коллектив. Включая, собственно, и самого Кеплера.

Выполнить такие работы одиночка не мог. Уже в шестнадцатом веке они требовали королевского бюджета.

Да и Галилей нуждался в господдержке – вспомним имя, данное им спутникам Юпитера, – Медицийские звезды, в честь тамошнего суверена.

Телескопы долго, до конца девятнадцатого века, были по карману отдельным людям. Правда, к концу этого времени, лишь богатейшим меценатам – риэлтеру Лику, построившему обсерваторию Калифорнийского университета с 36-дюймовым рефлектором, трамвайному магнату Йерксу, благодаря которому Чикагский университет обзавелся рекордным 40-дюймовым рефрактором.

Фонд Хукера, лос-анджелеского бизнесмена, приобрел для обсерватории Маунт Вилсон 100-дюймовый рефлектор. Именно на нем Бааде выполнил наблюдения внегалактических туманностей.