Star7: с чего начиналась Java

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

В начале 90-х годов в Sun Microsystems, в 2010 году поглощенной Oracle, проводился ряд реформ, связанных с переопределением приоритетов компании. В результате преобразований появился так называемый Project Green, с которым связано создание языка Java. Java — это косвенный результат деятельности «Зеленого проекта»; изначально о разработке нового языка никто и не думал. Основной целью являлось создание универсального устройства, управляющего бытовыми приборами, — эдакого предка умного дома. Получившийся прототип гаджета назвали Star7, но широкой популярности он не сыскал. В статье пойдет речь об истории создания Star7, о том, почему идея такого устройства «не выстрелила», и как вспомогательный инструмент Java стал самодостаточным продуктом.

История создания

К реформам компанию Sun Microsystems подтолкнул один из сотрудников — программист Патрик Нотон. На тот момент Патрик планировал уйти в компанию NeXT. Тогда CEO Sun Microsystems и друг Патрика Скотт МакНили попросил его составить список того, что, по его мнению, Sun делает неправильно. Причем надо было не просто критиковать, а предложить решение без оглядки на корпоративные правила и традиции. В своем письме Нотон «разгромил» пользовательские интерфейсы Sun, которые считал убогими и неудобными для конечных пользователей, а также отметил растрачивание ресурсов на множество различных проектов, платформ и технологий вместо концентрации на чем-то одном. Письмо Патрика быстро разошлось среди управляющего состава и ведущих специалистов, и, к удивлению, с критикой согласились практически все.

Как уже отмечалось, одним из итогов реформ стал Project Green. Патрик Нотон остался в Sun Microsystems и присоединился к проекту. Также в команду попали Джеймс Гослинг, Майк Шеридан и еще 10 человек.

Команда Project Green
Команда Project Green

Первоначальная цель Project Green была неоднозначной и довольно амбициозной: создать что-нибудь необычное. «Пораскинув мозгами» команда проекта пришла к следующим основным концепциям:

  • во главе угла находится потребитель и его интересы;

  • задача: создание простого и удобного устройства, предназначенного для персонального пользования;

Со стороны Sun Microsystems проект получил практически полную свободу (как в идейном плане, так и в бюрократическом), конфиденциальность, пространство вне компании и миллион долларов на первый год. При этом проект оставался коммерческой историей, а не исключительно исследовательской: необходимо было создать продукт, на котором можно было бы заработать.

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

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

Сначала под разработку устройства принимались попытки модифицировать C++ и его компилятор, но быстро появилось понимание необходимости другого решения. Одно из основных достоинств C++ — это скорость работы. Однако для бытового устройства первостепенным является надежность, как у бытовой розетки или смесителя. Поэтому было принято решение о разработке нового языка программирования — Oak, который с 1995 году станет носить название Java. Помимо этого, в новом языке программирования можно было реализовать мультиплатформенность, которая упростила бы работу с множеством различных устройств. Уже через несколько месяцев разработали рабочую версию языка и с помощью неё реализовали некоторые программы для Star7.

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

Техническое описание устройства

4 сентября 1992 года команда завершила работу над прототипом и продемонстрировала гаджет МакНили. Star7 представлял собой небольшое устройство с 16-битным жидкокристаллическим дисплеем. Кнопок не было: взаимодействие с пользователем осуществлялось при помощи сенсорного экрана. Даже для включения устройства достаточно было просто коснуться до дисплея.

Размер Star7 относительно ладони

Пользовательский интерфейс выполнили в мультяшной стилистике: никаких скучных меню. По замыслу разработчиков, Star7 должен был стать любимой домашней «игрушкой» для управления бытовыми приборами, именно поэтому графический интерфейс старались сделать максимально привлекательным и забавным. Для этих целей команда создала персонажа по имени Duke, который выступал в роли программного агента, выполняющего команды пользователя. Всем настолько понравился этот персонаж, что впоследствии Дюк станет маскотом Java.

Дюк
Дюк

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

Пользовательский интерфейс Star7
Пользовательский интерфейс Star7

С точки зрения аппаратуры, устройство не имело аналогов, поэтому начинка создавалась с применением «технологии молотка». Разработчики находили какой-нибудь аппарат и извлекали нужную деталь или микросхему. Таким образом, Star7 получил жидкокристаллический экран, сенсорный экран и миниатюрные встроенные колонки. Центральный процессор и материнскую плату специально изготовили на основе высокопроизводительной рабочей станции Sun.

Star7 был не просто высокотехнологичным пультом для взаимодействия с телевизором. В девайсе имелся специальный инструмент под названием «белые доски» (white boards), с помощью которого можно было создавать рукописные заметки и перетаскивать их на другие устройства. Несмотря на то, что Star7 остался прототипом, так и не добравшимся до рынка, заложенные в устройстве идеи опережали свое время. Планы «Зеленого проекта» по созданию системы устройств, связанных по беспроводной сети, напоминают современный «Интернет вещей», а сам Star7 похож на планшетный компьютер, только для управления бытовой техникой. К слову, Apple Newton, один из первых PDA (карманный персональный компьютер), появился только через год и имел лишь монохромный дисплей.

