Sale!

The Secret Life of Programs: Understand Computers — Craft Better Code

Add your review

Original price was: $44.99.Current price is: $41.16.

Original price was: $44.99.Current price is: $41.16.

Sale!

Note: Prices may fluctuate as sellers adjust them regularly. You'll see the latest price at final checkout.
Add to wishlistAdded to wishlistRemoved from wishlist 0
Add to compare



A primer on the underlying technologies that allow computer programs to work. Covers topics like computer hardware, combinatorial logic, sequential logic, computer architecture, computer anatomy, and Input/Output.
Many coders are unfamiliar with the underlying technologies that make their programs run. But why should you care when your code appears to work? Because you want it to run well and not be riddled with hard-to-find bugs. You don’t want to be in the news because your code had a security problem.
Lots of technical detail is available online but it’s not organized or collected into a convenient place. In The Secret Life of Programs, veteran engineer Jonathan E. Steinhart explores–in depth–the foundational concepts that underlie the machine. Subjects like computer hardware, how software behaves on hardware, as well as how people have solved problems using technology over time.
You’ll learn:
How the real world is converted into a form that computers understand, like bits, logic, numbers, text, and colorsThe fundamental building blocks that make up a computer including logic gates, adders, decoders, registers, and memoryWhy designing programs to match computer hardware, especially memory, improves performanceHow programs are converted into machine language that computers understandHow software building blocks are combined to create programs like web browsersClever tricks for making programs more efficient, like loop invariance, strength reduction, and recursive subdivisionThe fundamentals of computer security and machine intelligenceProject design, documentation, scheduling, portability, maintenance, and other practical programming realities.
Learn what really happens when your code runs on the machine and you’ll learn to craft better, more efficient code.
Publisher ‏ : ‎ No Starch Press
Publication date ‏ : ‎ August 6, 2019
Language ‏ : ‎ English
Print length ‏ : ‎ 504 pages
ISBN-10 ‏ : ‎ 1593279701
ISBN-13 ‏ : ‎ 978-1593279707
Item Weight ‏ : ‎ 2.15 pounds
Dimensions ‏ : ‎ 7.06 x 1.13 x 9.25 inches
Best Sellers Rank: #282,683 in Books (See Top 100 in Books) #41 in Software Design & Engineering #51 in Microsoft Programming (Books) #112 in Software Development (Books)
Customer Reviews: 4.7 4.7 out of 5 stars (147) var dpAcrHasRegisteredArcLinkClickAction; P.when(‘A’, ‘ready’).execute(function(A) { if (dpAcrHasRegisteredArcLinkClickAction !== true) { dpAcrHasRegisteredArcLinkClickAction = true; A.declarative( ‘acrLink-click-metrics’, ‘click’, { “allowLinkDefault”: true }, function (event) { if (window.ue) { ue.count(“acrLinkClickCount”, (ue.count(“acrLinkClickCount”) || 0) + 1); } } ); } }); P.when(‘A’, ‘cf’).execute(function(A) { A.declarative(‘acrStarsLink-click-metrics’, ‘click’, { “allowLinkDefault” : true }, function(event){ if(window.ue) { ue.count(“acrStarsLinkWithPopoverClickCount”, (ue.count(“acrStarsLinkWithPopoverClickCount”) || 0) + 1); } }); });

11 reviews for The Secret Life of Programs: Understand Computers — Craft Better Code

