Understanding Computation: From Simple Machines to Impossible Programs


Tom Stuart - 2013
    Understanding Computation explains theoretical computer science in a context you’ll recognize, helping you appreciate why these ideas matter and how they can inform your day-to-day programming.Rather than use mathematical notation or an unfamiliar academic programming language like Haskell or Lisp, this book uses Ruby in a reductionist manner to present formal semantics, automata theory, and functional programming with the lambda calculus. It’s ideal for programmers versed in modern languages, with little or no formal training in computer science.* Understand fundamental computing concepts, such as Turing completeness in languages* Discover how programs use dynamic semantics to communicate ideas to machines* Explore what a computer can do when reduced to its bare essentials* Learn how universal Turing machines led to today’s general-purpose computers* Perform complex calculations, using simple languages and cellular automata* Determine which programming language features are essential for computation* Examine how halting and self-referencing make some computing problems unsolvable* Analyze programs by using abstract interpretation and type systems

A Suitable Job for a Woman


Val McDermid - 1994
    But what if the private eye is a woman? And what if she is not a character in a novel but a real, working investigator testing not only the meanness but the absurdity of life on seamy streets? Who will tell her story? Enter Manchester's Val McDermid, herself a skilled writer of the P.I. novel but for years a professional journalist. In an effort to plumb the real world of working women--and throw new light on her own craft--she has interviewed women private eyes from both sides of the Atlantic and assembled their stories with an eye for the absurd and a keen grasp of the gritty nuts and bolts of the profession.As fascinating as fiction, A Suitable Job for a Woman is, in the words of Edgar-winning author Nevada Barr, "a concise and eye-opening trek through the competence, humor, and humanity of women."

Evidence of the Gods


Erich von Däniken - 1977
    He continues to challenge our understanding of history."--Philip Coppens, author of The Ancient Alien QuestionAncient humans had the natural urge to document the world in which they lived, a fact that is evident in the cave paintings and carvings that still exist today. Why do rock paintings from various sites around the world all seem to depict the same things? Did the peoples of the prehistoric world have contact with each another? Is it possible that some were transported to far-flung locations in what our ancestors could only have described as "flying chariots"?Erich von Daniken, one of the best-selling authors of all time and regarded by many as the father of the ancient alien theory, continues his mission to uncover Earth's ancient past--this time with more than 150 extraordinary full-color photographs--in Evidence of the Gods.This extensively illustrated book features never-before-seen photographs from his unique archive, compiled throughout decades of searching around the world for traces of the cosmic gods whom he believes came to Earth thousands of years ago. Evidence of the Gods offers the best and most impressive evidence to date, along with concise explanations for the images, to bolster the case that von Daniken has already been making quite convincingly for years.Evidence of the Gods is his most convincing--and thoroughly entertaining--work yet.Did extraterrestrial visitors really leave their unmistakable traces on our planet thousands of years ago?The images will speak for themselves.

Bitcoin for the Befuddled


Conrad Barski - 2014
    Already used by people and companies around the world, many forecast that Bitcoin could radically transform the global economy. The value of a bitcoin has soared from less than a dollar in 2011 to well over $1000 in 2013, with many spikes and crashes along the way. The rise in value has brought Bitcoin into the public eye, but the cryptocurrency still confuses many people. Bitcoin for the Befuddled covers everything you need to know about Bitcoin—what it is, how it works, and how to acquire, store, and use bitcoins safely and securely. You'll also learn about Bitcoin's history, its complex cryptography, and its potential impact on trade and commerce. The book includes a humorous, full-color comic explaining Bitcoin concepts, plus a glossary of terms for easy reference.

Vagrant: Up and Running


Mitchell Hashimoto - 2013
    This hands-on guide shows you how to use this open source software to build a virtual machine for any purpose—including a completely sandboxed, fully provisioned development environment right on your desktop.Vagrant creator Mitchell Hashimoto shows you how to share a virtual machine image with members of your team, set up a separate virtualization for each project, and package virtual machines for use by others. This book covers the V1 (1.0.x) configuration syntax running on top of a V2 (1.1+) core, the most stable configuration format running on the latest core.Build a simple virtual machine with just two commands and no configurationCreate a development environment that closely resembles productionAutomate software installation and management with shell scripts, Chef, or PuppetSet up a network interface to access your virtual machine from any computerUse your own editor and browser to develop and test your applicationsTest complicated multi-machine clusters with a single VagrantfileChange Vagrant’s default operating system to match your production OSExtend Vagrant features with plugins, including components you build yourself

Programming in Objective-C 2.0


Stephen G. Kochan - 2008
    It includes detailed examples and exercises.

Dark Convergence


Dave Gross - 2013
    Nemo soon learns of the Convergence’s plans to transform Caen and its people to suit their enigmatic goddess, who favors machines over the living.Amid this clash Nemo must withstand the temptation of the Convergence’s message to those who, like himself, are fascinated by technology. Aurora proves to be a different sort of enemy than he has faced before—something of a kindred spirit, albeit one bent on destroying all he holds dear.

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

Hands-On Machine Learning with Scikit-Learn and TensorFlow


