Social Engineering: The Art of Human Hacking


Christopher Hadnagy - 2010
    Mitnick claims that this socialengineering tactic was the single-most effective method in hisarsenal. This indispensable book examines a variety of maneuversthat are aimed at deceiving unsuspecting victims, while it alsoaddresses ways to prevent social engineering threats.Examines social engineering, the science of influencing atarget to perform a desired task or divulge informationArms you with invaluable information about the many methods oftrickery that hackers use in order to gather information with theintent of executing identity theft, fraud, or gaining computersystem accessReveals vital steps for preventing social engineeringthreatsSocial Engineering: The Art of Human Hacking does itspart to prepare you against nefarious hackers--now you can doyour part by putting to good use the critical information withinits pages.

The Clean Coder: A Code of Conduct for Professional Programmers


Robert C. Martin - 2011
    They treat it as a craft. They are professionals. In The Clean Coder: A Code of Conduct for Professional Programmers, legendary software expert Robert C. Martin introduces the disciplines, techniques, tools, and practices of true software craftsmanship. This book is packed with practical advice-about everything from estimating and coding to refactoring and testing. It covers much more than technique: It is about attitude. Martin shows how to approach software development with honor, self-respect, and pride; work well and work clean; communicate and estimate faithfully; face difficult decisions with clarity and honesty; and understand that deep knowledge comes with a responsibility to act. Readers will learn What it means to behave as a true software craftsman How to deal with conflict, tight schedules, and unreasonable managers How to get into the flow of coding, and get past writer's block How to handle unrelenting pressure and avoid burnout How to combine enduring attitudes with new development paradigms How to manage your time, and avoid blind alleys, marshes, bogs, and swamps How to foster environments where programmers and teams can thrive When to say "No"-and how to say it When to say "Yes"-and what yes really means Great software is something to marvel at: powerful, elegant, functional, a pleasure to work with as both a developer and as a user. Great software isn't written by machines. It is written by professionals with an unshakable commitment to craftsmanship. The Clean Coder will help you become one of them-and earn the pride and fulfillment that they alone possess.

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

Algorithms to Live By: The Computer Science of Human Decisions


Brian Christian - 2016
    What should we do, or leave undone, in a day or a lifetime? How much messiness should we accept? What balance of new activities and familiar favorites is the most fulfilling? These may seem like uniquely human quandaries, but they are not: computers, too, face the same constraints, so computer scientists have been grappling with their version of such issues for decades. And the solutions they've found have much to teach us.In a dazzlingly interdisciplinary work, acclaimed author Brian Christian and cognitive scientist Tom Griffiths show how the algorithms used by computers can also untangle very human questions. They explain how to have better hunches and when to leave things to chance, how to deal with overwhelming choices and how best to connect with others. From finding a spouse to finding a parking spot, from organizing one's inbox to understanding the workings of memory, Algorithms to Live By transforms the wisdom of computer science into strategies for human living.

This is Modern Art


Matthew Collings - 1999
    A house cast in concrete. The London Underground map with all the station names changes - the Circle Line stations are comedians, the Northern Line stations are philosophers. A tent embroidered with the names of everyone the artist who set up the tent has ever slept with. But what does it all mean? What is Modern Art? Why do we like/hate it? Can anybody do it? Is it always modern? Who started it? In this refreshing and extremely accessible book Matthew Collings tells the story of modern art and our modern attitude to it. It combines hard information on major artists and movements - what really happened - with ordinary reflections: modern art is intimidating and unfathomable to many but Matthew Collings cuts through this barrier by asking all the kinds of questions many of us will have asked and been puzzled by. He will compare Goya to Duchamp and Picasso, Rothko to Yves Klein; he will look at the role of African tribal art in the rise of Modernism and Punk Rock in the rise of Post-Modernism. This will become a classic book of its kind, quirky, culty and great fun.

Hacking: The Art of Exploitation


Jon Erickson - 2003
    This book explains the technical aspects of hacking, including stack based overflows, heap based overflows, string exploits, return-into-libc, shellcode, and cryptographic attacks on 802.11b.

How to be a Graphic Designer Without Losing Your Soul


Adrian Shaughnessy - 2005
    How to be a graphic designer without losing your soul addresses the concerns of young designers who want to earn a living by doing expressive and meaningful work, and who want to avoid becoming hired drones working on soulless projects. Written by a designer for designers, it combines practical advice with philosophical guidance to help young professionals embark on their careers. How should designers manage the creative process? What's the first step in the successful interpretation of a brief? How do you generate ideas when everything just seems blank? How to be a graphic designer offers clear, concise guidance for these questions, along with focused, no-nonsense strategies for setting up, running, and promoting a studio, finding work, and collaborating with clients.The book also includes inspiring interviews with ten leading designers, including Rudy VanderLans (Emigre), John Warwicker (Tomato), Neville Brody (Research Studios), and Andy Cruz (House Industries). All told, How to be a graphic designer covers just about every aspect of the profession, and stands as an indispensable guide for any young designer.

The Nature of Code


