Digital Design: Principles and Practices Package


John F. Wakerly - 1990
    Blends academic precision and practical experience in an authoritative introduction to basic principles of digital design and practical requirements. With over 30 years of experience in both industrial and university settings, the author covers the most widespread logic design practices while building a solid foundation of theoretical and engineering principles for students to use as they go forward in this fast moving field.

The Go Programming Language


Alan A.A. Donovan - 2015
    It has been winning converts from dynamic language enthusiasts as well as users of traditional compiled languages. The former appreciate the robustness and efficiency that Go's lightweight type system brings to their code; the latter find Go's simplicity and fast tools a refreshing change. Thanks to its well-designed standard libraries and its excellent support for concurrent programming, Go is fast becoming the language of choice for distributed systems. The Go Programming Language is the definitive book on Go for the working programmer. It assumes no prior knowledge of Go, nor any other specific programming language, so you'll find it an accessible guide whether you come from JavaScript, Ruby, Python, Java, or C++. The book will quickly get you started using Go effectively from the beginning, and by the end, you will know how to use it well to write clear, idiomatic and efficient programs to solve real-world problems. You'll understand not just how to use its standard libraries, but how they work, and how to apply the same design techniques to your own projects. The earlier chapters will introduce you to the basic concepts of Go programming---numbers, strings, functions---while at the same time presenting important computer science concepts like recursion, and useful examples of graphics, UTF-8, and error handling. The chapters on methods and interfaces will show you a new way to think about object-oriented programming; the chapter on concurrency explains why concurrency is so important in modern programming, and how Go helps you handle it well. You'll also learn about Go's pragmatic but effective approach to testing; how to build, test, and manage projects using the go tool, and the art of metaprogramming using reflection. The book contains hundreds of interesting and practical examples that cover the whole language and a wide range of applications. The code samples from the book are available for download from gopl.io.

Computer Organization


V. Carl Hamacher - 1978
    *A comprehensive overview of hardware and software issues make this a "must-have" for electrical and computer engineers*Contains new material on RISC processors, performance analysis, multiprocessors and memory systems*New two-color design and illustrations illuminate the text

Introduction to Geographic Information Systems [With CDROM]


Kang-Tsung Chang - 2001
    Now in its 12th edition, it is still the market leader and is known for its scientific research base and its currency, comprehensiveness, and accuracy.

Essentials of Programming Languages


Daniel P. Friedman - 1992
    The approach is analytic and hands-on. The text uses interpreters, written in Scheme, to express the semantics of many essential language elements in a way that is both clear and directly executable. It also examines some important program analyses. Extensive exercises explore many design and implementation alternatives.

Advanced PHP Programming


George Schlossnagle - 2004
    The rapid maturation of PHP has created a skeptical population of users from more traditional enterprise languages who question the readiness and ability of PHP to scale, as well as a large population of PHP developers without formal computer science backgrounds who have learned through the hands-on experimentation while developing small and midsize applications in PHP. While there are many books on learning PHP and developing small applications with it, there is a serious lack of information on scaling PHP for large-scale, business-critical systems. Schlossnagle's Advanced PHP Programming fills that void, demonstrating that PHP is ready for enterprise Web applications by showing the reader how to develop PHP-based applications for maximum performance, stability, and extensibility.

The Past Present and Future of JavaScript


Axel Rauschmayer - 2012
    Now, hopes and expectations for JavaScript’s future are considerable.In this insightful report, Dr. Axel Rauschmayer explains how the combination of several technologies and opportunities in the past 15 years turned JavaScript’s fortunes. With that as a backdrop, he provides a detailed look at proposed new features and fixes in the next version, ECMAScript.next, and then presents his own JavaScript wish list—such as an integrated IDE.

Laravel: Up and Running: A Framework for Building Modern PHP Apps