Aurélien Géron - 2017
    Now that machine learning is thriving, even programmers who know close to nothing about this technology can use simple, efficient tools to implement programs capable of learning from data. This practical book shows you how.By using concrete examples, minimal theory, and two production-ready Python frameworks—Scikit-Learn and TensorFlow—author Aurélien Géron helps you gain an intuitive understanding of the concepts and tools for building intelligent systems. You’ll learn how to use a range of techniques, starting with simple Linear Regression and progressing to Deep Neural Networks. If you have some programming experience and you’re ready to code a machine learning project, this guide is for you.This hands-on book shows you how to use:Scikit-Learn, an accessible framework that implements many algorithms efficiently and serves as a great machine learning entry pointTensorFlow, a more complex library for distributed numerical computation, ideal for training and running very large neural networksPractical code examples that you can apply without learning excessive machine learning theory or algorithm details

PHP Solutions: Dynamic Web Design Made Easy


David Powers - 2006
    How easy is easy? It's not like an instant cake mix: just add water and stir. Dynamic web design is--well-- dynamic. Every website is different, so it's impossible to grab a script, paste it into a web page, and expect it to work. Building dynamic sites involves diving into the code and adju- ing it to your own requirements. If that thought makes you break out in a cold sweat, just relax for a moment. PHP is not difficult, and I've written this book very much with the n- programmer in mind. I've done so because I don't come from a computing background myself. In fact, I went to school in the days before pocket calculators were invented, never mind personal computers. As a result, I don't assume that you drank in knowledge of arrays, loops, and conditional statements with your mother's milk. Everything is explained in plain, straightforward l- guage, and I've highlighted points where things may go wrong, with advice on how to solve the problem. At the same time, if you're working with computers and websites, you're bound to have a certain level of technical knowledge and skill. So I don't talk down to you either.

On LISP: Advanced Techniques for Common LISP


Paul Graham - 1993
    On Lisp explains the reasons behind Lisp's growing popularity as a mainstream programming language. On Lisp is a comprehensive study of advanced Lisp techniques, with bottom-up programming as the unifying theme. It gives the first complete description of macros and macro applications. The book also covers important subjects related to bottom-up programming, including functional programming, rapid prototyping, interactive development, and embedded languages. The final chapter takes a deeper look at object-oriented programming than previous Lisp books, showing the step-by-step construction of a working model of the Common Lisp Object System (CLOS). As well as an indispensable reference, On Lisp is a source of software. Its examples form a library of functions and macros that readers will be able to use in their own Lisp programs.

Elementary Number Theory and Its Applications


Kenneth H. Rosen - 1984
    The Fourth Edition builds on this strength with new examples, additional applications and increased cryptology coverage. Up-to-date information on the latest discoveries is included.Elementary Number Theory and Its Applications provides a diverse group of exercises, including basic exercises designed to help students develop skills, challenging exercises and computer projects. In addition to years of use and professor feedback, the fourth edition of this text has been thoroughly accuracy checked to ensure the quality of the mathematical content and the exercises.

Winter's Law


Stephen Penner - 2016
    Michael Jameson is a successful, forty-something, African American husband and father. And he's just been charged with a 25-year-old cold case murder, a gang-related drug deal gone horribly wrong. Talon agrees to take the case, but the one question she needs answered is the one question Michael refuses to answer: Did he do it?Michael insists it doesn't matter. He's not the same person he was twenty-five years ago. He's built a new life in the intervening years, and nothing that happens now will bring the victim back. Instead, he poses a far more provocative question: Would the legal system reach back that far to take away everything built up by a successful White man?

Programming Groovy


Venkat Subramaniam - 2008
    But recently, the industry has turned to dynamic languages for increased productivity and speed to market.Groovy is one of a new breed of dynamic languages that run on the Java platform. You can use these new languages on the JVM and intermix them with your existing Java code. You can leverage your Java investments while benefiting from advanced features including true Closures, Meta Programming, the ability to create internal DSLs, and a higher level of abstraction.If you're an experienced Java developer, Programming Groovy will help you learn the necessary fundamentals of programming in Groovy. You'll see how to use Groovy to do advanced programming including using Meta Programming, Builders, Unit Testing with Mock objects, processing XML, working with Databases and creating your own Domain-Specific Languages (DSLs).

Think Like a Programmer: An Introduction to Creative Problem Solving


V. Anton Spraul - 2012
    In this one-of-a-kind text, author V. Anton Spraul breaks down the ways that programmers solve problems and teaches you what other introductory books often ignore: how to Think Like a Programmer. Each chapter tackles a single programming concept, like classes, pointers, and recursion, and open-ended exercises throughout challenge you to apply your knowledge. You'll also learn how to:Split problems into discrete components to make them easier to solve Make the most of code reuse with functions, classes, and libraries Pick the perfect data structure for a particular job Master more advanced programming tools like recursion and dynamic memory Organize your thoughts and develop strategies to tackle particular types of problems Although the book's examples are written in C++, the creative problem-solving concepts they illustrate go beyond any particular language; in fact, they often reach outside the realm of computer science. As the most skillful programmers know, writing great code is a creative art—and the first step in creating your masterpiece is learning to Think Like a Programmer.