Domain-Driven Design: Tackling Complexity in the Heart of Software


Eric Evans - 2003
    "His book is very compatible with XP. It is not about drawing pictures of a domain; it is about how you think of it, the language you use to talk about it, and how you organize your software to reflect your improving understanding of it. Eric thinks that learning about your problem domain is as likely to happen at the end of your project as at the beginning, and so refactoring is a big part of his technique. "The book is a fun read. Eric has lots of interesting stories, and he has a way with words. I see this book as essential reading for software developers--it is a future classic." --Ralph Johnson, author of Design Patterns "If you don't think you are getting value from your investment in object-oriented programming, this book will tell you what you've forgotten to do. "Eric Evans convincingly argues for the importance of domain modeling as the central focus of development and provides a solid framework and set of techniques for accomplishing it. This is timeless wisdom, and will hold up long after the methodologies du jour have gone out of fashion." --Dave Collins, author of Designing Object-Oriented User Interfaces "Eric weaves real-world experience modeling--and building--business applications into a practical, useful book. Written from the perspective of a trusted practitioner, Eric's descriptions of ubiquitous language, the benefits of sharing models with users, object life-cycle management, logical and physical application structuring, and the process and results of deep refactoring are major contributions to our field." --Luke Hohmann, author of Beyond Software Architecture "This book belongs on the shelf of every thoughtful software developer." --Kent Beck "What Eric has managed to capture is a part of the design process that experienced object designers have always used, but that we have been singularly unsuccessful as a group in conveying to the rest of the industry. We've given away bits and pieces of this knowledge...but we've never organized and systematized the principles of building domain logic. This book is important." --Kyle Brown, author of Enterprise Java(TM) Programming with IBM(R) WebSphere(R) The software development community widely acknowledges that domain modeling is central to software design. Through domain models, software developers are able to express rich functionality and translate it into a software implementation that truly serves the needs of its users. But despite its obvious importance, there are few practical resources that explain how to incorporate effective domain modeling into the software development process. Domain-Driven Design fills that need. This is not a book about specific technologies. It offers readers a systematic approach to domain-driven design, presenting an extensive set of design best practices, experience-based techniques, and fundamental principles that facilitate the development of software projects facing complex domains. Intertwining design and development practice, this book incorporates numerous examples based on actual projects to illustrate the application of domain-driven design to real-world software development. Readers learn how to use a domain model to make a complex development effort more focused and dynamic. A core of best practices and standard patterns provides a common language for the development team. A shift in emphasis--refactoring not just the code but the model underlying the code--in combination with the frequent iterations of Agile development leads to deeper insight into domains and enhanced communication between domain expert and programmer. Domain-Driven Design then builds on this foundation, and addresses modeling and design for complex systems and larger organizations.Specific topics covered include:Getting all team members to speak the same language Connecting model and implementation more deeply Sharpening key distinctions in a model Managing the lifecycle of a domain object Writing domain code that is safe to combine in elaborate ways Making complex code obvious and predictable Formulating a domain vision statement Distilling the core of a complex domain Digging out implicit concepts needed in the model Applying analysis patterns Relating design patterns to the model Maintaining model integrity in a large system Dealing with coexisting models on the same project Organizing systems with large-scale structures Recognizing and responding to modeling breakthroughs With this book in hand, object-oriented developers, system analysts, and designers will have the guidance they need to organize and focus their work, create rich and useful domain models, and leverage those models into quality, long-lasting software implementations.

Adobe Photoshop Cs2 Classroom in a Book


Adobe Creative Team - 2005
    There's a solution: With this book, you learn by doing, getting your feet wet immediately as you progress through a series of hands-on projects that build on your growing Photoshop knowledge. Simple step-by-step instructions, review questions at the end of each chapter, and a companion CD with all of the book's project files make learning a breeze as the Adobe Creative Team takes you on a self-paced tour of the image-editing powerhouse. This bestselling guide has been completely revised to cover all of Photoshop CS2's new features, which include advanced tools for digital photographers, such as a new Spot Healing Brush for correcting scratches or blemishes, and Smart Sharpen for fixing photo blurring. Photoshop CS2 also includes loads of new creative tools, such as Vanishing Point and Image Warp. This comprehensive guide starts with an introductory tour of the software and then progresses on through lessons on everything from Photoshop's interface to more complex topics like color management, Web graphics, and photo retouching."

