Java Programming: Solving Problems with Software
About this course
This Duke University course teaches Java programming through data-driven problem solving — working with CSV files, web pages, and real datasets rather than abstract toy problems. Owen Astrachan's approach focuses on building the problem-solving mindset alongside language syntax: how to break a problem down, how to iterate toward a solution, and how to evaluate whether code actually works correctly on real inputs.
It's part of Duke's Java Programming and Software Engineering Fundamentals Specialization on Coursera, which continues through arrays and ArrayLists, object-oriented design, data structures, and software engineering principles. For learners who want the academic rigor of a university course alongside practical data problems, it's an accessible alternative to Tim Buchalka's more exhaustive Udemy masterclass.
What you'll learn
This course includes
Compare alternatives for Java Programming: Solving Problems with Software
- Price
- PaidFree to audit, paid certificate
- Duration
- 16 hrs
- Level
- Beginner
- Certificate
- Course Certificate
- Price
- PaidSubscription-based, free to audit
- Duration
- 200 hrs
- Level
- Intermediate
- Certificate
- Specialization Certificate
- Price
- FreeAudit free · $199 cert
- Duration
- 100 hrs
- Level
- Beginner
- Certificate
- Verified
- Price
- FreeCompletely free, forever
- Duration
- 300 hrs
- Level
- Beginner
- Certificate
- Completion
Instructor
Taught by Owen Astrachan, Professor of the Practice in Computer Science at Duke University, known for data-driven pedagogical approaches to introductory CS.
Requirements
- No prior programming experience required
Who this course is for
- Beginners who want to learn Java through data problem-solving
- Learners starting Duke's Java Programming Specialization
- Anyone who wants a university-caliber Java introduction with real data work