Course 1: Welcome and Orientation Welcome to the Introduction to Programming Nanodegree program. This is your first step on your journey to become a programmer. Learn what this program is all about as well as how to find support along your learning journey.45 minutesWelcome and OrientationIn this lesson, we'll introduce you to your instructors, give you an overview of what you'll be learning, and tell you how to get help and support when you need it.Getting HelpYou are starting a challenging but rewarding journey! Take 5 minutes to read how to get help with projects and content.Course 2: Introduction to Web Development Get acquainted with how the web works! Learn about your browser, the internet, and a filetype called HTML. HTML stands for "Hypertext Markup Language." HTML is the language used to create webpages. Learn the basics of HTML to create a simple web page!14 hoursThe Web and HTMLIn this lesson, we'll be exploring how to create web pages—and, along the way, you'll learn some important concepts about how computer languages work.Basic HTML PageIn this first lab, you'll demonstrate your understanding of HTML basics by turning your notes from the lesson into a working HTML web page.Styling with CSSLearn how to add style to your website by using Cascading Style Sheets (CSS).Animal Trading CardsUse your knowledge of HTML and CSS to create a web-based trading card depicting your favorite animal.Course 3: Introduction to Programming with Python I Begin with the basics and build coding confidence. In this course, you’ll write your first Python programs, explore concepts like functions and control flow, and create an interactive adventure game.34 hoursIntroduction to VS Code workspacesTurtles and CodeGet started learning core programming concepts with Python, while writing instructions to make a virtual "turtle" robot draw colorful shapes on the screen. Python FunctionsExpand your knowledge of Python by learning to write functions and conditional statements.Shell WorkshopThe Unix shell is a powerful tool for developers of all sorts. In this lesson, you'll get a quick introduction to the very basics of using it on your own computer.Python at HomeInstall Python on your own computer so you can write code anytime!Strings and ListsLearn to work with strings and text in your Python code.Style and StructureGet practice writing longer programs, and improving their structure and style.Adventure GameDemonstrate your Python skills by coding a simple version of an old-fashioned text-based adventure game. Course 4: Introduction to Programming with Python II Expand on your Python basics by exploring files, APIs, and object-oriented programming. Strengthen your skills while creating classes, handling data, and coding a Rock Paper Scissors game from scratch.24 hoursIntroductionIn this lesson, we'll introduce you to your instructors, give you an overview of what you'll be learning, and provide a review you can use to check your pre-existing Python skills.Working with filesLearn to work with files on your disk using Python code: listing files in a directory, moving files around, and reading & writing the contents of text files.Web APIsLearn to interact with Web APIs using the requests module, manipulate JSON, and use dictionaries. Objects and ClassesLearn to create new kinds of data object using classes, including creating your own methods.Rock Paper ScissorsApply your Python and Object-Oriented Programming knowledge to create a game of Rock Paper Scissors where a human can play against a computer player!Course 5: Introduction to Javascript In this course, you will use learn the basics of JavaScript! You will learn how to create and use the primary data types in JavaScript and how to use conditionals and loops to control the flow of your JavaScript code. You'll write your first JavaScript functions and you'll learn how to use arrays and objects to store collections of data. By the end of the course, you use your new JavaScript knowledge to build the core functionality of an eCommerce shopping cart.36 hoursIntroduction to VS Code workspacesWhat is JavaScriptLearn the history of JavaScript and start writing your code immediately using the JavaScript console.Data Types & VariablesLearn to represent real-world data using JavaScript variables, and distinguish between the different data types in the language.ConditionalsLearn how to add logic to your JavaScript programs using conditional statements.LoopsHarness the power of JavaScript loops to reduce code duplication and automate repetitive tasks.FunctionsDive into the world of JavaScript functions. Learn to harness their power to streamline and organize your programs.ArraysLearn how to use Arrays to store complex data in your JavaScript programs.ObjectsMeet the next JavaScript data structure: the Object. Learn to use it to store complex data alongside Arrays.Build a Shopping CartIn this project, you will use your JavaScript development skills to build the core functionality of an eCommerce shopping cart for Kirana's fruit market. Course 6: Congratulations! What's next? Great work finishing the program! Here's some info on next steps in your programming journey.45 minutesCongratulations! What's next?Great work finishing the program! Here's some advice on next steps in your programming journey.Course 7: OptionalGit and GitHub OptionalProgrammers use version control software to manage changes to software projects large and small. In these lessons you will learn to keep track of changes to your code using the Git version control software, and collaborate with other programmers using GitHub.7 hoursWhat is Version ControlVersion control is an incredibly important part of a professional programmer's life. In this lesson, you'll learn about the benefits of version control and install the version control tool Git!Create a Git RepoNow that you've learned the benefits of Version Control and gotten Git installed, it's time you learn how to create a repository.Commits, Tags, ConflictsKnowing how to review an existing Git repository's history of commits is extremely important. You'll learn how to do just that in this lesson.Remotes and Developer ReposIn this lesson, you'll learn how to fork another developer's project. Collaborating with other developers can be a tricky process, so you'll learn how to contribute to a public project.Writing READMEs for ReposLearn the importance of well documented code and see how to craft meaningful READMEs.CompanyAbout Us Why Udacity? Blog In the News Jobs at Udacity Become a Mentor Partner with Udacity ResourcesCatalog Career Outcomes Help and FAQ Scholarships Resource Center Udacity SchoolsSchool of Artificial Intelligence School of Autonomous Systems School of Business School of Cloud Computing School of Cybersecurity School of Data Science School of Executive Leadership School of Product Management School of Programming and Development Career Resources Featured ProgramsBusiness Analytics SQL AWS Cloud Architect Data Analyst Intro to Programming Digital Marketing Self Driving Car Engineer Only at UdacityArtificial Intelligence Deep Learning Digital Marketing Flying Car and Autonomous Flight Engineer Intro to Self-Driving Cars Machine Learning Engineer Robotics Software Engineer