Как Borland просрали все полимеры2
В 90-е годы это название знали все. Даже те, кто не пользовался Паскалем. В течение почти 20 лет Турбо Паскаль преподавали в школах и техникумах, иногда в институтах.
Как минимум полтора десятка лет другой их продукт - Delphi - был одной из самых известных и популярных у нас в России сред разработки. И, кстати, живет до сих пор.
Как же получилось так, что фирма, создавшая два, можно сказать, революционных продукта - исчезла без следа? Я расскажу свою версию. С моей точки зрения, это рассказ о роли личности руководителя в судьбе фирмы.
Моя первая встреча с Turbo Pascal
Я впервые увидел Turbo Pascal 5.0. в 1989 году, на первой “своей” IBM PC XT. Тогда для меня это было что-то на грани чуда.
Ведь как в те времена делалось "в норме":
Запускаем текстовый редактор и пишем/правим текст программы.
Сохраняем, закрываем редактор.Запускаем транслятор (сейчас говорят компилятор), указывая в виде аргумента файл с текстом программы.
Если в программе нет ошибок - получаем так называемый объектный модуль, содержащий алгоритмы нашей программы в машинных кодах, но без привязки к адресам в памяти.Запускаем линкер (редактор связей), указывая ему файл(ы) с объектными модулями, он собирает их в готовую программу, устанавливая адреса для каждой переменной и каждой подпрограммы, и указывая эти адреса там, где эти объекты вызываются.
Теперь программу можно запустить на выполнение.Запускаем программу, проверяем, как она работает.
Ну, если работает не так - понятное дело, правим. Т.е. повторяем весь цирк сначала.
А чаще всего уже на шаге 2 сталкиваемся с тем, что транслятор обнаруживает ошибки в тексте, и выдает в отдельный файл - в строке ХХХ у вас какая-то фигня, а в строке YYY нет точки с запятой. И теперь надо открыть редактор, найти эту строку, и исправить ее.
Запустив Турбо-Паскаль, ты работаешь в текстовом редакторе. И не выходя из него, можешь нажать одну клавишу - чтоб программа откомпилировалась и запустилась.
Завершив прогон программы - возвращаешься в редактор.
Если у тебя в тексте программы что-то не так - тебе не сообщают об этом. Не заставляют искать в тексте ту ошибочную строку. Тебя сразу автоматически отправляют на ту строку, где ошибка, остается только исправить ее.
В общем, если до этого задача “скомпилировать написанную программу” занимала неделю, то теперь это делалось за два часа.
Потом выяснилось еще много интересных вещей - тут, оказывается, можно выполнять программу по строкам, на ходу выяснять значения переменных, и даже менять их, и многое-многое другое. Но это было уже привычное - у нас прекрасный инструмент, он, оказывается, теперь умеет еще и вот это.
Но вот это первое ощущение чуда - мне дали в руки инструмент, и я почувствовал себя всемогущим - запомнилось на всю жизнь.
В общем, на фоне привычных компиляторов Турбо Паскаль смотрелся как пулемет Максима среди дульнозарядных мушкетов. И было понятно, почему его так назвали. Также понятно, почему он получил такую популярность у начинающих программистов, а также преподавателей и студентов.
За его скорость и удобство ему можно было бы простить многое - даже если бы это был “игрушечный” компилятор, способный откомпилировать и собрать только маленькую учебную программу - популярность была бы ему обеспечена. А уж если этот инструмент мог создавать более-менее крупные программы с приличным качеством - его производитель, наверное, должен был бы озолотиться? Ну, давайте познакомимся с теми, кто это сделал.
1981 Основание фирмы Borland
Сама фирма началась с того, что в 1981 Нильс Енсен (Niels Jensen), Оле Хенриксен (Ole Henriksen) и Моргенс Глад (Mogens Glad) основали компанию MIT - Market In Time.
Чем именно они будут заниматься - парни и сами пока не знали, они просто верили в персональные компьютеры, в свои силы и в свою удачу. И поначалу они просто писали программы для малых машин под управлением ОС CP/M.
В 1982 они посетили выставку CP/M-82, проходившую в Сан-Франциско. И сделали вывод, что если они хотят продавать свои программы в США - им надо иметь американскую компанию, располагающуюся в США, а не в Ирландии.
Кан-варвар из дикого леса
А еще они познакомились с Филиппом Каном. Который в то время имел хулиганские склонности, ездил на мотоцикле, играл на саксофоне, имел высшее образование в области математики и оконченную консерваторию, жил в США нелегально, поскольку не имел грин-карты… Зато он очень хорошо представлял, чем он хочет заняться для того, чтоб заработать денег.
Так что наши три датчанина приняли его в свою фирму. И саму фирму переназвали. Вроде как именно Кан предложил название Borland, означавшее на кельтском “лесная страна”.
Надо сказать, Кан всегда отличался любовью к неординарным решениям на грани хулиганства, к нарушению правил, что с одной стороны осложняло его взаимодействие с другими владельцами фирмы, с другой стороны часто обеспечивало успех его начинаниям.
Одна из статей о нем (к тому времени уже директоре Борланда, богатом и знаменитом) так и называлась - “Кан-Варвар” (Kahn the Barbarian).
Доли капитала в Borland были распределены так: Niels Jensen (250,000 акций), Ole Henriksen (160,000), Mogens Glad (100,000), and Kahn (80,000). Т.е. вроде как младший партнер. Филипп Кан становится президентом и генеральным директором (CEO) фирмы Borland, и в этой должности он будет 12 лет, до 1995.
1983 Появление Turbo Pascal
А идея у Кана была, собственно, в том, чтоб сделать удобную среду разработки. И еще хотелось быстрый компилятор, чтоб не приходилось идти курить, пока он пережевывает текст твоей программы.
В сущности, тут вроде ничего нового или революционного не было. Эта идея носилась в воздухе. Да, собственно, уже существовавший к тому времени Бейсик можно считать воплощением этой идеи. Но у Кана это действительно получилось, и получилось так хорошо, что его вариант стал по сути образцом для всех будущих.
Итак, в 1982 Кан начинает двигать свое направление, и находит талантливого программиста, тоже увлеченного этой идеей. А самое главное - этот программист уже сделал свою версию компилятора Паскаля под ОС CP/M. Теперь они начинаю делать Паскаль под MS DOS, и не просто компилятор, а именно среду разработки. И в 1983 у них выходит первая версия.
1982 В Borland приходит Андерс Хейлсберг (Anders Hejlsberg), разработчик Blue Label Pascal.
1983 Выпущена первая версия Turbo Pascal.
Название хорошо отражает основную суть. Компилятор был очень быстрым. У нормальных людей компиляция программы занимала от 5 минут до получаса, в Турбо Паскале же компиляция занимала не более 5 секунд. Надо сказать, Борланд всегда отличалась меткими названиями.
Новый продукт предполагалось продавать учебным заведениям. По недорогой цене. $49.99. При стоимости нормальных профессиональных компиляторов порядка $300.
Емкость рынка в первом приближении оценивалась в 30 000 потенциальных покупателей. Ну, т.е. если все они купят новую программу, то фирма получит полтора миллиона долларов. В реальности, естественно, купят далеко не все.
В реальности в первый месяц продаж Борланд набрал 3000 покупателей. Соответственно, 150 000 долларов.
Местные банки даже стали отказываться оплачивать чеки и кредитные карточки, подозревая компанию в мошенничестве.
Через два года (1985) журнал Байт сообщил о “поразительной для компьютерного языка цифре” в 250 000 экземпляров. (Т.е. в 8 раз больше максимальной первоначальной оценки!)
Это 12 с половиной миллионов долларов. Определенно, это был оглушительный успех!
Еще через полгода цифры достигли 400 000 проданных экземпляров и, соответственно, 20 миллионов долларов.
1985-1990 Рост и развитие
Последующие годы фирма активно развивает направление средств разработки. Появляются несколько языков со знакомой средой разработки - Turbo Basic, Turbo Assembler, Modula 2, Turbo Prolog, Turbo C (позже Borland C).
Идет активное соревнование с Microsoft в этой области, до середины 90-х.
В 1990-92 в Паскале появляется объектно-ориентированное программирование. И следом - объектно-ориентированная библиотека Turbo Vision, предназначенная для разработки современных (на то время) программ с окнами, меню, контекстной гипертекстовой подсказкой и т.д.
В Turbo Vision содержится красивая стройная концепция управления окнами, элементами окна, проверки вводимых в окно данных, взаимодействия элементов. В результате разработка таких программ становится намного проще и быстрее. В то же время сам Turbo Vision мог служить прекрасным примером - что такое ООП, зачем оно нужно, и как его применять. Многие программисты на нем учились, несколько программистов пытались сделать из него графический пакет. Одна из крупнейших программистских фирм нашего города продолжала писать программы с использованием Turbo Vision аж до начала 2000-х, когда уже всюду стоял Windows.
Cобственно, на том же Turbo Vision была сделана новая интегрированная среда Turbo Pascal 6.0. Это характерный для Borland подход - самим пользоваться тем, что они разрабатывают на продажу. При таком подходе продукт действительно получается удобным и качественным, потому что разработчик сам видит, что в его изделии удобно, а что можно улучшить, и он же имеет все средства чтоб улучшить его. Наверное, именно поэтому все продукты Борланда отличаются высоким качеством и удобством.
Кроме того, развиваются еще несколько продуктов совершенно других направлений:
Eureca - пакет для решения дифференциальных уравнений;
SideKick - нечто вроде пакета офисных программ, включая текстовый редактор, календарь, калькулятор, адресную книгу и телефонный номеронабиратель;
Quattro Pro - электронная таблица.
Похоже, что руководители фирмы, заработав на Турбо Паскале, хотят вложить эти деньги в развитие, и пытаются развивать любое направление, потенциально сулящее перспективы. Вот только не могут выбрать - в каком именно направлении развиваться? - и пытаются развиваться во всех направлениях одновременно.
Конкурируют с Microsoft в области языков разработки. Надо сказать, достаточно успешно. Аж до конца 90-х. (И даже, пожалуй, до конца 2000х, но это уже другая история.)
Осваивают область разработки баз данных, в которой на то время катастрофически не хватает нормальных языков разработки алгоритмов и весьма бедно по части средств ввода данных. Тут Борланд предпринимает несколько крупных шагов, невзирая на затраты.
Приобретается Ansa Software и ее СУБД Paradox. Через некоторое время появляется выделенный пакет библиотечных функций Paradox Engine, который можно использовать для работы с Парадоксовскими таблицами из программ на C и Паскале.
В 1991 покупается Ashton-Tate - производитель знаменитого DBase. А значит, надо либо как-то объединить эти два продукта - DBase и Paradox - в одну концепцию, либо они будут конкурировать между собой, съедая деньги фирмы.
(Помимо этого, Ashton-Tate на тот момент владеет еще одной СУБД - InterBase, это уже полноценный сервер баз данных, работающий в клиент-серверной архитектуре, поддерживающий большие СУБД и способный на тот момент конкурировать с недавно появившимся MS SQL Server. Но работать с ним надо уже принципиально по-другому, не так, как с DBase и Paradox: если первым надо давать команды типа “перейди на следующую запись”, “удали запись”, “прочитай поле Х текущей записи” и т.п. - то взаимодействие с InterBase полностью основано на отправке SQL-запросов, которые уже выполняются этим сервером БД, при необходимости посылая в ответ небольшую порцию данных. Т.е. совсем другая логика построения программы, другие возможности. Можно сказать, что DBase и Paradox - это “игрушечные” СУБД, упрощенно реализующие функции работы с таблицами на уровне файлов; InterBase же - уже вполне “взрослая” СУБД, работающая по современным стандартам и сравнимая по возможностям с ведущими на то время Oracle, DB/2, и пытающимся дотянуться до них MS SQL Server.)
Кан пытается объединить направление языков разработки и направление баз данных, команду Turbo и команду DBase, но это ему не удается. Слишком разные команды, слишком много людей, слишком много функционала нужно объединить и привести к какому-то общему знаменателю. Это в конце концов приводит к финансовым проблемам и вынужденным сокращениям персонала в начале 90-х.
Microsoft же активно включается и в это соревнование, приобретя Fox Software и его Fox Pro - клон DBase, который он далее много лет развивает. (Параллельно разрабатывая MS SQL Server и MS Access)
В общем, в области разработки СУБД у них идет конкуренция, сравнимая с Курской Дугой…
А еще один фронт конкуренции разворачивается в области офисных пакетов. Microsoft начинает продвигать свой MS Office. Borland заключает соглашение с Word Perfect и начинает разработку и продвижение Borland Office, включающих в себя текстовый процессор Word Perfect и электронную таблицу Quattro Pro.
Надо сказать, меня удивляет то, что Borland, при несопоставимости размеров, мало того что конкурировал с Microsoft - он в некоторых сферах еще и конкурировал более успешно!
(продолжение следует)


