0% found this document useful (0 votes)
104 views

Introduction To Programming Nanodegree Syllabus: Before You Start

This document outlines the syllabus for an Introduction to Programming Nanodegree program. It includes 5 projects of increasing complexity focused on HTML, CSS, Python, and programming career paths. Students will learn to make basic web pages, style pages with CSS, program in Python including object-oriented concepts, and explore programming career options. The estimated time commitment is 17-19 weeks or approximately 4.5 months, working 10 hours per week. Supporting lessons are provided between projects to teach relevant programming concepts.

Uploaded by

Aparna
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
104 views

Introduction To Programming Nanodegree Syllabus: Before You Start

This document outlines the syllabus for an Introduction to Programming Nanodegree program. It includes 5 projects of increasing complexity focused on HTML, CSS, Python, and programming career paths. Students will learn to make basic web pages, style pages with CSS, program in Python including object-oriented concepts, and explore programming career options. The estimated time commitment is 17-19 weeks or approximately 4.5 months, working 10 hours per week. Supporting lessons are provided between projects to teach relevant programming concepts.

Uploaded by

Aparna
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

Introduction to Programming

Nanodegree Syllabus
Learn to Code

Before You Start


Thank you for your interest in the Introduction to Programming Nanodegree! In order to succeed, we
recommend having experience using the web, being able to perform a search on Google, and (most
importantly) the determination to keep pushing forward! Prior programming experience is not required.

Estimated Time Commitment


Depending on how quickly you work through the material, the amount of time required is variable. We have
included an hourly estimation for each section of the program. If you spend about 10 hours per week
working through the program, you should nish in 17 - 19 weeks, so approximately 4.5 months.

Project: Getting Started with HTML Estimated Time: 10 hours


For this project, you will submit your very rst programming le containing HTML code. HTML is the coding
language for building websites. We recommend taking notes from this section and using your notes as the
content for your HTML le. This project is not graded. Our reviewers will provide you with helpful
suggestions and advice for learning in this program.

Supporting Lesson Content: Intro to the Web and HTML Basics

Lesson Title Learning Outcomes

Welcome to the Understanding on how to set up for the program on your personal device
Nanodegree Introduction to the Programmer Mindset
Successfully writing and rendering your rst lines of HTML code with a
text editor and browser

Nanodegree Orientation Understanding on how to submit projects


Understanding on student support services oered for students
Student Forums, Slack Community, 1:1 Video Appointments
Habits of Successful Students

The World Wide Web High level overview on how the web works

Components of the web: browsers, HTTP requests, Servers, the Internet

HTML Basics HTML tags


Adding Images
HTML Syntax
Whitespace
Inline vs Block elements
HTML Document Structure

Project: Make a Web Page Estimated Time: 30 hours


In this section, youll learn both HTML and CSS - both languages for developing websites. For the project,
you'll use HTML and CSS to make a stylish web page on any topic. You will apply your knowledge of HTML
Document Structure to your html le and then create custom CSS styling based on your personal
preferences. This project will demonstrate your understanding of linking CSS les in HTML les,
implementing CSS classes to avoid repetition, as well create semantically organized HTML code.

Supporting Lesson Content: HTML Syntax & CSS

Lesson Title Learning Outcomes

Creating a Structured Page Structure


Document Visual Styling
Designing with Boxes

Work Session: HTML Apply what youve learned to your rst project
Structure Share and Discuss on the Student Forums

Adding CSS for Style Understanding CSS


Divs, Spans, and Classes
Semantic Tags
Using DevTools in the Browser
Verifying HTML and CSS les
Debugging HTML and CSS code

Work Session: CSS Practice Apply what youve learned to your own html and css les
Continued Learning opportunities with pre-recording webcast sessions

Project: Code Your Own Quiz Estimated Time: 60 hours


In this section, you will learn the Python programming language. You will nish by building your own
ll-in-the blank style quiz that can even be used as a study tool to help you remember important vocabulary.

Supporting Lesson Content: Python Programming

Lesson Title Learning Outcomes

Getting Setup with Python Installing Python and learning Command Line Interface (CLI) basics

Introduction to Serious Write your rst lines of Python code


Programming Learn about language ambiguity:human language vs computer language
Python expressions for math problems

