The C Programming Language


Brian W. Kernighan - 1978
    It is the definitive reference guide, now in a second edition. Although the first edition was written in 1978, it continues to be a worldwide best-seller. This second edition brings the classic original up to date to include the ANSI standard. From the Preface: We have tried to retain the brevity of the first edition. C is not a big language, and it is not well served by a big book. We have improved the exposition of critical features, such as pointers, that are central to C programming. We have refined the original examples, and have added new examples in several chapters. For instance, the treatment of complicated declarations is augmented by programs that convert declarations into words and vice versa. As before, all examples have been tested directly from the text, which is in machine-readable form. As we said in the first preface to the first edition, C "wears well as one's experience with it grows." With a decade more experience, we still feel that way. We hope that this book will help you to learn C and use it well.

Modern Systems Analysis and Design


Jeffrey A. Hoffer - 1996
    For advanced undergraduate and graduate courses in Systems Analysis and Design taught from a business perspective.Modern Systems Analysis and Design offers separate coverage of Object-Oriented and Structured material giving instructors flexibility to choose the best way to connect the material with students.

Please Understand Me II: Temperament, Character, Intelligence


David Keirsey - 1998
    Advertised only by word of mouth, the book became a favorite training and counseling guide in many institutions -- government, church, business -- and colleges across the nation adopted it as an auxiliary text in a dozen different departments. Why? Perhaps it was the user-friendly way that Please Understand Me helped people find their personality style. Perhaps it was the simple accuracy of Keirsey's portraits of temperament and character types. Or perhaps it was the book's essential message: that members of families and institutions are OK, even though they are fundamentally different from each other, and that they would all do well to appreciate their differences and give up trying to change others into copies of themselves.Now: Please Understand Me IIFor the past twenty years Keirsey has continued to investigate personality differences -- to refine his theory of the four temperaments and to define the facets of character that distinguish one from another. His findings form the basis of Please Understand Me II, an updated and greatly expanded edition of the book, far more comprehensive and coherent than the original, and yet with much of the same easy accessibility. One major addition is Keirsey's view of how the temperaments differ in the intelligent roles they are most likely to develop. Each of us, he says, has four kinds of intelligence -- tactical, logistical, diplomatic, strategic -- though one of the four interests us far more than the others, and thus gets far more practice than the rest. Like four suits in a hand of cards, we each have a long suit and a short suit in what interests us and what we do well, and fortunate indeed are those whose work matches their skills. As in the original book, Please Understand Me II begins with The Keirsey Temperament Sorter, the most used personality inventory in the world. But also included is The Keirsey Four-Types Sorter, a new short questionnaire that identifies one's basic temperament and then ranks one's second, third, and fourth choices. Share this new sorter with friends and family, and get set for a lively and fascinating discussion of personal styles.

The Design of Everyday Things


Donald A. Norman - 1988
    It could forever change how you experience and interact with your physical surroundings, open your eyes to the perversity of bad design and the desirability of good design, and raise your expectations about how things should be designed.B & W photographs and illustrations throughout.

Rise of the Robots: Technology and the Threat of a Jobless Future


Martin Ford - 2015
    In Rise of the Robots, Silicon Valley entrepreneur Martin Ford argues that this is absolutely not the case. As technology continues to accelerate and machines begin taking care of themselves, fewer people will be necessary. Artificial intelligence is already well on its way to making “good jobs” obsolete: many paralegals, journalists, office workers, and even computer programmers are poised to be replaced by robots and smart software. As progress continues, blue and white collar jobs alike will evaporate, squeezing working- and middle-class families ever further. At the same time, households are under assault from exploding costs, especially from the two major industries—education and health care—that, so far, have not been transformed by information technology. The result could well be massive unemployment and inequality as well as the implosion of the consumer economy itself.In Rise of the Robots, Ford details what machine intelligence and robotics can accomplish, and implores employers, scholars, and policy makers alike to face the implications. The past solutions to technological disruption, especially more training and education, aren't going to work, and we must decide, now, whether the future will see broad-based prosperity or catastrophic levels of inequality and economic insecurity. Rise of the Robots is essential reading for anyone who wants to understand what accelerating technology means for their own economic prospects—not to mention those of their children—as well as for society as a whole.

Storycraft: The Complete Guide to Writing Narrative Nonfiction


Jack R. Hart - 2011
    Yet writers looking for guidance on reporting and writing true stories have had few places to turn for advice. Now in Storycraft, Jack Hart, a former managing editor of the Oregonian who guided several Pulitzer Prize–winning narratives to publication, delivers what will certainly become the definitive guide to the methods and mechanics of crafting narrative nonfiction.Hart covers what writers in this genre need to know, from understanding story theory and structure, to mastering point of view and such basic elements as scene, action, and character, to drafting, revising, and editing work for publication. Revealing the stories behind the stories, Hart brings readers into the process of developing nonfiction narratives by sharing tips, anecdotes, and recommendations he forged during his decades-long career in journalism. From there, he expands the discussion to other well-known writers to show the broad range of texts, styles, genres, and media to which his advice applies. With examples that draw from magazine essays, book-length nonfiction narratives, documentaries, and radio programs, Storycraft will be an indispensable resource for years to come.

The Information: A History, a Theory, a Flood


James Gleick - 2011
    The story of information begins in a time profoundly unlike our own, when every thought and utterance vanishes as soon as it is born. From the invention of scripts and alphabets to the long-misunderstood talking drums of Africa, Gleick tells the story of information technologies that changed the very nature of human consciousness. He provides portraits of the key figures contributing to the inexorable development of our modern understanding of information: Charles Babbage, the idiosyncratic inventor of the first great mechanical computer; Ada Byron, the brilliant and doomed daughter of the poet, who became the first true programmer; pivotal figures like Samuel Morse and Alan Turing; and Claude Shannon, the creator of information theory itself. And then the information age arrives. Citizens of this world become experts willy-nilly: aficionados of bits and bytes. And we sometimes feel we are drowning, swept by a deluge of signs and signals, news and images, blogs and tweets. The Information is the story of how we got here and where we are heading.

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.

