Software Development and Problem Solving I


A Journey from Basics to Software Engineering with Python

A first course introducing students to the fundamentals of computational problem solving. Students will learn a systematic approach to problem solving, including how to frame a problem in computational terms, how to decompose larger problems into smaller components, how to implement innovative software solutions using a contemporary programming language, how to critically debug their solutions, and how to assess the adequacy of the software solution. Additional topics include an introduction to object-oriented programming and data structures such as arrays and stacks.

Syllabus: Download

Times Taught: 3

Class Reviews

  • After this being my second time taking this course with the same instructor, i can conclude that The instructor was a very caring and understanding individual which means alot to me. I have always looked up to this instructor since he took the same degree i am taking and i want to do what he did when i graduate. Unlike the TAs i will say that he is the most helpful when it comes to helping me when i have questions on the exams and mini practicums
  • The instructor did a great job at being patient with the class whilst also maintaining the same pace. He made sure that we knew the extensive amount of resources we could utilize in order to advance in the subject.
  • Helped students during class and showed example codes. Also wanted to do extra zoom sessions near end of semester.

Official Course Description

A first course introducing students to the fundamentals of computational problem solving. Students will learn a systematic approach to problem solving, including how to frame a problem in computational terms, how to decompose larger problems into smaller components, how to implement innovative software solutions using a contemporary programming language, how to critically debug their solutions, and how to assess the adequacy of the software solution. Additional topics include an introduction to object-oriented programming and data structures such as arrays and stacks.

Curriculum Development

GCIS-123 is a very collaborative class where the team works together. One area where I was able to add some materials was in:

  • Homework on Arrays: Created a series of homeworks for learning about arrays unit. This assignment gives you practice using simple Arrays and the Array_utils we started in class. It will also give you some practice using random numbers, and working on your problem solving skills. Finally it will give you practice using recursion to analyze numbers inside an array

Tagged Skills

Python