Perkovic's Introduction to Programming Using Python provides an imperative-first introduction to Python focusing on computer applications and the process of developing them. The text helps develop computational thinking skills by covering patterns of how problems can be broken down and constructively solved to produce an algorithmic solution. The approach is hands-on and problem oriented. The book also introduces a subset of the Python language early on to help write small functions. Chapters include an introduction to problem solving techniques and classical algorithms, problem-solving and programming and ways to apply core skills to application development.