Coursera
Join for Free
Coursera
University of Pennsylvania
Introduction to Programming with Python and Java Specialization
  • About
  • Outcomes
  • Courses
  • Testimonials
University of Pennsylvania

Introduction to Programming with Python and Java Specialization

Boost Your Computer Programming Skills. With minimal previous exposure, learn two popular programming languages at an accelerated pace.

Brandon Krakowsky

Instructor: Brandon Krakowsky

63,027 already enrolled

Included with Coursera Plus

4 course series
Get in-depth knowledge of a subject
4.5

(1,336 reviews)

Beginner level

Recommended experience

Recommended experience

Beginner level

High school or college math.

Minimal prior programming exposure may be helpful but not needed (e.g. Computational Thinking for Problem SolvingOpens in a new tab).

2 months
at 10 hours a week
Flexible schedule
Learn at your own pace

4 course series
Get in-depth knowledge of a subject
4.5

(1,336 reviews)

Beginner level

Recommended experience

Recommended experience

Beginner level

High school or college math.

Minimal prior programming exposure may be helpful but not needed (e.g. Computational Thinking for Problem SolvingOpens in a new tab).

2 months
at 10 hours a week
Flexible schedule
Learn at your own pace
  • About
  • Outcomes
  • Courses
  • Testimonials

What you'll learn

  • Describe core Python programming concepts, including how to configure tools for Python code and write fully functional programs using data structures

  • Examine core data science techniques and concepts using Python, including using data analysis libraries and developing data visualization skills

  • Apply core principles of object-oriented programming and Java to write fully functional programs using classes and methods, and perform unit testing

  • Understand Java inheritance and apply techniques for parsing text in files, using advanced data structures to store information, and debugging code

Skills you'll gain

  • Category: Pivot Tables And Charts
    Pivot Tables And Charts
  • Category: Unit Testing
    Unit Testing
  • Category: Java Programming
    Java Programming
  • Category: Java
    Java
  • Category: Object Oriented Design
    Object Oriented Design
  • Category: Matplotlib
    Matplotlib
  • Category: Object Oriented Programming (OOP)
    Object Oriented Programming (OOP)
  • Category: Data Visualization
    Data Visualization
  • Category: Eclipse (Software)
    Eclipse (Software)
  • Category: Software Testing
    Software Testing
  • Category: Debugging
    Debugging
  • Category: Python Programming
    Python Programming

Details to know

Shareable certificate

Add to your LinkedIn profile

Taught in English

Advance your subject-matter expertise

  • Learn in-demand skills from university and industry experts
  • Master a subject or tool with hands-on projects
  • Develop a deep understanding of key concepts
  • Earn a career certificate from University of Pennsylvania

Specialization - 4 course series

This Specialization starts out by teaching basic concepts in Python and ramps up to more complex subjects such as object-oriented programming and data structures in Java. By the time learners complete this series of four courses, they will be able to write fully-functional programs in both Python and Java, two of the most well-known and frequently used programming languages in the world today.

Introduction to Programming with Python and Java is for students and professionals who have minimal or no prior programming exposure. It’s for motivated learners who have experience with rigorous coursework, and are looking to gain a competitive edge in advancing their career. It’s for folks who are thinking about applying to the University of Pennsylvania’s online Master of Computer and Information Technology degreeOpens in a new tab and want to sample some of the lecture videos and content from the first course in the program. We hope this Specialization is for you.

Topics in this Specialization include language syntax, style, programming techniques, and coding conventions. Learn about best practices and good code design, code testing and test-driven development, code debugging, code and program documentation, and computational thinking.

Applied Learning Project

Learners will write fully-functional Python programs, including an implementation of an online banking system and a data analysis project analyzing movies and ratings from IMDB. Learners will apply Python programming, file I/O, data analysis and visualization, using both PyCharm and Jupyter Notebook.

Learners will also write fully-functional Java programs, including a text file parser that reads, writes, and analyzes text files. Learners will apply Java programming, object-oriented principles, data structures, file I/O, unit testing, code debugging, using Eclipse.

Introduction to Python Programming

Introduction to Python Programming

Course 1•28 hours

What you'll learn

  • Identify core aspects of programming and features of the Python language

  • Understand and apply core programming concepts like data structures, conditionals, loops, variables, and functions

  • Use different tools for writing and running Python code

  • Design and write fully-functional Python programs using commonly used data structures, custom functions, and reading and writing to files

