Hello, and welcome to this introduction to Advanced Python for cybersecurity course. In this video, we're going to start out with an introduction to Python before we dive into the nuts and bolts of how the course is going to work. We'll have a couple of topics of discussion in this video. The first is answering the question, why Python for this learning path? Then we'll talk about a few ways that you can prepare for this learning path to make sure the experience is as good as possible. Let's get started. That question, why Python? I mean, the name of the learning path is advanced Python for cybersecurity, so it makes sense that Python is a language we'll use in it. However, why did we choose Python out of all potential options? There are three main reasons for this. The first is popularity. Python is a very widely used programming language. This means there's a really good chance that you already know some Python. We have chosen Python because that popularity means that it's easier for many people to transition into using Python for cybersecurity automation. If you already know the language, it's much easier to learn how to use it for cybersecurity use cases than if you have to learn a new language and how to use it all in one course. The second reason we chose python is ease of use. Part of this is if you don't know any Python or if you have a very limited exposure to Python, Python is are really easy to learn and to read. If you look at Python code, even if you don't have much of a programming background, you can get a pretty good idea of what's going on in a code sample. It's useful for learning it, and it's also useful for using Python for a particular use case. In cybersecurity, often when you're automating something, it's because you don't have a lot of time to do it. Using a language that's easy to use, easy to write just makes sense. Then the third reason we're using Python in this learning path is the power built into Python. Python's Core distribution already lets you do a lot of stuff very, very easily. But Python also has a number of very powerful libraries that are freely available. This makes it a lot easier to develop more advanced and complex use cases and scripts than it would be if you had to write that code from scratch. For example, we use scapy a lot in this course for network traffic analysis. The reason why is scapy makes it really easy to build packets, to dissect them, or to listen to them on the network. If you had to write your own parser to take a network packet, understand what all the bits mean, break them into fields, and then finally actually use that packet, doubt you're going to be doing as much with network traffic analysis than if you can import scapy and immediately start diving into doing what you actually want to do with the code. These are our three main reasons why we're focusing on Python for cybersecurity as opposed to some other programming language. With the why out of the way, let's start talking about how to prepare for the course. This learning path is designed to be interactive. If you're just watching these videos and looking at the code on the screen as we talked through it, you're doing it wrong. We provide the code samples that go along with this course so that you're able to run the code yourself, tinker with it, etcetera. The code that we provide is one example of how to do something for one particular use case. There's often little tweaks that you can make to expand its functionality. Then there's the potential to write similar code to address other use cases. You really need to be able to run Python code on your computer to really get the full benefit of this experience. So how should you get set up? The first step is to install some variation of Python 3. Most of the code in this course was written with Python 3.9, a major version. If you have at least 3.9, it's probably going to work for you. However, I'm going to say here, if you're using Python 2 please switch both for this learning path and in general, Python 2 reached end of life. It's no longer supported. The code samples in this learning path aren't going to work in Python 2. Also, you have the potential that any new vulnerabilities discovered in Python 2 won't actually be fixed. You still have Python 2 on your computer and you're using it out of habit, now's a great time to switch over. Assuming that you've downloaded Python and installed on your computer, next step is to download the code samples from the repository. Link for this is on your handout. Just browse there and make sure you've got a copy of the code that we'll be talking through in this learning path before we go through the relevant video for each section. Then finally, we talked about just a moment ago, the fact that Python is very powerful and provides a variety of different libraries. We're going to be using some of those libraries that go beyond the core Python distribution. If you've downloaded the code samples from the repo, you should see a file in there called requirements.txt that has a list of the names of the various Python libraries that you're going to need. If you want, you can go through and install them all manually yourself. Or you can use the command there, "python -m pip install -r requirements.txt" in the folder where that requirements.txt file is located. That'll just have Python automatically install all of the libraries you need. With that and the code samples, you're ready to start this learning path. Just as a quick recap, we've chosen Python because it's popular, it's easy to use, and it's powerful. All three good reasons to focus on Python for cybersecurity rather than some other programming language. Then talked about some preparation for this learning path. You need to be able to run the code. Please just set up your environment now before moving on to the next video, we're not going to be running any code in next video, but we don't want you to forget. Thank you.