The Art of Doing Science and Engineering: Learning to Learn


Richard Hamming - 1996
    By presenting actual experiences and analyzing them as they are described, the author conveys the developmental thought processes employed and shows a style of thinking that leads to successful results is something that can be learned. Along with spectacular successes, the author also conveys how failures contributed to shaping the thought processes. Provides the reader with a style of thinking that will enhance a person's ability to function as a problem-solver of complex technical issues. Consists of a collection of stories about the author's participation in significant discoveries, relating how those discoveries came about and, most importantly, provides analysis about the thought processes and reasoning that took place as the author and his associates progressed through engineering problems.

About Face 3: The Essentials of Interaction Design


Alan Cooper - 1995
    You'll learn the principles of good product behavior and gain an understanding of Cooper's Goal-Directed Design method, which involves everything from conducting user research to defining your product using personas and scenarios. Ultimately, you'll acquire the knowledge to design the best possible digital products and services.

Learn You a Haskell for Great Good!


Miran Lipovača - 2011
    Learn You a Haskell for Great Good! introduces programmers familiar with imperative languages (such as C++, Java, or Python) to the unique aspects of functional programming. Packed with jokes, pop culture references, and the author's own hilarious artwork, Learn You a Haskell for Great Good! eases the learning curve of this complex language, and is a perfect starting point for any programmer looking to expand his or her horizons. The well-known web tutorial on which this book is based is widely regarded as the best way for beginners to learn Haskell, and receives over 30,000 unique visitors monthly.

New Programmer's Survival Manual


Joshua Carter - 2011
    You've got the programming chops, you're up on the latest tech, you're sitting at your workstation... now what? New Programmer's Survival Manual gives your career the jolt it needs to get going: essential industry skills to help you apply your raw programming talent and make a name for yourself. It's a no-holds-barred look at what really goes on in the office--and how to not only survive, but thrive in your first job and beyond. Programming at industry level requires new skills - you'll build programs that dwarf anything you've done on your own. This book introduces you to practices for working on large-scale, long-lived programs at a professional level of quality. You'll find out how to work efficiently with your current tools, and discover essential new tools. But the tools are only part of the story; you've got to get street-smart too. Succeeding in the corporate working environment requires its own savvy. You'll learn how to navigate the office, work with your teammates, and how to deal with other people outside of your department. You'll understand where you fit into the big picture and how you contribute to the company's success. You'll also get a candid look at the tougher aspects of the job: stress, conflict, and office politics. Finally, programming is a job you can do for the long haul. This book helps you look ahead to the years to come, and your future opportunities--either as a programmer or in another role you grow into. There's nothing quite like the satisfaction of shipping a product and knowing, "I built that." Whether you work on embedded systems or web-based applications, in trendy technologies or legacy systems, this book helps you get from raw skill to an accomplished professional.

Wiring Simplified


H.P. Richter - 1978
    Homeowners learn how to understand codes and safety, select and connect wires, ground for safety, and install service equipment. Detailed drawings illustrate how to wire electrical devices, such as receptacles and different types of switches, with a focus on ensuring safe installations. Also discussed are special wiring projects such as modernizing old wiring and working with power-limited wiring.

Big Data: A Revolution That Will Transform How We Live, Work, and Think


Viktor Mayer-Schönberger - 2013
    “Big data” refers to our burgeoning ability to crunch vast collections of information, analyze it instantly, and draw sometimes profoundly surprising conclusions from it. This emerging science can translate myriad phenomena—from the price of airline tickets to the text of millions of books—into searchable form, and uses our increasing computing power to unearth epiphanies that we never could have seen before. A revolution on par with the Internet or perhaps even the printing press, big data will change the way we think about business, health, politics, education, and innovation in the years to come. It also poses fresh threats, from the inevitable end of privacy as we know it to the prospect of being penalized for things we haven’t even done yet, based on big data’s ability to predict our future behavior.In this brilliantly clear, often surprising work, two leading experts explain what big data is, how it will change our lives, and what we can do to protect ourselves from its hazards. Big Data is the first big book about the next big thing.www.big-data-book.com

The Hidden Reality: Parallel Universes and the Deep Laws of the Cosmos


Brian Greene - 2011
    Everything. Yet, in recent years discoveries in physics and cosmology have led a number of scientists to conclude that our universe may be one among many. With crystal-clear prose and inspired use of analogy, Brian Greene shows how a range of different “multiverse” proposals emerges from theories developed to explain the most refined observations of both subatomic particles and the dark depths of space: a multiverse in which you have an infinite number of doppelgängers, each reading this sentence in a distant universe; a multiverse comprising a vast ocean of bubble universes, of which ours is but one; a multiverse that endlessly cycles through time, or one that might be hovering millimeters away yet remains invisible; another in which every possibility allowed by quantum physics is brought to life. Or, perhaps strangest of all, a multiverse made purely of math.Greene, one of our foremost physicists and science writers, takes us on a captivating exploration of these parallel worlds and reveals how much of reality’s true nature may be deeply hidden within them. And, with his unrivaled ability to make the most challenging of material accessible and entertaining, Greene tackles the core question: How can fundamental science progress if great swaths of reality lie beyond our reach?Sparked by Greene’s trademark wit and precision, The Hidden Reality is at once a far-reaching survey of cutting-edge physics and a remarkable journey to the very edge of reality—a journey grounded firmly in science and limited only by our imagination.

