The Non-Designer's Design Book


Robin P. Williams - 2003
    Not to worry: This book is the one place you can turn to find quick, non-intimidating, excellent design help. In The Non-Designer's Design Book, 2nd Edition, best-selling author Robin Williams turns her attention to the basic principles of good design and typography. All you have to do is follow her clearly explained concepts, and you'll begin producing more sophisticated, professional, and interesting pages immediately. Humor-infused, jargon-free prose interspersed with design exercises, quizzes, illustrations, and dozens of examples make learning a snap—which is just what audiences have come to expect from this best-selling author.

Physics for Scientists and Engineers


Douglas C. Giancoli - 1988
    For the calculus-based General Physics course primarily taken by engineers and scientists.

Algorithms in a Nutshell


George T. Heineman - 2008
    Algorithms in a Nutshell describes a large number of existing algorithms for solving a variety of problems, and helps you select and implement the right algorithm for your needs -- with just enough math to let you understand and analyze algorithm performance. With its focus on application, rather than theory, this book provides efficient code solutions in several programming languages that you can easily adapt to a specific project. Each major algorithm is presented in the style of a design pattern that includes information to help you understand why and when the algorithm is appropriate. With this book, you will:Solve a particular coding problem or improve on the performance of an existing solutionQuickly locate algorithms that relate to the problems you want to solve, and determine why a particular algorithm is the right one to useGet algorithmic solutions in C, C++, Java, and Ruby with implementation tipsLearn the expected performance of an algorithm, and the conditions it needs to perform at its bestDiscover the impact that similar design decisions have on different algorithmsLearn advanced data structures to improve the efficiency of algorithmsWith Algorithms in a Nutshell, you'll learn how to improve the performance of key algorithms essential for the success of your software applications.

Schaum's Outline of Complex Variables


Murray R. Spiegel - 1968
    Contains 640 problems including solutions; additional practice problems with answers; explanations of complex variable theory; coverage of applications of complex variables in engineering, physics, and elsewhere, with accompanying sample problems and solutions.

What If? Serious Scientific Answers to Absurd Hypothetical Questions


Randall Munroe - 2014
    It now has 600,000 to a million page hits daily. Every now and then, Munroe would get emails asking him to arbitrate a science debate. 'My friend and I were arguing about what would happen if a bullet got struck by lightning, and we agreed that you should resolve it . . . ' He liked these questions so much that he started up What If. If your cells suddenly lost the power to divide, how long would you survive? How dangerous is it, really, to be in a swimming pool in a thunderstorm? If we hooked turbines to people exercising in gyms, how much power could we produce? What if everyone only had one soulmate?When (if ever) did the sun go down on the British empire? How fast can you hit a speed bump while driving and live?What would happen if the moon went away?In pursuit of answers, Munroe runs computer simulations, pores over stacks of declassified military research memos, solves differential equations, and consults with nuclear reactor operators. His responses are masterpieces of clarity and hilarity, studded with memorable cartoons and infographics. They often predict the complete annihilation of humankind, or at least a really big explosion. Far more than a book for geeks, WHAT IF: Serious Scientific Answers to Absurd Hypothetical Questions explains the laws of science in operation in a way that every intelligent reader will enjoy and feel much the smarter for having read.

Real World OCaml: Functional programming for the masses


Yaron Minsky - 2013
    Through the book’s many examples, you’ll quickly learn how OCaml stands out as a tool for writing fast, succinct, and readable systems code.Real World OCaml takes you through the concepts of the language at a brisk pace, and then helps you explore the tools and techniques that make OCaml an effective and practical tool. In the book’s third section, you’ll delve deep into the details of the compiler toolchain and OCaml’s simple and efficient runtime system.Learn the foundations of the language, such as higher-order functions, algebraic data types, and modulesExplore advanced features such as functors, first-class modules, and objectsLeverage Core, a comprehensive general-purpose standard library for OCamlDesign effective and reusable libraries, making the most of OCaml’s approach to abstraction and modularityTackle practical programming problems from command-line parsing to asynchronous network programmingExamine profiling and interactive debugging techniques with tools such as GNU gdb

Think: A Compelling Introduction to Philosophy


Simon Blackburn - 1999
    Written expressly for "anyone who believes there are big questions out there, but does not know how to approach them," Think provides a sound framework for exploring the most basic themes of philosophy, and for understanding how major philosophers have tackled the questions that have pressed themselves most forcefully on human consciousness.

Understanding Digital Signal Processing


Richard G. Lyons - 1996
    This second edition is appropriate as a supplementary (companion) text for any college-level course covering digital signal processing.

The Golden Ratio: The Story of Phi, the World's Most Astonishing Number


