The Haskell School of Expression: Learning Functional Programming Through Multimedia


Paul Hudak - 2000
    It has become popular in recent years because of its simplicity, conciseness, and clarity. This book teaches functional programming as a way of thinking and problem solving, using Haskell, the most popular purely functional language. Rather than using the conventional (boring) mathematical examples commonly found in other programming language textbooks, the author uses examples drawn from multimedia applications, including graphics, animation, and computer music, thus rewarding the reader with working programs for inherently more interesting applications. Aimed at both beginning and advanced programmers, this tutorial begins with a gentle introduction to functional programming and moves rapidly on to more advanced topics. Details about progamming in Haskell are presented in boxes throughout the text so they can be easily found and referred to.

Paradigms of Artificial Intelligence Programming: Case Studies in Common LISP


Peter Norvig - 1991
    By reconstructing authentic, complex AI programs using state-of-the-art Common Lisp, the book teaches students and professionals how to build and debug robust practical programs, while demonstrating superior programming style and important AI concepts. The author strongly emphasizes the practical performance issues involved in writing real working programs of significant size. Chapters on troubleshooting and efficiency are included, along with a discussion of the fundamentals of object-oriented programming and a description of the main CLOS functions. This volume is an excellent text for a course on AI programming, a useful supplement for general AI courses and an indispensable reference for the professional programmer.

Structure and Interpretation of Computer Programs


Harold Abelson - 1984
    This long-awaited revision contains changes throughout the text. There are new implementations of most of the major programming systems in the book, including the interpreters and compilers, and the authors have incorporated many small changes that reflect their experience teaching the course at MIT since the first edition was published. A new theme has been introduced that emphasizes the central role played by different approaches to dealing with time in computational models: objects with state, concurrent programming, functional programming and lazy evaluation, and nondeterministic programming. There are new example sections on higher-order procedures in graphics and on applications of stream processing in numerical programming, and many new exercises. In addition, all the programs have been reworked to run in any Scheme implementation that adheres to the IEEE standard.

Black Hat Python: Python Programming for Hackers and Pentesters


Justin Seitz - 2014
    But just how does the magic happen?In Black Hat Python, the latest from Justin Seitz (author of the best-selling Gray Hat Python), you'll explore the darker side of Python's capabilities writing network sniffers, manipulating packets, infecting virtual machines, creating stealthy trojans, and more. You'll learn how to:Create a trojan command-and-control using GitHubDetect sandboxing and automate common malware tasks, like keylogging and screenshottingEscalate Windows privileges with creative process controlUse offensive memory forensics tricks to retrieve password hashes and inject shellcode into a virtual machineExtend the popular Burp Suite web-hacking toolAbuse Windows COM automation to perform a man-in-the-browser attackExfiltrate data from a network most sneakilyInsider techniques and creative challenges throughout show you how to extend the hacks and how to write your own exploits.When it comes to offensive security, your ability to create powerful tools on the fly is indispensable. Learn how in Black Hat Python."

Discrete Mathematics and Its Applications


Kenneth H. Rosen - 2000
    These themes include mathematical reasoning, combinatorial analysis, discrete structures, algorithmic thinking, and enhanced problem-solving skills through modeling. Its intent is to demonstrate the relevance and practicality of discrete mathematics to all students. The Fifth Edition includes a more thorough and linear presentation of logic, proof types and proof writing, and mathematical reasoning. This enhanced coverage will provide students with a solid understanding of the material as it relates to their immediate field of study and other relevant subjects. The inclusion of applications and examples to key topics has been significantly addressed to add clarity to every subject. True to the Fourth Edition, the text-specific web site supplements the subject matter in meaningful ways, offering additional material for students and instructors. Discrete math is an active subject with new discoveries made every year. The continual growth and updates to the web site reflect the active nature of the topics being discussed. The book is appropriate for a one- or two-term introductory discrete mathematics course to be taken by students in a wide variety of majors, including computer science, mathematics, and engineering. College Algebra is the only explicit prerequisite.

How Much Is a Million?


David M. Schwartz - 1985
    It's a math class you'll never forget.This classic picture book is an ALA Notable Book, a Reading Rainbow Feature Selection, and a Boston Globe/Horn Book Honor Book for Illustration.The repackage of this fun look at math concepts includes a letter from the author that features several ways for children to find a million everyday things.

World Without Fish


Mark Kurlansky - 2011
    It has also been included in the New York State Expeditionary Learning English Language Arts Curriculum. Written by a master storyteller, World Without Fish connects all the dots—biology, economics, evolution, politics, climate, history, culture, food, and nutrition—in a way that kids can really understand. It describes how the fish we most commonly eat, including tuna, salmon, cod, and swordfish, could disappear within 50 years, and the domino effect it would have—oceans teeming with jellyfish and turning pinkish orange from algal blooms; seabirds disappearing, then reptiles, then mammals. It describes the back-and-forth dynamic of fishermen and scientists. It covers the effects of industrialized fishing, and how bottom-dragging nets are turning the ocean floor into a desert. The answer? Support sustainable fishing. World Without Fish tells kids exactly what they can do: Find out where those fish sticks come from. Tell your parents what’s good to buy, and what’s not. Ask the waiter if the fish on the menu is line-caught And follow simple rules: Use less plastic, and never eat endangered fish like bluefin tuna. Interwoven with the book is a graphic novel. Each beautifully illustrated chapter opener links to form a larger fictional story that complements the text. Hand in hand, they create a Silent Spring for a new generation.

