Algorithms in a Nutshell


George T. Heineman - 2008
    Algorithms in a Nutshell describes a large number of existing algorithms for solving a variety of problems, and helps you select and implement the right algorithm for your needs -- with just enough math to let you understand and analyze algorithm performance. With its focus on application, rather than theory, this book provides efficient code solutions in several programming languages that you can easily adapt to a specific project. Each major algorithm is presented in the style of a design pattern that includes information to help you understand why and when the algorithm is appropriate. With this book, you will:Solve a particular coding problem or improve on the performance of an existing solutionQuickly locate algorithms that relate to the problems you want to solve, and determine why a particular algorithm is the right one to useGet algorithmic solutions in C, C++, Java, and Ruby with implementation tipsLearn the expected performance of an algorithm, and the conditions it needs to perform at its bestDiscover the impact that similar design decisions have on different algorithmsLearn advanced data structures to improve the efficiency of algorithmsWith Algorithms in a Nutshell, you'll learn how to improve the performance of key algorithms essential for the success of your software applications.

Systems Analysis and Design


Alan Dennis - 2002
    Building on their experience as professional systems analysts and award-winning teachers, authors Dennis, Wixom, and Roth capture the experience of developing and analyzing systems in a way that students can understand and apply.With Systems Analysis and Design, 4th edition , students will leave the course with experience that is a rich foundation for further work as a systems analyst.

High Score!: The Illustrated History of Electronic Games


Rusel DeMaria - 2002
    Featuring hundreds of interviews with game creators and thousands of never-before-seen photos from the early days, this book honors the games that have captivated youngsters and the young-at-heart for more than 30 years--making this the ultimate tribute to electronic games.

The Untold History of Japanese Game Developers: Gold Edition


John Szczepaniak - 2014
    Konami's secret games console, the origin of Game Arts and Quintet, unusual events at Telenet, stories on Falcom, politics behind Enix's game programming contests, a tour of the Love-de-Lic and WARP offices (with layout sketches). Every interviewee is asked about unreleased titles. Foreword by GAMESIDE magazine's editor-in-chief, Yusaku Yamamoto. INTERVIEWEES INCLUDE: Hitoshi YONEDA / Tatsuo NOMURA / Katsutoshi EGUCHI / Toru HIDAKA / Roy OZAKI / Kouichi YOTSUI / Masaaki KUKINO / Yoshitaka Murayama / Harry Inaba / Ryukushi07 / Kotaro UCHIKOSHI / ZUN / Yoshiro KIMURA / Kouji YOKOTA / Jun Nagashima / Yuzo KOSHIRO / Masamoto MORITA / Akira TAKIGUCHI / Masakuni MITSUHASHI / Kohei IKEDA / Hiroshi SUZUKI / Tomonori SUGIYAMA / Yutaka ISOKAWA / Yasuhito SAITO / Takaki KOBAYASHI / Keite ABE / Keiji INAFUNE / Makoto GOTO

Version Control with Git


Jon Loeliger - 2009
    Git permits virtually an infinite variety of methods for development and collaboration. Created by Linus Torvalds to manage development of the Linux kernel, it's become the principal tool for distributed version control. But Git's flexibility also means that some users don't understand how to use it to their best advantage. Version Control with Git offers tutorials on the most effective ways to use it, as well as friendly yet rigorous advice to help you navigate Git's many functions. With this book, you will:Learn how to use Git in several real-world development environments Gain insight into Git's common-use cases, initial tasks, and basic functions Understand how to use Git for both centralized and distributed version control Use Git to manage patches, diffs, merges, and conflicts Acquire advanced techniques such as rebasing, hooks, and ways to handle submodules (subprojects) Learn how to use Git with Subversion Git has earned the respect of developers around the world. Find out how you can benefit from this amazing tool with Version Control with Git.

Django for Beginners: Learn web development with Django 2.0