Basic Debugging Explore syntax error messages and troubleshoot basic Python code

Variables & Strings Learn how to store values in Variables and work with text as Strings
Selecting substrings with String Indexing

String Manipulation Use String methods: slicing, concatenation, nd, and replace

Input Function Learn how to use functions to take an input and transform it into some
Output output

Print vs Return Understand the dierence between print and return statements

Control Flow & Loops Learn how to manage the ow of a computer program using Boolean
values, if statements, and While loops

Debugging Get acquainted with ve key debugging strategies to help you address
problems in your code

Mad Libs Generator Use the skills youve learned so far to continue developing your Mad Libs
generator

Structured Data: Lists & Use Lists to store more complex data
For Loops Use For loops to programmatically access each item within a List

How to Solve Problems Practice problem-solving techniques by breaking down large problems
into smaller ones.

Project: Create a Movie Website Estimated Time: 40 hours


For this project, you'll write code to store a list of your favorite movies, including box art imagery and a
movie trailer URL. You will then use your code to generate a static web page allowing visitors to browse their
movies and watch the trailer.

Supporting Lesson Content: Object-Oriented Programming

Lesson Title Learning Outcomes

Mini-Project: Take a Break Using documentation to nd useful libraries for problem-solving


Create a program that uses Python modules: time and webbrowser

Mini-Project: Secret Learn how to open les with Python code


Message Use documentation to learn how to rename les
Decode a secret message with Python module: os

Mini-Project: Draw Turtles Use Python Turtle graphics to create shapes with a GUI (graphical user
interface)
Understanding of Classes and Objects in Python

Mini-Project: Send a Text Use the Twilio API to make a program that sends a text message to your
phone

Mini-Project: Profanity Create program that checks for profanity in a message and replaces curse
Editor words

Movie Website Creation Make a movie website using the concept of Classes in Python as well as
your understanding of HTML & CSS

Advanced Class Making Learn about advanced ideas in Object Oriented Programming like class
variables, inheritance, reusing methods, and method overloading

Discover Your Path Estimated Time: 10 hours


In this section, there is no project submission. Instead, you will explore a quick overview of the vast world of
programming. After this section, you'll have a better understanding of dierent options you have as a
programmer. This will help guide to in your nal project for this program.

Supporting Lesson Content: Exploration of Five Programming Career Tracks

Lesson Title Learning Outcomes

Front-End Programming Learn about front-end web developers who create intuitive and
responsive websites

Back-End Programming Learn about back-end web programmers who write server-side code to
build web apps that serve millions of people worldwide

Mobile Programming Learn about mobile programming and the dierences between iOS and
Android programming

Data Analysis Learn about data analysts who analyze data to direct growth and make
Programming informed decisions

Reverse Engineer Project Dissect a fully-functioning web app and identify the roles of various
Compass programmers in its creation

Project: Choose Your Path - Final Project Estimated Time: 20 - 40 hours


Choose one of the ve paths (Front-End, Back-End, Android, Data Analyst, or iOS) and complete the
associated course and project of your choosing. After you have met specications on one of these project
options (as well as the other required projects), you'll be eligible to graduate.

Supporting Lesson Content: Choice of content from ve career-track programs.

Elective Title Learning Outcomes

Front-End Developer This Project is all about demonstrating your mastery of HTML, CSS, and
Project: Memory Game JavaScript. Youll build a complete browser-based card matching game
(also known as Concentration). But this isnt just any memory game! Its a
snazzy, well-designed, and feature-packed memory game!

Back-End Developer In this project, you'll practice your SQL skills by building a reporting tool
Project: Logs Analysis that summarizes data from a large database.

Android Developer In this project, you will build your rst Android app - a design for a local
Project: Your First App business that could be used as a business card.

Data Analyst In this project, you will choose one of Udacity's curated datasets and
Project: Investigate a investigate it using NumPy and pandas. Youll complete the entire data
Dataset analysis process, starting by posing a question and nishing by sharing
your ndings.

iOS Developer In this project, you will create an iPhone app that records a conversation
Project: Pitch Perfect with you and a friend and plays it back to make you sound like a chipmunk
or Darth Vader!

You might also like