Skills you'll gain

Category: Python Programming
Python Programming
Category: Data Structures
Data Structures
Category: File Management
File Management
Category: Integrated Development Environments
Integrated Development Environments
Category: Computer Programming
Computer Programming
Category: Software Development Tools
Software Development Tools
Category: Scripting
Scripting
Category: Data Import/Export
Data Import/Export
Category: Programming Principles
Programming Principles
Category: Jupyter
Jupyter
Category: Computational Thinking
Computational Thinking
Data Analysis Using Python

Data Analysis Using Python

Course 2•17 hours

What you'll learn

  • Apply basic data science techniques using Python

  • Understand and apply core concepts like Data Frames and joining data, and use data analysis libraries like pandas, numpy, and matplotlib

  • Demonstrate how to load, inspect, and query real-world data, and answer basic questions about that data

  • Analyze data further by applying learned skills in data aggregation and summarization, as well as basic data visualization

Skills you'll gain

Category: Pandas (Python Package)
Pandas (Python Package)
Category: Data Analysis
Data Analysis
Category: Data Manipulation
Data Manipulation
Category: Matplotlib
Matplotlib
Category: Data Visualization Software
Data Visualization Software
Category: Data Import/Export
Data Import/Export
Category: Data Cleansing
Data Cleansing
Category: Jupyter
Jupyter
Category: NumPy
NumPy
Category: Histogram
Histogram
Category: Scatter Plots
Scatter Plots
Category: Pivot Tables And Charts
Pivot Tables And Charts
Category: Data Validation
Data Validation
Category: Data Science
Data Science
Category: Scripting Languages
Scripting Languages
Category: Data Structures
Data Structures
Category: Data Transformation
Data Transformation
Category: Python Programming
Python Programming
Category: Data Visualization
Data Visualization
Category: Programming Principles
Programming Principles
Introduction to Java and Object-Oriented Programming

Introduction to Java and Object-Oriented Programming

Course 3•19 hours

What you'll learn

  • Identify core aspects of object-oriented programming and features of the Java language.

  • Use Eclipse for writing and running Java code.

  • Develop programs that use Java collections and apply core object-oriented programming concepts using classes, polymorphism, and method overloading.

  • Test code by applying principles of test-driven development using Java's unit testing framework.

Skills you'll gain

Category: Java Programming
Java Programming
Category: Object Oriented Programming (OOP)
Object Oriented Programming (OOP)
Category: Java
Java
Category: Unit Testing
Unit Testing
Category: Data Structures
Data Structures
Category: Test Driven Development (TDD)
Test Driven Development (TDD)
Category: Program Development
Program Development
Category: Software Testing
Software Testing
Category: Computer Programming
Computer Programming
Category: Object Oriented Design
Object Oriented Design
Category: Programming Principles
Programming Principles
Inheritance and Data Structures in Java

Inheritance and Data Structures in Java

Course 4•21 hours

What you'll learn

  • Examine the concept of inheritance in object-oriented programming and learn how to extend classes and override methods in a subclass.

  • Analyze and fix different parts of a Java program using Eclipse's interactive debugger.

  • Explore different methods for opening, reading, and writing to external files, and deal with errors and exceptions.

  • Examine advanced techniques for storing and manipulating data in collections, and parse text using regular expressions (or regex).

Skills you'll gain

Category: Java Programming
Java Programming
Category: Java
Java
Category: Data Structures
Data Structures
Category: Object Oriented Programming (OOP)
Object Oriented Programming (OOP)
Category: Debugging
Debugging
Category: File Management
File Management
Category: Problem Solving
Problem Solving
Category: Software Design
Software Design
Category: Development Environment
Development Environment
Category: Integrated Development Environments
Integrated Development Environments
Category: Eclipse (Software)
Eclipse (Software)
Category: Programming Principles
Programming Principles

Earn a career certificate

Add this credential to your LinkedIn profile, resume, or CV. Share it on social media and in your performance review.

Instructor

Brandon Krakowsky
Brandon Krakowsky
University of Pennsylvania
10 Courses•158,042 learners

Offered by

University of Pennsylvania

Offered by

University of Pennsylvania

The University of Pennsylvania (commonly referred to as Penn) is a private university, located in Philadelphia, Pennsylvania, United States. A member of the Ivy League, Penn is the fourth-oldest institution of higher education in the United States, and considers itself to be the first university in the United States with both undergraduate and graduate studies.