Helen Keller


Margaret Davidson - 1969
    The bestselling biography of Helen Keller and how, with the commitment and lifelong friendship of Anne Sullivan, she learned to talk, read, and eventually graduate from college with honors.

Learning React: Functional Web Development with React and Redux


Alex Banks - 2017
    Authors Alex Banks and Eve Porcello show you how to create UIs with this small JavaScript library that can deftly display data changes on large-scale, data-driven websites without page reloads. Along the way, you'll learn how to work with functional programming and the latest ECMAScript features.Developed by Facebook, and used by companies including Netflix, Walmart, and The New York Times for large parts of their web interfaces, React is quickly growing in use. By learning how to build React components with this hands-on guide, you'll fully understand how useful React can be in your organization.Learn key functional programming concepts with JavaScriptPeek under the hood to understand how React runs in the browserCreate application presentation layers by mounting and composing React componentsUse component trees to manage data and reduce the time you spend debugging applicationsExplore React's component lifecycle and use it to load data and improve UI performanceUse a routing solution for browser history, bookmarks, and other features of single-page applicationsLearn how to structure React applications with servers in mind

Absolutely Everything!: A History of Earth, Dinosaurs, Rulers, Robots and Other Things Too Numerous to Mention


Christopher Lloyd - 2018
    Embark on an entertaining journey across millennia and continents with this captivating book by Christopher Lloyd, author of the bestselling What on Earth Happened. Discover everything from the creation of planet earth and the rise of animals, to globalization, wars and global warming.

Head First Python


Paul Barry - 2010
    You'll quickly learn the language's fundamentals, then move onto persistence, exception handling, web development, SQLite, data wrangling, and Google App Engine. You'll also learn how to write mobile apps for Android, all thanks to the power that Python gives you.We think your time is too valuable to waste struggling with new concepts. Using the latest research in cognitive science and learning theory to craft a multi-sensory learning experience, Head First Python uses a visually rich format designed for the way your brain works, not a text-heavy approach that puts you to sleep.

Bulletproof Web Design: Improving Flexibility and Protecting Against Worst-Case Scenarios with XHTML and CSS


Dan Cederholm - 2005
    This work deconstructs a series of real-world Web sites. It provides 10 strategies for creating standards-based designs that provide user control - a component of every Web site.

Fire Bubbles and Exploding Toothpaste: More Unforgettable Experiments That Make Science Fun


Steve Spangler - 2011
    The materials are easy to find and the directions are simple to follow, but the end result is guaranteed to produce lots of oohs and aahs. Steve Spangler takes his geek-chic approach to exposing some of the coolest science tricks that will surprise teachers and amaze your friends. Over 200 color photographs accompany the step-by-step instructions, and simple explanations uncover the how-to and why for each activity. You'll have a blast with these experiments: Floating Bowling Balls Pop Bottle Music Bouncing Smoke Bubbles Walking on Eggshells Balancing Nails Fireproof Balloon Skateboard Rocket Car Warning! Do not read the special, super-secret, teachers-only section that reveals a few of Steve Spangler's secrets for making science come alive in the classroom. If you're not a teacher and you don't want to miss out on twisting up a Fire Tornado or making a mountain of Exploding Toothpaste, just give this book to the coolest science teacher you know and ask him or her to help you create an unforgettable learning experience.

Effective C++: 55 Specific Ways to Improve Your Programs and Designs


Scott Meyers - 1991
    But the state-of-the-art has moved forward dramatically since Meyers last updated this book in 1997. (For instance, there s now STL. Design patterns. Even new functionality being added through TR1 and Boost.) So Meyers has done a top-to-bottom rewrite, identifying the 55 most valuable techniques you need now to be exceptionally effective with C++. Over half of this edition s content is new. Templates broadly impact C++ development, and you ll find them everywhere. There s extensive coverage of multithreaded systems. There s an entirely new chapter on resource management. You ll find substantial new coverage of exceptions. Much is gained, but nothing s lost: You ll find the same depth of practical insight that first made Effective C++ a classic all those years ago. Bill Camarda, from the July 2005 href="http://www.barnesandnoble.com/newslet... Only

Practical Object Oriented Design in Ruby


Sandi Metz - 2012
    The Web is awash in Ruby code that is now virtually impossible to change or extend. This text helps you solve that problem by using powerful real-world object-oriented design techniques, which it thoroughly explains using simple and practical Ruby examples. Sandi Metz has distilled a lifetime of conversations and presentations about object-oriented design into a set of Ruby-focused practices for crafting manageable, extensible, and pleasing code. She shows you how to build new applications that can survive success and repair existing applications that have become impossible to change. Each technique is illustrated with extended examples, all downloadable from the companion Web site, poodr.info. The first title to focus squarely on object-oriented Ruby application design, Practical Object-Oriented Design in Ruby will guide you to superior outcomes, whatever your previous Ruby experience. Novice Ruby programmers will find specific rules to live by; intermediate Ruby programmers will find valuable principles they can flexibly interpret and apply; and advanced Ruby programmers will find a common language they can use to lead development and guide their colleagues. This guide will help you Understand how object-oriented programming can help you craft Ruby code that is easier to maintain and upgrade Decide what belongs in a single Ruby class Avoid entangling objects that should be kept separate Define flexible interfaces among objects Reduce programming overhead costs with duck typing Successfully apply inheritance Build objects via composition Design cost-effective tests Solve common problems associated with poorly designed Ruby code