Programming with Python

Write effective Python code for solving complex business problems

Download Brochure

Get Your Brochure

Course Dates

STARTS ON

TBD

Course Duration

DURATION

10 weeks, online
5-10 hours per week

Course Fee

PROGRAM FEE

Course Fee

For Your Team

Enroll your team and learn with your peers

Learn More

Key Outcomes

Python’s scope is nearly limitless. Data scientists, engineers, and developers are flocking to Python because it is versatile for applications ranging from web development to data science and from artificial intelligence to cybersecurity. In this program, you will learn the essentials of Python coding*:

  • Identify, interpret, and apply core programming building blocks in Python code
  • Use algorithmic thinking to break up problems into smaller pieces and solve each piece individually
  • Recognize and apply best industry practices for programming
  • Interpret, use, and build on existing code and Python libraries

*Note: No prior programming knowledge is required.

Program Modules

Designed as an online program focused on writing code using common structures in the Python programming language, content is shared via recorded faculty videos and live office hours with learning facilitators.

Module 1:

Writing Your First Program

  • Interpret and write code using variables
  • Recognize error messages in Python code
  • Demonstrate understanding of Python's core syntax rules
  • Translate simple algorithms to Python functions

Module 2:

Programming with Basic Logical Structures

  • Recognize and use basic data operators on Boolean
  • Interpret and write the correct syntax for conditionals
  • Recognize, interpret, and write programs with conditionals
  • Recognize and interpret programs with multiple interacting functions
  • Identify and solve programming errors through established debugging strategies

Module 3:

Expanding Logical Structure with Iteration

  • Recognize, interpret, and write programs using while loops and for loops
  • Apply indexes and slices to strings and lists to access individual parts
  • Recognize, interpret, and write programs that iterate through lists and strings with for loops
  • Evaluate provided test sets and write new test sets to verify that code works as expected

Module 4:

Deeper Applications of Iteration

  • Recognize, interpret, and write programs with nested loops
  • Recognize and interpret basic recursive functions
  • Translate simple recursive algorithms to Python functions

Module 5:

Applying Logic to Large Data Sets

  • Interpret and write code using operators, functions, and methods on strings and lists
  • Recognize and use common string and list methods
  • Identify the differences between mutable and immutable data types
  • Interpret documentation to find pre-existing methods that fulfill specific needs

Module 6:

Algorithmic Thinking and Problem Solving

  • Identify whether a problem can be solved by following an algorithm, applying a pattern
  • Use top-down design to break up medium-sized programming tasks into smaller pieces, solving each piece individually
  • Apply general style principles to write readable code

Module 7:

Practical Approaches to Efficiency

  • Express the efficiency of code snippets using well-established standards of abstraction
  • Recognize differences in algorithmic approaches based on computational efficiency
  • Identify differences in basic data structures, such as lists, sets, and dictionaries, based on computational efficiency
  • Interpret and write code using operators, functions, and methods on sets and dictionaries

Module 8:

Structuring Programs with Object-Oriented Programming

  • Recognize object-oriented programming constructs, such as objects, classes, fields, and methods
  • Correctly structure code using object-oriented programming constructs

Module 9:

Using Python Libraries for Greater Productivity

  • Interpret and write code that reads and writes data from files in the computer system
  • Interpret and use components from the documentation of Python libraries
  • Use online sources to find, compare, and install Python libraries

Module 10:

Putting Things Together – Capstone Project

  • Recognize best industry practices for writing and managing large programs. Write a medium-level program (300-500 lines) with some level of guidance

Module 1:

Writing Your First Program

  • Interpret and write code using variables
  • Recognize error messages in Python code
  • Demonstrate understanding of Python's core syntax rules
  • Translate simple algorithms to Python functions

Module 6:

Algorithmic Thinking and Problem Solving

  • Identify whether a problem can be solved by following an algorithm, applying a pattern
  • Use top-down design to break up medium-sized programming tasks into smaller pieces, solving each piece individually
  • Apply general style principles to write readable code