Matt Stauffer - 2016
    This rapid application development framework and its vast ecosystem of tools let you quickly build new sites and applications with clean, readable code. With this practical guide, Matt Stauffer--a leading teacher and developer in the Laravel community--provides the definitive introduction to one of today's most popular web frameworks.The book's high-level overview and concrete examples will help experienced PHP web developers get started with Laravel right away. By the time you reach the last page, you should feel comfortable writing an entire application in Laravel from scratch.Dive into several features of this framework, including:Blade, Laravel's powerful, custom templating toolTools for gathering, validating, normalizing, and filtering user-provided dataLaravel's Eloquent ORM for working with the application's databasesThe Illuminate request object, and its role in the application lifecyclePHPUnit, Mockery, and PHPSpec for testing your PHP codeLaravel's tools for writing JSON and RESTful APIsInterfaces for file system access, sessions, cookies, caches, and searchTools for implementing queues, jobs, events, and WebSocket event publishingLaravel's specialty packages: Scout, Passport, Cashier, Echo, Elixir, Valet, and Socialite

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.

The American Community College


Arthur M. Cohen - 1989
    Anyone who wants to understand these complex and dynamic institutions—how they are evolving, the contributions they make, the challenges they face, the students they serve, and the faculty and leaders who deliver the services and the curricula—will find The American Community College both essential reading and an important reference book."—George R. Boggs, president and CEO, American Association of Community Colleges"I have been a community college president for over forty-one years and a graduate professor for three decades. This book has been an inspiration to generations of students, faculty members, and administrators. It has become the classic of the field because it has great 'take-home' value to us all."—Joseph N. Hankin, president, Westchester Community College"In this latest edition of The American Community College, the authors continue to manifest their unique, highly knowledgeable perspective about the community college. This book is must-reading for all who desire to understand one of the most important educational institutions in the twenty-first century."—Barbara K. Townsend, professor and director, Center for Community College Research, College of Education, University of Missouri–Columbia"Cohen and Brawer's classic work is the touchstone for a comprehensive overview of the American community college. This is a seminal book for graduate students as well as seasoned professionals for understanding this uniquely American institution."—Charles R. Dassance, president, Central Florida Community College

Artificial Intelligence


Elaine Rich - 1983
    I. is explored and explained in this best selling text. Assuming no prior knowledge, it covers topics like neural networks and robotics. This text explores the range of problems which have been and remain to be solved using A. I. tools and techniques. The second half of this text is an excellent reference.

Beginning Linux Programming


Neil Matthew - 2004
    The authors guide you step by step, using construction of a CD database application to give you hands-on experience as you progress from the basic to the complex. You'll start with fundamental concepts like writing Unix programs in C. You'll learn basic system calls, file I/O, interprocess communication, and shell programming. You'll become skilled with the toolkits and libraries for working with user interfaces.The book starts from the basics, explaining how to compile and run your first program. New to this edition are chapters on MySQL(R) access and administration; programming GNOME and KDE; and Linux standards for portable applications. Coverage of kernel programming, device drivers, CVS, grep, and GUI development environments has expanded. This book gives you practical knowledge for real wor ld application.What does this book cover?In this book, you will learn how toDevelop programs to access files and the Linux environment Use the GNU compiler, debugger and other development tools Program data storage aapplications for MySQL and DBM database systems Write programs that take advantage of signals, processes and threads Build graphical user interfaces using both the GTK (for GNOME) and Qt (for KDE) libraries Write device drivers that can be loaded into the Linux kernel Access the network using TCP/IP sockets Write scripts that use grep, regular expressions and other Linux facilities Who is this book for?This book is for programmers with some C or C++ experience, who want to take advantage of the Linux development environment. You should have enough Linux familiarity to have installed and configured users on Linux.

The Robert C. Martin Clean Code Collection (Collection)