Data Science from Scratch: First Principles with Python


Joel Grus - 2015
    In this book, you’ll learn how many of the most fundamental data science tools and algorithms work by implementing them from scratch. If you have an aptitude for mathematics and some programming skills, author Joel Grus will help you get comfortable with the math and statistics at the core of data science, and with hacking skills you need to get started as a data scientist. Today’s messy glut of data holds answers to questions no one’s even thought to ask. This book provides you with the know-how to dig those answers out. Get a crash course in Python Learn the basics of linear algebra, statistics, and probability—and understand how and when they're used in data science Collect, explore, clean, munge, and manipulate data Dive into the fundamentals of machine learning Implement models such as k-nearest Neighbors, Naive Bayes, linear and logistic regression, decision trees, neural networks, and clustering Explore recommender systems, natural language processing, network analysis, MapReduce, and databases

Think Stats


Allen B. Downey - 2011
    This concise introduction shows you how to perform statistical analysis computationally, rather than mathematically, with programs written in Python.You'll work with a case study throughout the book to help you learn the entire data analysis process—from collecting data and generating statistics to identifying patterns and testing hypotheses. Along the way, you'll become familiar with distributions, the rules of probability, visualization, and many other tools and concepts.Develop your understanding of probability and statistics by writing and testing codeRun experiments to test statistical behavior, such as generating samples from several distributionsUse simulations to understand concepts that are hard to grasp mathematicallyLearn topics not usually covered in an introductory course, such as Bayesian estimationImport data from almost any source using Python, rather than be limited to data that has been cleaned and formatted for statistics toolsUse statistical inference to answer questions about real-world data

Adventures In Raspberry Pi (Adventures In ...)


Carrie Anne Philbin - 2013
    Written for 11- to 15-year-olds and assuming no prior computing knowledge, this book uses the wildly successful, low-cost, credit-card-sized Raspberry Pi computer to explain fundamental computing concepts. Young people will enjoy going through the book's nine fun projects while they learn basic programming and system administration skills, starting with the very basics of how to plug in the board and turn it on. Each project includes a lively and informative video to reinforce the lessons. It's perfect for young, eager self-learners—your kids can jump in, set up their Raspberry Pi, and go through the lessons on their own. Written by Carrie Anne Philbin, a high school teacher of computing who advises the U.K. government on the revised ICT Curriculum Teaches 11- to 15-year-olds programming and system administration skills using Raspberry Pi Features 9 fun projects accompanied by lively and helpful videos Raspberry Pi is a $35/£25 credit-card-sized computer created by the non-profit Raspberry Pi Foundation; over a million have been sold Help your children have fun and learn computing skills at the same time with Adventures in Raspberry Pi.

There Are No Electrons: Electronics for Earthlings


Kenn Amdahl - 1991
    Despite its title, it's not wild ranting pseudo-science to be dismissed by those with brains. Rather, Amdahl maintains that one need not understand quantum physics to grasp how electricity works in practical applications. To understand your toaster or your fax machine, it doesn't really matter whether there are electrons or not, and it's a lot easier and more fun to start with the toaster than with quarks and calculus. The book is mildly weird, often funny, always clear and easy to understand. It assumes the reader doesn't know a volt from a hole in the ground and gently leads him or her through integrated circuits, radio, oscillators and the basics of the digital revolution using examples that include green buffalo, microscopic beer parties, break-dancing chickens and naked Norwegian girls in rowboats. OK, it's more than mildly weird.The book has been reprinted numerous times since 1991 and has achieved minor cult status. Reviewed and praised in dozens of electronics and educational magazines, it is used as a text by major corporations, colleges, high schools, military schools and trade schools. It has been studied by education programs at colleges across the United States. This book was making wise cracks in the corner before anyone thought of designing books for dummies and idiots; some say it helped to inspire that industry.It may be the only "introduction to electronics books" with back cover comments by Dave Barry, Ray Bradbury, Clive Cussler, and George Garrett, as well as recomendations from Robert Hazen, Bob Mostafapour, Dr. Roger Young, Dr. Wayne Green, Scott Rundle, Brian Battles, Michelle Guido, Herb Reichert and Emil Venere. As Monitoring Times said, "Perhaps the best electronics book ever. If you'd like to learn about basic electronics but haven't been able to pull it off, get There Are No Electrons. Just trust us. Get the book."

Robot Building for Beginners


David Cook - 2002
    Not only does author David Cook assist you in understanding the component parts of robot development, but he also presents valuable techniques that prepare you to make new discoveries on your own.Cook begins with the anatomy of a homemade robot and gives you the best advice on how to proceed successfully. General sources for tools and parts are provided in a consolidated list, and specific parts are recommended throughout the book. Also, basic safety precautions and essential measuring and numbering systems are promoted throughout.Specific tools and parts covered include digital multimeters, motors, wheels, resistors, LEDs, photoresistors, transistors, chips, gears, nut drivers, batteries, and more. "Robot Building for Beginners" is an inspiring book that provides an essential base of practical knowledge for anyone getting started in amateur robotics.

