This unique book uses full color illustrations to help readers understand the principles behind all computer programming. It is the book for beginners to read before they start learning computer programming. It offers non-programmers a basis for understanding what programmers do. The author Daniel Appleman is well-known for his bestselling books on VB.
Imagine, for a moment, a guy. This guy, about 40 years old, has worked all of his life in a job that doesn't require much knowledge of computers, certainly not of how to write software. Now, imagine that our guy decides to change career paths and learn computer programming. He goes and buys a book about a programming language, perhaps one that promotes itself as elementary. The book presents our hapless guy with recipes that he can follow, it's true, but mostly it confuses him with talk of APIs, linked lists, hashes, and a mess of other stuff that he doesn't understand, really. "I can make it all work by following directions," our guy implores into the Void. "But I don't understand what I'm doing." This guy needs
How Computer Programming Works.
In this book, Daniel Appleman sets out to explain computer programming at a conceptual level, and succeeds admirably. Appleman ignores the peculiar characteristics of specific programming languages (leaving them for specialized books), and instead uses fantastic color illustrations and lucid text to explain what goes unsaid among professional programmers. He also uses pseudocode--a sort of standardized, generic programming language--and examples in BASIC to back up his points. Although Appleman approaches programming mainly from a procedural angle (the book would be better with more coverage of object-oriented programming techniques, which fundamentally are different, in many cases), the contents of this book will suit any beginning student of programming and computer science--our guy included. --David Wall
Topics covered:
- Aspects of computer programming that you must understand in order to write code, but that generally are not explained conceptually in language-specific programming books
- Variables
- Loops
- Pointers
- Arrays
- Code blocks
- Stacks
- Trees
- Other fundamental building blocks
- Critical algorithms, like the bubble sort
- Getting from specification to finished product
- Network programming