Robert C. Martin - 2011
    Martin Clean Code Collection consists of two bestselling eBooks:Clean Code: A Handbook of Agile Software Craftmanship The Clean Coder: A Code of Conduct for Professional Programmers In Clean Code, legendary software expert Robert C. Martin has teamed up with his colleagues from Object Mentor to distill their best agile practice of cleaning code "on the fly" into a book that will instill within you the values of a software craftsman and make you a better programmer--but only if you work at it. You will be challenged to think about what's right about that code and what's wrong with it. More important, you will be challenged to reassess your professional values and your commitment to your craft. In The Clean Coder, Martin introduces the disciplines, techniques, tools, and practices of true software craftsmanship. This book is packed with practical advice--about everything from estimating and coding to refactoring and testing. It covers much more than technique: It is about attitude. Martin shows how to approach software development with honor, self-respect, and pride; work well and work clean; communicate and estimate faithfully; face difficult decisions with clarity and honesty; and understand that deep knowledge comes with a responsibility to act. Readers of this collection will come away understandingHow to tell the difference between good and bad code How to write good code and how to transform bad code into good code How to create good names, good functions, good objects, and good classes How to format code for maximum readability How to implement complete error handling without obscuring code logic How to unit test and practice test-driven development What it means to behave as a true software craftsman How to deal with conflict, tight schedules, and unreasonable managers How to get into the flow of coding and get past writer's block How to handle unrelenting pressure and avoid burnout How to combine enduring attitudes with new development paradigms How to manage your time and avoid blind alleys, marshes, bogs, and swamps How to foster environments where programmers and teams can thrive When to say "No"--and how to say it When to say "Yes"--and what yes really means

Language Implementation Patterns: Techniques for Implementing Domain-Specific Languages


Terence Parr - 2009
    Instead of writing code in a general-purpose programming language, you can first build a custom language tailored to make you efficient in a particular domain. The key is understanding the common patterns found across language implementations. Language Design Patterns identifies and condenses the most common design patterns, providing sample implementations of each. The pattern implementations use Java, but the patterns themselves are completely general. Some of the implementations use the well-known ANTLR parser generator, so readers will find this book an excellent source of ANTLR examples as well. But this book will benefit anyone interested in implementing languages, regardless of their tool of choice. Other language implementation books focus on compilers, which you rarely need in your daily life. Instead, Language Design Patterns shows you patterns you can use for all kinds of language applications. You'll learn to create configuration file readers, data readers, model-driven code generators, source-to-source translators, source analyzers, and interpreters. Each chapter groups related design patterns and, in each pattern, you'll get hands-on experience by building a complete sample implementation. By the time you finish the book, you'll know how to solve most common language implementation problems.

Marriages & Families: Changes, Choices, and Constraints


Nijole V. Benokraitis - 1993
    The text's major theme "Changes, Choices, and Constraints" explores: Contemporary "changes "in families and their structure Impacts on the "choices "that are available to family members ""Constraints ""that often limit our choices Through this approach, students are better able to understand what the research and statistics mean "for themselves"! Marriages and Families balances theoretical and empirical discussions with practical examples and applications. It highlights important contemporary changes in society and the family. This text is written from a sociological perspective and incorporates material from other disciplines: history, economics, social work, psychology, law, biology, medicine, family studies, women's studies, and anthropology. "More about the themes: " "Changes"Examines how recent profound structural and attitudinal changes affect family forms, interpersonal relationships, and raising children. It reaches beyond the traditional discussions to explore racial-ethnic families, single-parent families and gay families as well as the recent scholarship by and about men, fathers, and grandfathers. Contemporary American marriages and families vary greatly in structure, dynamics, and cultural heritage. Thus, discussions of gender roles, social class, race, ethnicity, age, and sexual orientation are integrated throughout this book. To further strengthen students understanding of the growing diversity among today's families, the author included a series of boxes that focus on families from many cultures. "Choices"On the individual level, family members have many more choices today than ever before. People feel freer to postpone marriage, to cohabit, or to raise children as single parents. As a result, household forms vary greatly, ranging from commuter marriages to those in which several generations live together under the same roof. "Constraints"Although family members choices are more varied today, we also face greater macro- level constraints. Our options are increasingly limited, for example, by government policies. Economic changes often shape family life and not vice versa. Political and legal institutions also have a major impact on most families in tax laws, welfare reform, and even in defining what a family is. Because laws, public policies, and religious groups affect our everyday lives, the author has framed many discussions of individual choices within the larger picture of the institutional constraints that limit our choices.To learn more about the new edition, click here to visit the showcase site.