William S. Vincent - 2018
    Proceed step-by-step through five progressively more complex web applications: from a "Hello World" app all the way to a robust Newspaper app with a custom user model, complete user authentication flow, foreign key relationships, and more. Learn current best practices around class-based views, templates, urls, user authentication, testing, and deployment. The material is up-to-date with the latest versions of both Django (2.0) and Python (3.6). TABLE OF CONTENTS: * Introduction * Chapter 1: Initial Setup * Chapter 2: Hello World app * Chapter 3: Pages app * Chapter 4: Message Board app * Chapter 5: Blog app * Chapter 6: Forms * Chapter 7: User Accounts * Chapter 8: Custom User Model * Chapter 9: User Authentication * Chapter 10: Bootstrap * Chapter 11: Password Change and Reset * Chapter 12: Email * Chapter 13: Newspaper app * Chapter 14: Permissions and Authorizations * Chapter 15: Comments * Conclusion

Extra Lives: Why Video Games Matter


Tom Bissell - 2010
    He is also an obsessive gamer who has spent untold hours in front of his various video game consoles, playing titles such as Far Cry 2, Left 4 Dead, BioShock, and Oblivion for, literally, days. If you are reading this flap copy, the same thing can probably be said of you, or of someone you know. Until recently, Bissell was somewhat reluctant to admit to his passion for games. In this, he is not alone. Millions of adults spend hours every week playing video games, and the industry itself now reliably outearns Hollywood. But the wider culture seems to regard video games as, at best, well designed if mindless entertainment. Extra Lives is an impassioned defense of this assailed and misunderstood art form. Bissell argues that we are in a golden age of gaming—but he also believes games could be even better. He offers a fascinating and often hilarious critique of the ways video games dazzle and, just as often, frustrate. Along the way, we get firsthand portraits of some of the best minds (Jonathan Blow, Clint Hocking, Cliff Bleszinski, Peter Molyneux) at work in video game design today, as well as a shattering and deeply moving final chapter that describes, in searing detail, Bissell’s descent into the world of Grand Theft Auto IV, a game whose themes mirror his own increasingly self-destructive compulsions. Blending memoir, criticism, and first-rate reportage, Extra Lives is like no other book on the subject ever published. Whether you love video games, loathe video games, or are merely curious about why they are becoming the dominant popular art form of our time, Extra Lives is required reading.

Don't Bother Me Mom--I'm Learning!: How Computer and Video Games are Preparing Your Kids for 21st Century Success - and How You Can Help!


Marc Prensky - 2006
    He knows that if parents place good video games into a learning system in their homes they can reap major benefits for their children and themselves. They can accelerate their children's language and cognitive growth." —James Paul Gee, Tashia Mogridge Professor of Reading, University of Wisconsin-MadisonMarc Prensky presents the case—profoundly counter-cultural but true nevertheless—that video and computer game playing, within limits, is actually very beneficial to today's "Digital Native" kids, who are using them to prepare themselves for life in the 21st century. The reason kids are so attracted to these games, Prensky says, is that they are learning about important "future" things, from collaboration, to prudent risk taking, to strategy formulation and execution, to complex moral and ethical decisions. Prensky's arguments are backed up by university PhD's studying not just violence, but games in their totality, as well as studies of gamers who have become successful corporate workers, entrepreneurs, leaders, doctors, lawyers, scientists and other professionals.Because most adults (including the critics) can't play the modern complex games themselves (and discount the opinions of the kids who do play them) they rely on secondhand sources of information, most of whom are sadly misinformed about both the putative harm and the true benefits of game-playing. This book is the antidote to those misinformed, bombastic sources, in the press and elsewhere. Full of common sense and practical information, it provides parents with a large number of techniques approaches they can use—both over time and right away—to improve both their understanding of games and their relationships with their kids. What You Will Learn The aim of this book is to give you a peek into the hidden world into which your kids disappear when they are playing games, and to help you as an adult—especially if you are a concerned parent or teacher—understand and appreciate just how much your kids are learning that is POSITIVE from their video and computer games.In the few short hours it takes to read this book, you will learn: What it feels like to be in the world of computer and video games; How to appreciate the breadth and depth of modern computer and video games and the ways they make your kids learn; How to understand the various USEFUL skills your game-playing your kids are acquiring; How to understand your own kids better and build better relationships using games as a base; And, most importantly, How to augment and improve what your kids are learning by HAVING CONVERSATIONS THAT THEY WANT TO HAVE about their games.

The AWK Programming Language


