Zero Day: The Threat In Cyberspace


Robert O'Harrow Jr. - 2013
    For more than a year, Washington Post reporter Robert O'Harrow has explored the threats proliferating in our digital universe. This eBook is a compilation of that reporting. With chapters built around real people, including hackers, security researchers and corporate executives, this book will help regular people, lawmakers and businesses better understand the mind-bending challenge of keeping the internet safe from hackers and security breaches -- and all out war.

Parky's People


Michael Parkinson - 2010
    For many he is the chronicler of a generation. Through his onscreen work and his intelligent, thought provking journalism, he has introduced millions of people to the major names of sport of showbiz over the past five decades. In Parky's People, Parkinson gives us an intimate insight into the lives of great celebrities from all around the world. Now an international celebrity himself, the man from a humble but colourful Yorkshire mining family who can tease out the secrets of even the most reticent star guest. Those featured include Muhammad Ali, David Attenborough, Judi Dench, David Beckham, and many, many more. Parkinson's distinguished career has involved working on highly acclaimed current affairs and film programmes. His wide interests and expertise include jazz, film, football and cricket. Witty and humourous, Parky's People makes the perfect gift.

McSweeney's #54: The End of Trust


Dave Eggers - 2018
    Meanwhile, we wade through an unprecedented amount of disinformation and deception. Fake news and Russian-purchased propaganda are woven into our media diets, and anonymity on the internet leaves us ever suspicious.In the face of this, rather than seek privacy where we can, we eagerly offer up our remaining details to social media, craving the surveillance and scrutiny of our peers. We're unsure of how all of this is affecting the moral development of a generation coming of age in this new culture of surveillance, but we continue on. It leads us to wonder if we've reached the end of trust, and if we even care.

Java Concurrency in Practice


Brian Goetz - 2005
    Now this same team provides the best explanation yet of these new features, and of concurrency in general. Concurrency is no longer a subject for advanced users only. Every Java developer should read this book."--Martin BuchholzJDK Concurrency Czar, Sun Microsystems"For the past 30 years, computer performance has been driven by Moore's Law; from now on, it will be driven by Amdahl's Law. Writing code that effectively exploits multiple processors can be very challenging. Java Concurrency in Practice provides you with the concepts and techniques needed to write safe and scalable Java programs for today's--and tomorrow's--systems."--Doron RajwanResearch Scientist, Intel Corp"This is the book you need if you're writing--or designing, or debugging, or maintaining, or contemplating--multithreaded Java programs. If you've ever had to synchronize a method and you weren't sure why, you owe it to yourself and your users to read this book, cover to cover."--Ted NewardAuthor of Effective Enterprise Java"Brian addresses the fundamental issues and complexities of concurrency with uncommon clarity. This book is a must-read for anyone who uses threads and cares about performance."--Kirk PepperdineCTO, JavaPerformanceTuning.com"This book covers a very deep and subtle topic in a very clear and concise way, making it the perfect Java Concurrency reference manual. Each page is filled with the problems (and solutions!) that programmers struggle with every day. Effectively exploiting concurrency is becoming more and more important now that Moore's Law is delivering more cores but not faster cores, and this book will show you how to do it."--Dr. Cliff ClickSenior Software Engineer, Azul Systems"I have a strong interest in concurrency, and have probably written more thread deadlocks and made more synchronization mistakes than most programmers. Brian's book is the most readable on the topic of threading and concurrency in Java, and deals with this difficult subject with a wonderful hands-on approach. This is a book I am recommending to all my readers of The Java Specialists' Newsletter, because it is interesting, useful, and relevant to the problems facing Java developers today."--Dr. Heinz KabutzThe Java Specialists' Newsletter"I've focused a career on simplifying simple problems, but this book ambitiously and effectively works to simplify a complex but critical subject: concurrency. Java Concurrency in Practice is revolutionary in its approach, smooth and easy in style, and timely in its delivery--it's destined to be a very important book."--Bruce TateAuthor of Beyond Java" Java Concurrency in Practice is an invaluable compilation of threading know-how for Java developers. I found reading this book intellectually exciting, in part because it is an excellent introduction to Java's concurrency API, but mostly because it captures in a thorough and accessible way expert knowledge on threading not easily found elsewhere."--Bill VennersAuthor of Inside the Java Virtual MachineThreads are a fundamental part of the Java platform. As multicore processors become the norm, using concurrency effectively becomes essential for building high-performance applications. Java SE 5 and 6 are a huge step forward for the development of concurrent applications, with improvements to the Java Virtual Machine to support high-performance, highly scalable concurrent classes and a rich set of new concurrency building blocks. In Java Concurrency in Practice , the creators of these new facilities explain not only how they work and how to use them, but also the motivation and design patterns behind them.However, developing, testing, and debugging multithreaded programs can still be very difficult; it is all too easy to create concurrent programs that appear to work, but fail when it matters most: in production, under heavy load. Java Concurrency in Practice arms readers with both the theoretical underpinnings and concrete techniques for building reliable, scalable, maintainable concurrent applications. Rather than simply offering an inventory of concurrency APIs and mechanisms, it provides design rules, patterns, and mental models that make it easier to build concurrent programs that are both correct and performant.This book covers:Basic concepts of concurrency and thread safety Techniques for building and composing thread-safe classes Using the concurrency building blocks in java.util.concurrent Performance optimization dos and don'ts Testing concurrent programs Advanced topics such as atomic variables, nonblocking algorithms, and the Java Memory Model

