Why Java is HOT: к 30-и летию Java

Вместо введения

...
Новый революционный инструмент программирования от Sun может изменить баланс сил в компьютерной индустрии
— Philip Elmer-Dewitt
У компании Sun Microsystems была проблема. Один из её самых талантливых разработчиков создал новый язык программирования под названием Oak, который, казалось, никому не был нужен. Изначально разработанный под ПО для управления микросхемами в микроволновых печах и других современных бытовых устройствах, язык за последние пять лет несколько раз перерабатывался — для кабельных ТВ-приставок, игровых консолей и CD-проигрывателей. Но каждый раз, когда казалось, что Oak наконец-то нашел свою нишу, сделка по каким-то причинам срывалась.
Даже его название стало проблемой: его нельзя было зарегистрировать как товарный знак, потому что сотни компаний уже использовали это имя. В итоге Sun решила, что лучшее, что можно сделать для Oak, — дать ему новое имя и распространять бесплатно. Так язык получил название Java (жаргонное слово для кофе, отсылающее к временам, когда лучшие сорта выращивали в Индонезии, а не в Сиэтле) и стал доступен в Интернете безвозмездно.
Звёзды Java: программист Джеймс Гослинг создал Java; инженер Артур ван Хофф доказал её мощь, написав на Java её же интерпретатор; гениальный маркетолог Ким Полиз руководила компанией по распространению языка, добившись быстрого признания благодаря бесплатной модели использования.
Семь месяцев спустя, ко всеобщему удивлению, включая Sun, Java стала самой популярной технологией в киберпространстве. Более 100 000 ее копий скачали разработчики, жаждущие опробовать язык, который обещал передавать программы по сети так же легко, как электронную почту или изображения.
Сотни небольших Java-приложений (названных «апплетами») начали появляться во Всемирной паутине. На одном сайте собрано более 700 рабочих апплетов — от анимированных танцующих персонажей и дымящихся чашек кофе до клонов игр вроде Pac-Man и Missile Command. Крупные интернет-площадки, включая e|net и Pathfinder от Time Warner, используют Java-апплеты для отображения в реальном времени бегущих строк с новостями.
Но Java — больше, чем просто способ оживить веб-страницы. Новостные ленты и анимация — лишь вершина ее возможностей. Хотя сегодня Java интересна в основном программистам, в ближайшие годы она может перевернуть всю компьютерную индустрию, изменив не только стоимость и форму компьютеров, но и саму концепцию того, каким должен быть компьютер.
С Java данные и программы — два столпа вычислительной техники — больше не нужно хранить на вашем компьютере. Они могут находиться где угодно в Интернете, и быть доступными в любой момент для всех, кто в них нуждается. Это достижение может наконец воплотить в жизнь загадочный слоган Sun: «Сеть — это компьютер».
«Каждые 10–15 лет происходит смена парадигмы, — говорит Марк Андреессен, пионер веба и сооснователь Netscape. — И мы сейчас как раз живем в такое время перемен».

Marc Andreessen
Co-founding of Netscape
Ключевая особенность Java — её способность работать одинаково легко на разных операционных системах: Windows 95, Macintosh и различных версиях Unix. Java создаёт так называемую «виртуальную Java-машину» внутри каждой из этих систем, решая раздражающую проблему, преследующую программистов с зарождения компьютерной эры — несовместимость. Именно из-за несовместимости программа, написанная для Windows, не работает на Mac, и наоборот.
«Java уравнивает возможности, — говорит Скотт Макнили, председатель Sun. — Вы пишете программу один раз, и она работает везде. Он добавляет с намёком: Это может сильно усложнить жизнь некоторым крупным компаниям-разработчикам ПО».

Scott McNealy
CEO Sun
Никому в компьютерной индустрии или на Уолл-стрит не нужно объяснять, какую компанию Макнили имеет в виду. Microsoft, как крупнейший в мире производитель ПО для ПК, рискует больше всех, если новый, независимый от него язык программирования завоюет популярность. Microsoft контролирует не только ОС для 80% настольных компьютеров, но и рынок ПО — от прикладных программ (текстовых процессоров, электронных таблиц, энциклопедий) до языков программирования и широкого спектра инструментов программирования. Всё это окажется под угрозой, если Java получит широкое распространение.
«Java, — заявил председатель совета директоров Microsoft Билл Гейтс в прошлом месяце, — существует для того, чтобы разрушить то, что мы создали».

Bill Gates
Co-founding of MS
Для многих программистов, которые всегда ищут «новую платформу» для создания популярного ПО, это не обязательно плохо.
Виртуальная Java-машина, по словам сооснователя Sun Билла Джоя, — «самая легковесная платформа из всех существующих: она состоит не из металла и кремния, а из нескольких тысяч строк кода».

