Introduction to Programming Using Java
CSE-41242
Learning how to program can be a first step
towards a lucrative and challenging career. Aimed at first time programmers, this course will help you leap onto that path by exploring fundamental concepts of the highly popular Java programming language.
The goal of this course is to familiarize students with fundamental statements and teach them how to write simple programs but also prepare them for more rigorous programming courses.
Course Highlights:
- Programming essentials including branching, repetition, data structure, algorithms, and data modeling
- The rules and syntax of the Java Programming language, including objects, methods, and inheritance
- Object-oriented programming concepts
- Testable Code
Course Learning Outcomes:
- Writing, running, debugging, and modifying programs
- Understanding and developing algorithms
Prerequisites: Students must have access to a web-enabled computer, strong problem-solving skills and computer familiarity.
Required Textbook: This course will utilize an interactive STEM zyBook ISBN: 979-8-203-15273-5
In order to acquire your subscription, follow these simple instructions.
- On any assignment within the course LMS (Canvas), click on the ZyBooks link (Do not go to the zyBooks website and create a new account)
- Subscribe to the ZyBooks for the course
- A subscription is $69. Students may begin subscribing on 1/06/26.
Next steps: Upon completion of this course, consider enrolling in the Java Programming certificate and taking Java Programming I: Fundamental Java Concepts to continue learning.
Recommendation: Students who find this course challenging, should consider taking CSE-41318 Introduction to Front End Technologies which will provide a solid foundation in programming principles and logic.
Contact: For more information about this course, please contact infotech@ucsd.edu.
Course Information
Course sessions
Section ID:
Class type:
This course is entirely web-based and to be completed asynchronously between the published course start and end dates. Synchronous attendance is NOT required.
You will have access to your online course on the published start date OR 1 business day after your enrollment is confirmed if you enroll on or after the published start date.
Textbooks:
All course materials are included unless otherwise stated.
Policies:
- No refunds after: 9/29/2025
Schedule:
Instructor:
German Eichberger
Section ID:
Class type:
This course is entirely web-based and to be completed asynchronously between the published course start and end dates. Synchronous attendance is NOT required.
You will have access to your online course on the published start date OR 1 business day after your enrollment is confirmed if you enroll on or after the published start date.
Textbooks:
All course materials are included unless otherwise stated.
Policies:
- No refunds after: 1/12/2026
Schedule:
Instructor:
James Gappy, M.S.
Senior Software Engineer, Sony
James Gappy earned his master’s degree in Computer Science from Wayne State University, specializing in Software Engineering. He is a computer science professor with over 15 years of teaching experience, dedicated to fostering engaging and practical learning experiences for his students.
Before transitioning to academia, James worked as a Senior Software Engineer at Sony Interactive Entertainment, where he architected AWS infrastructure and developed analytics and licensing systems for PlayStation projects. He also served as a content author at ZyBooks (Wiley Publishing), creating and refining interactive programming textbooks and lab materials in Java, Python, C/C++, and database systems.
James is passionate about delivering hands-on, inclusive computer science education that bridges the gap between academic learning and real-world industry practice.