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.

The Software Paradox


Stephen O’Grady - 2015
    

The Nature of Technology: What It Is and How It Evolves


W. Brian Arthur - 2009
    Brian Arthur puts forth the first complete theory of the origins and evolution of technology, in a major work that achieves for the invention of new technologies what Darwin’s theory achieved for the emergence of new species. Brian Arthur is a pioneer of complexity theory and the discoverer of the highly influential "theory of increasing returns," which took Silicon Valley by storm, famously explaining why some high-tech companies achieve breakaway success. Now, in this long-awaited and ground-breaking book, he solves the great outstanding puzzle of technology—where do transformative new technologies come from?—putting forth the first full theory of how new technologies emerge and offering a definitive answer to the mystery of why some cultures—Silicon Valley, Cambridge, England in the 1920s—are so extraordinarily inventive. He has discovered that rather than springing from insight moments of individual genius, new technologies arise in a process akin to evolution. Technology evolves by creating itself out of itself, much as a coral reef builds itself from activities of small organisms. Drawing on a wealth of examples, from the most ancient to cutting-edge inventions of today, Arthur takes readers on a delightful intellectual journey, bringing to life the wonders of this process of technological evolution. The Nature of Technology is the work of one of our greatest thinkers at the top of his game, composing a classic for our times that is sure to generate wide acclaim.

Pearls of Functional Algorithm Design


Richard S. Bird - 2010
    These 30 short chapters each deal with a particular programming problem drawn from sources as diverse as games and puzzles, intriguing combinatorial tasks, and more familiar areas such as data compression and string matching. Each pearl starts with the statement of the problem expressed using the functional programming language Haskell, a powerful yet succinct language for capturing algorithmic ideas clearly and simply. The novel aspect of the book is that each solution is calculated from an initial formulation of the problem in Haskell by appealing to the laws of functional programming. Pearls of Functional Algorithm Design will appeal to the aspiring functional programmer, students and teachers interested in the principles of algorithm design, and anyone seeking to master the techniques of reasoning about programs in an equational style.

Fearless Salary Negotiation: A step-by-step guide to getting paid what you're worth


Josh Doody - 2015
    Read Fearless Salary Negotiation, take notes, then follow Josh Doody's step-by-step negotiation process. Your future self will thank you.” - Josh Kaufman, bestselling author of The Personal MBA and The First 20 Hours “Josh has written the definitive playbook for anyone hoping to maximize their pay. Fearless Salary Negotiation is well organized, actionable, and easy for anyone to follow and use.” - Annie Duke, Decision Making Expert “Fearless Salary Negotiation provides a thoughtful salary negotiation and market research framework. I used it to negotiate $10,000 more in base salary at a new firm.” - John Miller, Financial Advisor “I applied Josh's salary negotiation method and got a much better job where I'm paid what I'm worth. In less than a week, I interviewed for and negotiated a new job with a base salary increase of $15,000!” – Shannon Long, Physical Therapist “I would have left a lot of money on the table without this book.” - Dan Brothers, Territory Manager "Thanks to Josh's book, I was able to increase my salary by 10% with a single email. This is the most valuable email I've ever sent, and I wouldn't have sent it if it wasn’t for this book.” - Justin Abrahms, Senior Software Engineer “Josh’s advice helped me land a better job and a bigger salary with more benefits than I even thought possible.” – Eric Macam, Project Scientist “Josh has built a very successful career, first in engineering and now in project management. I’m glad he’s finally writing about it so others can learn from his success!” – Ryan Delk, Entrepreneur What's inside? Fearless Salary Negotiation will help you get paid what you're worth by teaching you how to negotiate your salary, when and how to request promotions and raises, and how to ace every interview. Fearless Salary Negotiation shows you... How companies manage their salary structure—When you know how companies structure their salaries, salary negotiations, promotions, and raises make a lot more sense. How to estimate your market value—Understanding the market value for your skill set and experience is critical to the negotiation process. I'll who you how to estimate it. How to ace your next interview—Salary negotiation begins with the application and interview process. Acing your interview puts you in a position to command a higher salary. How to negotiate your new salary—You should negotiate your salary, not just accept the first offer you get. I'll help you plan and execute your salary negotiation to maximize your pay. How to leave your job on the best possible terms—It's important that you don't burn any bridges when leaving your job. Your future salary negotiations could depend on your reputation.

Coma / Abduction


Robin Cook
    Abduction is a high-tech thriller about a mysterious transmission from the bottom of the Atlantic Ocean that will change everything you know about life on Earth. Two great thriller by the master of the medical thriller.

Effective Java


Joshua Bloch - 2001
    The principal enhancement in Java 8 was the addition of functional programming constructs to Java's object-oriented roots. Java 7, 8, and 9 also introduced language features, such as the try-with-resources statement, the diamond operator for generic types, default and static methods in interfaces, the @SafeVarargs annotation, and modules. New library features include pervasive use of functional interfaces and streams, the java.time package for manipulating dates and times, and numerous minor enhancements such as convenience factory methods for collections. In this new edition of Effective Java, Bloch updates the work to take advantage of these new language and library features, and provides specific best practices for their use. Java's increased support for multiple paradigms increases the need for best-practices advice, and this book delivers. As in previous editions, each chapter consists of several "items," each presented in the form of a short, standalone essay that provides specific advice, insight into Java platform subtleties, and updated code examples. The comprehensive descriptions and explanations for each item illuminate what to do, what not to do, and why. Coverage includes:Updated techniques and best practices on classic topics, including objects, classes, methods, libraries, and generics How to avoid the traps and pitfalls of commonly misunderstood subtleties of the platform Focus on the language and its most fundamental libraries, such as java.lang and java.util

