Warum Javascript?

Hi,

…wie kam es dazu? Ein Netscape-Entwickler entwicklte LiveScript anno 95 und 96 wurde Javascript daraus, seitdem macht jeder den Mumpiz nach (V8 …usw.). (Ich entwickel sehr viel mit Javascript, aber es ist nicht so das ich denken: „Huhu heute entwickel ich in Javascript“.)

Warum konnte sich die Sprache durchsetzen? Warum nicht Python, was schon 5 Jahre früher existierte und bis anno/dato die beste Scriptsprache ist? … wenn ich nur an Generatoren denke und welche Möglichkeiten sich durch reine Generatorenprogrammierung ergeben, da sehen sogar die meisten Linux-Systemtools „blass“ aus.

Gleiches Prinzip -> anderes Thema: Auch wenn PHP mittlerweile ab 5.5 auf Generatoren nachgerüstet hat, fehlen die Generatoren-Expressions und eine allgemeine Zusammenarbeit mit der Sprache/Funktionen( im Vergleich zu Python).

Wie konnte sich PHP durchsetzen (95)? Warum nicht (mein stiller oldschool Gigant Haskell(eine der meist unterschätzden Sprachen)) oder Java(der König der Webentwicklung zumindest auf Enterprise-Ebene) oder Python(gibt es eine bessere Sprache?)? 

Wie kam es zu so einer Entwicklung (einer Entwicklung die doch von Informatikern und Web/Softwareentwicklern geprägt sein sollte)?

Die Prägung(Web): PHP, Javascript, und worst-case-fall nodejs kann doch nicht dem Sinn von optimaler Programmierung von Informatikern sein?

Hallo

Warum konnte sich die Sprache durchsetzen?

Auf Anwenderebene sollte das Werkzeug auch benutz- und bedienbar sein. Z.B. wird ein schön designtes und ergonomischer gestaltetes Produkt eher verwendet als eins mit umständlicher Bedienung. Auch wenn das letztere funktional mehr zu bieten hat… (wobei die gebotenen Funktionen der Zeit auch nicht zu weit voraus sein sollten).

mfg M.L.

Hi,

…wie kam es dazu? Ein Netscape-Entwickler entwicklte
LiveScript anno 95 und 96 wurde Javascript daraus, seitdem
macht jeder den Mumpiz nach (V8 …usw.).
[…]
Warum konnte sich die Sprache durchsetzen?
[…]
Wie konnte sich PHP durchsetzen (95)?
[…]
Wie kam es zu so einer Entwicklung
[…]
Die Prägung(Web): PHP, Javascript, und worst-case-fall nodejs
kann doch nicht dem Sinn von optimaler Programmierung von
Informatikern sein?

Nö. Aber wenn ich als Entwickler eine coole Programmiersprache kenne, die aber nicht einfach ohne Weiteres beim Anwender läuft, ist das halt immer schwierig. Beispiel Python oder Java. Unter Windows etwa laufen derlei Programme nicht ohne entsprechende Laufzeitumgebung. Wenn ich also ein nettes Python-Programm geschrieben habe, brauche ich zwingend einen Installer, der das mitbringt. (ja, gibts auch portable…)

Javascript lief halt irgendwie in jedem Browser. Ohne weiteres Zutun. Wenn ich eine HTML-Seite mit ein paar Zeilen JS gewürzt habe, dann hat man eine recht große Chance, dass das auch unter Linux, OS/2 oder sonstwas läuft.

Und dann ist das irgendwie einfach aus dem Ruder gelaufen. Anstatt sich auf was neues zu einigen, hat man JS für immer aufwändigere Anwendungen missbraucht. Dann war es zu langsam (logisch, dafür war es ja auch nicht gemacht) also mussten die Browser nachziehen und mit kruden JS-Kompilern der Schildkröte einen Raketenantrieb verpassen.

Aber die Quintessens bleibt: JS ist deswegen so beliebt, weil es aus dem Stand auf jedem System läuft.

Gleiches gilt für PHP. Irgendwie hat jeder billige Hoster Ende der 90er PHP im Angebot gehabt, weil es kostenlos verfügbar war und dem Nutzer einen Mehrwert für kleinere serverseitige Skripte geboten hat. Und dann war es da und konnte HTML und JS ausliefern. Und plötzlich kam man auf die Idee, das nicht nur für kleine, sondern auch für große Projekte einzusetzen. Dafür fehlten aber diverse Features, die so nach und nach hinzukommen.

Auch hier gilt wieder das gleiche: Die Syntax ist leicht verständlich, es ist überall verfügbar also wird es eingesetzt.

Hallo Fragewurm,

Nun, es setzt sich oft nicht das beste Produkt auf dem Markt durch, die Geschichten dahinter sind aber unterschiedlich:

  1. Oft spielt es eine grosse Rolle, was an den UNIs verwendet wird.
    Anfang 80er war ein Hype auf Pascal. Der Grund war, dass diese Sprache zu Ausbildungszwecken verwendet wurde.

