SCHOOL OF PROGRAMMING AND DEVELOPMENT
Introduction to
Programming
Syllabus
UDACITY.COM
INTRODUCTION TO PROGRAMMING
Overview
Welcome to the world of programming! Learn the skills that all programmers use, whether they build apps, web pages,
or analyze data.
Nanodegree Program Beginner 109 hours 4.8 (1339 Reviews)
Prerequisites
No required prerequisites.
You will also need to be able to communicate fluently and professionally in written and spoken English.
Skills You'll Learn
Introduction to Web Development
CSS | HTML | Front-end development basics | Code debugging | Devtools | Flexbox
Introduction to Programming with Python I
Control flow in Python | Command line interface basics | Python functions | Code debugging | Python operators | Text
processing in Python | Variable scope | Python syntax | User input handling | Python standard library | Python data
structures | Coding best practices | Python data types | Linting | Python scripting | Pep8 | Code refactoring | Bash
| Shell scripting | Built-in Python functions | Python turtle | Python function definition | Commenting code | Python
variables | Basic Python
Introduction to Programming with Python II
Object-oriented Python | Python data structures | Text processing in Python | Python classes | API requests | Python
methods | JSON | Python exception handling | Python lists | Computer memory architecture
UDACITY.COM
INTRODUCTION TO PROGRAMMING
Courses
01. Welcome and Orientation 45 minutes
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.
L1 Welcome and Orientation In 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.
L2 Getting Help You are starting a challenging but rewarding journey! Take 5 minutes to read
how to get help with projects and content.
02. Introduction to Web Development 14 hours
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!
L1 The Web and HTML In 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.
L2 Basic HTML Page In this first lab, you'll demonstrate your understanding of HTML basics by
turning your notes from the lesson into a working HTML web page.
L3 Styling with CSS Learn how to add style to your website by using Cascading Style Sheets (CSS).
L4 Project: Use your knowledge of HTML and CSS to create a web-based trading card
Animal Trading Cards depicting your favorite animal.
03. Introduction to Programming with Python I 34 hours
UDACITY.COM
INTRODUCTION TO PROGRAMMING
Learn basic programming with Python, one of the most versatile and widely used programming languages! You'll
first learn core programming concepts and fundamental Python syntax by writing code to make a virtual "turtle"
robot draw colorful shapes on the screen. You'll then learn how to write Python functions, run Python from a
Command-Line Interface (CLI), manipulate strings and lists, and refactor your code to improve its structure and
make it more modular.
L1 Introduction to VS Code workspaces
L2 Turtles and Code Get started learning core programming concepts with Python, while writing
instructions to make a virtual "turtle" robot draw colorful shapes on the
screen.
L3 Python Functions Expand your knowledge of Python by learning to write functions and
conditional statements.
L4 Shell Workshop The 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.
L5 Python at Home Install Python on your own computer so you can write code anytime!
L6 Strings and Lists Learn to work with strings and text in your Python code.
L7 Style and Structure Get practice writing longer programs, and improving their structure and style.
L8 Project: Demonstrate your Python skills by coding a simple version of an old-fashioned
Adventure Game text-based adventure game.
04. Introduction to Programming with Python II 24 hours
Continue to advance your skills as a beginning programmer! Python is one of the most versatile and widely used
programming languages. In this second-level course, you will build on your understanding of fundamental Python
and learn some more advanced skills, including how to work with files on your computer's disk and how to use
Object-Oriented Programming (OOP) to create classes, objects, and methods.
L1 Introduction In 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.
L2 Working with files Learn 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.
L3 Web APIs Learn to interact with Web APIs using the requests module, manipulate JSON,
and use dictionaries.
UDACITY.COM
INTRODUCTION TO PROGRAMMING
L4 Objects and Classes Learn to create new kinds of data object using classes, including creating your
own methods.
L5 Project: Apply your Python and Object-Oriented Programming knowledge to create a
Rock Paper Scissors game of Rock Paper Scissors where a human can play against a computer
player!
05. Introduction to Javascript 36 hours
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.
L1 Introduction to VS Code workspaces
L2 What is JavaScript Learn the history of JavaScript and start writing your code immediately using
the JavaScript console.
L3 Data Types & Variables Learn to represent real-world data using JavaScript variables, and distinguish
between the different data types in the language.
L4 Conditionals Learn how to add logic to your JavaScript programs using conditional
statements.
L5 Loops Harness the power of JavaScript loops to reduce code duplication and
automate repetitive tasks.
L6 Functions Dive into the world of JavaScript functions. Learn to harness their power to
streamline and organize your programs.
L7 Arrays Learn how to use Arrays to store complex data in your JavaScript programs.
L8 Objects Meet the next JavaScript data structure: the Object. Learn to use it to store
complex data alongside Arrays.
L9 Project: In this project, you will use your JavaScript development skills to build the core
Build a Shopping Cart functionality of an eCommerce shopping cart for Kirana's fruit market.
06. Congratulations! What's next? 45 minutes
UDACITY.COM
INTRODUCTION TO PROGRAMMING
Great work finishing the program! Here's some info on next steps in your programming journey.
L1 Congratulations! What's next? Great work finishing the program! Here's some advice on next steps in your
programming journey.
07. Git and GitHub 7 hours
Programmers 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.
L1 What is Version Control Version 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!
L2 Create a Git Repo Now that you've learned the benefits of Version Control and gotten Git
installed, it's time you learn how to create a repository.
L3 Commits, Tags, Conflicts Knowing 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.
L4 Remotes and Developer Repos In 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.
L5 Writing READMEs for Repos Learn the importance of well documented code and see how to craft
meaningful READMEs.
UDACITY.COM
INTRODUCTION TO PROGRAMMING
Meet Your Instructors
Kelly Howard Karl Krueger
Instructor Command Line Instructor
Kelly was previously a Product Manager at Brainjolt and a Learning Before joining Udacity, Karl was a Site Reliability Engineer (SRE) at
Experience Designer at Pathstream. She is currently a Marketing Google for eight years, building automation and monitoring to keep
Automation Manager where she leads automation, analytics, and the world's busiest web services online.
systems design for Pathstream's B2C business.
Rachel Manning Abe Feinberg
Science Teacher and Educational
Full Stack Developer
Psychologist
Rachel is a full stack freelance developer and educator where she Abe is a science teacher and educational psychologist who loves
spent 3 years as a bootcamp curriculum developer while developing learning and finding out how things work. He has a particular interest
full stack freelance projects. An advocate for continued learning, she in using AI to optimize education, and his ultimate goal is to replace
is passionate about mentoring women and underserved community himself with a robot that can teach better than he can.
in technology.
Richard Kalehoff Julia Van Cleve
Instructor Instructor
Richard is a Course Developer with a passion for teaching. He has Julia is a Content Developer at Udacity and was previously a middle
a degree in computer science, and first worked for a nonprofit school math teacher in San Jose, CA. She also dabbled in freelance web
doing everything from front end web development, to backend development, designing websites for small businesses in the Bay Area.
programming, to database and server management.
James Parkes
Instructor
James received his degree in Computer Science and Mathematics,
then went on to become a Udacity instructor in several programs. His
personal mission is clear: to open the doors of opportunity for others
by empowering them with excellent educational experiences.
UDACITY.COM
INTRODUCTION TO PROGRAMMING
Why Udacity
Demonstrate proficiency with practical projects
Projects are based on real-world scenarios and challenges, allowing you to apply the skills you
learn to practical situations, while giving you real hands-on experience
Gain proven experience Retain knowledge longer Apply new skills immediately
24/7 access to real human support
Reviewers provide timely and constructive feedback on your project submissions, highlighting
areas of improvement and offering practical tips to enhance your work
Get help from subject matter experts Gain valuable insights and improve your skills
Learn industry best practices
UDACITY.COM