The Linux Programming Interface: A Linux and Unix System Programming Handbook


Michael Kerrisk - 2010
    You'll learn how to:Read and write files efficiently Use signals, clocks, and timers Create processes and execute programs Write secure programs Write multithreaded programs using POSIX threads Build and use shared libraries Perform interprocess communication using pipes, message queues, shared memory, and semaphores Write network applications with the sockets API While The Linux Programming Interface covers a wealth of Linux-specific features, including epoll, inotify, and the /proc file system, its emphasis on UNIX standards (POSIX.1-2001/SUSv3 and POSIX.1-2008/SUSv4) makes it equally valuable to programmers working on other UNIX platforms.The Linux Programming Interface is the most comprehensive single-volume work on the Linux and UNIX programming interface, and a book that's destined to become a new classic.Praise for The Linux Programming Interface "If I had to choose a single book to sit next to my machine when writing software for Linux, this would be it." —Martin Landers, Software Engineer, Google "This book, with its detailed descriptions and examples, contains everything you need to understand the details and nuances of the low-level programming APIs in Linux . . . no matter what the level of reader, there will be something to be learnt from this book." —Mel Gorman, Author of Understanding the Linux Virtual Memory Manager "Michael Kerrisk has not only written a great book about Linux programming and how it relates to various standards, but has also taken care that bugs he noticed got fixed and the man pages were (greatly) improved. In all three ways, he has made Linux programming easier. The in-depth treatment of topics in The Linux Programming Interface . . . makes it a must-have reference for both new and experienced Linux programmers." —Andreas Jaeger, Program Manager, openSUSE, Novell "Michael's inexhaustible determination to get his information right, and to express it clearly and concisely, has resulted in a strong reference source for programmers. While this work is targeted at Linux programmers, it will be of value to any programmer working in the UNIX/POSIX ecosystem." —David Butenhof, Author of Programming with POSIX Threads and Contributor to the POSIX and UNIX Standards ". . . a very thorough—yet easy to read—explanation of UNIX system and network programming, with an emphasis on Linux systems. It's certainly a book I'd recommend to anybody wanting to get into UNIX programming (in general) or to experienced UNIX programmers wanting to know 'what's new' in the popular GNU/Linux system." —Fernando Gont, Network Security Researcher, IETF Participant, and RFC Author ". . . encyclopedic in the breadth and depth of its coverage, and textbook-like in its wealth of worked examples and exercises. Each topic is clearly and comprehensively covered, from theory to hands-on working code. Professionals, students, educators, this is the Linux/UNIX reference that you have been waiting for." —Anthony Robins, Associate Professor of Computer Science, The University of Otago "I've been very impressed by the precision, the quality and the level of detail Michael Kerrisk put in his book. He is a great expert of Linux system calls and lets us share his knowledge and understanding of the Linux APIs." —Christophe Blaess, Author of Programmation systeme en C sous Linux ". . . an essential resource for the serious or professional Linux and UNIX systems programmer. Michael Kerrisk covers the use of all the key APIs across both the Linux and UNIX system interfaces with clear descriptions and tutorial examples and stresses the importance and benefits of following standards such as the Single UNIX Specification and POSIX 1003.1." —Andrew Josey, Director, Standards, The Open Group, and Chair of the POSIX 1003.1 Working Group "What could be better than an encyclopedic reference to the Linux system, from the standpoint of the system programmer, written by none other than the maintainer of the man pages himself? The Linux Programming Interface is comprehensive and detailed. I firmly expect it to become an indispensable addition to my programming bookshelf." —Bill Gallmeister, Author of POSIX.4 Programmer's Guide: Programming for the Real World ". . . the most complete and up-to-date book about Linux and UNIX system programming. If you're new to Linux system programming, if you're a UNIX veteran focused on portability while interested in learning the Linux way, or if you're simply looking for an excellent reference about the Linux programming interface, then Michael Kerrisk's book is definitely the companion you want on your bookshelf." —Loic Domaigne, Chief Software Architect (Embedded), Corpuls.com

On Growth and Form


D'Arcy Wentworth Thompson - 1917
    Why do living things and physical phenomena take the forms they do? Analyzing the mathematical and physical aspects of biological processes, this historic work, first published in 1917, has become renowned as well for the poetry of is descriptions.

You Look Like a Thing and I Love You: How Artificial Intelligence Works and Why It's Making the World a Weirder Place


