Credit: no starch press A lot of the computer technology that we use today is, as this book points out, close to “magic” in as far as anything that we can’t explain might be considered magic. Yet “How Software Works” (V. Anton Spraul, no starch press, 2015) brings many aspects of how some of this technology works into clear focus — both with insightful illustrations and great explanations. The book helps the reader to understand such things as: how various types of encryption work how passwords are stored and protected the structure of graphics how compression reduces the size of files without losing data how search technologies manage to find what you’re looking for — and so quickly! how computers allow for so many processes to be working at the same time without tripping over each other how routing functions on mapping systems like Google maps and GPS devices In short, it takes some extremely complex topics and breaks them down to the point that they are approachable so that the reader understands how they work and some of the tradeoffs that needed to be made in their implementation. If you have only a foggy understanding of how encryption, digital signatures, image files, search tools and a pile of other everyday computer technologies work, you will be surprised how much insight you can get from reading this book. It includes some of the best explanations that I’ve ever come across for some quite complex tools, often by breaking them down and explaining how they work using simple examples and building up the concepts step by step. And you necessarily don’t have to read it from cover to cover. You can select a chapter or two and gain a lot of value from it. Each of the topics throughout the book is both explained clearly and augmented with diagrams that make the explanations clear enough that readers don’t need to have any programming or system administrative experience to get a solid understanding of it works. The descriptions of even some very complex technology will have readers saying “Aha!”. The overall structure of the book looks like this: Table of Contents Chapter 1: Encyption Chapter 2: Passwords Chapter 3: Web Security Chapter 4: Movie CGI Chapter 5: Game Graphics Chapter 6: Data Compression Chapter 7: Search Chapter 8: Concurrency Chapter 9: Map Routes As you can see, it doesn’t attempt to explain how all software works. For example, it does not explain how operating systems or user interfaces work, but the key technologies that it explains are some that we use and rely on nearly every day — whether we know it or not. I should also say that, even if you are a seasoned programmer or systems administrator, you’re unlikely to have the kind of insights that this book provides into the tools that you use or support. As I read through the chapters in this book, I was surprised at how much I learned about many tools that I generally take for granted. So, do you really need to know all these details? Well, of course not. On the other hand, knowing how the technology works both allows you to understand how it might break down and anticipate how it might be breached. Sure, many of us who compress files, encrypt files, and take steps to protect sensitive data might well understand what the tools we use are doing, but understanding how they do what they do takes you to an altogether different level of competence. Besides, it’s really quite interesting to get a view into how the gears mesh and the wiring harness distributes signals in a software kind of sense. You can get more information about the book from the no starch press site at the No Starch Press site or view a complete table of contents here. Related content how-to How to find files on Linux There are many options you can use to find files on Linux, including searching by file name (or partial name), age, owner, group, size, type and inode number. By Sandra Henry Stocker Jun 24, 2024 8 mins Linux opinion Linux in your car: Red Hat’s milestone collaboration with exida With contributions from Red Hat and critical collaborators, the safety and security of automotive vehicles has reached a new level of reliability. By Sandra Henry Stocker Jun 17, 2024 5 mins Linux how-to How to print from the Linux command line: double-sided, landscape and more There's a lot more to printing from the Linux command line than the lp command. Check out some of the many available options. By Sandra Henry Stocker Jun 11, 2024 6 mins Linux how-to Converting between uppercase and lowercase on the Linux command line Converting text between uppercase and lowercase can be very tedious, especially when you want to avoid inadvertent misspellings. Fortunately, Linux provides a handful of commands that can make the job very easy. By Sandra Henry Stocker Jun 07, 2024 5 mins Linux PODCASTS VIDEOS RESOURCES EVENTS NEWSLETTERS Newsletter Promo Module Test Description for newsletter promo module. Please enter a valid email address Subscribe