About the content
In this introduction to computer programming course, you’ll learn and practice key computer science concepts by building your own versions of popular web applications. You’ll learn Python, a powerful, easy-to-learn, and widely used programming language, and you’ll explore computer science basics, as you build your own search engine and social network.
Lesson 1: How to Get Started- Interview with Sergey Brin - Getting Started with Python - Processors - Grace Hopper - Variables - Strings and Numbers - Indexing Strings - String Theory
Lesson 2: How to Repeat- Introducing Procedures - Sum Procedure with a Return Statement - Equality Comparisons - If Statements - Or Function - Biggest Procedure - While Loops - Print Numbers
Lesson 2.5: How to Solve Problems- What are the Inputs - Algorithm Pseudocode - Optimizing
Lesson 3: How to Manage Data- Nested Lists - A List of Strings - Aliasing - List Operations - List Addition and Length - How Computers Store Data - For Loops - Popping Elements - Crawl Web
Lesson 4: Responding to Queries- Data Structures - Lookup - Building the Web Index - Latency - Bandwidth - Buckets of Bits - Protocols
Lesson 5: How Programs Run- Measuring Speed - Spin Loop - Index Size vs. Time - Making Lookup Faster - Hash Function - Testing Hash Functions - Implementing Hash Tables - Dictionaries - Modifying the Search Engine
Lesson 6: How to Have Infinite Power- Infinite Power - Counter - Recursive Definitions - Recursive Procedures - Palindromes - Recursive v. Iterative - Divide and Be Conquered - Ranking Web Pages
Lesson 7: Past, Present, and the Future of Computing- Past of Computing - Computer History Museum - First Hard Drive - Search Before Computers - Present of Computing - Slac and Big Data - Open Source - Future of Computing - Text Analysis - Energy Aware Computing - Computer Security - Quantum Computing
- Dave Evans - David Evans is a Professor of Computer Science at the University of Virginia where he teaches computer science and leads research in computer security. He is the author of an introductory computer science textbook and has won Virginia's highest award for university faculty. He has PhD, SM, and SB degrees from MIT.
Udacity is a for-profit educational organization founded by Sebastian Thrun, David Stavens, and Mike Sokolsky offering massive open online courses (MOOCs). According to Thrun, the origin of the name Udacity comes from the company's desire to be "audacious for you, the student". While it originally focused on offering university-style courses, it now focuses more on vocational courses for professionals.