Windows 10: The Missing Manual


David Pogue - 2015
    Windows 10 (a free update to users of Windows 8 or Windows 7) fixes a number of the problems introduced by the revolution in Windows 8 and offers plenty of new features, such as the new Spartan web browser, Cortana voice-activated "personal assistant," new universal apps (that run on tablet, phone, and computer), and more. But to really get the most out of the new operating system, you're going to need a guide.Thankfully, Windows 10: The Missing Manual will be there to help. Like its predecessors, this book from the founder of Yahoo Tech, previous New York Times columnist, bestselling author, and Missing Manuals creator David Pogue illuminates its subject with technical insight, plenty of wit, and hardnosed objectivity for beginners, veteran standalone PC users, new tablet owners, and those who know their way around a network.

What Technology Wants


Kevin Kelly - 2010
    Arguing that the processes creating the technium are akin to those of biological evolution, Kelly devotes the opening sections of his exposition to that analogy, maintaining that the technium exhibits a similar tendency toward self-organizing complexity. Having defined the technium, Kelly addresses its discontents, as expressed by the Unabomber (although Kelly admits to trepidation in taking seriously the antitechnology screeds of a murderer) and then as lived by the allegedly technophobic Amish. From his observations and discussions with some Amish people, Kelly extracts some precepts of their attitudes toward gadgets, suggesting folk in the secular world can benefit from the Amish approach of treating tools as servants of self and society rather than as out-of-control masters. Exploring ramifications of technology on human welfare and achievement, Kelly arrives at an optimistic outlook that will interest many, coming, as it does, from the former editor of Wired magazine."Gilbert Taylor, Booklist

Quantum Computing Since Democritus


Scott Aaronson - 2013
    Full of insights, arguments and philosophical perspectives, the book covers an amazing array of topics. Beginning in antiquity with Democritus, it progresses through logic and set theory, computability and complexity theory, quantum computing, cryptography, the information content of quantum states and the interpretation of quantum mechanics. There are also extended discussions about time travel, Newcomb's Paradox, the anthropic principle and the views of Roger Penrose. Aaronson's informal style makes this fascinating book accessible to readers with scientific backgrounds, as well as students and researchers working in physics, computer science, mathematics and philosophy.

Code: The Hidden Language of Computer Hardware and Software


Charles Petzold - 1999
    And through CODE, we see how this ingenuity and our very human compulsion to communicate have driven the technological innovations of the past two centuries. Using everyday objects and familiar language systems such as Braille and Morse code, author Charles Petzold weaves an illuminating narrative for anyone who’s ever wondered about the secret inner life of computers and other smart machines. It’s a cleverly illustrated and eminently comprehensible story—and along the way, you’ll discover you’ve gained a real context for understanding today’s world of PCs, digital media, and the Internet. No matter what your level of technical savvy, CODE will charm you—and perhaps even awaken the technophile within.

Steinhoff inside SA's biggest corporate crash


James-Brent Styan - 2018
    24 hours later more than R160 billion rand of this fortune was wiped out. The Steinhoff Empire, that took 20 years to build into an international business giant, had crumbled overnight. Markus Jooste, Steinhoff’s flashy CEO, resigned via SMS and has since been fleeing an avalanche of scandals and accusations: luxury homes for a blonde mistress, allegations of fraud, racing horses and unparalleled extravagance, a lavish, black Jaguar for an old university residence… What exactly happened here? Who knew what? What is Steinhoff, who is Markus Jooste and what does it all have to do with the so called Stellenbosch mafia? Where does business tycoon Christo Wiese, Shoprite and Pepkor fit in and where is the pensioners’ money? Well-known financial writer James-Brent Styan unpacks these and other questions in this astounding tale of power and greed, of secrets and deceit, and ultimately the biggest financial breakdown in the history of South Africa. Through interviews with trustworthy sources, revelations from confidential documents and in-depth research about Steinhoff’s history, Styan uncovers what the group doesn’t want you to know. Follow the Money: The story of Steinhoff, Markus Jooste and the Stellenbosch Boys is a gripping financial thriller that will be told as cautionary tale or salacious scandal in both boardrooms and living rooms for decades to come.

The Pragmatic Programmer: From Journeyman to Master


