We may earn an affiliate commission when you visit our partners.
Course image
Charles Russell Severance

This course aims to teach everyone the basics of programming computers using Python. We cover the basics of how one constructs a program from a series of simple instructions in Python. The course has no pre-requisites and avoids all but the simplest mathematics. Anyone with moderate computer experience should be able to master the materials in this course. This course will cover Chapters 1-5 of the textbook “Python for Everybody”. Once a student completes this course, they will be ready to take more advanced programming courses. This course covers Python 3.

Enroll now

What's inside

Syllabus

Chapter One - Why we Program?
These are the course-wide materials as well as the first part of Chapter One where we explore what it means to write programs. We finished Chapter One and had the quiz and first assignment in the third week of the class. Throughout the course, you may want to come back and look at these materials. This section should not take you an entire week.
Read more
Installing Python
In this module you will set things up so you can write Python programs. Not all activities in this module are required for this class so please read the "Using Python in this Class" material for details.
Chapter One: Why We Program (continued)
In the first chapter, we try to cover the "big picture" of programming so you get a "table of contents" of the rest of the book. Don't worry if not everything makes perfect sense the first time you hear it. This chapter is quite broad and you would benefit from reading the chapter in the book in addition to watching the lectures to help it all sink in. You might want to come back and re-watch these lectures after you have finished a few more chapters.
Chapter Two: Variables and Expressions
In this chapter we cover how a program uses the computer's memory to store, retrieve and calculate information.
Chapter Three: Conditional Code
In this section we move from sequential code that simply runs one line of code after another to conditional code where some steps are skipped. It is a very simple concept - but it is how computer software makes "choices".
Chapter Four: Functions
This is a relatively short chapter. We will learn about what functions are and how we can use them. The programs in the first chapters of the book are not large enough to require us to develop functions, but as the book moves into more and more complex programs, functions will be an essential way for us to make sense of our code.
Chapter Five: Loops and Iteration
Loops and iteration complete our four basic programming patterns. Loops are the way we tell Python to do something over and over. Loops are the way we build programs that stay with a problem until the problem is solved.

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Introduces learners to the fundamental aspects of programming
Teaches programming using a hands-on approach, which allows learners to gain practical experience
Taught by instructors with practical experience in computer science
Suitable for beginners new to computer programming
Covers essential programming concepts step-by-step
Offers a practical foundation for further programming courses

Save this course

Save Programming for Everybody (Getting Started with Python) to your list so you can find it easily later:
Save

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Programming for Everybody (Getting Started with Python) with these activities:
Review Python basics
Review the fundamentals of Python, including data types, control flow, and functions, to prepare for the course.
Browse courses on Python
Show steps
  • Read through the first chapter of the textbook, 'Python for Everybody', to recall basic Python syntax.
  • Complete the online tutorial 'Intro to Python' on Codecademy to practice writing simple Python programs.
Read 'Automate the Boring Stuff with Python'
Expand your Python knowledge by reading this popular book that covers practical Python applications and real-world examples.
Show steps
  • Read through the book, focusing on topics that align with the course material.
  • Work through the exercises and projects in the book to apply your understanding.
Join a study group
Collaborate with classmates to discuss course concepts, work on assignments together, and provide mutual support.
Show steps
  • Find a study group or create one with classmates who share similar learning goals.
  • Regularly meet with the group to review course material, compare notes, and solve problems.
Four other activities
Expand to see all activities and additional details
Show all seven activities
Follow online tutorials
Explore additional Python resources to supplement the course material and gain a deeper understanding of specific topics.
Show steps
  • Watch YouTube videos on Python concepts, such as 'Python Tutorial for Beginners' by Corey Schafer.
  • Read articles and blog posts on Python libraries and frameworks, such as 'The Hitchhiker's Guide to Python' by Ken Jee.
Solve coding exercises
Practice writing Python code to reinforce concepts covered in the course and improve problem-solving skills.
Show steps
  • Complete the exercises at the end of each chapter in the textbook.
  • Solve coding problems on websites like LeetCode or HackerRank to challenge yourself and apply your Python skills.
Become a mentor
Reinforce your understanding by helping others learn Python, either through peer tutoring or online forums.
Show steps
  • Identify opportunities to assist classmates or learners in online communities.
  • Provide support and guidance on Python concepts, coding practices, and course assignments.
Build a Python project
Apply your Python knowledge to create a practical project, such as a data visualization tool or a simple game, to enhance your understanding and showcase your skills.
Show steps
  • Identify a problem or need that can be solved using Python.
  • Design and implement your Python solution.
  • Test and refine your project to ensure it meets the desired outcomes.