Programming Scala


Venkat Subramaniam - 2009
    You can use it to write traditional, imperative, object-oriented code. But you can also leverage its higher level of abstraction to take full advantage of modern, multicore systems. Programming Scala will show you how to use this powerful functional programming language to create highly scalable, highly concurrent applications on the Java Platform. The increasing popularity and availability of multicore processors is creating a whole new set of challenges--although you can enjoy true concurrency, you're now faced with higher contention and synchronization issues. Deploying an existing application on a multicore processor may bring out previously hidden concurrency issues. Java's multi-threading facility by itself isn't enough---it's a very low level abstraction. Instead, you need a paradigm that provides a higher level of abstraction to deal with concurrency. It's time to embrace Functional Programming. Scala is a hybrid Object-Oriented/Functional Programming language on the JVM. Using Scala, you can create traditional imperative programs, intermix them with Java code, and at the same time take advantage of higher levels of abstraction. You can use features that lead to concise, highly expressive code that remove the pain of dealing with concurrency.Programming Scala will show you the fundamentals of functional programming using Scala. Very quickly, you'll learn how this statically typed language can give you dynamic capabilities to create concise, scalable, highly capable concurrent code. Pragmatic programmers always use the right tool for the job. For concurrent programming on the Java VM, Scala is the tool, and Programming Scala by award-winning author Venkat Subramaniam is your guide.

Working Effectively with Legacy Code


Michael C. Feathers - 2004
    This book draws on material Michael created for his renowned Object Mentor seminars, techniques Michael has used in mentoring to help hundreds of developers, technical managers, and testers bring their legacy systems under control. The topics covered include: Understanding the mechanics of software change, adding features, fixing bugs, improving design, optimizing performance Getting legacy code into a test harness Writing tests that protect you against introducing new problems Techniques that can be used with any language or platform, with examples in Java, C++, C, and C# Accurately identifying where code changes need to be made Coping with legacy systems that aren't object-oriented Handling applications that don't seem to have any structureThis book also includes a catalog of twenty-four dependency-breaking techniques that help you work with program elements in isolation and make safer changes.

Beautiful Architecture: Leading Thinkers Reveal the Hidden Beauty in Software Design


Diomidis Spinellis - 2008
    In each essay, contributors present a notable software architecture, and analyze what makes it innovative and ideal for its purpose. Some of the engineers in this book reveal how they developed a specific project, including decisions they faced and tradeoffs they made. Others take a step back to investigate how certain architectural aspects have influenced computing as a whole. With this book, you'll discover:How Facebook's architecture is the basis for a data-centric application ecosystem The effect of Xen's well-designed architecture on the way operating systems evolve How community processes within the KDE project help software architectures evolve from rough sketches to beautiful systems How creeping featurism has helped GNU Emacs gain unanticipated functionality The magic behind the Jikes RVM self-optimizable, self-hosting runtime Design choices and building blocks that made Tandem the choice platform in high-availability environments for over two decades Differences and similarities between object-oriented and functional architectural views How architectures can affect the software's evolution and the developers' engagement Go behind the scenes to learn what it takes to design elegant software architecture, and how it can shape the way you approach your own projects, with Beautiful Architecture.