Alfred V. Aho - 1988
    In 1985, a new version of the language was developed, incorporating additional features such as multiple input files, dynamic regular expressions, and user-defined functions. This new version is available for both Unix and MS-DOS. This is the first book on AWK. It begins with a tutorial that shows how easy AWK is to use. The tutorial is followed by a comprehensive manual for the new version of AWK. Subsequent chapters illustrate the language by a range of useful applications, such as: Retrieving, transforming, reducing, and validating data Managing small, personal databases Text processing Little languages Experimenting with algorithms The examples illustrates the books three themes: showing how to use AWK well, demonstrating AWKs versatility, and explaining how common computing operations are done. In addition, the book contains two appendixes: summary of the language, and answers to selected exercises.

Thinking with Type


Ellen Lupton - 2004
    What type of font to use? How big? How should those letters, words, and paragraphs be aligned, spaced, ordered, shaped, and otherwise manipulated? In this groundbreaking new primer, leading design educator and historian Ellen Lupton provides clear and concise guidance for anyone learning or brushing up on their typographic skills. Thinking with Type is divided into three sections: letter, text, and grid. Each section begins with an easy-to-grasp essay that reviews historical, technological, and theoretical concepts, and is then followed by a set of practical exercises that bring the material covered to life. Sections conclude with examples of work by leading practitioners that demonstrate creative possibilities (along with some classic no-no's to avoid).

The Game Makers: The Story of Parker Brothers, from Tiddledy Winks to Trivial Pursuit


Philip E. Orbanes - 2003
    Parker started with only fifty dollars and a dream. In The Game Makers, Philip E. Orbanes, a game historian and former Parker Brothers executive, explores the often whimsical origins of popular games and toys - from the Monopoly Game to the Nerf ball to Ping-Pong to Sorry! - and reveals how generations of determined entrepreneurs built a family business empire." Through an engaging narrative based on extensive research - including the never-before-published personal archives of George S. Parker and interviews with his successors - Orbanes takes us on a journey through the birth and maturation of the toy industry as seen through the eyes of one of its greatest legends. Sprung from Parker's fervent belief that games were meant to last and be fun, this tiny family firm would grow into a brand powerhouse that reflected - and ultimately helped shape - the culture of a nation. Through world wars and the Great Depression, through natural disasters and family tragedies, Parker Brothers succeeded in bringing smiles to the faces of millions by connecting them to - or helping them forget - the events taking place around them.

Game Changer: AlphaZero's Groundbreaking Chess Strategies and the Promise of AI


Matthew Sadler - 2019
    The artificial intelligence system, created by DeepMind, had been fed nothing but the rules of the Royal Game when it beat the world’s strongest chess engine in a prolonged match. The selection of ten games published in December 2017 created a worldwide sensation: how was it possible to play in such a brilliant and risky style and not lose a single game against an opponent of superhuman strength?For Game Changer, Matthew Sadler and Natasha Regan investigated more than two thousand previously unpublished games by AlphaZero. They also had unparalleled access to its team of developers and were offered a unique look ‘under the bonnet’ to grasp the depth and breadth of AlphaZero’s search. Sadler and Regan reveal its thinking process and tell the story of the human motivation and the techniques that created AlphaZero.Game Changer also presents a collection of lucidly explained chess games of astonishing quality. Both professionals and club players will improve their game by studying AlphaZero’s stunning discoveries in every field that matters: opening preparation, piece mobility, initiative, attacking techniques, long-term sacrifices and much more.The story of AlphaZero has a wider impact. Game Changer offers intriguing insights into the opportunities and horizons of Artificial Intelligence. Not just in solving games, but in providing solutions for a wide variety of challenges in society.With a foreword by former World Chess Champion Garry Kasparov and an introduction by DeepMind CEO Demis Hassabis.Matthew Sadler (1974) is a Grandmaster who twice won the British Championship and was awarded an individual Gold Medal at the 1996 Olympiad. He has authored several highly acclaimed books on chess and has been writing the famous ‘Sadler on Books’ column for New In Chess magazine for many years. Natasha Regan is a Women’s International Master from England who achieved a degree in mathematics from Cambridge University. Matthew Sadler and Natasha Regan won the English Chess Federation 2016 Book of the Award for their book Chess for Life.

sed & awk


Dale Dougherty - 1990
    The most common operation done with sed is substitution, replacing one block of text with another. awk is a complete programming language. Unlike many conventional languages, awk is "data driven" -- you specify what kind of data you are interested in and the operations to be performed when that data is found. awk does many things for you, including automatically opening and closing data files, reading records, breaking the records up into fields, and counting the records. While awk provides the features of most conventional programming languages, it also includes some unconventional features, such as extended regular expression matching and associative arrays. sed & awk describes both programs in detail and includes a chapter of example sed and awk scripts. This edition covers features of sed and awk that are mandated by the POSIX standard. This most notably affects awk, where POSIX standardized a new variable, CONVFMT, and new functions, toupper() and tolower(). The CONVFMT variable specifies the conversion format to use when converting numbers to strings (awk used to use OFMT for this purpose). The toupper() and tolower() functions each take a (presumably mixed case) string argument and return a new version of the string with all letters translated to the corresponding case. In addition, this edition covers GNU sed, newly available since the first edition. It also updates the first edition coverage of Bell Labs nawk and GNU awk (gawk), covers mawk, an additional freely available implementation of awk, and briefly discusses three commercial versions of awk, MKS awk, Thompson Automation awk (tawk), and Videosoft (VSAwk).

Grand Theft Childhood: The Surprising Truth about Violent Video Games and What Parents Can Do


Lawrence Kutner - 2008
    Half of twelve-year-olds regularly play violent, Mature-rated games. And parents are worried... "I don't know if it's an addiction, but my son is just glued to it. It's the same with my daughter with her computer... and I can't be watching both of them all the time, to see if they're talking to strangers or if someone is getting killed in the other room on the PlayStation. It's just nerve-racking!" "I'm concerned that this game playing is just the kid and the TV screen... how is this going to affect his social skills?""I'm not concerned about the violence; I'm concerned about the way they portray the violence. It's not accidental; it's intentional. They're just out to kill people in some of these games." What should we as parents, teachers and public policy makers be concerned about? The real risks are subtle and aren't just about gore or sex. Video games don't affect all children in the same way; some children are at significantly greater risk. (You may be surprised to learn which ones!) Grand Theft Childhood gives parents practical, research-based advice on ways to limit many of those risks. It also shows how video games -- even violent games -- can benefit children and families in unexpected ways.In this groundbreaking and timely book, Drs. Lawrence Kutner and Cheryl Olson cut through the myths and hysteria, and reveal the surprising truth about kids and violent games.

Metaprogramming Ruby 2: Program Like the Ruby Pros


Paolo Perrotta - 2014
    With metaprogramming, you can produce elegant, clean, and beautiful programs. Once the domain of expert Rubyists, metaprogramming is now accessible to programmers of all levels. This thoroughly revised and updated second edition of the bestselling Metaprogramming Ruby explains metaprogramming in a down-to-earth style and arms you with a practical toolbox that will help you write your best Ruby code ever.Dig under the surface and explore Ruby's most advanced feature: a collection of techniques and tricks known as metaprogramming. In this book, you'll learn metaprogramming as an essential component of Ruby and discover the deep, non-obvious details of the language. Once you understand the tenets of Ruby, including the object model, scopes, and singleton classes, you're on your way to applying metaprogramming both in your daily work assignments and in your fun, after-hours projects.Metaprogramming Ruby, Second Edition makes mastering the language enjoyable. The book is packed with: Pragmatic examples of metaprogramming in action, many of which come straight from real-life gems such as Rails.Programming challenges that let you experiment and play with some of the most out-there metaprogramming concepts.Metaprogramming spells--33 practical recipes and idioms that you can study and apply right now, to write code that is sure to impress.This completely revised new edition covers the new features in Ruby 2.0 and 2.1, and contains code from the latest Ruby libraries, including Rails 4. Most examples are new, from the wild, with more recent libraries. And the book reflects current ideas of when and how much metaprogramming you should use.Whether you're a Ruby apprentice on the path to mastering the language or a Ruby wiz in search of new tips, this book is for you.What You Need: Ruby 2.x, Ruby 1.9, or a recent version of JRuby.