Grokking Algorithms An Illustrated Guide For Programmers and Other Curious People


Aditya Y. Bhargava - 2015
    The algorithms you'll use most often as a programmer have already been discovered, tested, and proven. If you want to take a hard pass on Knuth's brilliant but impenetrable theories and the dense multi-page proofs you'll find in most textbooks, this is the book for you. This fully-illustrated and engaging guide makes it easy for you to learn how to use algorithms effectively in your own programs.Grokking Algorithms is a disarming take on a core computer science topic. In it, you'll learn how to apply common algorithms to the practical problems you face in day-to-day life as a programmer. You'll start with problems like sorting and searching. As you build up your skills in thinking algorithmically, you'll tackle more complex concerns such as data compression or artificial intelligence. Whether you're writing business software, video games, mobile apps, or system utilities, you'll learn algorithmic techniques for solving problems that you thought were out of your grasp. For example, you'll be able to:Write a spell checker using graph algorithmsUnderstand how data compression works using Huffman codingIdentify problems that take too long to solve with naive algorithms, and attack them with algorithms that give you an approximate answer insteadEach carefully-presented example includes helpful diagrams and fully-annotated code samples in Python. By the end of this book, you will know some of the most widely applicable algorithms as well as how and when to use them.

Python Crash Course: A Hands-On, Project-Based Introduction to Programming


Eric Matthes - 2015
    You'll also learn how to make your programs interactive and how to test your code safely before adding it to a project. In the second half of the book, you'll put your new knowledge into practice with three substantial projects: a Space Invaders-inspired arcade game, data visualizations with Python's super-handy libraries, and a simple web app you can deploy online.As you work through Python Crash Course, you'll learn how to: Use powerful Python libraries and tools, including matplotlib, NumPy, and PygalMake 2D games that respond to keypresses and mouse clicks, and that grow more difficult as the game progressesWork with data to generate interactive visualizationsCreate and customize simple web apps and deploy them safely onlineDeal with mistakes and errors so you can solve your own programming problemsIf you've been thinking seriously about digging into programming, Python Crash Course will get you up to speed and have you writing real programs fast. Why wait any longer? Start your engines and code!

MacBook For Dummies


Mark L. Chambers - 2006
    In addition to the freedom to work wherever you happen to be, a MacBook offers youA portable darkroom with iPhoto Mobile music, podcasts, and Internet radio GarageBand software that lets you make your own music The ability to create and share original movies and DVDs Safari, a safer and ultra-cool Web browser, and all the other OS X advantages Whether you already have your new MacBook or are still weighing the pros and cons of various models, MacBook For Dummies is a valuable resource. For newcomers to laptop land, it's packed with basic information about using and caring for Mac laptops. It also walks you through Mac OS X, the revolutionary Macintosh operating system that makes your laptop tick. Then it's on to all the fun stuff you can do with your MacBook, like making music, editing photos and turning them into a book, creating DVDs on the road, or adding a wireless keyboard. MacBook For Dummies will help youSet up your MacBook and get acquainted with all the features of the Mac OS X Tiger operating system Use the Safari Web browser and Apple's .Mac Internet subscriber service, connect your MacBook to a printer, and communicate with your cell phone or PDA Connect to a wired or wireless network Make the most of the iLife applications that come with your MacBook--iTunes, iPhoto, iMovie HD, iDVD, and GarageBand Keep your MacBook and your data safe, troubleshoot any problems, and maintain your system Popular For Dummies author Mark Chambers has loaded this fun book with tips, ideas, and his famous "Mark's Maxims"--power user advice that will guide you around the pitfalls and make you a Macxpert in no time. From latptop basics all the way to upgrading and adding memory, MacBook For Dummies will be your MacBook's best friend.

Ethics And Technology: Ethical Issues In An Age Of Information And Communication Technology