Bill Joy
co-founder of Sun
«Гики в восторге, — говорит Дейв Вайнер, программист из Кремниевой долины. — Как будто перед нами открылся целый новый мир».
Энтузиазм таких людей, как Вайнер, критически важен. Миллионы, которые Microsoft потратила на продвижение Windows 95 прошлым летом, были направлены не только на пользователей, но и на разработчиков. Ни одна компания, даже Microsoft, не может создать всё необходимое ПО в одиночку, поэтому производители компьютеров вечно борются за сердца и умы программистов.
Одно из самых жарких сражений последних месяцев разгорелось вокруг веб-браузеров, где соревнуются Microsoft, Netscape и Sun. Кульминация наступила в первую неделю декабря, когда Sun и Microsoft провели независимые пресс-конференции. Sun выступила первой, объявив длинный список компаний, которые согласились внедрить Java в свои продукты, включая IBM, Apple, DEC, Adobe, HP, Oracle и Toshiba.
Все ожидали, что Microsoft нанесет ответный удар, подтвердив намерения в продвижении своего аналога Java — языка Visual Basic. Но в последнюю минуту Гейтс передумал, объявив, что он тоже будет лицензировать Java, а также несколько угрожающе пообещав «расширить» его.
Это был мастерский ход, позволивший Microsoft прикрыться Java и в то же время проколоть чрезмерно раздутый пузырь акций Netscape. Рынок отреагировал бурно. Цена акций Sun резко подскочила; Netscape упала за день более чем на 28 долларов (18%).
Основатель Netscape Марк Андреессен воспринял выход Microsoft на рынок как вызов. «Когда сражаются медведь и аллигатор, — заявил он, — победителя определяет местность. Microsoft просто пришла на нашу территорию».
В Microsoft отмахнулись от таких заявлений, назвав их бравадой. «Поддержка Java — это как пупок: она будет у всех», — говорит Роджер Хайнен, вице-президент Microsoft по работе с разработчиками.
Но создание «пупков» не было целью Джеймса Гослинга в 1990 году, когда он начал работать над языком Oak (названным в честь дерева за окном его офиса). Как опытный программист, он хотел, чтобы микропроцессоры в бытовой технике (телевизорах, видеомагнитофонах, автомобильных сигнализациях) могли «общаться» друг с другом. Для этого требовался код, который был бы не только компактным, но и с защитой от «дурака» — в отличие от пользователей ПК, обычные пользователи не ожидают, что их тостеры будут зависать.
По мере того как Oak, или, точнее, Java, претерпевал многочисленные изменения, некоторые принципы оставались неизменными. Это должен был быть полностью современный язык программирования, воплощающий все основные достижения последней четверти века. Он должен был быть объектно-ориентированным, заставляя программистов писать небольшие, самодостаточные модули, которые можно соединять друг с другом, как блоки Lego. Он должен был быть надежным, то есть устойчивым к сбоям, обходясь без многих стандартных инструментов программирования, которые дают разработчикам гибкость, но могут приводить к непредсказуемым результатам.
Наконец, он должен был быть безопасным — даже во враждебной среде интернета, кишащей хакерами и вирусами. Прежде чем выполнить любую строку кода, Java проверяет, является ли команда допустимой, используя мощное шифрование, чтобы убедиться, что программа не была изменена.
При всех своих достоинствах Java могла бы остаться незамеченной — как и полдюжины других современных языков — если бы не новаторский способ её распространения, который выбрала Sun. Увидев, как Netscape захватила 70% рынка веб-браузеров, просто раздавая своё ПО бесплатно, Sun приняла ту же «партизанскую» тактику: выпустила скромный пресс-релиз и позволила сарафанному радио в интернете сделать всё остальное.

Это был знакомый приём для Билла Джоя из Sun, который ещё в начале 1980-х способствовал развитию интернета, поставляя бесплатное ПО для интернет-протоколов с каждым компьютером Sun. «Мы знали: если выложить Java в сеть, она найдёт все щели и распространится повсюду», — говорит он.

Конечно, Sun ожидает, что её «партизанский» подход в конечном итоге принесёт прибыль. Более половины интернет-серверов — это машины Sun; всё, что увеличивает интернет-трафик (а Java определённо увеличит), неизбежно пополнит её доходы. Ещё более интересна с коммерческой точки зрения концепция интранета — внутренних корпоративных сетей, — который и Sun, и Microsoft рассматривают как перспективное направление роста.

Чтобы опередить главного конкурента, Sun на прошлой неделе создала новое подразделение JavaSoft под руководством Алана Барца, бывшего топ-менеджера IBM и президента Delphi Internet Services Corp. Руперта Мердока. Его задача — продвигать Java как в быстрорастущем интернете, так и в куда более прибыльных интранетах.

Ничто из этого не гарантирует успеха: несмотря на первоначальный энтузиазм, Java предстоит трудная борьба. Она работает медленнее традиционных языков, а библиотеки, упрощающие работу программистов, всё ещё создаются. Но Java предлагает потенциальным разработчикам то, чего нет в других средах: возможность полностью обойти посредников индустрии ПО.

«Эти гениальные Марки Андреессены будут ночами есть Twinkies, пить Jolt и писать на Java, — предсказывает Макнили из Sun. — Потом выложат что-то в сеть — и бац! Сарафанное радио!»

Главный трюк, который освоила Microsoft, но не Sun и Netscape, — найти способ монетизировать это.
Переводчик: Чимаев Максим
Оцените статью, если она вам понравилась!