|
|
|
Real World Haskell
This easy-to-use, fast-moving tutorial introduces you to functional programming with Haskell You'll learn how to use Haskell in a variety of practical ways, from short scripts to large and demanding applications. Real World Haskell takes you through the basics of functional programming at a brisk pace, and then helps you increase your understanding of Haskell in real-world issues like I/O, performance, dealing with data, concurrency, and more as you move through each chapter. With this book, you will: Understand the differences between procedural and functional programming Learn the features of Haskell, and how to use it to develop useful programs Interact with filesystems, databases, and network services Write solid code with automated tests, code coverage, and error handling Harness the power of multicore systems via concurrent and parallel programming You'll find plenty of hands-on exercises, along with examples of real Haskell programs that you can modify, compile, and run. Whether or not you've used a functional language before, if you want to understand why Haskell is coming into its own as a practical language in so many major organizations, Real World Haskell is the best place to start..
Price: $39.99
[Notify me when price goes down.]
|
|
Concurrent Programming on Windows (Microsoft .NET Development Series)
“I have been fascinated with concurrency ever since I added threading support to the Common Language Runtime a decade ago. That’s also where I met Joe, who is a world expert on this topic. These days, concurrency is a first-order concern for practically all developers. Thank goodness for Joe’s book. It is a tour de force and I shall rely on it for many years to come.” –Chris Brumme, Distinguished Engineer, Microsoft “I first met Joe when we were both working with the Microsoft CLR team. At that time, we had several discussions about threading and it was apparent that he was as passionate about this subject as I was. Later, Joe transitioned to Microsoft’s Parallel Computing Platform team where a lot of his good ideas about threading could come to fruition. Most threading and concurrency books that I have come across contain information that is incorrect and explains how to solve contrived problems that good architecture would never get you into in the first place. Joe’s book is one of the very few books that I respect on the matter, and this respect comes from knowing Joe’s knowledge, experience, and his ability to explain concepts.” –Jeffrey Richter, Wintellect “There are few areas in computing that are as important, or shrouded in mystery, as concurrency. It’s not simple, and Duffy doesn’t claim to make it so–but armed with the right information and excellent advice, creating correct and highly scalable systems is at least possible. Every self-respecting Windows developer should read this book.” –Jonathan Skeet, Software Engineer, Clearswift “What I love about this book is that it is both comprehensive in its coverage of concurrency on the Windows platform, as well as very practical in its presentation of techniques immediately applicable to real-world software development. Joe’s book is a ‘must have’ resource for anyone building native or managed code Windows applications that leverage concurrency!” –Steve Teixeira, Product Unit Manager, Parallel Computing Platform, Microsoft Corporation “This book is a fabulous compendium of both theoretical knowledge and practical guidance on writing effective concurrent applications. Joe Duffy is not only a preeminent expert in the art of developing parallel applications for Windows, he’s also a true student of the art of writing. For this book, he has combined those two skill sets to create what deserves and is destined to be a long-standing classic in developers’ hands everywhere.” –Stephen Toub, Program Manager Lead, Parallel Computing Platform, Microsoft “As chip designers run out of ways to make the individual chip faster, they have moved towards adding parallel compute capacity instead. Consumer PCs with multiple cores are now commonplace. We are at an inflection point where improved performance will no longer come from faster chips but rather from our ability as software developers to exploit concurrency. Understanding the concepts of concurrent programming and how to write concurrent code has therefore become a crucial part of writing successful software. With Concurrent Programming on Windows, Joe Duffy has done a great job explaining concurrent concepts from the fundamentals through advanced techniques. The detailed descriptions of algorithms and their interaction with the underlying hardware turn a complicated subject into something very approachable. This book is the perfect companion to have at your side while writing concurrent software for Windows.” –Jason Zander, General Manager, Visual Studio, Microsoft “When you begin using multi-threading throughout an application, the importance of clean architecture and design is critical. . . . This places an emphasis on understanding not only the platform’s capabilities but also emerging best practices. Joe does a great job interspersing best practices alongside theory throughout his book.” – From the Foreword by Craig Mundie, Chief Research and Strategy Officer, Microsoft Corporation Author Joe Duffy has risen to the challenge of explaining how to write software that takes full advantage of concurrency and hardware parallelism. In Concurrent Programming on Windows, he explains how to design, implement, and maintain large-scale concurrent programs, primarily using C# and C++ for Windows. Duffy aims to give application, system, and library developers the tools and techniques needed to write efficient, safe code for multicore processors. This is important not only for the kinds of problems where concurrency is inherent and easily exploitable–such as server applications, compute-intensive image manipulation, financial analysis, simulations, and AI algorithms–but also for problems that can be speeded up using parallelism but require more effort–such as math libraries, sort routines, report generation, XML manipulation, and stream processing algorithms. Concurrent Programming on Windows has four major sections: The first introduces concurrency at a high level, followed by a section that focuses on the fundamental platform features, inner workings, and API details. Next, there is a section that describes common patterns, best practices, algorithms, and data structures that emerge while writing concurrent software. The final section covers many of the common system-wide architectural and process concerns of concurrent programming. This is the only book you’ll need in order to learn the best practices and common patterns for programming with concurrency on Windows and .NET. .
Price: $38.09
[ Notify me when price goes down.]
|
|
Programming Erlang: Software for a Concurrent World
Erlang solves one of the most pressing problems facing developers today: how to write reliable, concurrent, high-performance systems. It's used worldwide by companies who need to produce reliable, efficient, and scalable applications. Invest in learning Erlang now. Moore's Law is the observation that the amount you can do on a single chip doubles every two years. But Moore's Law is taking a detour. Rather than producing faster and faster processors, companies such as Intel and AMD are producing multi-core devices: single chips containing two, four, or more processors. If your programs aren't concurrent, they'll only run on a single processor at a time. Your users will think that your code is slow. Erlang is a programming language designed for building highly parallel, distributed, fault-tolerant systems. It has been used commercially for many years to build massive fault-tolerated systems that run for years with minimal failures. Erlang programs run seamlessly on multi-core computers: this means your Erlang program should run a lot faster on a 4 core processor than on a single core processor, all without you having to change a line of code. Erlang combines ideas from the world of functional programming with techniques for building fault-tolerant systems to make a powerful language for building the massively parallel, networked applications of the future. This book presents Erlang and functional programming in the familiar Pragmatic style. And it's written by Joe Armstrong, one of the creators of Erlang. It includes example code you'll be able to build upon. In addition, the book contains the full source code for two interesting applications: A SHOUTcast server which you can use to stream music to every computer in your house, and a full-text indexing and search engine that can index gigabytes of data. Learn how to write programs that run on dozens or even hundreds of local and remote processors. See how to write robust applications that run even in the face of network and hardware failure, using the Erlang programming language..
Price: $20.51
[Notify me when price goes down.]
|
|
The Toyota Product Development System: Integrating People, Process And Technology
The ability to bring new and innovative products to market rapidly is the prime critical competence for any successful consumer-driven company All industries, especially automotive, are slashing product development lead times in the current hyper-competitive marketplace. This book is the first to thoroughly examine and analyze the truly effective product development methodology that has made Toyota the most forward-thinking company in the automotive industry. In The Toyota Product Development System: Integrating People, Process, and Technology, James Morgan and Jeffrey Liker compare and contrast the world-class product development process of Toyota with that of a U.S. competitor. They use extensive examples from Toyota and the U.S. competitor to demonstrate value stream mapping as an extraordinarily powerful tool for continuous improvement. Through examples and case studies, this book illustrates specific techniques and proven practices for dealing with challenges associated with product development, such as synchronizing multiple disciplines, multiple function workload leveling, compound process variation, effective technology integration, and knowledge management. This valuable book: Highlights the application of value stream mapping methodology to product development. Identifies and defines the categories of waste that are specific to the product development process. Presents countermeasures and proven practices, based on Lean principles, developed for the product development process used at Toyota. Illustrates and clarifies the methodology by presenting actual case examples at Toyota and a U.S. competitor. Readers of this book can focus on optimizing the entire product development value stream rather than focus on a specific tool or technology for local improvements..
Price: $27.67
[Notify me when price goes down.]
|
|
Essential CVS (Essentials)
This easy-to-follow reference shows a variety of professionals how to use the Concurrent Versions System (CVS), the open source tool that lets you manage versions of anything stored in files. Ideal for software developers tracking different versions of the same code, this new edition has been expanded to explain common usages of CVS for system administrators, project managers, software architects, user-interface (UI) specialists, graphic designers and others. Current for version 1.12, Essential CVS, 2nd Edition offers an overview of CVS, explains the core concepts, and describes the commands that most people use on a day-to-day basis. For those who need to get up to speed rapidly, the book's Quickstart Guide shows you how to build and use a basic CVS repository with the default settings and a minimum of extras. You'll also find: - A full command reference that details all aspects of customizing CVS for automation, logging, branching, merging documents, and creating alerts
- Examples and descriptions of the most commonly used options for each command
- Why and when to tag or branch your project, tagging before releases, and using branching to create a bugfix version of a project
- Details on the systems used in CVS to permit multiple developers to work on the same project without loss of data
An entire section devoted to document version management and project management includes ways to import and export projects, work with remote repositories, and shows how to fix things that can go wrong when using CVS. You'll find more screenshots in this edition as well as examples of using graphical CVS clients to run CVS commands. Essential CVS also includes a FAQ that answers common queries in the CVS mailing list to get you up and running with this system quickly and painlessly. .
Price: $25.00
[ Notify me when price goes down.]
|
|
Schaum's Outline of Statics and Strength of Materials (Schaum's)
The favorite study guide of engineering students around the world, Schaum's have an easy-to-follow format, a solved-problem approach to learning, and clear explanations of both theory and application This popular introduction to statics and strengths of materials gives you 435 problems solved step by step, plus hundreds more problems to try on your own (you can check your answers at the back of the book.) With thorough introductions to basic principles; nonconcurrent and concurrent coplanar force systems; stress, torsion, shear, deflection, and deformation; connections; and all other important topics taught in this course, this guide can help you spend less time studying and still make better grades!.
Price: $10.50
[ Notify me when price goes down.]
|
|
Pattern-Oriented Software Architecture Volume 2: Patterns for Concurrent and Networked Objects
Designing application and middleware software to run in concurrent and networked environments is a significant challenge to software developers. The patterns catalogued in this second volume of Pattern-Oriented Software Architecture (POSA) form the basis of a pattern language that addresses issues associated with concurrency and networking. The book presents 17 interrelated patterns ranging from idioms through architectural designs. They cover core elements of building concurrent and network systems: service access and configuration, event handling, synchronization, and concurrency. All patterns present extensive examples and known uses in multiple programming languages, including C++, C, and Java. The book can be used to tackle specific software development problems or read from cover to cover to provide a fundamental understanding of the best practices for constructing concurrent and networked applications and middleware..
Price: $40.94
[ Notify me when price goes down.]
|
|
Design for Manufacturability & Concurrent Engineering; How to Design for Low Cost, Design in High Quality, Design for Lean Manufacture, and Design Quickly for Fast Production
This 2008 book shows how to design products for all aspects of manufacturability and use multifunctional product development teams and Concurrent Engineering principles to achieve the goals cited in the sub-title: DESIGN FOR LOW COST. The book presents many effective methodologies to design low-cost products by concurrently engineering products in multifunctional teams that will simplify concepts, optimize architecture, optimize the use of modules and off-the-shelf parts, have pre-selected vendors help design custom parts, understand and avoid previous problems, and then thoroughly design for manufacturability for quick launches without expensive change orders. DESIGN IN HIGH QUALITY. Chapter 10 shows how to design quality and reliability into the product with poka-yoke and 50 design guidelines. DESIGN FOR LEAN MANUFACTURE. The book shows how to standardize parts and design products for lean production, JIT, build-to-order, and mass customization. DESIGN QUICKLY FOR FAST PRODUCTION. Chapter 3 shows how thorough up-front work is the key to quickly developing products, avoiding changes, and achieving fast ramps..
Price: $49.95
[Notify me when price goes down.]
|
|
Java Threads
Threads are essential to Java programming, but learning to use them effectively is a nontrivial task. This new edition of the classic Java Threads shows you how to take full advantage of Java's threading facilities and brings you up-to-date with the watershed changes in Java 2 Standard Edition version 5.0 (J2SE 5.0). It provides a thorough, step-by-step approach to threads programming. Java's threading system is simple relative to other threading systems. In earlier versions of Java, this simplicity came with tradeoffs: some of the advanced features in other threading systems were not available in Java. J2SE 5.0 changes all that: it provides a large number of new thread-related classes that make the task of writing multithreaded programs that much easier. You'll learn where to use threads to increase efficiency, how to use them effectively, and how to avoid common mistakes. This book discusses problems like deadlock, race conditions, and starvation in detail, helping you to write code without hidden bugs. Java Threads, Third Edition, has been thoroughly expanded and revised. It incorporates the concurrency utilities from java.util.concurrent throughout. New chapters cover thread performance, using threads with Swing, threads and Collection classes, thread pools, and threads and I/O (traditional, new, and interrupted). Developers who cannot yet deploy J2SE 5.0 can use thread utilities provided in the Appendix to achieve similar functionality with earlier versions of Java. Topics include: - Lock starvation and deadlock detection
- Atomic classes and minimal synchronization (J2SE 5.0)
- Interaction of Java threads with Swing, I/O, and Collection classes
- Programmatically controlled locks and condition variables (J2SE 5.0)
- Thread performance and security
- Thread pools (J2SE 5.0)
- Thread groups
- Platform-specific thread scheduling
- Task schedulers (J2SE 5.0)
- Parallelizing loops for multiprocessor machines
In short, this new edition of Java Threads covers everything you need to know about threads, from the simplest animation program to the most complex applications. If you plan to do any serious work in Java, you will find this book invaluable. Scott Oaks is a senior software engineer for the Java Performance Engineering group at Sun Microsystems and the author of four books in the O'Reilly Java series. Formerly a senior systems engineer at Sun Microsystems, Henry Wong is an independent consultant working on various Java related projects..
Price: $16.00
[ Notify me when price goes down.]
|
|
Concurrent Programming in Java(TM): Design Principles and Pattern (2nd Edition) (Java Series)
*One of Java's most powerful capabilities is its built-in support for concurrent programming, a design technique in which multiple concurrent activities-threads take place inside a single Java program. Thread programming enables developers to design applications that are more responsive to user demands, faster, and more easily controlled. *This book offers comprehensive coverage of this vital aspect of the Java language. The book is completely up-to-date with the new thread model that is now incorporated into the most recent version of the Java Virtual Machine. All Java programmers interested in doing concurrent programming must understand these new concepts. The book approaches the topic from a design pattern point of view. It introduces and summarizes Java's concurrency support, shows readers how to initiate, control, and coordinate concurrent activities, and offers numerous recipe-like techniques for designing and implementing Java structures that solve common concurrent programming challenges.Specifically, the book presents important strategies for avoiding the inconsistencies that can crop up in multi-threaded programs, addresses the concept of "liveness"-how to ensure that all threads in use are kept active simultaneously, examines state-dependent action, and demonstrates effective methods for handling user requests in a multi-threaded environment..
Price: $27.29
[ Notify me when price goes down.]
|
|
|
|
|