The Haskell Road to Logic, Maths and Programming


Kees Doets - 2004
    Haskell emerged in the last decade as a standard for lazy functional programming, a programming style where arguments are evaluated only when the value is actually needed. Haskell is a marvellous demonstration tool for logic and maths because its functional character allows implementations to remain very close to the concepts that get implemented, while the laziness permits smooth handling of infinite data structures.This book does not assume the reader to have previous experience with either programming or construction of formal proofs, but acquaintance with mathematical notation, at the level of secondary school mathematics is presumed. Everything one needs to know about mathematical reasoning or programming is explained as we go along. After proper digestion of the material in this book the reader will be able to write interesting programs, reason about their correctness, and document them in a clear fashion. The reader will also have learned how to set up mathematical proofs in a structured way, and how to read and digest mathematical proofs written by others.

Calculus for Dummies


Mark Ryan - 2003
    Others who have no intention of ever studying the subject have this notion that calculus is impossibly difficult unless you happen to be a direct descendant of Einstein. Well, the good news is that you can master calculus. It's not nearly as tough as its mystique would lead you to think. Much of calculus is really just very advanced algebra, geometry, and trig. It builds upon and is a logical extension of those subjects. If you can do algebra, geometry, and trig, you can do calculus.Calculus For Dummies is intended for three groups of readers:Students taking their first calculus course - If you're enrolled in a calculus course and you find your textbook less than crystal clear, this is the book for you. It covers the most important topics in the first year of calculus: differentiation, integration, and infinite series.Students who need to brush up on their calculus to prepare for other studies - If you've had elementary calculus, but it's been a couple of years and you want to review the concepts to prepare for, say, some graduate program, Calculus For Dummies will give you a thorough, no-nonsense refresher course.Adults of all ages who'd like a good introduction to the subject - Non-student readers will find the book's exposition clear and accessible. Calculus For Dummies takes calculus out of the ivory tower and brings it down to earth. This is a user-friendly math book. Whenever possible, the author explains the calculus concepts by showing you connections between the calculus ideas and easier ideas from algebra and geometry. Then, you'll see how the calculus concepts work in concrete examples. All explanations are in plain English, not math-speak. Calculus For Dummies covers the following topics and more:Real-world examples of calculus The two big ideas of calculus: differentiation and integration Why calculus works Pre-algebra and algebra review Common functions and their graphs Limits and continuity Integration and approximating area Sequences and series Don't buy the misconception. Sure calculus is difficult - but it's manageable, doable. You made it through algebra, geometry, and trigonometry. Well, calculus just picks up where they leave off - it's simply the next step in a logical progression.

Business Driven Information Systems


Paige Baltzan - 2006
    The premise for this unique approach is that business initiatives should drive technology choices. Every discussion first addresses the business needs and then addresses the technology that supports those needs. This text provides the foundation that will enable students to achieve excellence in business, whether they major in operations management, manufacturing, sales, marketing, finance, human resources, accounting, or virtually any other business discipline. Business Driven Information Systems is designed to give students the ability to understand how information technology can be a point of strength for an organization.

Big Data: A Revolution That Will Transform How We Live, Work, and Think


Viktor Mayer-Schönberger - 2013
    “Big data” refers to our burgeoning ability to crunch vast collections of information, analyze it instantly, and draw sometimes profoundly surprising conclusions from it. This emerging science can translate myriad phenomena—from the price of airline tickets to the text of millions of books—into searchable form, and uses our increasing computing power to unearth epiphanies that we never could have seen before. A revolution on par with the Internet or perhaps even the printing press, big data will change the way we think about business, health, politics, education, and innovation in the years to come. It also poses fresh threats, from the inevitable end of privacy as we know it to the prospect of being penalized for things we haven’t even done yet, based on big data’s ability to predict our future behavior.In this brilliantly clear, often surprising work, two leading experts explain what big data is, how it will change our lives, and what we can do to protect ourselves from its hazards. Big Data is the first big book about the next big thing.www.big-data-book.com

The Net Delusion: The Dark Side of Internet Freedom