Daniel Shiffman - 2012
    Readers will progress from building a basic physics engine to creating intelligent moving objects and complex systems, setting the foundation for further experiments in generative design. Subjects covered include forces, trigonometry, fractals, cellular automata, self-organization, and genetic algorithms. The book's examples are written in Processing, an open-source language and development environment built on top of the Java programming language. On the book's website (http://www.natureofcode.com), the examples run in the browser via Processing's JavaScript mode.

An Elegant Puzzle: Systems of Engineering Management


Will Larson - 2019
    Management is a key part of any organization, yet the discipline is often self-taught and unstructured. Getting to the good solutions of complex management challenges can make the difference between fulfillment and frustration for teams, and, ultimately, the success or failure of companies. Will Larson's An Elegant Puzzle orients around the particular challenges of engineering management--from sizing teams to technical debt to succession planning--and provides a path to the good solutions. Drawing from his experience at Digg, Uber, and Stripe, Will Larson has developed a thoughtful approach to engineering management that leaders of all levels at companies of all sizes can apply. An Elegant Puzzle balances structured principles and human-centric thinking to help any leader create more effective and rewarding organizations for engineers to thrive in.

The Rust Programming Language


Steve Klabnik
    This is the undisputed go-to guide to Rust, written by two members of the Rust core team, with feedback and contributions from 42 members of the community. The book assumes that you’ve written code in another programming language but makes no assumptions about which one, meaning the material is accessible and useful to developers from a wide variety of programming backgrounds.Known by the Rust community as "The Book," The Rust Programming Language includes concept chapters, where you’ll learn about a particular aspect of Rust, and project chapters, where you’ll apply what you’ve learned so far to build small programs.The Book opens with a quick hands-on project to introduce the basics then explores key concepts in depth, such as ownership, the type system, error handling, and fearless concurrency. Next come detailed explanations of Rust-oriented perspectives on topics like pattern matching, iterators, and smart pointers, with concrete examples and exercises--taking you from theory to practice.The Rust Programming Language will show you how to: Grasp important concepts unique to Rust like ownership, borrowing, and lifetimes Use Cargo, Rust’s built-in package manager, to build and maintain your code, including downloading and building dependencies Effectively use Rust’s zero-cost abstractions and employ your ownYou’ll learn to develop reliable code that’s speed and memory efficient, while avoiding the infamous and arcane programming pitfalls common at the systems level. When you need to dive down into lower-level control, this guide will show you how without taking on the customary risk of crashes or security holes and without requiring you to learn the fine points of a fickle toolchain.You’ll also learn how to create command line programs, build single- and multithreaded web servers, and much more.The Rust Programming Language fully embraces Rust’s potential to empower its users. This friendly and approachable guide will help you build not only your knowledge of Rust but also your ability to program with confidence in a wider variety of domains.

Designing the Internet of Things


Adrian McEwen - 2013
    If you'd like to create the next must-have product, this unique book is the perfect place to start.Both a creative and practical primer, it explores the platforms you can use to develop hardware or software, discusses design concepts that will make your products eye-catching and appealing, and shows you ways to scale up from a single prototype to mass production.Helps software engineers, web designers, product designers, and electronics engineers start designing products using the Internet-of-Things approach Explains how to combine sensors, servos, robotics, Arduino chips, and more with various networks or the Internet, to create interactive, cutting-edge devices Provides an overview of the necessary steps to take your idea from concept through production If you'd like to design for the future, Designing the Internet of Things is a great place to start.

The User Experience Team of One: A Research and Design Survival Guide


Leah Buley - 2013
    Whether you want to cross over into user experience or you're a seasoned practitioner trying to drag your organization forward, this book gives you tools and insight for doing more with less.

Power Pivot and Power BI: The Excel User's Guide to DAX, Power Query, Power BI & Power Pivot in Excel 2010-2016


Rob Collie - 2016
    Written by the world’s foremost PowerPivot blogger and practitioner, the book’s concepts and approach are introduced in a simple, step-by-step manner tailored to the learning style of Excel users everywhere. The techniques presented allow users to produce, in hours or even minutes, results that formerly would have taken entire teams weeks or months to produce. It includes lessons on the difference between calculated columns and measures; how formulas can be reused across reports of completely different shapes; how to merge disjointed sets of data into unified reports; how to make certain columns in a pivot behave as if the pivot were filtered while other columns do not; and how to create time-intelligent calculations in pivot tables such as “Year over Year” and “Moving Averages” whether they use a standard, fiscal, or a complete custom calendar. The “pattern-like” techniques and best practices contained in this book have been developed and refined over two years of onsite training with Excel users around the world, and the key lessons from those seminars costing thousands of dollars per day are now available to within the pages of this easy-to-follow guide. This updated second edition covers new features introduced with Office 2015.

Shape Up: Stop Running in Circles and Ship Work that Matters


Ryan Singer - 2019
    "This book is a guide to how we do product development at Basecamp. It’s also a toolbox full of techniques that you can apply in your own way to your own process.Whether you’re a founder, CTO, product manager, designer, or developer, you’re probably here because of some common challenges that all software companies have to face."

The Creativity Code: How AI Is Learning to Write, Paint and Think


Marcus du Sautoy - 2019
    They can navigate more data than a doctor or lawyer and act with greater precision. For many years we’ve taken solace in the notion that they can’t create. But now that algorithms can learn and adapt, does the future of creativity belong to machines, too?It is hard to imagine a better guide to the bewildering world of artificial intelligence than Marcus du Sautoy, a celebrated Oxford mathematician whose work on symmetry in the ninth dimension has taken him to the vertiginous edge of mathematical understanding. In The Creativity Code he considers what machine learning means for the future of creativity. The Pollockizer can produce drip paintings in the style of Jackson Pollock, Botnik spins off fanciful (if improbable) scenes inspired by J. K. Rowling, and the music-composing algorithm Emmy managed to fool a panel of Bach experts. But do these programs just mimic, or do they have what it takes to create? Du Sautoy argues that to answer this question, we need to understand how the algorithms that drive them work―and this brings him back to his own subject of mathematics, with its puzzles, constraints, and enticing possibilities.While most recent books on AI focus on the future of work, The Creativity Code moves us to the forefront of creative new technologies and offers a more positive and unexpected vision of our future cohabitation with machines. It challenges us to reconsider what it means to be human―and to crack the creativity code.