Writing Secure Code


Michael Howard - 2001
    You need to assume it will run in the most hostile environments imaginable -- and design, code, and test accordingly. Writing Secure Code, Second Edition shows you how. This edition draws on the lessons learned and taught throughout Microsoft during the firm s massive 2002 Windows Security Push. It s a huge upgrade to the respected First Edition, with new coverage across the board. Michael Howard and David LeBlanc first help you define what security means to your customers -- and implement a three-pronged strategy for securing design, defaults, and deployment. There s especially useful coverage of threat modeling -- decomposing your application, identifying threats, ranking them, and mitigating them. Then, it s on to in-depth coverage of today s key security issues from the developer s standpoint. Everyone knows buffer overruns are bad: Here s a full chapter on avoiding them. You ll learn how to establish appropriate access controls and default to running with least privilege. There s detailed coverage of overcoming attacks on cryptography (for example, avoiding poor random numbers and bit-flipping attacks). You ll learn countermeasures for virtually every form of user input attack, from malicious database updates to cross-site scripting. We ve just scratched the surface: There are authoritative techniques for securing sockets and RPC, protecting against DOS attacks, building safer .NET applications, reviewing and testing code, adding privacy features, and even writing high-quality security documentation. Following these techniques won t just improve security -- it ll dramatically improve robustness and reliability, too. Bill CamardaBill Camarda is a consultant, writer, and web/multimedia content developer. His 15 books include Special Edition Using Word 2000 and Upgrading & Fixing Networks For Dummies®, Second Edition.

The Retail Revival


Doug Stephens - 2013
    Brick-and-mortar has shifted to online, while online is shifting into pop-up storefronts. Virtual stores in subway platforms and airports are offering new levels of convenience for harried commuters. High Street and Main Street are becoming the stuff of nostalgia. The Big Box is losing ground to new models that attract consumers through their most-trusted assistant--the smartphone. What's next? What's the future for you--a retailer--who is witnessing a tsunami of change and not knowing if this means grasping ahold of new opportunity or being swept away?The Retail Revival answers these questions by looking into the not-so-distant retail past and by looking forward into a future that will continue to redefine retail and its enormous effect on society and our economies. Massive demographic and economic shifts, as well as historic levels of technological and media disruption, are turning this once predictable industry--where "average" was king--into a sea of turbulent change, leaving consumer behavior permanently altered. Doug Stephens, internationally renowned consumer futurist, examines the key seismic shifts in the market that have even companies like Walmart and Procter & Gamble scrambling to cope, and explores the current and future trends that will completely change the way we shop.The Retail Revival provides no-nonsense clarity on the realities of a completely new retail marketplace-- realities that are driving many industry executives to despair. But the future need not be dark. Stephens offers hope and guidance for any businesses eager to capitalize on these historic shifts and thrive.Entertaining and thought-provoking, The Retail Revival makes sense of a brave new era of consumer behavior in which everything we thought we knew about retail is being completely reimagined.Praise for The Retail Revival"It doesn't matter what type of retail you do--if you sell something, somewhere, you need to read Doug Stephens' The Retail Revival. Packed with powerful insights on the changing retail environment and what good retailers should be thinking about now, The Retail Revival is easy to read, well-organized and provides essential food for thought." -- Gregg Saretsky, President and CEO, WestJet"This book captures in sharp detail the deep and unprecedented changes driving new consumer behaviors and values. More importantly, it offers clear guidance to brands and retailers seeking to adapt and evolve to meet entirely new market imperatives for success." --John Gerzema, Author of Spend Shift and The Athena Doctrine"The Retail Revival is a critical read for all marketing professionals who are trying to figure out what's next in retail... Doug Stephens does a great job of explaining why retail has evolved the way it has, and the book serves as an important, trusted guide to where it's headed next. " --Joe Lampertius SVP, Shopper Marketing, Momentum Worldwide and Owner, La Spezia Flavor Market"Doug Stephens has proven his right to the moniker 'Retail Prophet.' With careful analysis and ample examples, the author makes a compelling case for retailers to adapt, change and consequently revive their connection with consumers. Stephens presents actionable recommendations with optimism and enthusiasm--just the spoonful of sugar we need to face the necessary changes ahead." --Kit Yarrow, Ph.D., Consumer Psychologist; Professor, Golden Gate University; Co-Author, Gen BuY: How Tweens, Teens and Twenty-Somethings are Revolutionizing Retail"Doug Stephens doesn't just tell you why retail is in the doldrums, he tells you why retail is a major signpost for the larger troubles of our culture and provides a compelling, inspiring vision for a future of retail--and business, and society." --Eric Garland, author of Future Inc.: How Businesses Can Anticipate and Profit from What's Next