Build Awesome Command-Line Applications in Ruby 2: Control Your Computer, Simplify Your Life


David B. Copeland - 2012
    With its simple commands, flags, and parameters, a well-formed command-line application is the quickest way to automate a backup, a build, or a deployment and simplify your life. With this book, you'll learn specific ways to write command-line applications that are easy to use, deploy, and maintain, using a set of clear best practices and the Ruby programming language. This book is designed to make any programmer or system administrator more productive in their job. Now updated for Ruby 2.Writing a command-line application that's self-documenting, robust, adaptable and forever useful is easier than you might think. Ruby is particularly suited to this task, because it combines high-level abstractions with "close to the metal" system interaction wrapped up in a concise, readable syntax. Plus, Ruby has the support of a rich ecosystem of open source tools and libraries.Ten insightful chapters each explain and demonstrate a command-line best practice. You'll see how to use these tools to elevate the lowliest automation script to a maintainable, polished application. You'll learn how to use free, open source parsers to create user-friendly command-line interfaces as well as command suites. You'll see how to use defaults to keep options simple for everyday users, while giving advanced users options for more complex tasks. There's no reason why a command-line application should lack documentation, whether it's part of a help command or a man page; you'll find out when and how to use both. Your journey from command-line novice to pro ends with a look at valuable approaches to testing your apps, and includes some fun techniques for outside-the-box, colorful interfaces that will delight your users.With Ruby, the command line is not dead. Long live the command line.

Norco '80: The True Story of the Most Spectacular Bank Robbery in American History


Peter Houlahan - 2019
    Norco ’80 tells the story of how five heavily-armed young men—led by an apocalyptic born-again Christian—attempted a bank robbery that turned into one of the most violent criminal events in U.S. history, forever changing the face of American law enforcement. Part action thriller and part courtroom drama, Norco ’80 transports the reader back to the Southern California of the 1970s, an era of predatory evangelical gurus, doomsday predictions, megachurches, and soaring crime rates, with the threat of nuclear obliteration looming over it all. A group of landscapers transforms into a murderous gang of bank robbers armed to the teeth with military-grade weapons. Their desperate getaway turned the surrounding towns into war zones. When it was over, three were dead and close to twenty wounded; a police helicopter was forced down from the sky, and thirty-two police vehicles were destroyed by thousands of rounds of ammo. The resulting trials shook the community to the core, raising many issues that continue to plague society today: from racism and the epidemic of post-traumatic stress disorder within law enforcement to religious extremism and the militarization of local police forces.

Access 2010: The Missing Manual


Matthew MacDonald - 2010
    With this book’s easy step-by-step process, you’ll quickly learn how to build and maintain a complete Access database, using Access 2013’s new, simpler user interface and templates. You also get practices and tips from the pros for good database design—ideal whether you’re using Access for school, business, or at home.The important stuff you need to know:Build a database with ease. Store information to track numbers, products, documents, and more.Customize the interface. Build your own forms to make data entry a snap.Find what you need fast. Search, sort, and summarize huge amounts of information.Put your data to use. Turn raw info into printed reports with attractive formatting.Share your data. Collaborate online with SharePoint and the Access web database.Dive into Access programming. Get tricks and techniques to automate common tasks.Create rich data connections. Build dynamic links with SQL Server, SharePoint, and other systems.

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.

Physically Based Rendering: From Theory to Implementation


Matt Pharr - 2004
    The result is a stunning achievement in graphics education. Through the ideas and software in this book, you will learn to design and employ a full-featured rendering system for creating stunning imagery.This new edition greatly refines its best-selling predecessor by streamlining all obsolete code as well as adding sections on parallel rendering and system design; animating transformations; multispectral rendering; realistic lens systems; blue noise and adaptive sampling patterns and reconstruction; measured BRDFs; and instant global illumination, as well as subsurface and multiple-scattering integrators.These updates reflect the current state-of-the-art technology, and along with the lucid pairing of text and code, ensure the book's leading position as a reference text for those working with images, whether it is for film, video, photography, digital design, visualization, or gaming.

Arduino Cookbook


Michael Margolis - 2010
    This simple microcontroller board lets artists and designers build a variety of amazing objects and prototypes that interact with the physical world. With this cookbook you can dive right in and experiment with more than a hundred tips and techniques, no matter what your skill level is.The recipes in this book provide solutions for most common problems and questions Arduino users have, including everything from programming fundamentals to working with sensors, motors, lights, and sound, or communicating over wired and wireless networks. You'll find the examples and advice you need to begin, expand, and enhance your projects right away.Get to know the Arduino development environmentUnderstand the core elements of the Arduino programming languageUse common output devices for light, motion, and soundInteract with almost any device that has a remote controlLearn techniques for handling time delays and time measurementUse simple ways to transfer digital information from sensors to the Arduino deviceCreate complex projects that incorporate shields and external modulesUse and modify existing Arduino libraries, and learn how to create your own