Это сайт — моя персональная записная книжка. Интересна мне, по большей части, история, своя жизнь и немного программирование.

Хочу развеять миф про серверный Джаваскрипт

С появлением фреймворка Node.js сервервый Джаваскрипт стал широко рекламироваться, но даже ребята, слышавшие об ASP, почему-то подумали, что Node.JS — это первая технология, использующая серверный Джаваскрипт.

Это не так. Например, в микрософтском ASP можно было использовать два языка — JScript и VBScript, в моей практике была пара-тройка сайтов на первом и один на втором. Но существовали профессиональные ASP-программисты, которые клепали их со скоростью пулемёта.

Об ASP у меня остались самые худшие воспоминания, например, в тамошнем API не было ничего, что помогло бы программисту обработать заливаемые файлы, нужно было пользоваться сторонним ActiveX (они работают и на серверной стороне). Наверняка потом там много изменилось в плане удобства, но я уже не застал.

А ещё раньше я читал о сервере от «Нетскейп», который тоже содержал Джаваскрипт в качестве языка серверного программирования. Сравнивая давность своих воспоминаний, я прихожу к выкоду, что «Нетскейп» был первым на этот поприще. К сожалению, я не смог навскидку найти информации об этом сервере, но когда я только-только вышел в интернет (1997 год), информация об этом сервере уже была.

18 комментариев
Michael (mixa.livejournal.com) 2011

http://en.wikipedia.org/wiki/Server-side_JavaScript

The first implementation of SSJS was Netscape’s LiveWire,[citation needed] included in its Enterprise Server 2.0 product,[1] released in 1996.

Евгений Степанищев (bolknote.ru) 2011

Комментарий для mixa.livejournal.com:

Ага, значит 1996 год.

Рамиль К (ramil1017.ya.ru) 2011

Комментарий для Евгения Степанищева:

Запись почему-то дважды в рсс прилетела.

Евгений Степанищев (bolknote.ru) 2011

Комментарий для ramil1017.ya.ru:

Я случайно её два раза сделал. Что-то клиент стал глючить, надо переставить будет.

Orcinus Orca (orcinus.ru) 2011

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

Евгений Степанищев (bolknote.ru) 2011

Комментарий для orcinus.ru:

Я с 98 года использую ASP, но не могу сказать когда там появилась поддержка JS.

Насколько я знаю, оба языка поддерживались изначально. Использовался тот же самый движок, что у IE.

Orcinus Orca (orcinus.ru) 2011

Тогда и JS там должен был появиться в 96 году, когда IIS (PWS) вышел. С первой версией не столкнулся, интернет у нас был не очень в ходу, всё больше использовали ФИДО.

Евгений Степанищев (bolknote.ru) 2011

Комментарий для orcinus.ru:

http://en.wikipedia.org/wiki/Active_Server_Pages

Active Server Pages (ASP), also known as Classic ASP or ASP Classic, was Microsoft’s first server-side script-engine for dynamically-generated web pages. Initially released as an add-on to Internet Information Services (IIS) via the Windows NT 4.0 Option Pack (ca 1998)

1998 год, не 96-й.

Stac (stacmv.ya.ru) 2011

Неудивительно, что Netscape был первым, учитывая, что они придумали и сам язык.

boltai-shaltai 2011

Комментарий для Евгения Степанищева:

в микрософтском ASP можно было использовать два языка — JScript и VBScript

Причём это движки, которые встраивались в ASP по умолчанию. Но при желании можно было навесить внешний скриптовый движок (перл, например), и кодировать уже на нём.

Initially released .. via the Windows NT 4.0 Option Pack (ca 1998)

Как бы не ошибочка тут была.
Мне помнится, что я его скачивал в виде standalone exe-файла размером ок. 9 Мб, и было это осенью 1997 года.

Евгений Степанищев (bolknote.ru) 2011

Комментарий для boltai-shaltai:

Причём это движки, которые встраивались в ASP по умолчанию. Но при желании можно было навесить внешний скриптовый движок (перл, например), и кодировать уже на нём.

Да, кажется, PerlScript был, например.

Как бы не ошибочка тут была.
Мне помнится, что я его скачивал в виде standalone exe-файла размером ок. 9 Мб, и было это осенью 1997 года.

Может быть, не знаю. Но скорее всего Нетскейп был первым, всё-таки авторы языка там работали.