Why people choose Coursera for their career

Felipe M.
Learner since 2018
"To be able to take courses at my own pace and rhythm has been an amazing experience. I can learn whenever it fits my schedule and mood."
Jennifer J.
Learner since 2020
"I directly applied the concepts and skills I learned from my courses to an exciting new project at work."
Larry W.
Learner since 2021
"When I need courses on topics that my university doesn't offer, Coursera is one of the best places to go."
Chaitanya A.
"Learning isn't just about being better at your job: it's so much more than that. Coursera allows me to learn without limits."

Frequently asked questions

The courses were designed to be taken in sequence, starting with the first and ending with the last. That being said, learners can pick and choose the courses they are interested in based on their background.

No, but the concepts move very quickly so it is helpful to have some introductory exposure (such as Penn’s Computational Thinking for Problem SolvingOpens in a new tab). This Specialization is intended for anyone who has an interest in problem solving and wants to learn Python or Java.

Learners who complete this series of four courses will be able to write fully-functional programs in Python, applying core programming principles, file I/O, and data analysis and visualization. Learners will also be able to write fully-functional Java programs, applying principles of object-oriented programming, data structures, file I/O, unit testing, and code debugging.

The only math that learners will need for this Specialization is arithmetic and basic concepts in logic.

This Specialization gives learners exposure to material that they will encounter in the University of Pennsylvania’s MCIT OnlineOpens in a new tab degree. The Specialization certificate will be viewed favorably by the admissions committee, so be sure to mention it when you apply!

If you have a bachelor's degree and are interested in learning more about the fundamentals of computer science, we encourage you to apply to MCIT on-campusOpens in a new tab or MCIT OnlineOpens in a new tab. Please mention that you have completed this Speciialization in the application.

Visit these links to learn more

MCIT Online: https://www.coursera.org/degrees/mcit-pennOpens in a new tab

MCIT On-campus: http://www.cis.upenn.edu/prospective-students/graduate/mcit.phpOpens in a new tab

No, this Specialization does not confer any university credit. However, this Specialization gives learners exposure to material in MCIT OnlineOpens in a new tab, a fully accredited degree from the University of Pennsylvania. The Specialization certificate will be viewed favorably by the MCIT Online admissions committee so be sure to mention it when you apply!

This course is completely online, so there’s no need to show up to a classroom in person. You can access your lectures, readings and assignments anytime and anywhere via the web or your mobile device.

If you subscribed, you get a 7-day free trial during which you can cancel at no penalty. After that, we don’t give refunds, but you can cancel your subscription at any time. See our full refund policyOpens in a new tab.

Yes! To get started, click the course card that interests you and enroll. You can enroll and complete the course to earn a shareable certificate, or you can audit it to view the course materials for free. When you subscribe to a course that is part of a Specialization, you’re automatically subscribed to the full Specialization. Visit your learner dashboard to track your progress.

Yes. In select learning programs, you can apply for financial aid or a scholarship if you can’t afford the enrollment fee. If fin aid or scholarship is available for your learning program selection, you’ll find a link to apply on the description page.

When you enroll in the course, you get access to all of the courses in the Specialization, and you earn a certificate when you complete the work. If you only want to read and view the course content, you can audit the course for free. If you cannot afford the fee, you can apply for financial aidOpens in a new tab.

Coursera

  • About
  • What We Offer
  • Leadership
  • Careers
  • Catalog
  • Coursera Plus
  • Professional Certificates
  • MasterTrack® Certificates
  • Degrees
  • For Enterprise
  • For Government
  • For Campus
  • Become a Partner
  • Social Impact

Community

  • Learners
  • Partners
  • Beta Testers
  • Blog
  • The Coursera Podcast
  • Tech Blog

More

  • Press
  • Investors
  • Terms
  • Privacy
  • Help
  • Accessibility
  • Contact
  • Articles
  • Directory
  • Affiliates
  • Modern Slavery Statement
  • Do Not Sell/Share

Mobile App

Download on the App Store
Get it on Google Play
Logo of Certified B Corporation
© 2025 Coursera Inc. All rights reserved.
Coursera

Sign up

Learn on your own time from top universities and businesses.

​
​
Between 8 and 72 characters
Your password is hidden
​

or

Already on Coursera?


Having trouble logging in? Learner help center

This site is protected by reCAPTCHA Enterprise and the Google Privacy Policy and Terms of Service apply.