Spring Microservices in Action


John Carnell - 2017
    Spring Boot and Spring Cloud offer Java developers an easy migration path from traditional monolithic Spring applications to microservice-based applications that can be deployed to multiple cloud platforms. The Spring Boot and Spring Cloud frameworks let you quickly build microservices that are ready to be deployed to a private corporate cloud or a public cloud like Amazon Web Services (AWS) or Pivotal’s CloudFoundry.Spring Microservices in Action teaches you how to use the Spring Boot and Spring Cloud frameworks to build and deploy microservice-based cloud applications. You'll begin with an introduction to the microservice pattern and how to build microservices with Spring Boot and Spring Cloud. Then you'll get hands-on and discover how to configure Spring Boot. Using lots of real-world examples, you'll learn topics like service discovery with Spring Cloud, Netflix Eureka, and Ribbon. Next, you'll find out how to handle potential problems using client-side resiliency patterns with Spring and Netflix Hystrix. This book also covers implementing a service gateway with Spring Cloud and Zuul and event processing in the cloud with Spring Cloud Stream. Finally, you'll learn to deploy and push your application to cloud services, including AWS and CloudFoundry. By the end of this book, you'll not only be able to build your own microservice-based applications, but how operationalize and scale your microservices so they can deployed to a private or public cloud.

Sams Teach Yourself C++ in One Hour a Day


Siddhartha Rao - 2008
    Master the fundamentals of C++ and object-oriented programming Understand how C++11 features help you write compact and efficient code using concepts such as lambda expressions, move constructors, and assignment operators Learn the Standard Template Library, including containers and algorithms used in most real-world C++ applications Test your knowledge and expertise using exercises at the end of every lesson Learn on your own time, at your own pace: No previous programming experience required Learn C++11, object-oriented programming, and analysis Write fast and powerful C++ programs, compile the source code with a gcc compiler, and create executable files Use the Standard Template Library's (STL) algorithms and containers to write feature-rich yet stable C++ applications Develop sophisticated programming techniques using lambda expressions, smart pointers, and move constructors Learn to expand your program's power with inheritance and polymorphism Master the features of C++ by learning from programming experts Learn C++11 features that allow you to program compact and high-performance C++ applications TABLE OF CONTENTSPART I: THE BASICS LESSON 1: Getting Started with C++11 LESSON 2: The Anatomy of a C++ Program LESSON 3: Using Variables, Declaring Constants LESSON 4: Managing Arrays and Strings LESSON 5: Working with Expressions, Statements, and Operators LESSON 6: Controlling Program Flow LESSON 7: Organizing Code with Functions LESSON 8: Pointers and References Explained PART II: FUNDAMENTALS OF OBJECT-ORIENTED C++ PROGRAMMING LESSON 9: Classes and Objects LESSON 10: Implementing Inheritance LESSON 11: Polymorphism LESSON 12: Operator Types and Operator Overloading LESSON 13: Casting Operators LESSON 14: An Introduction to Macros and Templates PART III: LEARNING THE STANDARD TEMPLATE LIBRARY (STL) LESSON 15: An Introduction to the Standard Template LibraryLESSON 16: The STL String ClassLESSON 17: STL Dynamic Array ClassesLESSON 18: STL list and forward_listLESSON 19: STL Set ClassesLESSON 20: STL Map ClassesPART IV: MORE STL LESSON 21: Understanding Function ObjectsLESSON 22: C++11 Lambda ExpressionsLESSON 23: STL AlgorithmsLESSON 24: Adaptive Containers: Stack and QueueLESSON 25: Working with Bit Flags Using STLPART V: ADVANCED C++ CONCEPTS LESSON 26: Understanding Smart PointersLESSON 27: Using Streams for Input and OutputLESSON 28: Exception HandlingLESSON 29: Going Forward APPENDIXES A: Working with Numbers: Binary and Hexadecimal B: C++ Keywords C: Operator Precedence D: Answers E: ASCII Codes