Module 2:

Programming with Basic Logical Structures

  • Recognize and use basic data operators on Boolean
  • Interpret and write the correct syntax for conditionals
  • Recognize, interpret, and write programs with conditionals
  • Recognize and interpret programs with multiple interacting functions
  • Identify and solve programming errors through established debugging strategies

Module 7:

Practical Approaches to Efficiency

  • Express the efficiency of code snippets using well-established standards of abstraction
  • Recognize differences in algorithmic approaches based on computational efficiency
  • Identify differences in basic data structures, such as lists, sets, and dictionaries, based on computational efficiency
  • Interpret and write code using operators, functions, and methods on sets and dictionaries

Module 3:

Expanding Logical Structure with Iteration

  • Recognize, interpret, and write programs using while loops and for loops
  • Apply indexes and slices to strings and lists to access individual parts
  • Recognize, interpret, and write programs that iterate through lists and strings with for loops
  • Evaluate provided test sets and write new test sets to verify that code works as expected

Module 8:

Structuring Programs with Object-Oriented Programming

  • Recognize object-oriented programming constructs, such as objects, classes, fields, and methods
  • Correctly structure code using object-oriented programming constructs

Module 4:

Deeper Applications of Iteration

  • Recognize, interpret, and write programs with nested loops
  • Recognize and interpret basic recursive functions
  • Translate simple recursive algorithms to Python functions

Module 9:

Using Python Libraries for Greater Productivity

  • Interpret and write code that reads and writes data from files in the computer system
  • Interpret and use components from the documentation of Python libraries
  • Use online sources to find, compare, and install Python libraries

Module 5:

Applying Logic to Large Data Sets

  • Interpret and write code using operators, functions, and methods on strings and lists
  • Recognize and use common string and list methods
  • Identify the differences between mutable and immutable data types
  • Interpret documentation to find pre-existing methods that fulfill specific needs

Module 10:

Putting Things Together – Capstone Project

  • Recognize best industry practices for writing and managing large programs. Write a medium-level program (300-500 lines) with some level of guidance
Download Brochure

Program Experience

Decorative image relating to text that follows

Office Hours with Learning Facilitators

Decorative image relating to text that follows

Demonstrations

Decorative image relating to text that follows

Coding Exercises in Each Module

Decorative image relating to text that follows

Bite-Sized Learning

Decorative image relating to text that follows

Knowledge Checks

Decorative image relating to text that follows

Dedicated Program Support Team

Decorative image relating to text that follows

Mobile Learning App

Decorative image relating to text that follows

Peer Discussion

Decorative image relating to text that follows

Capstone Project

Decorative image relating to text that follows

Bonus Content on Advanced Topics

Why Python?

Python is a good starting point for first-time coders. It uses simple, natural language syntax, almost like spoken English. It is powerful and it is versatile, favored by such diverse industry giants as Netflix, PayPal, NASA, Disney, and Dropbox. Python is used by 87% of data scientists.

  • User-Friendly Syntax: As an interpreted language, Python has simpler, more concise syntax than Java. Python's simple, concise syntax makes it easy to write algorithms with just a few lines of code
  • Open-Source Libraries: Pre-written code is readily available, with algorithms at your disposal, so you do not have to start every project from scratch. You can benefit from highly specific libraries – physics, web development, gaming, machine learning – by simply importing algorithms and applying them to your own data. It is plug and play at its best, with new functionalities being added all the time
  • Community Exchanges: Python’s popularity means it has great community support, with almost 8 million Python developers across the world to help you debug or resolve a programming challenge
  • Compatibility: Python is a cross-platform language and can be integrated easily with Windows and other platforms
  • Adaptability: Almost every field is adopting Python and needs both generalists and specialists who know how to use it. Fields as varied as gaming, web development, healthcare, and fintech prefer Python over other programming languages, making it the must-learn language for STEM professionals and data scientists

sources: generalassemb.ly

Who Should Attend?

This online program is designed for anyone who is interested in acquiring programming skills in Python. No prior programming knowledge is required.