To Engineer Is Human: The Role of Failure in Successful Design


Henry Petroski - 1985
    More than a series of fascinating case studies, To Engineer Is Human is a work that looks at our deepest notions of progress and perfection, tracing the fine connection between the quantifiable realm of science and the chaotic realities of everyday life."Alert, inquisitive, unspecialized, wholly human...refreshingly eclectic." --The Spectator"Henry Petroski is an ardent engineer, and if he writes more good books like this, he might find himself nominated to become the meistersinger of the guild. [This is] a refreshing plunge into the dynamics of the engineering ethos...as straightforward as an I-beam."--Science

The Unwritten Rules of Ph.D. Research


Gordon Rugg - 2004
    I did the basic research for my PhD in about twelve months, then spent two years writing up the results - and producing possibly too much. It succeeded, but I think I might have made a better job of it if I had read a book like this first. But they didn't exist in those days." Mantex This book looks at things the other books don’t tell you about doing a PhD - what it’s really like and how to come through it with a happy ending! It covers all the things you wish someone had told you before you started: What a PhD is really about, and how to do one well The "unwritten rules" of research and of academic writing What your supervisor actually means by terms like "good referencing" and "clean research question" How to write like a skilled researcher How academic careers really work An ideal resource if someone you care about (including yourself!) is undergoing or considering a PhD. This book turns lost, clueless students back into people who know what they are doing, and who can enjoy life again.

Software Engineering (International Computer Science Series)


Ian Sommerville - 1982
    Restructured into six parts, this new edition covers a wide spectrum of software processes from initial requirements solicitation through design and development.

Coders at Work: Reflections on the Craft of Programming


Peter Seibel - 2009
    As the words "at work" suggest, Peter Seibel focuses on how his interviewees tackle the day–to–day work of programming, while revealing much more, like how they became great programmers, how they recognize programming talent in others, and what kinds of problems they find most interesting. Hundreds of people have suggested names of programmers to interview on the Coders at Work web site: http://www.codersatwork.com. The complete list was 284 names. Having digested everyone’s feedback, we selected 16 folks who’ve been kind enough to agree to be interviewed:- Frances Allen: Pioneer in optimizing compilers, first woman to win the Turing Award (2006) and first female IBM fellow- Joe Armstrong: Inventor of Erlang- Joshua Bloch: Author of the Java collections framework, now at Google- Bernie Cosell: One of the main software guys behind the original ARPANET IMPs and a master debugger- Douglas Crockford: JSON founder, JavaScript architect at Yahoo!- L. Peter Deutsch: Author of Ghostscript, implementer of Smalltalk-80 at Xerox PARC and Lisp 1.5 on PDP-1- Brendan Eich: Inventor of JavaScript, CTO of the Mozilla Corporation - Brad Fitzpatrick: Writer of LiveJournal, OpenID, memcached, and Perlbal - Dan Ingalls: Smalltalk implementor and designer- Simon Peyton Jones: Coinventor of Haskell and lead designer of Glasgow Haskell Compiler- Donald Knuth: Author of The Art of Computer Programming and creator of TeX- Peter Norvig: Director of Research at Google and author of the standard text on AI- Guy Steele: Coinventor of Scheme and part of the Common Lisp Gang of Five, currently working on Fortress- Ken Thompson: Inventor of UNIX- Jamie Zawinski: Author of XEmacs and early Netscape/Mozilla hackerWhat you’ll learn:How the best programmers in the world do their jobWho is this book for?Programmers interested in the point of view of leaders in the field. Programmers looking for approaches that work for some of these outstanding programmers.

Code Complete


Steve McConnell - 1993
    Now this classic book has been fully updated and revised with leading-edge practices--and hundreds of new code samples--illustrating the art and science of software construction. Capturing the body of knowledge available from research, academia, and everyday commercial practice, McConnell synthesizes the most effective techniques and must-know principles into clear, pragmatic guidance. No matter what your experience level, development environment, or project size, this book will inform and stimulate your thinking--and help you build the highest quality code. Discover the timeless techniques and strategies that help you: Design for minimum complexity and maximum creativity Reap the benefits of collaborative development Apply defensive programming techniques to reduce and flush out errors Exploit opportunities to refactor--or evolve--code, and do it safely Use construction practices that are right-weight for your project Debug problems quickly and effectively Resolve critical construction issues early and correctly Build quality into the beginning, middle, and end of your project

Foundations of Analog and Digital Electronic Circuits


Anant Agarwal - 2005
    It will introduce a new way of looking not only at the treatment of circuits, but also at the treatment of introductory coursework in engineering in general. Using the concept of ''abstraction, '' the book attempts to form a bridge between the world of physics and the world of large computer systems. In particular, it attempts to unify electrical engineering and computer science as the art of creating and exploiting successive abstractions to manage the complexity of building useful electrical systems. Computer systems are simply one type of electrical systems

Where Good Ideas Come from: The Natural History of Innovation


Steven Johnson - 2010
    But where do they come from? What kind of environment breeds them? What sparks the flash of brilliance? How do we generate the breakthrough technologies that push forward our lives, our society, our culture? Steven Johnson's answers are revelatory as he identifies the seven key patterns behind genuine innovation, and traces them across time and disciplines. From Darwin and Freud to the halls of Google and Apple, Johnson investigates the innovation hubs throughout modern time and pulls out the approaches and commonalities that seem to appear at moments of originality.