Genau das war auch das eigentliche Problem an dieser Sprache, sie wurde ausschliesslich nach didaktischen Gesichtspunkten entworfen und war deshalb für viele Fälle in der Praxis nicht geeignet.
z.B. ist ein Manko an Pascal, dass es keine eigenen Funktionen mit variabler Parameterzahl kennt. Allerdings beweist Pascal selbst, bei den Read- und Write-Funktionen, dass man so etwas in der Praxis benötigt.
C hingegen wurde entworfen um Unix zu Implementieren, also sehr gut für die Praxis geeignet, aber schlecht für Lernzwecke.
Beide Sprachen entstanden Anfang der 70er Jahre.

Nach der Ausbildung konnten die Leute dann Pascal und wollten nicht noch erst eine andere Sprache lernen.

Deshalb war z.B. Motorola auch immer sehr grosszügig bei der Unterstützung von Studenten. MicroController bekam man als Student meist gratis. Nach dem Studium kannte der Typ dann nur Motorola und hatte auch schon Kontakte zum Lieferanten und zum technischen Kundendienst …

In den 80er Jahren waren die Texas Instruments TMS99xxx Prozessoren in Deutschland überproportional verbreitet. Der Grund war, dass TI als einziger Hersteller deutsche Datenblätter/Bücher zu seinen Prozessoren hatte.

Mit dem IBM-PC setzte sich der Intel 8086 durch. Eigentlich ein aufgebohrter 8080, wobei der 8080 schon Architekturmerkmale des 4004 mit sich rum schleppte.
Die Motorola 68’000 wären wesentlich Leitungsfähiger gewesen und gleich teuer, war aber eine Neuentwicklung ohne den ganzen Ballast der Vorgänger.
Der Grund für die Entscheidung zum 8086 war, dass die Entwicklergruppe ein Projekt mit dem 8085 gerade abgeschlossen hatte und man sich nicht extra in eine neue Prozessorfamilie einarbeiten wollte. Durch die Verwendung der 8-Bit Variante 8088 konnte man auch gleich die selben Peripheriebausteine verwenden wie beim 8085.

Der Rest war dann Marketing. Bei Banken und Versicherungen gab es sowieso nur Computer mit den drei blauen Buchstaben, die katte man schon ohne grosse Werbung als Kunden. Zudem hat IBM auch noch „Verbindungsoffiziere“ für jede Bank und Versicherung abgestellt. Die waren praktisch jeden Tag in der Entwicklungsabteilung beim Kunden und hatten direkte Verbindung zu den Entwicklern bei IBM.
Zudem war der IBM-PC ein offenes System, es gab ein Handbuch mit den ganzen Schemata und dem BIOS-Listing. Als Konkurrenz gab es nur den Apple ][, welcher auch entsprechend dokumentiert war. Allerdings war dann beim IBM-PC das mechanische Problem mit den Erweiterungskarten besser gelöst, was in für Industrielle Anwendungen besser geeignet machte. Bis Anfang der 80er Jahre gab es von den meisten Chipherstellern Prototyping-Boards für komplexere Chips für den Apple][, dann wurden diese von entsprechenden Karten für den IBM-PC abgelöst.
Das offene System war ein Teil des Erfolgs für beide Firmen, es gab damals kein denkbares Interface, welches nicht auch irgendwo vorhanden war.
Beide Firmen verloren dann ihre Marktanteile in der Industrie, als sie zu geschlossene Systemen über gingen (Apple ab LISA, bzw. Mac mit dem geschützten NuBus, IBM mit PS/2 und den ebenfalls geschützten Microchannel-Bus).

Hinter MS-DOS liegt eine ähnliche Geschichte. Ursprünglich wurde zuerst Digital Research von IBM angefragt, ein Betriebssystem für den IBM-PC zu liefern. Damals war CP/M bzw, CP/M86 im Heimbereich führend (Eigentlich ein Klone des DEC RTX Betriebssystems). Allerdings wollte DR nichts mit IBM zu tun haben, wegen derer Geschäftspolitik. Also wurde Bill Gates als zweite Wahl angefragt. Dieser hatte aber keine Ahnung von Betriebssystemen () MD hatte nur Interpreter und Compiler, vor allem BASIC im Programm), hatte dann aber IBM zugesagt. Dazu hat er dann billig das QDOS eingekauft (Quick and Dirty OS), vor allem das Copyright angepasst und an IBM vertrieben.
Windows war dann bei Appel abgeschaut und bis zur Version 3.01 nicht brauchbar. Eine stabile Version gab es für den IBM-PC von DR als GEM, hier hat dann aber die Marketingabteilung von MS die bessere Arbeit geliefert.

Welche Produkte sich am allgemeinen Markt dursetzen hat auch viel mit Zufall zu tun und meistens nicht mit der technisch besseren Lösung!
Und heute ist leider meistens der Preis das einzige Kriterium, da spielt die technische Lösung leider keine Rolle mehr, da sie der normale Käufer schon lange nicht mehr durchschaut!
Heute kauft man keine technischen Lösungen mehr, sondern Emotionen, siehe z.B. Automobil-Werbung, da findet man seit langen keine technische Daten mehr.
Selbiges gilt auch z.B. im HiFi-Sektor. Da ist es schwierig geworden, Geräte objektiv zu Vergleichen, da viel technische Daten gar nicht mehr angegeben werden.

MfG Peter(TOO)