Janelle Shane - 2019
    according to an artificial intelligence trained by scientist Janelle Shane, creator of the popular blog "AI Weirdness." She creates silly AIs that learn how to name paint colors, create the best recipes, and even flirt (badly) with humans--all to understand the technology that governs so much of our daily lives.We rely on AI every day for recommendations, for translations, and to put cat ears on our selfie videos. We also trust AI with matters of life and death, on the road and in our hospitals. But how smart is AI really, and how does it solve problems, understand humans, and even drive self-driving cars?Shane delivers the answers to every AI question you've ever asked, and some you definitely haven't--like, how can a computer design the perfect sandwich? What does robot-generated Harry Potter fan-fiction look like? And is the world's best Halloween costume really "Vampire Hog Bride"?In this smart, often hilarious introduction to the most interesting science of our time, Shane shows how these programs learn, fail, and adapt--and how they reflect the best and worst of humanity. You Look Like a Thing and I Love You is the perfect book for anyone curious about what the robots in our lives are thinking.

Problem Solving with C++: The Object of Programming


Walter J. Savitch - 1995
    It introduces the use of classes; shows how to write ADTs that maximize the perfomance of C++ in creating reusable code; and provides coverage of all important OO functions, including inheritance, polymorphism and encapsulation.

1,227 QI Facts to Blow Your Socks Off


John Lloyd - 2012
    We also write books and newspaper columns; run a thriving website, a Facebook page, a Twitter feed; and produce an iPhone App and a sister Radio 4 programme. At the core of what we do is the astonishing fact - painstakingly researched and distilled to a brilliant and shocking clarity. In Einstein's words: 'Everything should be as simple as possible, but not simpler.' Did you know that: cows moo in regional accents; the entire internet weighs less than a grain of sand; the dialling code from Britain to Russia is 007; potatoes have more chromosomes than human beings; the London Underground has made more money from its famous map than it has from running trains; Tintin is called Tantan in Japanese because TinTin is pronounced 'Chin chin' and means penis; the water in the mouth of a blue whale weighs more than its body; Scotland has twice as many pandas as Conservative MPs; Saddam's bunker was designed by the grandson of the woman who built Hitler's bunker; Under the Wildlife and Countryside Act of 1981, it is explicitly illegal in Britain to use a machinegun to kill a hedgehog. 1,227 QI Facts To Blow Your Socks Off will make you look at the universe (and your socks) in an alarming new way.

The Art of Invisibility: The World's Most Famous Hacker Teaches You How to Be Safe in the Age of Big Brother and Big Data


Kevin D. Mitnick - 2017
    Consumer's identities are being stolen, and a person's every step is being tracked and stored. What once might have been dismissed as paranoia is now a hard truth, and privacy is a luxury few can afford or understand.In this explosive yet practical book, Kevin Mitnick illustrates what is happening without your knowledge--and he teaches you "the art of invisibility." Mitnick is the world's most famous--and formerly the Most Wanted--computer hacker. He has hacked into some of the country's most powerful and seemingly impenetrable agencies and companies, and at one point he was on a three-year run from the FBI. Now, though, Mitnick is reformed and is widely regarded as the expert on the subject of computer security. He knows exactly how vulnerabilities can be exploited and just what to do to prevent that from happening. In THE ART OF INVISIBILITY Mitnick provides both online and real life tactics and inexpensive methods to protect you and your family, in easy step-by-step instructions. He even talks about more advanced "elite" techniques, which, if used properly, can maximize your privacy. Invisibility isn't just for superheroes--privacy is a power you deserve and need in this modern age.

LATEX: A Document Preparation System: User's Guide and Reference Manual


Leslie Lamport - 1985
    The new edition features additional styles and functions, improved font handling, and enhanced graphics capabilities. Other parts of the book have been revised to reflect user comments and suggestions. Selected sections have been rewritten to explain challenging concepts or functions, and the descriptions of both MakeIndex and BibTEX have been updated. New LATEX users will want to start with this book, and current users, particularly as they upgrade to the LATEX2e software, will be eager to obtain the most up-to-date version of its associated manual. Features Revised version of the authoritative user's guide and reference manual for the LATEX computer typesetting system. Features the new standard software release - LATEX2e. Sections rewritten to explain difficult concepts or functions.

How Buildings Learn: What Happens After They're Built


