Permutation City


Greg Egan - 1994
    Permutation city is the tale of a man with a vision - how to create immortality - and how that vision becomes something way beyond his control. Encompassing the lives and struggles of an artificial life junkie desperate to save her dying mother, a billionaire banker scarred by a terrible crime, the lovers for whom, in their timeless virtual world, love is not enough - and much more - Permutation city is filled with the sense of wonder.

A Madman Dreams of Turing Machines


Janna Levin - 2006
    “They are both brilliantly original and outsiders,” the narrator tells us. “They are both besotted with mathematics. But for all their devotion, mathematics is indifferent, unaltered by any of their dramas . . . Against indifference, I want to tell their stories.” Which she does in a haunting, incantatory voice, the two lives unfolding in parallel narratives that overlap in the magnitude of each man’s achievement and demise: Gödel, delusional and paranoid, would starve himself to death; Turing, arrested for homosexual activities, would be driven to suicide. And they meet as well in the narrator’s mind, where facts are interwoven with her desire and determination to find meaning in the maze of their stories: two men devoted to truth of the highest abstract nature, yet unable to grasp the mundane truths of their own lives.A unique amalgam of luminous imagination and richly evoked historic character and event—A Madman Dreams of Turing Machines is a story about the pursuit of truth and its effect on the lives of two men. A story of genius and madness, incredible yet true.

Programming JavaScript Applications: Robust Web Architecture With Node, HTML5, and Modern JS Libraries


Eric Elliott - 2012
    By applying the design patterns outlined in this book, you’ll learn how to write flexible and resilient code that’s easier—not harder—to work with as your code base grows.JavaScript has become one of the most widely used—and essential—programming languages for the Web, on both the client-side and server-side. In the real world, JavaScript applications are fragile, and when you change them things often break. Author Eric Elliott shows you how to add features without creating bugs or negatively impacting the rest of your code during the course of building a large JavaScript application.Examine the anatomy of a modern JavaScript applicationLearn best practices for code organization, modularity, and reuseApply Model-View-Controller architectures to client-side web developmentDelve into client-side (browser) and server-side (Node) approachesUse Node to design and program RESTful APIsLearn the processes teams use to build, test, deploy, and scale large JavaScript applicationsExpand your application’s reach through platform targets and internationalization

Jumping into C++


Alex Allain - 2013
    As a professional C++ developer and former Harvard teaching fellow, I know what you need to know to be a great C++ programmer, and I know how to teach it, one step at a time. I know where people struggle, and why, and how to make it clear. I cover every step of the programming process, including:Getting the tools you need to program and how to use them*Basic language feature like variables, loops and functions*How to go from an idea to code*A clear, understandable explanation of pointers*Strings, file IO, arrays, references*Classes and advanced class design*C++-specific programming patterns*Object oriented programming*Data structures and the standard template library (STL)Key concepts are reinforced with quizzes and over 75 practice problems.

Discrete-Event System Simulation


Jerry Banks - 1983
    This text provides a basic treatment of discrete-event simulation, including the proper collection and analysis of data, the use of analytic techniques, verification and validation of models, and designing simulation experiments. It offers an up-to-date treatment of simulation of manufacturing and material handling systems, computer systems, and computer networks. Students and instructors will find a variety of resources at the associated website, www.bcnn.net, including simulation source code for download, additional exercises and solutions, web links and errata.