Computerworld is undertaking a series of investigations into the most widely-used programming languages. Previously we have spoken to Alfred v. Aho of AWK fame, S. Tucker Taft on the Ada 1995 and 2005 revisions, Microsoft about its server-side script engine ASP, Chet Ramey about his experience maintaining Bash, Bjarne Stroustrup of C++ fame, to Charles H. Moore about the design and development of Forth, a chat with the irreverent Don Woods about the development and uses of INTERCAL, Stephen C. Johnson on YACC, Modula-3 design committee member, Luca Cardelli and Walter Bright about D
In this interview we chat to Brendan Eich, creator of JavaScript and Chief Technology Officer of Mozilla Corporation. Eich details the development of JS from its inception at Netscape in 1995, and comments on its continued popularity, as well as what he believes will be the future of client-side scripting languages on the Web.
Please note that we are no longer following exact alphabetical order for this series, due to popular demand. If you'd like to submit any suggestions for programming languages or language authors that you'd like to see covered, please email naomi@computerworld.com.au.
What prompted the development of JavaScript?
I've written about the early history on my blog: http://Weblogs.mozillazine.org/roadmap/archives/2008/04/popularity.html
I joined Netscape on 4 April 1995, with the goal of embedding the Scheme programming language, or something like it, into Netscape's browser. But due to requisition scarcity, I was hired into the Netscape Server group, which was responsible for the Web server and proxy products. I worked for a month on next-generation HTTP design, but by May I switched back to the group I'd been recruited to join, the Client (browser) team, and I immediately started prototyping what became JavaScript.
The impetus was the belief on the part of at least Marc Andreessen and myself, along with Bill Joy of Sun, that HTML needed a "scripting language", a programming language that was easy to use by amateurs and novices, where the code could be written directly in source form as part of the Web page markup. We aimed to provide a "glue language" for the Web designers and part time programmers who were building Web content from components such as images, plugins, and Java applets. We saw Java as the "component language" used by higher-priced programmers, where the glue programmers -- the Web page designers -- would assemble components and automate their interactions using JS.
In this sense, JS was analogous to Visual Basic, and Java to C++, in Microsoft's programming language family used on Windows and in its applications. This division of labor across the programming pyramid fosters greater innovation than alternatives that require all programmers to use the "real" programming language (Java or C++) instead of the "little" scripting language.
So was there a particular problem you were trying to solve?
The lack of programmability of Web pages made them static, text-heavy, with at best images in tables or floating on the right or left. With a scripting language like JS that could touch elements of the page, change their properties, and respond to events, we envisioned a much livelier Web consisting of pages that acted more like applications.
Indeed, some early adopters, even in late 1995 (Netscape 2's beta period), built advanced Web apps using JS and frames in framesets, prefiguring the "Ajax" or "Web 2.0" style of development. But machines were slower then, JS had a relatively impoverished initial set of browser APIs, and the means to communicate with servers generally involved reloading whole Web pages.
How did JavaScript get its name given that it's essentially unrelated to the Java programming language?
See my blog post, linked above.
Why was JS originally named Mocha and then LiveScript?
Mocha was Marc Andreessen's code name, but Netscape marketing saw potential trademark conflicts and did not prefer it on other grounds. They had a "live" meme going in their naming (LiveWire, LiveScript, etc.). But the Java momentum of the time (1995-1996) swept these before it.
References
- The A-Z of Programming Languages: AWK
- The A-Z of Programming Languages: Ada
- The A-Z of Programming Languages: ASP
- The A-Z of Programming Languages: BASH/Bourne-Again Shell
- The A-Z of Programming Languages: C++
- The A-Z of Programming Languages: Forth
- The A-Z of Programming Languages: INTERCAL
- The A-Z of programming languages: YACC
- The A-Z of Programming Languages: Modula-3
- The A-Z of Programming Languages: D
- http://Weblogs.mozillazine.org/roadmap/archives/2008/04/popularity.html
- TIBET
- Smalltalk
- http://ejohn.org/blog/ruby-vm-in-javascript/
- http://ejohn.org/blog/running-java-in-javascript/
- http://blog.nihilogic.dk/2008/04/super-mario-in-14kb-javascript.html
- http://canvex.lazyilluminati.com/83/play.xhtml
- Processing
- http://www.gerv.net/security/content-restrictions/
- https://bugzilla.mozilla.org/show_bug.cgi?id=390910
Latest on JavaScript
- Google's speed push more best practices than revolution
- Google to promote Web speed on new developer site
- Ample SDK gets set for cross-browser apps development
- Firefox 3.5 features new Javascript engine, built-in video
- Hackers claim $10,000 prize for breaking into StrongWebmail
- Aussie devs make Wave with Google Web Toolkit
- Google tests scripting feature for online apps
- Commbank taps Ajax for biggest Web site redesign
- JavaScript - the Web site performance killer, Google guru says
- Rails 3 to add security enhancement
Development Essentials
- Security experts name top 25 programming screw-ups
- Top 10 wicked cool algorithms
- Facebook app verification fee draws criticism
- Microsoft's openness stressed
- Yahoo's developer platform to launch this week
- Microsoft starts new developer portal
- Google API allows creating apps that can track laptops
- PHP, JavaScript, Ruby, Perl, Python, and Tcl Today: The State of the Scripting Universe
- Analyst: In-house app development fraught with waste
- Is unit testing doomed?
TechWorld Jobs (beta)
Recent Jobs
TechWorld Blogs
-

TalkingTech
The view from the top of IT with TechWorld Editor Rodney Gedda
-

Entrenched
Cooking up better code, IDG's developers reveal some of their secrets
-

Broadband Voice
Darren Pauli digs in from the front line of Australia's broadband battleground
Recent blog posts
- Nokia remains 'open' to Android amid Symbian renaissance
- KDE's Seigo gives sneak peek at version 4.3
- Was the iPhone 3G S worth queuing up for?
- Has Oracle started its mammoth technology consolidation?
- iPhone 3.0: the detail is the process, not the features
- TechWorld.com.au goes mobile
- Should Dell buy Palm? Stranger things have happened
- A big week for Linux: is user friendliness finally in sight?
- Apple, Android rain on Palm's Pre parade
- The clone attack is becoming unstoppable
Recent comments
- State your Prediction and
9 hours 26 min ago - Yes I have seen them.Actually
10 hours 19 min ago - PSP Nintendo
1 day 1 hour ago - Interesting report. You were
1 day 21 hours ago - Are you sure it is in Sydney?
2 days 8 hours ago - The mobile market has
2 days 16 hours ago - Great news.
Sms spam should
3 days 13 hours ago - now what am I gonna do with
3 days 16 hours ago - ozlotteries.com not ozlotto.cm
3 days 18 hours ago - OLAT Release
4 days 4 hours ago - and i was sure i would win...
4 days 8 hours ago - Hi SolidRadicle,
I am looking
4 days 9 hours ago - Not if I can help it
4 days 9 hours ago - Ozlotto Tips Scam
4 days 13 hours ago - Great post.
It's very
4 days 13 hours ago - Excellent review! I'm glad
6 days 10 hours ago - iTunes Helper
1 week 1 day ago - Update the link to OrangeHRM web site
1 week 2 days ago - Very informative article
1 week 2 days ago - Google Chrome is still being directed to bing instead of google
1 week 2 days ago










Comments
Post new comment