Orcinus Orca (orcinus.ru) 2011

Комментарий для Евгения Степанищева:

Да, я к ASP прикручивал интерпретатор PERL, но всё-таки предпочитал их оставить в cgi и работать нормально, а не выпендриваться. Хотя экспериментов поставил немало.

Orcinus Orca (orcinus.ru) 2011

Это в англиской:

Active Server Pages (ASP), also known as Classic ASP or ASP Classic, was Microsoft’s first server-side script-engine for dynamically-generated web pages. Initially released as an add-on to Internet Information Services (IIS) via the Windows NT 4.0 Option Pack (ca 1998), it was subsequently included as a free component of Windows Server (since the initial release of Windows 2000 Server). ASP.NET has superseded ASP.

Это в русской:

ASP в своём развитии прошёл через несколько версий:
ASP 1.0 (распространяется с IIS 3.0) в декабре 1996 года.
ASP 2.0 (распространяется с IIS 4.0) в сентябре 1997 года.
ASP 3.0 (распространяется с IIS 5.0) в ноябре 2000 года.

Это в немецкой:

Active Server Pages (ASP) ist eine von Microsoft entwickelte SSI-Nachfolgetechnologie, die mit Einsatz einer Skriptsprache wie VBScript, Perl oder JScript serverseitig Webseiten erzeugt. ASP wurde ursprünglich nur vom Webserver Internet Information Services (IIS) interpretiert. Mittlerweile gibt es auch verschiedene Portierungen für den Apache Webserver. ASP wurde im Jahr 1996 veröffentlicht. Man kann diese Technologie von ihren Möglichkeiten in Bezug auf die Webprogrammierung auf eine Stufe mit PHP, PerlScript, CFM und Perl stellen. In Java gibt es die Möglichkeiten der Servlets und JavaServer Pages (JSP).

На Японском:

ASPのバージョン [編集]
Active Server Pages 1.0 (IIS 3.0) 1996年12月
Active Server Pages 1.0b
Active Server Pages 2.0 (IIS 4.0) 1997年9月
Active Server Pages 3.0 (IIS 5.0) 2000年11月

Вроде бы указано, что ASP берет свою жизнь с IIS 3.0 в 1996 году.

Евгений Степанищев (bolknote.ru) 2011

Комментарий для orcinus.ru:

Впечатляющее исследование :)

Значит в 1996-м.

Евгений Степанищев (bolknote.ru) 2011

Комментарий для orcinus.ru:

1996年12月

Это декабрь 1996 года, кстати.

У Netscape в 16 ноября 1996 была ещё бета: http://web.archive.org/web/19961116022603/http://developer.netscape.com/
В декабре, в блоке «what’s new this month» мы не видим выпуск релиза: http://web.archive.org/web/19961218213101/http://developer.netscape.com/

Следовательно, релиз был выпущен в ноябре.

Таким образом, последовательность такая: у Netscape серверный JS появился (в релизе) в ноябре 1996, у MS — в декабре. Небольшой разрыв.

Евгений Степанищев (bolknote.ru) 2011

Комментарий для orcinus.ru:

Немного ошибся. В ноябре 1996 был релиз версии 2.01, нас же интересует 2.0, где появился LiveWire. Значит вторая версия вышла до 16 ноября.

Евгений Степанищев (bolknote.ru) 2011

Комментарий для orcinus.ru:

Ура! Нашёл дату: http://www.thefreelibrary.com/NETSCAPE%2BINTRODUCES%2BNETSCAPE%2BENTERPRISE%2BSERVER%28TM%29%2B2.0-a018056425

Netscape Communications Corporation (Nasdaq: NSCP) today announced Netscape Enterprise Server(TM) 2.0 … Date: Mar 5, 1996

Релиз NES 2.0, с поддержкой серверного JavaScript состоялся 5 марта 1996 года. Надо в Википедию добавить.

Степан Легачёв (siberex.livejournal.com) 2011

А ещё именно у Netscape в 1997 появился Rhino, возможно родившийся из той же разработки 1996-го.
Сейчас это Mozilla Rhino, самый старый из развивающихся JS-движков:
http://en.wikipedia.org/wiki/Rhino_%28JavaScript_engine%29
Успешно используется на Google App Engine, кстати, т. к. сделан на Java.
Из преимуществ — можно вызывать java-код из JS и передавать в java-методы переменные из JS.