The digital world is complex and hard to tackle, and this is especially true for the Internet. The development of key web technologies like JS and the Document Object Model (DOM) has been informed by decades of history, conventions, and technical limitations.
JS: Its History, Capabilities, and Downfalls
It is hard to imagine a world without JS today, but if things had turned out a little differently. JS could’ve been entirely dead at this point. Because JS isn’t a prerequisite for the Internet to function. JS wasn’t universally supported for a long time, and theoretically, it is possible for any other interpreted language to completely replace JS.
The Beginnings of JS
Browsing the Internet wasn’t as simple in the 90s as it is today. When the first internet browser with a graphical interface was released in 1993, it was an important milestone — it enabled non-technical people from browsing and interacting with the web, which was key in its rising popularity.
One of the nascent browsers that entered the scene during that era was the Netscape browser. It quickly took off due to its intuitive design and robust features. However, the web back then had one giant drawback: all pages were static and there were no ways to manipulate or animate the contents of the page once it was fully loaded.
The Spread of JS
JS didn’t become popular once it was introduced. In fact, for most of the 90s, it was retreating and contracting. This was when Microsoft introduced and popularized Internet Explorer, which used its own proprietary scripting language called JScript. That’s right, back then, the most popular browser didn’t support JS. And if you wanted your non-static website to run on both Netscape’s and Microsoft’s browsers, you essentially had to write the website twice.
How Does JS Make Web Apps Possible?
- Ease of development: a major reason why web apps are viable is due to the ease of development JS environments provided. The JS language draws its strength from being a standardized language and feature set that are supported by all modern browsers. This means that you’ll be able to create apps using JS relatively easily without having to undertake massive porting efforts to make your web app supported across major browsers.
- Flexibility: JS is a minimal and flexible language. You can expand it and add features to it however you want. Some extensions even add type support to the language. This added flexibility enables developers to use and customize the language for their particular use-cases, which makes creating web apps simpler.
- Expandability: JS’s structure and supporting tools allow the programs written in the language to expand almost indefinitely with relative ease. And package managers have been created to organize and support this expansion. This means that incredibly rich and complex web apps can be created thanks to JS’s ecosystem.