0.0 out of 5
0
0
0
0
0
Write a review
Show all Most Helpful Highest Rating Lowest Rating
  1. tyfd

    This book will improve your ability to develop better systems
    Few books in my experience are able to cover a broad and highly technical area such as computer programming in a way that leaves few stones unturned without getting bogged down in excessive or uneven detail. The Secret Life of Programs joins this short list.You may begin the book wondering why on earth you are being led through the construction of transistors and gates; after all you are a programmer and decades of computer science and language and operating system design have made it unnecessary to know this. Well, surprises are in store when Steinhart pulls from many early chapters to discuss memory hierarchy and computer architecture (chapters 4 and 5), communications (chapter 6), storing and accessing data (chapter 7), deadlocks and race conditions (chapter 12), and security (chapter 13). All of these topics lead directly to recognizing problems with software programs, and writing better software right away. As one severe example, random numbers generated in specialized CPU hardware from the world’s biggest CPU manufacturer can be altered, after production, to produce more predictable sequences by altering transistors in an undetectable way, greatly reducing their utility in secure applications.Steinhart has drawn from decades of experience as a true “full stack” engineer (transistors to complex software systems) to introduce many areas of knowledge that contribute to the quality of a complete system. Each chapter covers one important area of knowledge at a level that is easy to read (with the exception of some bad jokes sprinkled dangerously throughout), giving what I consider a surprisingly effective depth to each topic that is neither overwhelming nor pedantic, but hits the high points and provides references for those interested in diving deeper. And there are few topics, if any, that are superfluous; the later chapters tie it all together, especially chapter 13 on security. Chapter 15 asks the reader to keep in mind a central question, “Am I adding value?” and proceeds to show many examples in the software industry today where a great deal of effort is expended on solving problems that already had solutions.While I consider myself somewhat of a true “full stack” engineer as well, I found at least half of the chapters in the book very helpful in refreshing my knowledge or providing important new insights, especially in developing secure and robust systems. The highest value of the book in my opinion is the even-handed coverage of so many topics that will be almost guaranteed to improve a software engineer’s ability to “add value”.

    Helpful(0) Unhelpful(0)You have already voted this
  2. Justin Delk

    A great beginners map of the tech landscape, and where you can fit into it as a new programmer
    You can read dozens of modern programming books written for beginners and still be missing out on the big picture of what programming is- on all levels from the abstraction of high level languages down to the historic context and fundamental mechanics of the hardware in computers- however, if this book is in your first dozen you will not have this misunderstanding. I read most of this book in one night, a lot of the details will feel like review to students of math and computer science but what this book gives is the concise insight and intuition from a veteran in the field. Especially after reading the last chapter, which touches on how to write code, and why, and urges the reader to give back to the open source community, when you close the back cover you will feel compelled to start writing meaningful code (that hasn’t been written before).

    Helpful(0) Unhelpful(0)You have already voted this
  3. Martin W. Denker

    Virtually a complete, organized and well written course in computer science!
    The title is funny but a bit misleading. This book covers the almost the whole field of computer science from the theory of computing to the construction of the computer to the programming of working computers. Even goes a little of the way into distributed processing and modern phenomena computing in a web environment. Sections are brief but well written. Good place to start. Encyclopedic in subjects to be understood. Brief but well written explanations. One can go deeper into any section. The explanations that are provided make it clear for you what to look for in books or online if you need to go deeper into any one area.

    Helpful(0) Unhelpful(0)You have already voted this
  4. Candiria drummer

    Fast delivery and as stated in description
    Book in great condition just as stated, just about new. Thank you!

    Helpful(0) Unhelpful(0)You have already voted this
  5. Tyler A. Layne

    Must-Have for every CS major…
    … however, im a math/stats guy who is self taught in Python and R directly from books. I have a very weak knowledge of computers and, even though I can write programs, I am ignorant of the voodoo taking place in the background. Like a good trained monkey, I can follow the chapter 1 directions and set up the IDE, so I purchased this book so that I actually knew what I was doing. Also, im looking to get into related fields and wanted to familiarize myself with essential vocabulary and concepts…As a math major, I studied logic, black box circuits and regular expressions. This book has A TON of this information which I didn’t particularly care for. However, the very last chapter was well worth the price of the book!! I loved it and will read it over and over again.If I was a CS major then The Secret Life Of Programs would be an indispensable guide for every single class I would have had to take. Very well written, enjoyable, thorough, and comprehensive!! Well done.

    Helpful(0) Unhelpful(0)You have already voted this
  6. Avinash Sooriyarachchi

    Fantastic primer on underpinnings of infrastructure that enables code to work
    The book does a remarkable job in explaining aspects of computing architecture and hardware at a sufficiently high level without being too hand wavy. This is a hard task to do but Jon Steinhart does this seamlessly. A gentle read too.

    Helpful(0) Unhelpful(0)You have already voted this
  7. Gil Cabrera

    A must read to know what is going on within the screen you are looking at…right now.
    This book is amazing. I bought it to refresh my programming basics for courses I teach programming on industrial PLC computers, from beginner to expert. It delves into so much more. Humorous and informative. I highly recommend.

    Helpful(0) Unhelpful(0)You have already voted this
  8. Paula Andrea

    Awesome book if you like computers!
    A 4 year Computer Science degree in a book.

    Helpful(0) Unhelpful(0)You have already voted this
  9. Unknown_Customer

    Exelent book; good style; nice to read. Recomandation for those who like to understand what’s going on under the hood. Good thing for all coders.

    Helpful(0) Unhelpful(0)You have already voted this
  10. Shahin

    Easy to read, it covers little bit from everything. Definitely you will learn some new facts about computers science even if you have 10 years of experience.

    Helpful(0) Unhelpful(0)You have already voted this
  11. Landi

    Sollte in jedem Informatikstudium als Pflichtlektüre angegeben werden.Hilft einem zu verstehen was auf der Maschinenebene passiert wenn man in einer Highlevel-Sprache programmiert.

    Helpful(0) Unhelpful(0)You have already voted this

    Add a review

    Your email address will not be published. Required fields are marked *

    The Secret Life of Programs: Understand Computers — Craft Better Code
    The Secret Life of Programs: Understand Computers — Craft Better Code

    Original price was: $44.99.Current price is: $41.16.

    bestdealsavvy.com
    Logo
    Register New Account
    Compare items
    • Total (0)
    Compare
    0
    Shopping cart