Fall enrollment starts July 28, and closes September 28. Check out the Academic Term Calendar for more information.

Fundamentals of Software Development and Programming

COM SCI X 414.20

This course provides an introduction to computer programming and software development using Python and Visual Basic. Great for individuals pursuing coding and software development, preparing them for Python, Visual C#, Java, Javascript, shell scripting and macro development.

READ MORE ABOUT THIS COURSE
Fall
Winter
Spring
Summer
Live Online
In Person
Starting at $1,095.00
As few as 11 weeks
4.0

What you can learn.

  • Enumerate terminology from various development methodologies, including Agile Scrum
  • Understand principles of procedural and object-oriented programming and syntax using Python (simple input/output programs, variables, expressions, looping, selection, functions, objects)
  • Understand principles of object-oriented event-driven programming and syntax plus GUI user interface design for Windows using Visual Basic
  • Identify and utilize the basic logical structures of a program
  • Debug programs and test them using simple software test techniques

About this course:

The course provides an introduction to computer programming (coding) and software app development. It benefits individuals pursuing programming and software development as a career, as well as anyone in the IT field who works with programmers and systems analysts in important areas that precede actual programming, including problem-solving approaches, specifications and requirements, user interface design, and structured program design using such tools as pseudocode and UML charts. Instruction covers coding concepts common to several modern languages, including Python, Visual C#, Java, Go, and shell scripting. We will explore procedural and object-oriented concepts using Python as the demonstration language, with an emphasis on non-language-specific approaches. This introductory course presents programming fundamentals, including variables and expressions, looping, selection, functions and parameter passing, file processing, fundamentals of object-oriented development, and advanced data types such as lists and sets. The course also covers the software development cycle, including SCRUM, unit testing and integration, alpha/beta testing, and software defect tracking and classification. The use of AI (Artificial Intelligence) as an aid to coding is also discussed. This is a lab course where, for each module, students will study video lectures and readings a few days before the class session,  followed by a live coding lab class session where various programming tasks will be completed under the guidance and review of the instructor. Additionally, students will produce—outside of the classroom- six applications in increasing size and complexity throughout the course. This introductory course requires weekly coding lab tasks and assignments and prepares students for future coursework in Python, Java, Visual C#, or any other high-level language.

Fall 2025 Schedule

Date & Time
Details
Format
 
-
Monday 6:30PM - 9:30PM PT
Future Offering (Opens July 28, 2025 12:00:00 AM)
See Details
Instructor: Keith Jefferies
405107
Fee:
$1,095.00
In Personformat icon
Location: UCLA Extension Lindbrook Center in Westwood
Notes

Enrollment limited; early enrollment advised. Enrollment deadline: September 28th, 2025

Refund Deadline
No refunds after October 05, 2025
Course Requirements
Internet access required to retrieve course materials.
(Optional) Murach's Visual Basic 2015
(Optional) Murach’s Python Programming
Schedule
Type
Date
Time
Location
Lecture
Mon Sep 22, 2025
6:30PM PT - 9:30PM PT
UCLA Extension Lindbrook Center in Westwood
UCLA Extension Lindbrook Center 206
Lecture
Mon Sep 29, 2025
6:30PM PT - 9:30PM PT
UCLA Extension Lindbrook Center in Westwood
UCLA Extension Lindbrook Center 206
Lecture
Mon Oct 6, 2025
6:30PM PT - 9:30PM PT
UCLA Extension Lindbrook Center in Westwood
UCLA Extension Lindbrook Center 206
Lecture
Mon Oct 13, 2025
6:30PM PT - 9:30PM PT
UCLA Extension Lindbrook Center in Westwood
UCLA Extension Lindbrook Center 206
Lecture
Mon Oct 20, 2025
6:30PM PT - 9:30PM PT
UCLA Extension Lindbrook Center in Westwood
UCLA Extension Lindbrook Center 206
Lecture
Mon Oct 27, 2025
6:30PM PT - 9:30PM PT
UCLA Extension Lindbrook Center in Westwood
UCLA Extension Lindbrook Center 206
Lecture
Mon Nov 3, 2025
6:30PM PT - 9:30PM PT
UCLA Extension Lindbrook Center in Westwood
UCLA Extension Lindbrook Center 206
Lecture
Mon Nov 10, 2025
6:30PM PT - 9:30PM PT
UCLA Extension Lindbrook Center in Westwood
UCLA Extension Lindbrook Center 206
Lecture
Mon Nov 17, 2025
6:30PM PT - 9:30PM PT
UCLA Extension Lindbrook Center in Westwood
UCLA Extension Lindbrook Center 206
Lecture
Mon Nov 24, 2025
6:30PM PT - 9:30PM PT
UCLA Extension Lindbrook Center in Westwood
UCLA Extension Lindbrook Center 206
Lecture
Mon Dec 1, 2025
6:30PM PT - 9:30PM PT
UCLA Extension Lindbrook Center in Westwood
UCLA Extension Lindbrook Center 206
-
Wednesday 6:30PM - 9:30PM PT
Future Offering (Opens July 28, 2025 12:00:00 AM)
See Details
Instructor: Keith Jefferies
405106
Fee:
$1,095.00
Live Onlineformat icon
Location: Remote Classroom
Notes

Enrollment limited; early enrollment advised. Enrollment deadline: September 28th, 2025

Refund Deadline
No refunds after October 07, 2025
Course Requirements
Internet access required to retrieve course materials.
(Optional) Murach's Visual Basic 2015
(Optional) Murach’s Python Programming
Schedule
Type
Date
Time
Location
Lecture
Wed Sep 24, 2025
6:30PM PT - 9:30PM PT
Remote Classroom
Lecture
Wed Oct 1, 2025
6:30PM PT - 9:30PM PT
Remote Classroom
Lecture
Wed Oct 8, 2025
6:30PM PT - 9:30PM PT
Remote Classroom
Lecture
Wed Oct 15, 2025
6:30PM PT - 9:30PM PT
Remote Classroom
Lecture
Wed Oct 22, 2025
6:30PM PT - 9:30PM PT
Remote Classroom
Lecture
Wed Oct 29, 2025
6:30PM PT - 9:30PM PT
Remote Classroom
Lecture
Wed Nov 5, 2025
6:30PM PT - 9:30PM PT
Remote Classroom
Lecture
Wed Nov 12, 2025
6:30PM PT - 9:30PM PT
Remote Classroom
Lecture
Wed Nov 19, 2025
6:30PM PT - 9:30PM PT
Remote Classroom
Lecture
Wed Nov 26, 2025
6:30PM PT - 9:30PM PT
Remote Classroom
Lecture
Wed Dec 3, 2025
6:30PM PT - 9:30PM PT
Remote Classroom

Contact Us

This course applies towards the following certificates & specializations…

Ready to start
your future?
Keep up to date on the latest news and offerings in Software Development & Programming
By signing up, you agree to UCLA Extension’s Privacy Policy.

vector icon of building

Corporate Education

Learn how we can help your organization meet its professional development goals and corporate training needs.

Learn More

vector icon of building

Donate to UCLA Extension

Support our many efforts to reach communities in need.

Innovation Programs

Student Scholarships

Lifelong Learning

See More