This Explains Everything: Deep, Beautiful, and Elegant Theories of How the World Works


John BrockmanSean Carroll - 2013
    Why do we recognize patterns? Is there such a thing as positive stress? Are we genetically programmed to be in conflict with each other? Those are just some of the 150 questions that the world's best scientific minds answer with elegant simplicity.With contributions from Jared Diamond, Richard Dawkins, Nassim Taleb, Brian Eno, Steven Pinker, and more, everything is explained in fun, uncomplicated terms that make the most complex concepts easy to comprehend.

The Illustrated A Brief History of Time/The Universe in a Nutshell


Stephen Hawking - 1988
    In this new book Hawking takes us to the cutting edge of theoretical physics, where truth is often stranger than fiction, to explain in laymen's terms the principles that control our universe. Like many in the community of theoretical physicists, Professor Hawking is seeking to uncover the grail of science - the elusive Theory of Everything that lies at the heart of the cosmos. In his accessible and often playful style, he guides us on his search to uncover the secrets of the universe - from supergravity to supersymmetry, from quantum theory to M-theory, from holography to duality. He takes us to the wild frontiers of science, where superstring theory and p-branes may hold the final clue to the puzzle. And he lets us behind the scenes of one of his most exciting intellectual adventures as he seeks "to combine Einstein's General Theory of Relativity and Richard Feynman's idea of multiple histories into one complete unified theory that will describe everything that happens in the universe." With characteristic exuberance, Professor Hawking invites us to be fellow travelers on this extraordinary voyage through space-time. Copious four-color illustrations help clarify this journey into a surreal wonderland where particles, sheets, and strings move in eleven dimensions; where black holes evaporate and disappear, taking their secret with them; and where the original cosmic seed from which our own universe sprang was a tiny nut. The Universe in a Nutshell is essential reading for all of us who want to understand the universe in which we live. Like its companion volume, A Brief History of Time, it conveys the excitement felt within the scientific community as the secrets of the cosmos reveal themselves.

Modern Operating Systems


Andrew S. Tanenbaum - 1992
    What makes an operating system modern? According to author Andrew Tanenbaum, it is the awareness of high-demand computer applications--primarily in the areas of multimedia, parallel and distributed computing, and security. The development of faster and more advanced hardware has driven progress in software, including enhancements to the operating system. It is one thing to run an old operating system on current hardware, and another to effectively leverage current hardware to best serve modern software applications. If you don't believe it, install Windows 3.0 on a modern PC and try surfing the Internet or burning a CD. Readers familiar with Tanenbaum's previous text, Operating Systems, know the author is a great proponent of simple design and hands-on experimentation. His earlier book came bundled with the source code for an operating system called Minux, a simple variant of Unix and the platform used by Linus Torvalds to develop Linux. Although this book does not come with any source code, he illustrates many of his points with code fragments (C, usually with Unix system calls). The first half of Modern Operating Systems focuses on traditional operating systems concepts: processes, deadlocks, memory management, I/O, and file systems. There is nothing groundbreaking in these early chapters, but all topics are well covered, each including sections on current research and a set of student problems. It is enlightening to read Tanenbaum's explanations of the design decisions made by past operating systems gurus, including his view that additional research on the problem of deadlocks is impractical except for "keeping otherwise unemployed graph theorists off the streets." It is the second half of the book that differentiates itself from older operating systems texts. Here, each chapter describes an element of what constitutes a modern operating system--awareness of multimedia applications, multiple processors, computer networks, and a high level of security. The chapter on multimedia functionality focuses on such features as handling massive files and providing video-on-demand. Included in the discussion on multiprocessor platforms are clustered computers and distributed computing. Finally, the importance of security is discussed--a lively enumeration of the scores of ways operating systems can be vulnerable to attack, from password security to computer viruses and Internet worms. Included at the end of the book are case studies of two popular operating systems: Unix/Linux and Windows 2000. There is a bias toward the Unix/Linux approach, not surprising given the author's experience and academic bent, but this bias does not detract from Tanenbaum's analysis. Both operating systems are dissected, describing how each implements processes, file systems, memory management, and other operating system fundamentals. Tanenbaum's mantra is simple, accessible operating system design. Given that modern operating systems have extensive features, he is forced to reconcile physical size with simplicity. Toward this end, he makes frequent references to the Frederick Brooks classic The Mythical Man-Month for wisdom on managing large, complex software development projects. He finds both Windows 2000 and Unix/Linux guilty of being too complicated--with a particular skewering of Windows 2000 and its "mammoth Win32 API." A primary culprit is the attempt to make operating systems more "user-friendly," which Tanenbaum views as an excuse for bloated code. The solution is to have smart people, the smallest possible team, and well-defined interactions between various operating systems components. Future operating system design will benefit if the advice in this book is taken to heart. --Pete Ostenson