[MUSIC] Hi, and welcome back. In our last lesson, we looked at JavaScript loops, specifically while loops and for loops. In this lesson, we'll look at an approach to creating new features in your software. First of all, I want to recommend that you spend a lot of time looking at other people's web pages and software. And when you're doing this, don't be passive. It's important to be curious. Try to figure out how it works. Where you can, look at the code. If you recognize a feature, great. If you don't recognize it, try to learn something new about it. When you find things you like, try developing a version of that for yourself. After you think you've imitated it well, try then to vary it and make it your own feature. You're going to face some difficult problems while you're developing software, particularly when you're developing something that you haven't tried before. The best way to deal with this in my experience is to break down your problem into very small parts. Now, the reason for this is because very small problems are easier to solve than large problems. But for some reason when we're developing software, particularly early on in our experiences, we try to tackle problems that are too large. So similar to say, for instance, cooking a very large meal for a company or making a side dish. It's easier to make a side dish and we can practice it more readily. But if we try to make a very meal for a large group of company and we haven't done it before, it's not likely to go well. And it's the same thing you'll find with developing software. So make the problems just as small as you possibly can and tackle those small problems, and then build those into bigger solutions. When you can, work on your projects with other people and talk about your challenges. What's often true is somebody else has faced your problem and they know a solution, and they can help you, and you may have faced a problem they're facing now, and you know a solution, and you can help them. Whenever you have an opportunity to, you should teach and learn from others. This will cement your skills as a web developer. It's important to continue to study and practice. This field changes all the time. There's always more to learn and practice is a necessity. Lastly, it is very important to be stubborn and refuse to give up. I say this, because in this course, you've probably faced a few programs and exercises that you thought were difficult. If you're here at this point, you've been stubborn and you haven't given up. Keep that up, because the problems are fierce at times and it is really worthwhile to give it your best effort. And eventually, through determination, win. In our next lesson, we'll be looking at some guided practice for our HTML forms and form validation.