Computer programming is a skill that can bring great enjoyment from the creativity involved in designing and implementing a solution to a problem. This classroom-tested and easy-to-follow textbook teaches the reader how to program using Python, an accessible language which can be learned incrementally. Through an extensive use of examples and practical exercises, students will learn to recognize and apply abstract patterns in programming, as well as how to inspect the state of a program using a debugger tool. Features: contains numerous examples and solved practice exercises designed for an interactive classroom environment; highlights several patterns which commonly appear in programs, and presents exercises that reinforce recognition and application of these patterns; introduces the use of a debugger, and includes supporting material that reveals how programs work; presents the Tkinter framework for building graphical user interface applications and event-driven programs; provides helpful additional resources for instructors at the associated website: http: //cs.luther.edu/ leekent/CS1. This hands-on textbook for active learning in the classroom will enable undergraduates in computer science to develop the necessary skills to begin developing their own programs. It employs Python as the introductory language due to the wealth of support available for programmers
The problem in selecting a programming language book is finding one that meets your specific needs. For example, I have certain family members that are convinced they can learn software development, but gravitate to books that are over their heads and ignore the prerequisites for those books. Then they get frustrated, quit, and give the book a bad rating. I also have friends who are brilliant, need something on a graduate level, but make the mistake of grabbing a book that is below their level. Rating it from their point of view, they call it stupid and uninformed. So this is my review:
This book is excellent.
I have a decent math background, grew up in a family of engineers, my mother is an electrical engineer, my cousins and siblings are engineers, programmers, and mathematicians, and my husband works in technology with data storage systems. I am not any of these things, but being surrounded by them enabled me to pick up and recall basic terminology. The most important thing I brought to this book, though, was my math background. Because, let's face it, you can only go so far in programming without math.
Pros: 1. Size. It is thin and doesn't weigh 10 lbs. 2. Concise. Lee doesn't waste words trying to come up with cute analogies for remembering concepts. He states the concept, defines terms, and avoids extraneous explanations. 3. Indexes. It is well-organized and has indexes. 4. Pre-requisite knowledge of programming. I knew pretty much nothing when I picked up the book and followed it just fine. 5. Thoroughness/Scope. It is called a "Fundamentals" book and that is exactly what you get. It is intended to give a student the basic preparation for doing something more in-depth with the language. 6. Review questions and exercises. Yes. And there is a suitable amount, unlike other books which really don't have enough problems to test your comprehension.
Cons: 1. Math. Certain family members are unable to progress very far in this book because they struggle with the math. Let's face it: programming is easier all the way around if you remember everything from geometry and Algebra 2. It also helps that I have had experience with other base numbering systems before. If math is not your strong suit, go review it or get another book. 2. Pace. because it is concise, there is a LOT packed into each little section. I'm not a brilliant person, so I sometimes did only a paragraph in a day instead of a full section. Of course, you brilliant people won't have any problems here. 3. Solutions to review questions and problems. The book includes solutions to the practice problems scattered throughout the chapter, but not the problems at the end of the chapter. And that is just frustrating.
Conclusion: it was great for me; it might not be for you. Consider your needs before purchasing and using this book.
Basic intro to both Python and general computer programming at the same time. This helped me review the Python language after I had tried to learn the basics from Göktürk Üçoluk's inferior book, Introduction to Programming Concepts with Case Studies in Python.
Seems like a fine place for someone to start. The exercises included in the book have the answers included if you get stuck.
A good introduction to Python. If you're thinking of learning and aren't sure where to start python might not be a bad choice. It's simple and elegant and not quite as bogged down in detail as other high-level languages, yet it still manages to be quite powerful. Once you've learned the basic concepts of programming other languages come easily, so the language you start out with isn't that important anyway.
A superb resource I've found is the online textbook "How to Think Like a Computer Scientist". Nothing compare with actually writing code when you're learning to program, but this is definitely a good supplement: http://interactivepython.org/runeston...