At Luther College we have adopted Python as part of our computer science curriculum. Students learn computer science starting with our three course introductory sequence. In the first two classes, Python is the primary language.
CS-1In CS-1 Our primary emphasis is on developing problem solving skills. We see Python as an ideal tool for describing the solutions to Problems.Python Programming in Context resources by Brad Miller and David Ranum
CS-2In CS-2 we continue with an emphasis on problem solving but now we add classic data structures and key algorithms. We think it is important to stay with Python as a language because most students have just started to get comfortable with it after the first semester.Problem Solving with Algorithms and Data Structures using Python, by Brad Miller and David Ranum. Click here for Errata
CS-3After two semesters of computer science students are ready to take on a new language. However, now they can learn the new language while at the same time taking on some larger projects. The two main goals for this course are to teach students Java, and to help them become effective and efficient programmers. By learning to be self-sufficient with Java, students will be better prepared for their upper-level CS courses.Core Java Volumes I and II by Cay Horstmann and Gary Cornell. I also have a short Java for Python Programmers online book that helps ease the transition. PDF Version (Please note this has been updated January 2008, but is still a work in progress)