Program Faculty

Faculty Member Kelly Rivers

Kelly Rivers

Assistant Teaching Professor, School of Computer Science, Carnegie Mellon University

An assistant teaching professor in the School of Computer Science, Kelly Rivers teaches introductory programming, including “Principles of Computing,” “Fundamentals of Programming,”... More info

Faculty Member Anil Ada

Anil Ada

Associate Teaching Professor, School of Computer Science, Carnegie Mellon University

Anil Ada is an expert in theoretical computer science, teaching “Fundamentals of Programming and Computer Science” and “Great Ideas in Theoretical Computer Science” as an associate teaching professor in the School of Computer Science... More info

Certificate

Certificate

Upon successful completion of the program, participants will receive a verified digital certificate of completion from Carnegie Mellon University’s School of Computer Science Executive Education. This is a training program and it is not eligible for academic credit.

Download Brochure

Your digital certificate will be issued in your legal name and emailed to you at no additional cost, upon completion of the program, as per the stipulated requirements. All certificate images are for illustrative purposes only and may be subject to change at the discretion of Carnegie Mellon University’s School of Computer Science Executive Education.

The Carnegie Mellon School of Computer Science Executive Education learning experience

At Carnegie Mellon’s Executive Education Program in the School of Computer Science, we provide organizations and people access to the skills and tools necessary to solve real world technical problems by equipping the next generation of technology leaders with the experience, insights and novel solutions developed by our community of computer science experts. From custom training programs to online individualized learning, our cutting-edge programming — backed by faculty who pioneered the field — takes your skillset to the next level, giving you the tools to tackle your company’s next great technological challenge.