The Best Things to Do in New York: 1001 Ideas


Caitlin Leffel - 2010
    Organized by theme–including Eating and Drinking, 24-hour New York, Shopping and Spending, Arts and Culture, Views and Sites, the Great Outdoors, and Classic New York–and packed with detailed, helpful indexes organized by neighborhood and by category, this is simply the most fun and comprehensive guidebook to New York City ever. The Best Things to Do in New York crosses genres and boroughs to explore every aspect of the most diverse and exciting city in the world. Written from experience by two people who love the city, and featuring priceless tips from expert contributors–from authors on their favorite bookstores to architects on the city's best buildings–The Best Things to Do in New York is much more than just a guide.

The Timeless Way of Building


Christopher W. Alexander - 1978
    It is thousands of years old, and the same today as it has always been. The great traditional buildings of the past, the villages and tents and temples in which man feels at home, have always been made by people who were very close to the center of this way. It is not possible to make great buildings, or great towns, beautiful places, places where you feel yourself, places where you feel alive, except by following this way. And, as you will see, this way will lead anyone who looks for it to buildings which are themselves as ancient in their form as the trees and hills, and as our faces are.”The Timeless Way of Building is the introductory volume to Alexander’s other works, A Pattern Language and The Oregon Experiment, in the Center for Environmental Structure series.

Redis in Action


Josiah L. Carlson - 2013
    You'll begin by getting Redis set up properly and then exploring the key-value model. Then, you'll dive into real use cases including simple caching, distributed ad targeting, and more. You'll learn how to scale Redis from small jobs to massive datasets. Experienced developers will appreciate chapters on clustering and internal scripting to make Redis easier to use.About the TechnologyWhen you need near-real-time access to a fast-moving data stream, key-value stores like Redis are the way to go. Redis expands on the key-value pattern by accepting a wide variety of data types, including hashes, strings, lists, and other structures. It provides lightning-fast operations on in-memory datasets, and also makes it easy to persist to disk on the fly. Plus, it's free and open source.About this bookRedis in Action introduces Redis and the key-value model. You'll quickly dive into real use cases including simple caching, distributed ad targeting, and more. You'll learn how to scale Redis from small jobs to massive datasets and discover how to integrate with traditional RDBMS or other NoSQL stores. Experienced developers will appreciate the in-depth chapters on clustering and internal scripting.Written for developers familiar with database concepts. No prior exposure to NoSQL database concepts nor to Redis itself is required. Appropriate for systems administrators comfortable with programming.Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications.What's InsideRedis from the ground upPreprocessing real-time dataManaging in-memory datasetsPub/sub and configurationPersisting to diskAbout the AuthorDr. Josiah L. Carlson is a seasoned database professional and an active contributor to the Redis community.Table of ContentsPART 1 GETTING STARTEDGetting to know RedisAnatomy of a Redis web applicationPART 2 CORE CONCEPTSCommands in RedisKeeping data safe and ensuring performanceUsing Redis for application supportApplication components in RedisSearch-based applicationsBuilding a simple social networkPART 3 NEXT STEPSReducing memory useScaling RedisScripting Redis with Lua

CompTIA Project+ Study Guide Authorized Courseware: Exam PK0–003


Kim Heldman - 2010
    You'll find complete coverage of all exam objectives, including key topics such as project planning, execution, delivery, closure, and others. CompTIA's Project+ is the foundation-level professional exam in the complex world of project management; certified project managers often choose to go on and obtain their Project Management Professional (PMP) certifications as well Provides complete coverage of all exam objectives for CompTIA's first update to the Project+ exam in six years Covers project planning, execution, delivery, change, control, communication, and closure Demonstrates and reinforces exam preparation with practical examples and real-word scenarios Includes a CD with Sybex test engine, practice exams, electronic flashcards, and a PDF of the book Approach the new Project+ exam with confidence with this in-depth study guide! Reviews