Конечно, многое в Star7, что сегодня кажется революционным для начала 90-х, уже существовало долгое время до него. Так у HP был компьютер с сенсорным экраном в далеком 1983 году, а Psion продавала карманные компьютеры в 1984-м. Однако, как говорится, все новое — это хорошо забытое старое. На видео ниже Джеймс Гослинг, создатель языка Java, демонстрирует Star7 во всей его красе:

Что пошло не так

Представленный прототип превзошел все ожидания боссов Sun Microsystems. Помимо необычного устройства, компания получила язык Oak (будущий Java), уже на тот момент обещающий стать мощным инструментом для разработки проектов, ориентированных на работу с сетью и распределенную архитектуру. Настало время зарабатывать деньги, поэтому Sun учредило дочернюю компанию FirstPerson для продвижения новоиспеченных технологий на рынке. Проектом заинтересовались крупные производители: Mitsubishi Electric, France Telecom, Dolby Labs. Однако быстро оказалось, что себестоимость устройства, подобного Star7, превышала 50 долларов. Производители бытовой техники не были готовы переплачивать за «игрушку».

Затем группа стала заниматься созданием устройства для кабельного телевидения, которое могло бы осуществлять новые виды услуг, например, включать видеосистему по требованию. В то время многие в компьютерной индустрии заинтересовались идей интерактивного телевидения. Патрик Нотон, в то время занимавшийся по большей части маркетингом, в итоге налетал на самолете более 300 000 миль в попытках продать новые технологии. И снова провал: компания не получила ни одного контракта. Многие считали, что FirstPerson не имела дальнейших перспектив; идеи кончались, компания не имела ни одного партнера или клиента.

Дальнейшая судьба

Star7 провалился, платформу Oak, казалось, ждал такой же бесславный финал. Спасение пришло со стороны Всемирной паутины. В 1994 году в рамках Интернета начала развиваться система под названием World Wide Web. Ключевым элементом этой системы был браузер, превращающий гипертекстовые данные в изображение на экране. В интервью журналу Sun World Джеймс Гослинг сказал: «Нам нужно было создать высококачественный браузер. Такой браузер должен был представлять собой приложение, соответствующее технологии «клиент-сервер», в которой жизненно важным было именно то, что мы сделали: архитектурная независимость, выполнение в реальном времени, надежность, безопасность — вопросы, которые были не так уж важны для рабочих станций. И мы создали такой браузер».

Браузер Hotjava
Браузер Hotjava

В итоге Патрик Нотон и Джонатан Пэйн разработали браузер, который впоследствии был доработан и получил имя Hotjava. Отличительной особенностью было то, что он мог выполнять код на веб-страницах (апплеты). Продукт представили 23 мая 1995 года на выставке SunWorld. Браузер вызывал всеобщий интерес к Java, который сохранился и по сей день.

Апплет Jmol, с помощью которого можно лучше понять структуру молекулы (молекулу можно вращать и масштабировать)
Апплет Jmol, с помощью которого можно лучше понять структуру молекулы (молекулу можно вращать и масштабировать)

Кто знает, что было, если Star7 все-таки бы вышел на рынок? Был бы это революционный прорыв или второсортный продукт? Сегодня трудно ответить на эти вопросы. Впрочем, сам проект трудно назвать неудачным: именно благодаря ему мы получили платформу Java, которая остается актуальной и по сей день.

Источники
  1. https://intuit.ru/studies/courses/16/16/lecture/27105?page=2

  2. https://www.tech-insider.org/java/research/1998/05-a.html

  3. https://www.wired.com/2014/10/star7/

  4. Cay S. Horstmann Core Java. Volume 1 - Fundamentals

  5. https://gigazine.net/gsc_news/en/20141007-star7-pda/

Источник: https://habr.com/ru/company/timeweb/blog/574456/


Интересные статьи

Интересные статьи

Эта статья является конспектом книги «Принципы юнит-тестирования». Материал статьи посвящен интеграционным тестам.Юнит-тесты прекрасно справляются с проверкой бизнес-логики, но проверять ...
4 декабря 2020 года JavaScript исполнилось 25 лет. Автор материала, перевод которого мы сегодня публикуем, Даниэль Адамс, говорит, что этот язык повлиял на её карьеру, а так же — на профе...
Привет, Хабр! В наступившем новом году мы планируем всерьез развивать темы контейнеров, Cloud-Native Java и Kubernetes. Логичным продолжением этих тем на русском языке будет рассказ о фреймвор...
В одной из наших предыдущих статей мы рассказывали, как выстроить email-маркетинг внутри компании. И если начать отправлять письма подписчикам не так уж и трудно, то для активного развития эт...
Кроме классического подхода для обработки ошибок с помощью исключений, можно выделить также функциональный подход. Вместо того, чтобы кидать исключение сразу, можно его локализировать, а потом...