JavaScript, though not the only language, has had a significant role in web development. It was developed in less than two weeks by Brendan Eich to fulfill a need, and then evolved into something larger than anyone could have originally anticipated. Due to the speed of its development, it has certain idiosyncrasies that might not always appear logical or intuitive.
Some things are intuitive, others are not. This is often true of programming. There are going to be some things that you just need to check the reference manual for, don't expect your intuition to guide you when you are debugging!
Some Background
Journey back to America in 1995: musical artists Coolio, TLC, and Seal are at the top of the music charts. The movie Toy Story is on its way to being the top movie of the year. Web browsers are delivering static websites made up of just HTML and CSS to computers across the world. Netscape, the company with the best web browser at the time, is facing a dilemma: its competitor, Microsoft, was in the process of releasing a new browser, Internet Explorer, which threatened to take control of the market!
Facing stiff competition, Netscape teamed up with Sun Microsystems, the creators of Java, aiming to leverage the language's potential for the burgeoning web market. Amidst this alliance, Netscape's Brendan Eich was tasked to develop a complementary scripting language. With the clock ticking, Eich delivered JavaScript in a mere matter of weeks, not knowing it would eventually become a cornerstone of web development.
Naturally, a language thrown together in this way will have design flaws, and while it has been improved upon greatly with recent updates, some say there are still shortcomings. Some design choices may make little sense today, and yet, JavaScript continues to be the dominant language of the front-end web.
After the launch of JavaScript the internet seemed to go from strength to strength as internet adoption went up dramatically. JavaScript may not have been ready, but it went along for the ride anyway!
Have a look at those two links if you want to learn more about the history of Javascript:
- Great 10 min video of the history - This wonderfully animated short video is the first in a three part series that are a great introduction to JavaScript.
- Wikipedia article on the History of JavaScript
Various Ways to Accomplish Tasks
JavaScript, due to its huge community, many frameworks and ways of working with it, is often not recommended for a beginner. It can be overwhelming. That said, its one of the most accessible languages too. You really only need a text editor and a browser, and no pesky licenses to pay for either. Many choices can lead to overwhelm, but it also opens the door to creativity!
Not only in JavaScript, but in programming in general, there is almost always more than one way to do a task. New ways are born and old ways die out all the time. Though in this sector, more often than not, new ways are born, and old ways hang on! Some people make a very decent living out of specializing in legacy code. This refers to code that is old and obsolete, but still in use because it would be too expensive or time-consuming to make the transition. Any given programmer will almost always end up becoming a jack-of-all-trades. Things change too quickly not to be.
With that mind, this course will endeavour to show you various ways of doing the few essential things. In the examples you will often see slightly different ways to do the same thing, or different ways of writing the same thing, or different naming conventions and different code structure choices. This course will also inevitably omit some methods of doing things, especially in the final sections, because as you get deeper into JavaScript, the choices for how to do something start to multiply! Just take a look at all the different frameworks that have become available for JavaScript from 2009 to 2019:
You won't get into any frameworks in this course either, there is plenty to be learned and mastered in "vanilla" JavaScript. In fact, it can be a handicap to be tethered to just one framework, as many JavaScript developers are. Having a strong foundation in the base language gives you the flexibility to pick the right tool for the job.
Summary: The History of JavaScript
- JavaScript was developed by Brendan Eich at Netscape
- The programming language was created in a few weeks and gained unexpected popularity
- Javascript is one of the most accessible programming languages