Research shows that over 50% students who try an introductory course in programming do not complete the course. At Hispanic-serving institutions (HSI) and those with large populations of 1st generation college students, this is particularly problematic. We combined and customized approaches for use in an introductory programming course for Computer Science Majors at a large HSI. The approaches included the use of: (1) Collaborative, team-based and paired programming, active learning, in-class exercises, as well as additional external assignments; (2) Active learning classroom environment whereby the physical space enhances and encourages collaborative, small group interactions; and (3) In-class Peer Learning Assistants (undergraduates) that have undergone specialized training to facilitate discussion and interaction with students in an active learning classroom setting. We conducted a study in a Programming I for Computer Science Majors (CS1) course to test the efficacy of the 3-pronged approach described above. The control group (lecture based) pass rates were found to be 71%, whereas the experimental group (active learning) pass rates were found to be 80%. For those students who passed the class, average grades also increased, with the average grade in the control group at 3.0 and the average grade in the experimental group at 3.30. It is thus concluded that the use of the active learning and the 3-pronged approach described above had a positive impact on course outcomes and student learning.