Herman T. Tavani - 2003
    . . . We need a good book in cyberethics to deal with the present and prepare us for an uncertain future. Tavani's Ethics and Technology is such a book." --from the foreword by James Moor, Dartmouth College Is there privacy in a world of camera phones and wireless networking? Does technology threaten your civil liberties? How will bioinformatics and nanotechnology affect us? Should you worry about equity and access in a globalized economy? From privacy and security to free speech and intellectual property to globalization and outsourcing, the issues and controversies of the information age are serious, complex, and pervasive. In this new edition of his groundbreaking book, Herman Tavani introduces computer professionals to the emerging field of Cyberethics, the interdisciplinary field of study that addresses these new ethical issues from all perspectives: technical, social, and philosophical. Using fascinating real-world examples--including the latest court decisions in such cases as Verizon v. RIAA, MGM v. Grokster, Google versus the Bush Administration, and the Children's Online Pornography Act (CIPA) --as well as hypothetical scenarios, he shows you how to understand and analyze the practical, moral, and legal issues that impact your work and your life. Tavani discusses such cutting-edge areas as: * Globalization and outsourcing * Property rights and open source software * HIPAA (privacy laws) and surveillance * The Patriot Act and civil liberties * Bioinformatics and genomics research * Converging technologies--pervasive computing and nanocomputing * Children's online pornography laws Updating and expanding upon the previous edition, Ethics and Technology, Second Edition provides a much-needed ethical compass to help computer and non-computer professionals alike navigate the challenging waters of cyberspace. About the Author Herman T. Tavani is Professor of Philosophy at Rivier College and Co-Director of the International Society for Ethics and Information Technology (INSEIT). He is the author, editor, or co-editor of five books on ethical aspects of information technology. www.wiley.com/college/tavani

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.

Linux Kernel Development


Robert Love - 2003
    The book details the major subsystems and features of the Linux kernel, including its design, implementation, and interfaces. It covers the Linux kernel with both a practical and theoretical eye, which should appeal to readers with a variety of interests and needs. The author, a core kernel developer, shares valuable knowledge and experience on the 2.6 Linux kernel. Specific topics covered include process management, scheduling, time management and timers, the system call interface, memory addressing, memory management, the page cache, the VFS, kernel synchronization, portability concerns, and debugging techniques. This book covers the most interesting features of the Linux 2.6 kernel, including the CFS scheduler, preemptive kernel, block I/O layer, and I/O schedulers. The third edition of Linux Kernel Development includes new and updated material throughout the book:An all-new chapter on kernel data structuresDetails on interrupt handlers and bottom halvesExtended coverage of virtual memory and memory allocationTips on debugging the Linux kernelIn-depth coverage of kernel synchronization and lockingUseful insight into submitting kernel patches and working with the Linux kernel community

The Revenge of Analog: Real Things and Why They Matter


David Sax - 2016
    We've begun to fall back in love with the very analog goods and ideas the tech gurus insisted that we no longer needed. Businesses that once looked outdated, from film photography to brick-and-mortar retail, are now springing with new life. Notebooks, records, and stationery have become cool again. Behold the Revenge of Analog. David Sax has uncovered story after story of entrepreneurs, small business owners, and even big corporations who've found a market selling not apps or virtual solutions but real, tangible things. As e-books are supposedly remaking reading, independent bookstores have sprouted up across the country. As music allegedly migrates to the cloud, vinyl record sales have grown more than ten times over the past decade. Even the offices of tech giants like Google and Facebook increasingly rely on pen and paper to drive their brightest ideas. Sax's work reveals a deep truth about how humans shop, interact, and even think. Blending psychology and observant wit with first-rate reportage, Sax shows the limited appeal of the purely digital life-and the robust future of the real world outside it.