Career center

Learners who complete Programming for Everybody (Getting Started with Python) will develop knowledge and skills that may be useful to these careers:
Software Developer
In the role of a Software Developer, you will be responsible for the design, development, and implementation of software applications. This course, Programming for Everybody (Getting Started with Python), provides a solid foundation in the basics of programming, which is essential for success in this field. Through hands-on exercises and interactive lectures, you will learn the fundamentals of Python, a widely used programming language, and gain a deep understanding of programming concepts such as variables, expressions, conditional code, functions, and loops.
Data Analyst
As a Data Analyst, you will be responsible for collecting, cleaning, and analyzing data to extract meaningful insights and inform decision-making. This course provides a strong foundation in programming, which is essential for data analysis. You will learn how to use Python to manipulate and analyze data, and gain a solid understanding of programming concepts that are commonly used in data analysis, such as conditional code, loops, and functions.
Web Developer
In the role of a Web Developer, you will be responsible for designing, developing, and maintaining websites and web applications. This course provides a solid foundation in the basics of programming, which is essential for success in this field. You will learn the fundamentals of Python, a widely used programming language, and gain a deep understanding of programming concepts such as variables, expressions, conditional code, functions, and loops. These concepts are essential for building interactive and dynamic web applications.
Computer Programmer
As a Computer Programmer, you will be responsible for writing, testing, and maintaining code for various software applications. This course provides a solid foundation in the basics of programming, which is essential for success in this field. You will learn the fundamentals of Python, a widely used programming language, and gain a deep understanding of programming concepts such as variables, expressions, conditional code, functions, and loops. These concepts are essential for developing efficient and reliable software applications.
Data Scientist
In the role of a Data Scientist, you will be responsible for extracting insights from data to solve complex problems and inform decision-making. This course provides a strong foundation in programming, which is essential for data science. You will learn how to use Python to manipulate and analyze data, and gain a solid understanding of programming concepts that are commonly used in data science, such as conditional code, loops, and functions.
Information Security Analyst
As an Information Security Analyst, you will be responsible for protecting an organization's computer systems and networks from unauthorized access, use, disclosure, disruption, modification, or destruction. This course provides a solid foundation in the basics of programming, which is essential for understanding and implementing security measures. You will learn the fundamentals of Python, a widely used programming language, and gain a deep understanding of programming concepts such as variables, expressions, conditional code, functions, and loops. These concepts are essential for developing and maintaining secure software systems.
Business Analyst
As a Business Analyst, you will be responsible for analyzing business processes and developing solutions to improve efficiency and effectiveness. This course provides a strong foundation in programming, which can be helpful in understanding and analyzing complex business systems. You will learn the fundamentals of Python, a widely used programming language, and gain a solid understanding of programming concepts such as variables, expressions, conditional code, functions, and loops. These concepts can be applied to developing software solutions or automating tasks to improve business processes.
Quality Assurance Analyst
In the role of a Quality Assurance Analyst, you will be responsible for testing and evaluating software applications to ensure they meet the required standards and specifications. This course provides a solid foundation in the basics of programming, which is essential for understanding and testing software applications. You will learn the fundamentals of Python, a widely used programming language, and gain a deep understanding of programming concepts such as variables, expressions, conditional code, functions, and loops. These concepts are essential for developing and executing effective test cases.
Technical Writer
As a Technical Writer, you will be responsible for creating user manuals, technical documentation, and other written materials to explain complex technical concepts. This course provides a solid foundation in the basics of programming, which can be helpful in understanding the technical concepts you will be writing about. You will learn the fundamentals of Python, a widely used programming language, and gain a solid understanding of programming concepts such as variables, expressions, conditional code, functions, and loops. These concepts can help you to better understand and explain technical concepts to non-technical audiences.
Project Manager
In the role of a Project Manager, you will be responsible for planning, organizing, and executing projects to achieve specific goals. This course provides a solid foundation in the basics of programming, which can be helpful in understanding and managing software development projects. You will learn the fundamentals of Python, a widely used programming language, and gain a solid understanding of programming concepts such as variables, expressions, conditional code, functions, and loops. These concepts can help you to better understand and manage software development processes.
Systems Analyst
As a Systems Analyst, you will be responsible for analyzing and designing computer systems to meet the needs of an organization. This course, Programming for Everybody (Getting Started with Python), provides a solid foundation in the basics of programming, which is essential for understanding and analyzing computer systems. Through hands-on exercises and interactive lectures, you will learn the fundamentals of Python, a widely used programming language, and gain a deep understanding of programming concepts such as variables, expressions, conditional code, functions, and loops.
Database Administrator
In the role of a Database Administrator, you will be responsible for managing and maintaining databases to ensure data integrity and availability. This course provides a solid foundation in the basics of programming, which can be helpful in understanding and managing databases. You will learn the fundamentals of Python, a widely used programming language, and gain a solid understanding of programming concepts such as variables, expressions, conditional code, functions, and loops. These concepts can help you to better understand and manage database systems.
Network Administrator
As a Network Administrator, you will be responsible for managing and maintaining computer networks to ensure network connectivity and security. This course provides a solid foundation in the basics of programming, which can be helpful in understanding and managing networks. You will learn the fundamentals of Python, a widely used programming language, and gain a solid understanding of programming concepts such as variables, expressions, conditional code, functions, and loops. These concepts can help you to better understand and manage network systems.
Computer Support Specialist
In the role of a Computer Support Specialist, you will be responsible for providing technical support to users of computer systems. This course provides a solid foundation in the basics of programming, which can be helpful in understanding and troubleshooting computer problems. You will learn the fundamentals of Python, a widely used programming language, and gain a solid understanding of programming concepts such as variables, expressions, conditional code, functions, and loops. These concepts can help you to better understand and resolve computer problems.
IT Auditor
As an IT Auditor, you will be responsible for evaluating and reporting on the effectiveness of an organization's IT systems and controls. This course provides a solid foundation in the basics of programming, which can be helpful in understanding and auditing IT systems. You will learn the fundamentals of Python, a widely used programming language, and gain a solid understanding of programming concepts such as variables, expressions, conditional code, functions, and loops. These concepts can help you to better understand and audit IT systems and controls.