FAQs

  • How do I know if this program is right for me?

    After reviewing the information on the program landing page, we recommend you submit the short form above to gain access to the program brochure, which includes more in-depth information. If you still have questions on whether this program is a good fit for you, please email learner.success@emeritus.org, and a dedicated program advisor will follow-up with you very shortly.


    Are there any prerequisites for this program?

    Some programs do have prerequisites, particularly the more technical ones. This information will be noted on the program landing page, as well as in the program brochure. If you are uncertain about program prerequisites and your capabilities, please email us at the ID mentioned above.


    Note that, unless otherwise stated on the program web page, all programs are taught in English and proficiency in English is required.


    What is the typical class profile?

    More than 50 percent of our participants are from outside the United States. Class profiles vary from one cohort to the next, but, generally, our online certificates draw a highly diverse audience in terms of professional experience, industry, and geography — leading to a very rich peer learning and networking experience.


    What other dates will this program be offered in the future?

    Check back to this program web page or email us to inquire if future program dates or the timeline for future offerings have been confirmed yet.

  • How much time is required each week?

    Each program includes an estimated learner effort per week. This is referenced at the top of the program landing page under the Duration section, as well as in the program brochure, which you can obtain by submitting the short form at the top of this web page.


    How will my time be spent?

    We have designed this program to fit into your current working life as efficiently as possible. Time will be spent among a variety of activities including:



    • Engaging with recorded video lectures from faculty
    • Attending webinars and office hours, as per the specific program schedule
    • Reading or engaging with examples of core topics
    • Completing knowledge checks/quizzes and required activities
    • Engaging in moderated discussion groups with your peers
    • Completing your final project, if required

    The program is designed to be highly interactive while also allowing time for self-reflection and to demonstrate an understanding of the core topics through various active learning exercises. Please email us if you need further clarification on program activities.


    What is it like to learn online with the learning collaborator, Emeritus?

    More than 300,000 learners across 200 countries have chosen to advance their skills with Emeritus and its educational learning partners. In fact, 90 percent of the respondents of a recent survey across all our programs said that their learning outcomes were met or exceeded.

    All the contents of the course would be made available to students at the commencement of the course. However, to ensure the program delivers the desired learning outcomes the students may appoint Emeritus to manage the delivery of the program in a cohort-based manner the cost of which is already included in the overall course fee of the course.

    A dedicated program support team is available 24/5 (Monday to Friday) to answer questions about the learning platform, technical issues, or anything else that may affect your learning experience.


    How do I interact with other program participants?

    Peer learning adds substantially to the overall learning experience and is an important part of the program. You can connect and communicate with other participants through our learning platform.

  • What are the requirements to earn the certificate?

    Each program includes an estimated learner effort per week, so you can gauge what will be required before you enroll. This is referenced at the top of the program landing page under the Duration section, as well as in the program brochure, which you can obtain by submitting the short form at the top of this web page. All programs are designed to fit into your working life.

    This program is scored as a pass or no-pass; participants must complete the required activities to pass and obtain the certificate of completion. Some programs include a final project submission or other assignments to obtain passing status. This information will be noted in the program brochure. Please email us if you need further clarification on any specific program requirements.


    What type of certificate will I receive?

    Upon successful completion of the program, you will receive a smart digital certificate. The smart digital certificate can be shared with friends, family, schools, or potential employers. You can use it on your cover letter, resume, and/or display it on your LinkedIn profile.
    The digital certificate will be sent approximately two weeks after the program, once grading is complete.


    Can I get the hard copy of the certificate?

    No, only verified digital certificates will be issued upon successful completion. This allows you to share your credentials on social platforms such as LinkedIn, Facebook, and Twitter.


    Do I receive alumni status after completing this program?

    No, there is no alumni status granted for this program. In some cases, there are credits that count toward a higher level of certification. This information will be clearly noted in the program brochure.


    How long will I have access to the learning materials?

    You will have access to the online learning platform and all the videos and program materials for 12 months following the program start date. Access to the learning platform is restricted to registered participants per the terms of agreement.

  • What equipment or technical requirements are there for this program?

    Participants will need the latest version of their preferred browser to access the learning platform. In addition, Microsoft Office and a PDF viewer are required to access documents, spreadsheets, presentations, PDF files, and transcripts.


    Do I need to be online to access the program content?

    Yes, the learning platform is accessed via the internet, and video content is not available for download. However, you can download files of video transcripts, assignment templates, readings, etc. For maximum flexibility, you can access program content from a desktop, laptop, tablet, or mobile device.

    Video lectures must be streamed via the internet, and any livestream webinars and office hours will require an internet connection. However, these sessions are always recorded, so you may view them later.

  • Can I still register if the registration deadline has passed?

    Yes, you can register up until seven days past the published start date of the program without missing any of the core program material or learnings.

    What is the program fee, and what forms of payment do you accept?

    The program fee is noted at the top of this program web page and usually referenced in the program brochure as well.

    • Flexible payment options are available (see details below as well as at the top of this program web page next to FEE).
    • Tuition assistance is available for participants who qualify. Please email learner.success@emeritus.org.

    What if I don’t have a credit card? Is there another method of payment accepted?

    Yes, you can do the bank remittance in the program currency via wire transfer or debit card. Please contact your program advisor, or email us for details.


    I was not able to use the discount code provided. Can you help?

    Yes! Please email us with the details of the program you are interested in, and we will assist you.


    How can I obtain an invoice for payment?

    Please email us your invoicing requirements and the specific program you’re interested in enrolling in.


    Is there an option to make flexible payments for this program?

    Yes, the flexible payment option allows a participant to pay the program fee in installments. This option is made available on the payment page and should be selected before submitting the payment.


    How can I obtain a W9 form?

    Please connect with us via email for assistance.


    Who will be collecting the payment for the program?

    Emeritus collects all program payments, provides learner enrollment and program support, and manages learning platform services.

  • What is the program refund and deferral policy?

    For the program refund and deferral policy, please click the link here.

Didn't find what you were looking for? Write to us at learner.success@emeritus.org or Schedule a call with one of our Academic Advisors or call us at +1 315 756 3771 (US) / +44 203 835 5826 (UK) / +65 3138 2533 (SG)

Apply Now

Early registrations are encouraged. Seats fill up quickly!