Stewart Brand - 1994
    How Buildings Learn is a masterful new synthesis that proposes that buildings adapt best when constantly refined and reshaped by their occupants, and that architects can mature from being artists of space to becoming artists of time. From the connected farmhouses of New England to I.M. Pei's Media Lab, from "satisficing" to "form follows funding," from the evolution of bungalows to the invention of Santa Fe Style, from Low Road military surplus buildings to a High Road English classic like Chatsworth—this is a far-ranging survey of unexplored essential territory.More than any other human artifacts, buildings improve with time—if they're allowed to. How Buildings Learn shows how to work with time rather than against it.

The World Atlas of Coffee: From Beans to Brewing -- Coffees Explored, Explained and Enjoyed


James Hoffmann - 2014
    From overviews of the world's most vibrant coffee-growing regions, to step-by-step brewing tutorials, the content is educational, thought-provoking, and substantial. I've already recommended this book to Barista Magazine readers countless times. -- Sarah Allen, Editor Barista MagazineA beautiful world guide to the brown bean.Taking the reader on a global tour of coffee-growing countries, The World Atlas of Coffee presents the bean in full-color photographs and concise, informative text. It shows the origins of coffee -- where it is grown, the people who grow it; and the cultures in which coffee is a way of life -- and the world of consumption -- processing, grades, the consumer and the modern culture of coffee.Plants of the genus Coffea are cultivated in more than 70 countries but primarily in equatorial Latin America, Southeast Asia and Africa. For some countries, including Central African Republic, Colombia, Ethiopia, and Honduras, coffee is the number one export and critical to the economy.Organized by continent and then further by country or region, The World Atlas of Coffee presents the brew in color spreads packed with information. They include:The history of coffee generally and regionally The role of colonialism (for example, in Burundi under colonial rule of Belgium, coffee production was best described as coercive. Every peasant farmer had to cultivate at least 50 coffee trees near their home.) Map of growing regions and detail maps Charts explaining differences in growing regions within a country Inset boxes (For example, what is the Potato Defect? Is Cuban coffee legal in the United States?) The politics of coffee and the fair trade, organic and shade grown phenomena Beautiful color photographs taken in the field. Americans consume 400 million cups of coffee per day, equivalent to 146 billion cups of coffee per year, making the United States the leading consumer of coffee in the world. The World Atlas of Coffee is an excellent choice for these coffee lovers.

Mining the Social Web: Analyzing Data from Facebook, Twitter, LinkedIn, and Other Social Media Sites


Matthew A. Russell - 2011
    You’ll learn how to combine social web data, analysis techniques, and visualization to find what you’ve been looking for in the social haystack—as well as useful information you didn’t know existed.Each standalone chapter introduces techniques for mining data in different areas of the social Web, including blogs and email. All you need to get started is a programming background and a willingness to learn basic Python tools.Get a straightforward synopsis of the social web landscapeUse adaptable scripts on GitHub to harvest data from social network APIs such as Twitter, Facebook, LinkedIn, and Google+Learn how to employ easy-to-use Python tools to slice and dice the data you collectExplore social connections in microformats with the XHTML Friends NetworkApply advanced mining techniques such as TF-IDF, cosine similarity, collocation analysis, document summarization, and clique detectionBuild interactive visualizations with web technologies based upon HTML5 and JavaScript toolkits"A rich, compact, useful, practical introduction to a galaxy of tools, techniques, and theories for exploring structured and unstructured data." --Alex Martelli, Senior Staff Engineer, Google

Fifty Inventions That Shaped the Modern Economy


Tim Harford - 2017
    Who thought up paper money? What was the secret element that made the Gutenberg printing press possible? And what is the connection between The Da Vinci Code and the collapse of Lehman Brothers? Fifty Inventions That Shaped the Modern Economy paints an epic picture of change in an intimate way by telling the stories of the tools, people, and ideas that had far-reaching consequences for all of us. From the plough to artificial intelligence, from Gillette’s disposable razor to IKEA’s Billy bookcase, bestselling author and Financial Times columnist Tim Harford recounts each invention’s own curious, surprising, and memorable story. Invention by invention, Harford reflects on how we got here and where we might go next. He lays bare often unexpected connections: how the bar code undermined family corner stores, and why the gramophone widened inequality. In the process, he introduces characters who developed some of these inventions, profited from them, and were ruined by them, as he traces the principles that helped explain their transformative effects. The result is a wise and witty book of history, economics, and biography.