How to Count (Programming for Mere Mortals, #1)


Steven Frank - 2011
    unsigned numbers- Floating point and fixed point arithmeticThis short, easily understood book will quickly get you thinking like a programmer.

How Buildings Learn: What Happens After They're Built


Stewart Brand - 1994
    How Buildings Learn is a masterful new synthesis that proposes that buildings adapt best when constantly refined and reshaped by their occupants, and that architects can mature from being artists of space to becoming artists of time. From the connected farmhouses of New England to I.M. Pei's Media Lab, from "satisficing" to "form follows funding," from the evolution of bungalows to the invention of Santa Fe Style, from Low Road military surplus buildings to a High Road English classic like Chatsworth—this is a far-ranging survey of unexplored essential territory.More than any other human artifacts, buildings improve with time—if they're allowed to. How Buildings Learn shows how to work with time rather than against it.

Breaking and Entering: The Extraordinary Story of a Hacker Called "Alien"


Jeremy N. Smith - 2019
    When she arrived at MIT in the 1990s, Alien was quickly drawn to the school’s tradition of high‑risk physical trespassing: the original “hacking.” Within a year, one of her hallmates was dead and two others were arraigned. Alien’s adventures were only just beginning. After a stint at the storied, secretive Los Alamos National Laboratory, Alien was recruited by a top cybersecurity firm where she deployed her cache of virtual weapons—and the trespassing and social engineering talents she had developed while “hacking” at MIT. The company tested its clients’ security by every means possible—not just coding, but donning disguises and sneaking past guards and secretaries into the C‑suite. Alien now runs a boutique hacking outfit that caters to some of the world’s biggest and most vulnerable institutions—banks, retailers, government agencies. Her work combines devilish charm, old‑school deception, and next generation spycraft. In Breaking and Entering, cybersecurity finally gets the rich, character‑driven, fast-paced treatment it deserves.

Take Back Your Life!: Using Microsoft Office Outlook 2007 to Get Organized and Stay Organized


Sally McGhee - 2007
    Get expert advice and take back control over your life and workday by managing all your communications action items and interactions with proven time management and productivity techniques and Microsoft Office Outlook 2007 In this book productivity expert Sally McGhee shows you how to take control and reclaim something you thought you had lost forever your work life balance Now you can benefit from Sally s popular and highly regarded corporate education programs learning simple but powerful techniques for rebalancing your personal and professional commitments by using the latest productivity features in Microsoft Office Outlook 2007 If you re bogged down by unrelenting e mail messages conflicting commitments and endless interruptions it s not too late to reclaim control of your workday and take back your life By applying the same time management and productivity techniques used by leading companies you can better manage all of your communications action items and interactions In this book productivity expert Sally McGhee shows you how to take control and reclaim something you thought you had lost forever your work life balance Now you can benefit from Sally s popular and highly regarded corporate education programs learning simple but powerful techniques for rebalancing your personal and professional commitments by using the latest productivity features in Microsoft Office Outlook 2007 Learn the proven methods that empower you to clear away distractions and loose ends and focus on what s really important to you and your business You will discover what defines and what limits your personal productivity and learn how to create your own management system Examine how you collect and store information process and organize your e mail messages for efficiency and plan and prioritize with the calendar features in Office Outlook 2007 Learn what thousands of people worldwide have discovered about taking control of their everyday productivity and

Cockpit Confidential: Everything You Need to Know about Air Travel: Questions, Answers, & Reflections


Patrick Smith - 2013
    Patrick Smith, airline pilot and author of the web's popular Ask the Pilot feature, separates the fact from fallacy and tells you everything you need to know...-How planes fly, and a revealing look at the men and women who fly them-Straight talk on turbulence, pilot training, and safety-The real story on congestion, delays, and the dysfunction of the modern airport-The myths and misconceptions of cabin air and cockpit automation-Terrorism in perspective, and a provocative look at security-Airfares, seating woes, and the pitfalls of airline customer service-The colors and cultures of the airlines we love to hateCockpit Confidential covers not only the nuts and bolts of flying, but also the grand theater of air travel, from airport architecture to inflight service to the excitement of travel abroad. It's a thoughtful, funny, at times deeply personal look into the strange and misunderstood world of commercial flying.It's the ideal book for frequent flyers, nervous passengers, and global travelers.Refreshed and vastly expanded from the original Ask the Pilot, with approximately 75 percent new material.

Game Programming Patterns


Robert Nystrom - 2011
    Commercial game development expert Robert Nystrom presents an array of general solutions to problems encountered in game development. For example, you'll learn how double-buffering enables a player to perceive smooth and realistic motion, and how the service locator pattern can help you provide access to services such as sound without coupling your code to any particular sound driver or sound hardware. Games have much in common with other software, but also a number of unique constraints. Some of the patterns in this book are well-known in other domains of software development. Other of the patterns are unique to gaming. In either case, Robert Nystrom bridges from the ivory tower world of software architecture to the in-the-trenches reality of hardcore game programming. You'll learn the patterns and the general problems that they solve. You'll come away able to apply powerful and reusable architectural solutions that enable you to produce higher quality games with less effort than before. Applies classic design patterns to game programming. Introduces new patterns specific to game programming. Brings abstract software architecture down to Earth with approachable writing and an emphasis on simple code that shows each pattern in practice. What you'll learn Overcome architectural challenges unique to game programming Apply lessons from the larger software world to games. Tie different parts of a game (graphics, sound, AI) into a cohesive whole. Create elegant and maintainable architecture. Achieve good, low-level performance. Gain insight into professional, game development. Who this book is forGame Programming Patterns is aimed at professional game programmers who, while successful in shipping games, are frustrated at how hard it sometimes is to add and modify features when a game is under development. Game Programming Patterns shows how to apply modern software practices to the problem of game development while still maintaining the blazing-fast performance demanded by hard-core gamers. Game Programming Patterns also appeals to those learning about game programming in their spare time. Hobbyists and aspiring professionals alike will find much to learn in this book about pathfinding, collision detection, and other game-programming problem domains.

Lights Out: A Cyberattack, A Nation Unprepared, Surviving the Aftermath


Ted Koppel - 2015
    Tens of millions of people over several states are affected. For those without access to a generator, there is no running water, no sewage, no refrigeration or light. Food and medical supplies are dwindling. Devices we rely on have gone dark. Banks no longer function, looting is widespread, and law and order are being tested as never before.  It isn’t just a scenario. A well-designed attack on just one of the nation’s three electric power grids could cripple much of our infrastructure—and in the age of cyberwarfare, a laptop has become the only necessary weapon. Several nations hostile to the United States could launch such an assault at any time. In fact, as a former chief scientist of the NSA reveals, China and Russia have already penetrated the grid. And a cybersecurity advisor to President Obama believes that independent actors—from “hacktivists” to terrorists—have the capability as well. “It’s not a question of if,” says Centcom Commander General Lloyd Austin, “it’s a question of when.”  And yet, as Koppel makes clear, the federal government, while well prepared for natural disasters, has no plan for the aftermath of an attack on the power grid.  The current Secretary of Homeland Security suggests keeping a battery-powered radio.In the absence of a government plan, some individuals and communities have taken matters into their own hands. Among the nation’s estimated three million “preppers,” we meet one whose doomsday retreat includes a newly excavated three-acre lake, stocked with fish, and a Wyoming homesteader so self-sufficient that he crafted the thousands of adobe bricks in his house by hand. We also see the unrivaled disaster preparedness of the Mormon church, with its enormous storehouses, high-tech dairies, orchards, and proprietary trucking company – the fruits of a long tradition of anticipating the worst. But how, Koppel asks, will ordinary civilians survive?With urgency and authority, one of our most renowned journalists examines a threat unique to our time and evaluates potential ways to prepare for a catastrophe that is all but inevitable.

Worm: The First Digital World War


Mark Bowden - 2011
    Banks, telecommunications companies, and critical government networks (including the British Parliament and the French and German military) were infected. No one had ever seen anything like it. By January 2009 the worm lay hidden in at least eight million computers and the botnet of linked computers that it had created was big enough that an attack might crash the world. This is the gripping tale of the group of hackers, researches, millionaire Internet entrepreneurs, and computer security experts who united to defend the Internet from the Conficker worm: the story of the first digital world war.