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.
• How the real world is converted into a form that computers understand, like bits, logic, numbers, text, and colors
• The fundamental building blocks that make up a computer including logic gates, adders, decoders, registers, and memory
• Why designing programs to match computer hardware, especially memory, improves performance
• How programs are converted into machine language that computers understand
• How software building blocks are combined to create programs like web browsers
• Clever tricks for making programs more efficient, like loop invariance, strength reduction, and recursive subdivision
• The fundamentals of computer security and machine intelligence
• Project 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.
Grounds programming in fundamentals without forcing readers to wade through excessive, overwhelming details
Not focused on a single programming language or operating system
Marketing: Promotion at conferences like DEF CON (25,000 attendees) and ShmooCon (2,500 attendees), including book signings and talks on the topic
Author Skype talks at coding bootcamps across the country
Direct academic promotion: college and high school coding instructors
Promotion at over 200 tech conferences
Targeted review copy mailings to key reviewers and follow up
Targeted press release mailing
Publicity: Outreach to computer programming outlets: Lifehacker (36M readers), Computerworld (3M), IT World (1M)
Author interview on the importance of revisiting computer programming fundamentals in high school curricula in NPR, PBS, Edutopia, and Education Week
Promotion for Computer Science Education Week featuring letter from the author
Endorsements from notable computer science researches and academics in the field