Evgeny Morozov - 2010
    Yet for all the talk about the democratizing power of the Internet, regimes in Iran and China are as stable and repressive as ever. In fact, authoritarian governments are effectively using the Internet to suppress free speech, hone their surveillance techniques, disseminate cutting-edge propaganda, and pacify their populations with digital entertainment. Could the recent Western obsession with promoting democracy by digital means backfire?In this spirited book, journalist and social commentator Evgeny Morozov shows that by falling for the supposedly democratizing nature of the Internet, Western do-gooders may have missed how it also entrenches dictators, threatens dissidents, and makes it harder - not easier - to promote democracy. Buzzwords like "21st-century statecraft" sound good in PowerPoint presentations, but the reality is that "digital diplomacy" requires just as much oversight and consideration as any other kind of diplomacy.Marshaling compelling evidence, Morozov shows why we must stop thinking of the Internet and social media as inherently liberating and why ambitious and seemingly noble initiatives like the promotion of "Internet freedom" might have disastrous implications for the future of democracy as a whole.

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.

The Essential Guide to Telecommunications


Annabel Z. Dodd - 1998
    It aims to give readers a fundamental overview of the technologies that make up the telecommunications infrastructure.

Biological Psychology


James W. Kalat - 1981
    This Eighth Edition redefines the high standard set by previous editions. It offers the best balance of rigor and accessibility, the most current research, and the most thorough technology integration available for your course--all presented within a unique modular format that supports student mastery and provides instructors with maximum teaching flexibility. In every chapter, Kalat accurately portrays biopsychology as a dynamic and empirical field in which fascinating new discoveries are constantly being made. He captures readers' interest with the latest biological psychology findings, such as how gingko biloba claims to aid memory and coverage of the hypothesis that humans' mate choice patterns are influenced by natural selection. Throughout, the author's goal is not only to convey information, but also to convey his excitement about and dedication to the subject.

Mechanical Metallurgy


George E. Dieter - 1961
    It covers the entire scope of mechanical metallurgy, from an understanding of the continuum description of stress and strain, through crystalline and defect mechanisms of flow and fracture, and on to a consideration of major mechanical property tests and the basic metalworking process. It has been updated throughout, SI units have been added, and end-of-chapter study questions are included.

Gödel's Proof


Ernest Nagel - 1958
    Gödel received public recognition of his work in 1951 when he was awarded the first Albert Einstein Award for achievement in the natural sciences--perhaps the highest award of its kind in the United States. The award committee described his work in mathematical logic as "one of the greatest contributions to the sciences in recent times."However, few mathematicians of the time were equipped to understand the young scholar's complex proof. Ernest Nagel and James Newman provide a readable and accessible explanation to both scholars and non-specialists of the main ideas and broad implications of Gödel's discovery. It offers every educated person with a taste for logic and philosophy the chance to understand a previously difficult and inaccessible subject.New York University Press is proud to publish this special edition of one of its bestselling books. With a new introduction by Douglas R. Hofstadter, this book will appeal students, scholars, and professionals in the fields of mathematics, computer science, logic and philosophy, and science.

The Visual Display of Quantitative Information


Edward R. Tufte - 1983
    Theory and practice in the design of data graphics, 250 illustrations of the best (and a few of the worst) statistical graphics, with detailed analysis of how to display data for precise, effective, quick analysis. Design of the high-resolution displays, small multiples. Editing and improving graphics. The data-ink ratio. Time-series, relational graphics, data maps, multivariate designs. Detection of graphical deception: design variation vs. data variation. Sources of deception. Aesthetics and data graphical displays. This is the second edition of The Visual Display of Quantitative Information. Recently published, this new edition provides excellent color reproductions of the many graphics of William Playfair, adds color to other images, and includes all the changes and corrections accumulated during 17 printings of the first edition.

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!

Stylin' with CSS: A Designer's Guide


Charles Wyke-Smith - 2005
    Stylin with CSS teaches you everything you need to know start using CSS in your web development work, from the basics of markup of your content and styling text, through to creating multi-column page layouts without the use of tables. Learn how to create interface components, such as drop-down menus, navigation links, and animated graphical buttons, using only CSS no JavaScript required. Discover how to design code that will work on the latest standard-compliant browsers, while working around the quirks of the older browsers. With a mastery of CSS, your web design capabilities will move to a new level, and everything you need to know to get your started and build your skills is right here in this book. You ll be stylin in no time!"

Solid State Physics: Structure and Properties of Materials


M.A. Wahab - 2005
    The First seven chapters deal with structure related aspects such as lattice and crystal structures, bonding, packing and diffusion of atoms followed by imperfections and lattice vibrations. Chapter eight deals mainly with experimental methods of determining structures of given materials. While the next nine chapters cover various physical properties of crystalline solids, the last chapter deals with the anisotropic properties of materials. This chapter has been added for benefit of readers to understand the crystal properties (anisotropic) in terms of some simple mathematical formulations such as tensor and matrix. New to the Second Edition: Chapter on: *Anisotropic Properties of Materials

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.