Search results for: the-secret-life-of-programs

The Secret Life of Programs

Author : Jonathan E. Steinhart
File Size : 22.6 MB
Format : PDF, ePub, Mobi
Download : 269
Read : 350
Download »
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 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.

The Secret Life of Programs

Author : Jonathan E. Steinhart
File Size : 63.71 MB
Format : PDF, Docs
Download : 751
Read : 902
Download »
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 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.

The Secret Life of Programs

Author : Jonathan Steinhart
File Size : 48.92 MB
Format : PDF, ePub
Download : 705
Read : 502
Download »
Computer programming is not abstract and programs run on a machine. Knowing how computers work and how programs run on them is essential to becoming a better programmer, and understanding underlying technologies can help you develop a sense of what can go wrong. The Secret Life of Programs (formerly Foundations of Computer Programming) fills in the gaps in computer education by giving readers a look under the hood of programming, at the machine. Readers learn how software behaves when running on hardware; how programs manipulate data in memory; how computers process languages; and how web browsers work. They'll also learn how to write efficient programs, computer security basics, and real-world considerations to have in mind when writing code.

The Secret Life of Pronouns

Author : James W. Pennebaker
File Size : 39.99 MB
Format : PDF
Download : 163
Read : 683
Download »
A surprising and entertaining explanation of how the words we use (even the ones we don't notice) reveal our personalities, emotions, and identities. We spend our lives communicating. In the last fifty years, we've zoomed through radically different forms of communication, from typewriters to tablet computers, text messages to tweets. We generate more and more words with each passing day. Hiding in that deluge of language are amazing insights into who we are, how we think, and what we feel. In The Secret Life of Pronouns, social psychologist and language expert James W. Pennebaker uses his groundbreaking research in computational linguistics-in essence, counting the frequency of words we use-to show that our language carries secrets about our feelings, our self-concept, and our social intelligence. Our most forgettable words, such as pronouns and prepositions, can be the most revealing: their patterns are as distinctive as fingerprints. Using innovative analytic techniques, Pennebaker X-rays everything from Craigslist advertisements to the Federalist Papers-or your own writing, in quizzes you can take yourself-to yield unexpected insights. Who would have predicted that the high school student who uses too many verbs in her college admissions essay is likely to make lower grades in college? Or that a world leader's use of pronouns could reliably presage whether he led his country into war? You'll learn why it's bad when politicians use "we" instead of "I," what Lady Gaga and William Butler Yeats have in common, and how Ebenezer Scrooge's syntax hints at his self-deception and repressed emotion. Barack Obama, Sylvia Plath, and King Lear are among the figures who make cameo appearances in this sprightly, surprising tour of what our words are saying-whether we mean them to or not.

The Secret Life of Clams

Author : Anthony D. Fredericks
File Size : 21.27 MB
Format : PDF, ePub, Mobi
Download : 243
Read : 708
Download »
Get up close and personal with an amazing creature that has invaded our lexicon as well as our restaurants. It breathes with tubes, it has no head or brain, it feeds through a filter, and it is the source of dozens of familiar proverbs (“happy as a clam!”). Clams, it turns out, have been worshipped (by the Moche people of ancient Peru), used as money (by the Algonquin Indians), and consumed by people for thousands of years. Yet The Secret Life of Clams is the first adult trade book to deal exclusively with this gastronomic treat that is more complex than its simple two shells might reveal. The Secret Life of Clams features compelling insights, captivating biology, wry observations, and up-to-the-minute natural history that will keep readers engaged and enthralled. Written by award-winning science author Anthony D. Fredericks, The Secret Life of Clams includes a comfortable infusion of humor, up-to-date research, fascinating individuals (scientists and laypeople alike), and the awe of a fellow explorer as he guides readers on a journey of wonder and adventure. Along with an appreciation for oceanic creatures, this is a guidebook for armchair marine biologists everywhere who seek amazing discoveries in concert with compelling narration.

The Secret Life of Marilyn Monroe

Author : J. Randy Taraborrelli
File Size : 52.60 MB
Format : PDF, Kindle
Download : 383
Read : 731
Download »
Beautiful, damaged, the ultimate sex symbol, publicly celebrated, privately unhappy - Marilyn Monroe's tumultuous life and untimely death continue to fascinate us. When Marilyn Monroe became famous in the 1950s, the world was told that her mother was either dead or simply not a part of her life. However, that was not true. In fact, her mentally ill mother was very much present in Marilyn's world and the complex family dynamic that unfolded behind the scenes is a story that has never been told – until now. In this groundbreaking book J. Randy Taraborrelli draws complex and sympathetic portraits of the women so influential in the actress' life, including her mother, her foster mother and her legal guardian. He also reveals, for the first time, the shocking scope of Marilyn's own mental illness, the identity of Marilyn's father and the half-brother she never knew, and new information about her relationship with the Kennedys – Bobby, Jack and Pat Lawford Kennedy. Explosive, revelatory and surprisingly moving, The Secret Life of Marilyn Monroe is the final word on the life of one of the most fascinating and elusive icons of the twentieth century.

Racket Programming the Fun Way

Author : James. W. Stelly
File Size : 45.90 MB
Format : PDF, Mobi
Download : 757
Read : 660
Download »
An introduction to the Racket functional programming language and DrRacket development environment to explore topics in mathematics (mostly recreational) and computer science. At last, a lively guided tour through all the features, functions, and applications of the Racket programming language. You'll learn a variety of coding paradigms, including iterative, object oriented, and logic programming; create interactive graphics, draw diagrams, and solve puzzles as you explore Racket through fun computer science topics--from statistical analysis to search algorithms, the Turing machine, and more. Early chapters cover basic Racket concepts like data types, syntax, variables, strings, and formatted output. You'll learn how to perform math in Racket's rich numerical environment, and use programming constructs in different problem domains (like coding solutions to the Tower of Hanoi puzzle). Later, you'll play with plotting, grapple with graphics, and visualize data. Then, you'll escape the confines of the command line to produce animations, interactive games, and a card trick program that'll dazzle your friends. You'll learn how to: • Use DrRacket, an interactive development environment (IDE) for writing programs • Compute classical math problems, like the Fibonacci sequence • Generate two-dimensional function plots and create drawings using graphics primitives • Import and export data to and from Racket using ports, then visually analyze it • Build simple computing devices (pushdown automaton, Turing machine, and so on) that perform tasks • Leverage Racket's built-in libraries to develop a command line algebraic calculator Racket Programming the Fun Way is just like the language itself--an embodiment of everything that makes programming interesting and worthwhile, and that makes you a better programmer.

The Rust Programming Language Covers Rust 2018

Author : Steve Klabnik
File Size : 61.66 MB
Format : PDF, Docs
Download : 562
Read : 1019
Download »
The official book on the Rust programming language, written by the Rust development team at the Mozilla Foundation, fully updated for Rust 2018. The Rust Programming Language is the official book on Rust: an open source systems programming language that helps you write faster, more reliable software. Rust offers control over low-level details (such as memory usage) in combination with high-level ergonomics, eliminating the hassle traditionally associated with low-level languages. The authors of The Rust Programming Language, members of the Rust Core Team, share their knowledge and experience to show you how to take full advantage of Rust's features--from installation to creating robust and scalable programs. You'll begin with basics like creating functions, choosing data types, and binding variables and then move on to more advanced concepts, such as: • Ownership and borrowing, lifetimes, and traits • Using Rust's memory safety guarantees to build fast, safe programs • Testing, error handling, and effective refactoring • Generics, smart pointers, multithreading, trait objects, and advanced pattern matching • Using Cargo, Rust's built-in package manager, to build, test, and document your code and manage dependencies • How best to use Rust's advanced compiler with compiler-led programming techniques You'll find plenty of code examples throughout the book, as well as three chapters dedicated to building complete projects to test your learning: a number guessing game, a Rust implementation of a command line tool, and a multithreaded server. New to this edition: An extended section on Rust macros, an expanded chapter on modules, and appendixes on Rust development tools and editions.

Effective C

Author : Robert C. Seacord
File Size : 27.27 MB
Format : PDF, Docs
Download : 134
Read : 836
Download »
A detailed introduction to the C programming language for experienced programmers. The world runs on code written in the C programming language, yet most schools begin the curriculum with Python or Java. Effective C bridges this gap and brings C into the modern era--covering the modern C17 Standard as well as potential C2x features. With the aid of this instant classic, you'll soon be writing professional, portable, and secure C programs to power robust systems and solve real-world problems. Robert C. Seacord introduces C and the C Standard Library while addressing best practices, common errors, and open debates in the C community. Developed together with other C Standards committee experts, Effective C will teach you how to debug, test, and analyze C programs. You'll benefit from Seacord's concise explanations of C language constructs and behaviors, and from his 40 years of coding experience. You'll learn: • How to identify and handle undefined behavior in a C program • The range and representations of integers and floating-point values • How dynamic memory allocation works and how to use nonstandard functions • How to use character encodings and types • How to perform I/O with terminals and filesystems using C Standard streams and POSIX file descriptors • How to understand the C compiler's translation phases and the role of the preprocessor • How to test, debug, and analyze C programs Effective C will teach you how to write professional, secure, and portable C code that will stand the test of time and help strengthen the foundation of the computing world.

How Linux Works 3rd Edition

Author : Brian Ward
File Size : 51.43 MB
Format : PDF, Docs
Download : 109
Read : 1030
Download »
Best-selling guide to the inner workings of the Linux operating system with over 50,000 copies sold since its original release in 2014. Linux for the Superuser Unlike some operating systems, Linux doesn’t try to hide the important bits from you—it gives you full control of your computer. But to truly master Linux, you need to understand its internals, like how the system boots, how networking works, and what the kernel actually does. In this third edition of the bestselling How Linux Works, author Brian Ward peels back the layers of this well-loved operating system to make Linux internals accessible. This edition has been thoroughly updated and expanded with added coverage of Logical Volume Manager (LVM), virtualization, and containers. You'll learn: • How Linux boots, from boot loaders to init (systemd) • How the kernel manages devices, device drivers, and processes • How networking, interfaces, firewalls, and servers work • How development tools work and relate to shared libraries • How to write effective shell scripts You’ll also explore the kernel and examine key system tasks inside user-space processes, including system calls, input and output, and filesystem maintenance. With its combination of background, theory, real-world examples, and thorough explanations, How Linux Works, 3rd Edition will teach you what you need to know to take control of your operating system. NEW TO THIS EDITION: • Hands-on coverage of the LVM, journald logging system, and IPv6 • Additional chapter on virtualization, featuring containers and cgroups • Expanded discussion of systemd Covers systemd-based installations

Write Great Code Volume 1 2nd Edition

Author : Randall Hyde
File Size : 23.39 MB
Format : PDF, Docs
Download : 950
Read : 481
Download »
Understanding the Machine, the first volume in the landmark Write Great Code series by Randall Hyde, explains the underlying mechanics of how a computer works. This, the first volume in Randall Hyde's Write Great Code series, dives into machine organization without the extra overhead of learning assembly language programming. Written for high-level language programmers, Understanding the Machine fills in the low-level details of machine organization that are often left out of computer science and engineering courses. Learn: • How the machine represents numbers, strings, and high-level data structures, so you'll know the inherent cost of using them. • How to organize your data, so the machine can access it efficiently. • How the CPU operates, so you can write code that works the way the machine does. • How I/O devices operate, so you can maximize your application's performance when accessing those devices. • How to best use the memory hierarchy to produce the fastest possible programs. Great code is efficient code. But before you can write truly efficient code, you must understand how computer systems execute programs and how abstractions in programming languages map to the machine's low-level hardware. After all, compilers don't write the best machine code; programmers do. This book gives you the foundation upon which all great software is built. NEW IN THIS EDITION, COVERAGE OF: • Programming languages like Swift and Java • Code generation on modern 64-bit CPUs • ARM processors on mobile phones and tablets • Newer peripheral devices • Larger memory systems and large-scale SSDs

Rust for Rustaceans

Author : Jon Gjengset
File Size : 75.89 MB
Format : PDF, ePub
Download : 283
Read : 410
Download »
Master professional-level coding in Rust. For developers who’ve mastered the basics, this book is the next step on your way to professional-level programming in Rust. It covers everything you need to build and maintain larger code bases, write powerful and flexible applications and libraries, and confidently expand the scope and complexity of your projects. Author Jon Gjengset takes you deep into the Rust programming language, dissecting core topics like ownership, traits, concurrency, and unsafe code. You’ll explore key concepts like type layout and trait coherence, delve into the inner workings of concurrent programming and asynchrony with async/await, and take a tour of the world of no_std programming. Gjengset also provides expert guidance on API design, testing strategies, and error handling, and will help develop your understanding of foreign function interfaces, object safety, procedural macros, and much more. You'll Learn: • How to design reliable, idiomatic, and ergonomic Rust programs based on best principles • Effective use of declarative and procedural macros, and the difference between them • How asynchrony works in Rust – all the way from the Pin and Waker types used in manual implementations of Futures, to how async/await saves you from thinking about most of those words • What it means for code to be unsafe, and best practices for writing and interacting with unsafe functions and traits • How to organize and configure more complex Rust projects so that they integrate nicely with the rest of the ecosystem • How to write Rust code that can interoperate with non-Rust libraries and systems, or run in constrained and embedded environments Brimming with practical, pragmatic insights that you can immediately apply, Rust for Rustaceans helps you do more with Rust, while also teaching you its underlying mechanisms.

The Secret Life of the Pencil

Author : Mike Tinney
File Size : 76.94 MB
Format : PDF
Download : 404
Read : 724
Download »
Since software programs have come to dominate offices and studios, the pencil has become a symbol for creative freedom. In other words, the work you do on the computer is what you do for work, to pay the rent, whereas the stuff you do with your pencil is the stuff you do for fun. Apart from stimulating the world's most important creative minds, the pencil has become the modern creative's ultimate fetish. This book presents a unique collection of close-up pictures of pencils from some of our foremost artists, designers, writers, architects, and musicians. What makes these pictures compelling is the fact that they somehow reflect the creative personalities of their owners: Philippe Starck's is a stylish black and red, Paul Smith's is a classic jewel-like thing worth £3,000 (a present from Jonathan Ive), William Boyd's is nicely aged and rusty, while Anish Kapoor's is sculpted into a mini ArcelorMittal Orbital tower. The pictures are complemented by materials such as sketches, quotes and brief interviews, giving a further insight into the workings of these great creative minds.

How Computers Really Work

Author : Matthew Justice
File Size : 88.44 MB
Format : PDF
Download : 448
Read : 407
Download »
An approachable, hands-on guide to understanding how computers work, from low-level circuits to high-level code. How Computers Really Work is a hands-on guide to the computing ecosystem: everything from circuits to memory and clock signals, machine code, programming languages, operating systems, and the internet. But you won't just read about these concepts, you'll test your knowledge with exercises, and practice what you learn with 41 optional hands-on projects. Build digital circuits, craft a guessing game, convert decimal numbers to binary, examine virtual memory usage, run your own web server, and more. Explore concepts like how to: • Think like a software engineer as you use data to describe a real world concept • Use Ohm's and Kirchhoff's laws to analyze an electrical circuit • Think like a computer as you practice binary addition and execute a program in your mind, step-by-step The book's projects will have you translate your learning into action, as you: • Learn how to use a multimeter to measure resistance, current, and voltage • Build a half adder to see how logical operations in hardware can be combined to perform useful functions • Write a program in assembly language, then examine the resulting machine code • Learn to use a debugger, disassemble code, and hack a program to change its behavior without changing the source code • Use a port scanner to see which internet ports your computer has open • Run your own server and get a solid crash course on how the web works And since a picture is worth a thousand bytes, chapters are filled with detailed diagrams and illustrations to help clarify technical complexities. Requirements: The projects require a variety of hardware - electronics projects need a breadboard, power supply, and various circuit components; software projects are performed on a Raspberry Pi. Appendix B contains a complete list. Even if you skip the projects, the book's major concepts are clearly presented in the main text.

The Secret Life of Marilyn Monroe

Author : J. Randy Taraborrelli
File Size : 57.78 MB
Format : PDF, Mobi
Download : 424
Read : 288
Download »
From New York Times bestselling author J. Randy Taraborrelli comes the definitive biography of the most enduring icon in popular American culture. When Marilyn Monroe became famous in the 1950s, the world was told that her mother was either dead or simply not a part of her life. However, that was not true. In fact, her mentally ill mother was very much present in Marilyn's world and the complex family dynamic that unfolded behind the scenes is a story that has never before been told...until now. In this groundbreaking book, Taraborrelli draws complex and sympathetic portraits of the women so influential in the actress' life, including her mother, her foster mother, and her legal guardian. He also reveals, for the first time, the shocking scope of Marilyn's own mental illness, the identity of Marilyn's father and the half-brother she never knew, and new information about her relationship with the Kennedy's-Bobby, Jack, and Pat Kennedy Lawford. Explosive, revelatory, and surprisingly moving, this is the final word on the life of one of the most fascinating and elusive icons of the 20th Century.

Dive Into Algorithms

Author : Bradford Tuckfield
File Size : 62.95 MB
Format : PDF, Docs
Download : 124
Read : 1041
Download »
Dive Into Algorithms is a broad introduction to algorithms using the Python Programming Language. Dive Into Algorithms is a wide-ranging, Pythonic tour of many of the world's most interesting algorithms. With little more than a bit of computer programming experience and basic high-school math, you'll explore standard computer science algorithms for searching, sorting, and optimization; human-based algorithms that help us determine how to catch a baseball or eat the right amount at a buffet; and advanced algorithms like ones used in machine learning and artificial intelligence. You'll even explore how ancient Egyptians and Russian peasants used algorithms to multiply numbers, how the ancient Greeks used them to find greatest common divisors, and how Japanese scholars in the age of samurai designed algorithms capable of generating magic squares. You'll explore algorithms that are useful in pure mathematics and learn how mathematical ideas can improve algorithms. You'll learn about an algorithm for generating continued fractions, one for quick calculations of square roots, and another for generating seemingly random sets of numbers. You'll also learn how to: • Use algorithms to debug code, maximize revenue, schedule tasks, and create decision trees • Measure the efficiency and speed of algorithms • Generate Voronoi diagrams for use in various geometric applications • Use algorithms to build a simple chatbot, win at board games, or solve sudoku puzzles • Write code for gradient ascent and descent algorithms that can find the maxima and minima of functions • Use simulated annealing to perform global optimization • Build a decision tree to predict happiness based on a person's characteristics Once you've finished this book you'll understand how to code and implement important algorithms as well as how to measure and optimize their performance, all while learning the nitty-gritty details of today's most powerful algorithms.

Learn Python Visually

Author : Tristan Bunn
File Size : 64.92 MB
Format : PDF, ePub
Download : 505
Read : 1021
Download »
An accessible, visual, and creative approach to teaching core coding concepts using Python's Processing.py, an open-source graphical development environment. This beginners book introduces non-programmers to the fundamentals of computer coding within a visual, arts-focused context. Tristan Bunn’s remarkably effective teaching approach is designed to help you visualize core programming concepts while you make cool pictures, animations, and simulations using Python Mode for the open-source Processing development environment. Right from the first chapter, you'll produce and manipulate colorful drawings, shapes and patterns as Bunn walks you through a series of easy-to-follow graphical coding projects that grow increasingly complex. You’ll go from drawing with code to animating a bouncing DVD screensaver and practicing data-visualization techniques. Along the way, you’ll encounter creative-yet-practical skill-building challenges that relate to everything from video games, cars, and coffee, to fine art, amoebas, and Pink Floyd. As you grow more fluent in both Python and programming in general, topics shift toward the mastery of algorithmic thinking, as you explore periodic motion, Lissajous curves, and using classes to create objects. You’ll learn about: • Basic coding theories and concepts, like variables, data types, pixel coordinates, control flow and algorithms • Writing code that produces drawings, patterns, animations, data visualizations, user interfaces, and simulations • Using conditional statements, iteration, randomness, lists and dictionaries • Defining functions, reducing repetition, and making your code more modular • How to write classes, and create objects to structure code more efficiently In addition to giving you a good grounding in general programming, the skills and knowledge you’ll gain in this book are your entry point to coding for an ever-expanding horizon of creative technologies.

Computer Graphics from Scratch

Author : Gabriel Gambetta
File Size : 57.74 MB
Format : PDF, ePub, Mobi
Download : 408
Read : 682
Download »
Computer Graphics from Scratch demystifies the algorithms used in modern graphics software and guides beginners through building photorealistic 3D renders. Computer graphics programming books are often math-heavy and intimidating for newcomers. Not this one. Computer Graphics from Scratch takes a simpler approach by keeping the math to a minimum and focusing on only one aspect of computer graphics, 3D rendering. You’ll build two complete, fully functional renderers: a raytracer, which simulates rays of light as they bounce off objects, and a rasterizer, which converts 3D models into 2D pixels. As you progress you’ll learn how to create realistic reflections and shadows, and how to render a scene from any point of view. Pseudocode examples throughout make it easy to write your renderers in any language, and links to live JavaScript demos of each algorithm invite you to explore further on your own. Learn how to: • Use perspective projection to draw 3D objects on a 2D plane • Simulate the way rays of light interact with surfaces • Add mirror-like reflections and cast shadows to objects • Render a scene from any camera position using clipping planes • Use flat, Gouraud, and Phong shading to mimic real surface lighting • Paint texture details onto basic shapes to create realistic-looking objects Whether you’re an aspiring graphics engineer or a novice programmer curious about how graphics algorithms work, Gabriel Gambetta’s simple, clear explanations will quickly put computer graphics concepts and rendering techniques within your reach. All you need is basic coding knowledge and high school math. Computer Graphics from Scratch will cover the rest.

Algorithmic Thinking

Author : Daniel Zingaro
File Size : 73.11 MB
Format : PDF, ePub
Download : 348
Read : 757
Download »
A hands-on, problem-based introduction to building algorithms and data structures to solve problems with a computer. Algorithmic Thinking will teach you how to solve challenging programming problems and design your own algorithms. Daniel Zingaro, a master teacher, draws his examples from world-class programming competitions like USACO and IOI. You'll learn how to classify problems, choose data structures, and identify appropriate algorithms. You'll also learn how your choice of data structure, whether a hash table, heap, or tree, can affect runtime and speed up your algorithms; and how to adopt powerful strategies like recursion, dynamic programming, and binary search to solve challenging problems. Line-by-line breakdowns of the code will teach you how to use algorithms and data structures like: • The breadth-first search algorithm to find the optimal way to play a board game or find the best way to translate a book • Dijkstra's algorithm to determine how many mice can exit a maze or the number of fastest routes between two locations • The union-find data structure to answer questions about connections in a social network or determine who are friends or enemies • The heap data structure to determine the amount of money given away in a promotion • The hash-table data structure to determine whether snowflakes are unique or identify compound words in a dictionary NOTE: Each problem in this book is available on a programming-judge website. You'll find the site's URL and problem ID in the description. What's better than a free correctness check?

The Secret Life of Groceries

Author : Benjamin Lorr
File Size : 29.47 MB
Format : PDF, ePub, Docs
Download : 308
Read : 709
Download »
In the tradition of Fast Food Nation and The Omnivore's Dilemma, an extraordinary investigation into the human lives at the heart of the American grocery store What does it take to run the American supermarket? How do products get to shelves? Who sets the price? And who suffers the consequences of increased convenience end efficiency? In this alarming exposé, author Benjamin Lorr pulls back the curtain on this highly secretive industry. Combining deep sourcing, immersive reporting, and compulsively readable prose, Lorr leads a wild investigation in which we learn: • The secrets of Trader Joe’s success from Trader Joe himself • Why truckers call their job “sharecropping on wheels” • What it takes for a product to earn certification labels like “organic” and “fair trade” • The struggles entrepreneurs face as they fight for shelf space, including essential tips, tricks, and traps for any new food business • The truth behind the alarming slave trade in the shrimp industry The result is a page-turning portrait of an industry in flux, filled with the passion, ingenuity, and exploitation required to make this everyday miracle continue to function. The product of five years of research and hundreds of interviews across every level of the industry, The Secret Life of Groceries delivers powerful social commentary on the inherently American quest for more and the social costs therein.