Mario Livio - 2002
    In this fascinating book, Mario Livio tells the tale of a number at the heart of that mystery: phi, or 1.6180339887...This curious mathematical relationship, widely known as "The Golden Ratio," was discovered by Euclid more than two thousand years ago because of its crucial role in the construction of the pentagram, to which magical properties had been attributed. Since then it has shown a propensity to appear in the most astonishing variety of places, from mollusk shells, sunflower florets, and rose petals to the shape of the galaxy. Psychological studies have investigated whether the Golden Ratio is the most aesthetically pleasing proportion extant, and it has been asserted that the creators of the Pyramids and the Parthenon employed it. It is believed to feature in works of art from Leonardo da Vinci's Mona Lisa to Salvador Dali's The Sacrament of the Last Supper, and poets and composers have used it in their works. It has even been found to be connected to the behavior of the stock market!The Golden Ratio is a captivating journey through art and architecture, botany and biology, physics and mathematics. It tells the human story of numerous phi-fixated individuals, including the followers of Pythagoras who believed that this proportion revealed the hand of God; astronomer Johannes Kepler, who saw phi as the greatest treasure of geometry; such Renaissance thinkers as mathematician Leonardo Fibonacci of Pisa; and such masters of the modern world as Goethe, Cezanne, Bartok, and physicist Roger Penrose. Wherever his quest for the meaning of phi takes him, Mario Livio reveals the world as a place where order, beauty, and eternal mystery will always coexist.From the Hardcover edition.

Elementary Statistics: A Step by Step Approach


Allan G. Bluman - 1992
    The book is non-theoretical, explaining concepts intuitively and teaching problem solving through worked examples and step-by-step instructions. This edition places more emphasis on conceptual understanding and understanding results. This edition also features increased emphasis on Excel, MINITAB, and the TI-83 Plus and TI 84-Plus graphing calculators, computing technologies commonly used in such courses.

The Little Schemer


Daniel P. Friedman - 1974
    The authors' enthusiasm for their subject is compelling as they present abstract concepts in a humorous and easy-to-grasp fashion. Together, these books will open new doors of thought to anyone who wants to find out what computing is really about. The Little Schemer introduces computing as an extension of arithmetic and algebra; things that everyone studies in grade school and high school. It introduces programs as recursive functions and briefly discusses the limits of what computers can do. The authors use the programming language Scheme, and interesting foods to illustrate these abstract ideas. The Seasoned Schemer informs the reader about additional dimensions of computing: functions as values, change of state, and exceptional cases. The Little LISPer has been a popular introduction to LISP for many years. It had appeared in French and Japanese. The Little Schemer and The Seasoned Schemer are worthy successors and will prove equally popular as textbooks for Scheme courses as well as companion texts for any complete introductory course in Computer Science.

Computer Organization and Architecture: Designing for Performance


William Stallings - 1987
    For courses in computer organization and architecture, this text provides a clear, comprehensive presentation of the organization and architecture of contemporary computers.

Programming Pearls


Jon L. Bentley - 1986
    Jon has done a wonderful job of updating the material. I am very impressed at how fresh the new examples seem." - Steve McConnell, author, Code CompleteWhen programmers list their favorite books, Jon Bentley's collection of programming pearls is commonly included among the classics. Just as natural pearls grow from grains of sand that irritate oysters, programming pearls have grown from real problems that have irritated real programmers. With origins beyond solid engineering, in the realm of insight and creativity, Bentley's pearls offer unique and clever solutions to those nagging problems. Illustrated by programs designed as much for fun as for instruction, the book is filled with lucid and witty descriptions of practical programming techniques and fundamental design principles. It is not at all surprising that Programming Pearls has been so highly valued by programmers at every level of experience. In this revision, the first in 14 years, Bentley has substantially updated his essays to reflect current programming methods and environments. In addition, there are three new essays on (1) testing, debugging, and timing; (2) set representations; and (3) string problems. All the original programs have been rewritten, and an equal amount of new code has been generated. Implementations of all the programs, in C or C++, are now available on the Web.What remains the same in this new edition is Bentley's focus on the hard core of programming problems and his delivery of workable solutions to those problems. Whether you are new to Bentley's classic or are revisiting his work for some fresh insight, this book is sure to make your own list of favorites.

How to read and do proofs


Daniel Solow - 1982
    Shows how any proof can be understood as a sequence of techniques. Covers the full range of techniques used in proofs, such as the contrapositive, induction, and proof by contradiction. Explains how to identify which techniques are used and how they are applied in the specific problem. Illustrates how to read written proofs with many step-by-step examples. Includes new, expanded appendices related to discrete mathematics, linear algebra, modern algebra and real analysis.

Refactoring: Improving the Design of Existing Code


Martin Fowler - 1999
    Significant numbers of poorly designed programs have been created by less-experienced developers, resulting in applications that are inefficient and hard to maintain and extend. Increasingly, software system professionals are discovering just how difficult it is to work with these inherited, non-optimal applications. For several years, expert-level object programmers have employed a growing collection of techniques to improve the structural integrity and performance of such existing software programs. Referred to as refactoring, these practices have remained in the domain of experts because no attempt has been made to transcribe the lore into a form that all developers could use... until now. In Refactoring: Improving the Design of Existing Software, renowned object technology mentor Martin Fowler breaks new ground, demystifying these master practices and demonstrating how software practitioners can realize the significant benefits of this new process.