Andy Hunt - 1999
    It covers topics ranging from personal responsibility and career development to architectural techniques for keeping your code flexible and easy to adapt and reuse. Read this book, and you'll learn how toFight software rot; Avoid the trap of duplicating knowledge; Write flexible, dynamic, and adaptable code; Avoid programming by coincidence; Bullet-proof your code with contracts, assertions, and exceptions; Capture real requirements; Test ruthlessly and effectively; Delight your users; Build teams of pragmatic programmers; and Make your developments more precise with automation. Written as a series of self-contained sections and filled with entertaining anecdotes, thoughtful examples, and interesting analogies, The Pragmatic Programmer illustrates the best practices and major pitfalls of many different aspects of software development. Whether you're a new coder, an experienced programmer, or a manager responsible for software projects, use these lessons daily, and you'll quickly see improvements in personal productivity, accuracy, and job satisfaction. You'll learn skills and develop habits and attitudes that form the foundation for long-term success in your career. You'll become a Pragmatic Programmer.

Hidden In Plain Sight 10: How To Program A Quantum Computer


Andrew H. Thomas - 2018
     This book contains an introduction to quantum mechanics, with complete instructions and videos showing you how to program a real quantum computer, provided by IBM.

Joel on Software


Joel Spolsky - 2004
    For years, Joel Spolsky has done exactly this at www.joelonsoftware.com. Now, for the first time, you can own a collection of the most important essays from his site in one book, with exclusive commentary and new insights from joel.

Our Final Invention: Artificial Intelligence and the End of the Human Era


James Barrat - 2013
    Corporations & government agencies around the world are pouring billions into achieving AI’s Holy Grail—human-level intelligence. Once AI has attained it, scientists argue, it will have survival drives much like our own. We may be forced to compete with a rival more cunning, more powerful & more alien than we can imagine. Thru profiles of tech visionaries, industry watchdogs & groundbreaking AI systems, James Barrat's Our Final Invention explores the perils of the heedless pursuit of advanced AI. Until now, human intelligence has had no rival. Can we coexist with beings whose intelligence dwarfs our own? Will they allow us to?

The Facebook Effect: The Inside Story of the Company That is Connecting the World


David Kirkpatrick - 2010
    It is one of the fastest growing companies in history, an essential part of the social life not only of teenagers but hundreds of millions of adults worldwide. As Facebook spreads around the globe, it creates surprising effects—even becoming instrumental in political protests from Colombia to Iran. Veteran technology reporter David Kirkpatrick had the full cooperation of Facebook’s key executives in researching this fascinating history of the company and its impact on our lives. Kirkpatrick tells us how Facebook was created, why it has flourished, and where it is going next. He chronicles its successes and missteps, and gives readers the most complete assessment anywhere of founder and CEO Mark Zuckerberg, the central figure in the company’s remarkable ascent. This is the Facebook story that can be found nowhere else. How did a nineteen-year-old Harvard student create a company that has transformed the Internet and how did he grow it to its current enormous size? Kirkpatrick shows how Zuckerberg steadfastly refused to compromise his vision, insistently focusing on growth over profits and preaching that Facebook must dominate (his word) communication on the Internet. In the process, he and a small group of key executives have created a company that has changed social life in the United States and elsewhere, a company that has become a ubiquitous presence in marketing, altering politics, business, and even our sense of our own identity. This is the Facebook Effect.

The Cartel: The Inside Story of Britain's Biggest Drugs Gang


Graham Johnson - 2012
    Billions in sales. But, unlike Tesco or BP, few have heard of it. The Cartel is Britain’s biggest drugs organisation, a shadowy network stretching from the freezing, fog-banks of the Mersey to the glittering marinas of Marbella, from the coffee shops of Amsterdam to the trading floors of Canary Wharf. Run by godfathers as rich as Branson but kept in line by a new generation of teenage killers. Here is the inside story.

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.

Kursk Down: The Shocking True Story of the Sinking of a Russian Nuclear Submarine


Clyde W. Burleson - 2002
    Hailed as "unsinkable, " the "Kursk" was on maneuvers when mysterious explosions rocked the sub, causing it to sink to the bottom of the sea with its 118-man crew. This in-depth look at the disaster reveals previously unreleased information from family members of the deceased as well as from government officials.