[MUSIC] Welcome back. In our last lesson we talked about the difference between static and dynamic websites, and particularly about client-side dynamic features that we can implement in our pages with JavaScript. In this lesson we'll talk a little bit about the importance of JavaScript to our applications. So first, HTML alone is static and we discussed that last time, where all it is is text and we can type in any text we want, but once typed in, that's the text we have. We can use images and CSS and a lot of creativity to make the webpage attractive, but ultimately it's still static. So what we want to be able to do is make our sites more responsive to our users. For instance when they take an action we want to take some action as well and we can't do that with the plain text alone. While HTML is really great and everywhere on the internet, it's not actually a programming language. HTML is a markup language. It uses the tags we've seen in many of our examples. While it's not programming, it is still technical. As you've realized doing some of the homework, HTML takes study and practice. There are a lot of ways to go wrong and a lot of ways to be creative. So what can a programming language really do for us? Well, one of the things a programming language can do is take steps in sequence. For instance, step one, step two, step three, and so on. A programming language can also do things repetitively. Usually in a programming language we call this a loop. So, for instance, it can do something ten times if we want it to or as many times as needed. HTML can't do this. And a programming language can make a decision based on data. For instance, our user types in something. Perhaps we're looking for a number and our user types in something else besides a number. A programming language can test that and decide if it was a number or not, and take an action on it, HTML can't. So, it turns out if we can do these three things, do steps in order, do things repetitively, and make decisions based on data. A language with these abilities can solve any kind of problem that can be solved with a computer. Now, that doesn't mean it's easy. But with these basic abilities, we have a programming language. JavaScript, as we have already alluded to, is a programming language we'll use in this class. It'll give us the ability to make our pages interact with our users. And I frequently call people who will interact with our pages users but we could also call them visitors. So that's all for this lesson. In our next lesson, we'll start our examination of JavaScript syntax and introduction to programming in JavaScript.