Featured in The Course Notes

This course is mentioned in our blog, The Course Notes. Read one article that features Programming for Everybody (Getting Started with Python):

Reading list

We've selected 32 books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Programming for Everybody (Getting Started with Python).
Is the textbook for this course and covers the same material. It provides a comprehensive overview of the basics of Python programming.
Focuses more on projects than concepts, making it immensely useful for those interested in learning how to code in Python in a practical way.
Practical guide to Python programming. It covers a wide range of topics, from basic syntax to more advanced concepts like web scraping and data analysis. It valuable resource for anyone who wants to learn Python for either personal or professional reasons.
Comprehensive reference guide to Python. It covers a wide range of topics, from basic syntax to more advanced concepts like object-oriented programming and data structures. It valuable resource for Python programmers of all levels.
Comprehensive reference guide for Python programmers. It covers a wide range of topics, from basic syntax to more advanced concepts like decorators and metaclasses. It is an excellent resource for both beginners and experienced Python programmers.
Covers fundamental programming concepts in Python, providing a solid foundation for beginners.
Provides a comprehensive introduction to Python for data analysis. It covers topics such as data cleaning, data manipulation, and data visualization. It is an excellent resource for data analysts and data scientists who want to learn how to use Python for data analysis.
Is an introduction to using Python for web development with Django. It covers a wide range of topics, from basic concepts like setting up a Django project to more advanced topics like deploying a Django application. It valuable resource for Python programmers of all levels.
Provides a visual, interactive, and humorous approach to learning Python. It is helpful for beginners who want to learn the basics of Python in a fun and engaging way. However, note that it might not be as suitable for those looking for a more in-depth or technical treatment of the subject.
Provides practical advice on how to write better Python code. It covers a wide range of topics, from basic coding conventions to more advanced topics like performance optimization and testing. It is an excellent resource for intermediate and advanced Python programmers who want to improve their coding skills.
Provides a comprehensive introduction to Python programming. It covers a wide range of topics, from basic syntax to more advanced concepts like object-oriented programming and data structures. It is an excellent choice for those who want to learn the fundamentals of Python programming in a clear and concise way.
Presents a comprehensive overview of Python programming, including object-oriented programming and data structures.
Serves as a comprehensive reference guide, providing detailed information on Python syntax, libraries, and best practices.
Emphasizes computational thinking and problem-solving techniques, providing a solid foundation for future programming endeavors.
Challenges learners with a rigorous and hands-on approach, promoting deep understanding of Python fundamentals.
Covers machine learning and deep learning techniques in Python, but may require additional prerequisite knowledge.
Introduces natural language processing techniques in Python, but requires prior programming and linguistics knowledge.

Share

Help others find this course page by sharing it with your friends and followers:
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser