Book picks similar to
On Concurrent Programming by Fred B. Schneider
computer_distribu<br/>tedsystems
cs
hand
rack_038
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.
Metaprogramming Ruby 2: Program Like the Ruby Pros
Paolo Perrotta - 2014
With metaprogramming, you can produce elegant, clean, and beautiful programs. Once the domain of expert Rubyists, metaprogramming is now accessible to programmers of all levels. This thoroughly revised and updated second edition of the bestselling Metaprogramming Ruby explains metaprogramming in a down-to-earth style and arms you with a practical toolbox that will help you write your best Ruby code ever.Dig under the surface and explore Ruby's most advanced feature: a collection of techniques and tricks known as metaprogramming. In this book, you'll learn metaprogramming as an essential component of Ruby and discover the deep, non-obvious details of the language. Once you understand the tenets of Ruby, including the object model, scopes, and singleton classes, you're on your way to applying metaprogramming both in your daily work assignments and in your fun, after-hours projects.Metaprogramming Ruby, Second Edition makes mastering the language enjoyable. The book is packed with: Pragmatic examples of metaprogramming in action, many of which come straight from real-life gems such as Rails.Programming challenges that let you experiment and play with some of the most out-there metaprogramming concepts.Metaprogramming spells--33 practical recipes and idioms that you can study and apply right now, to write code that is sure to impress.This completely revised new edition covers the new features in Ruby 2.0 and 2.1, and contains code from the latest Ruby libraries, including Rails 4. Most examples are new, from the wild, with more recent libraries. And the book reflects current ideas of when and how much metaprogramming you should use.Whether you're a Ruby apprentice on the path to mastering the language or a Ruby wiz in search of new tips, this book is for you.What You Need: Ruby 2.x, Ruby 1.9, or a recent version of JRuby.
Distributed Systems: Principles and Paradigms
Andrew S. Tanenbaum - 2001
Programmers, developers, and engineers need to understand the underlying principles and paradigms as well as the real-world application of those principles. Now, internationally renowned expert Andrew S. Tanenbaum – with colleague Martin van Steen – presents a complete introduction that identifies the seven key principles of distributed systems, with extensive examples of each.Adds a completely new chapter on architecture to address the principle of organizing distributed systems. Provides extensive new material on peer-to-peer systems, grid computing and Web services, virtualization, and application-level multicasting. Updates material on clock synchronization, data-centric consistency, object-based distributed systems, and file systems and Web systems coordination.For all developers, software engineers, and architects who need an in-depth understanding of distributed systems.
The Imposter's Handbook
Rob Conery - 2016
New languages, new frameworks, new ways of doing things - a constant struggle just to stay current in the industry. This left no time to learn the foundational concepts and skills that come with a degree in Computer Science.
Thinking in C++, Vol. 2: Practical Programming
Bruce Eckel - 2003
Learn practical programming and best practices. Meet the difficult challenges of C++ development. Build reliable and robust programs. Design Patterns chapter shows sophisticated use of objects, composition and polymorphism. Provides a gentle introduction to multithreaded programming, a feature being considered for the next version of Standard C++. Defensive Programming chapter includes a simple unit-testing framework and debugging techniques. In-depth treatment of Standard C++ Library facilities including strings, iostreams, and the "STL" algorithms and containers. Modern usage of templates, including template metaprogramming. Unravels the perplexities of multiple inheritance. Shows practical uses for RTTI. Explores exception handling in depth and clearly explains exception-safe design. Compliant with the official ISO C++ Standard. Presents results of current research being considered for inclusion in the next revision of Standard C++. All code examples freely downloadable, tested on multiple platforms and compilers including the free GNU C++ compiler on Windows/Mac/Linux. On www.BruceEckel.com: Annotated Solutions Guide Seminars and consulting Free Download—Volume I of this book Annotation Thinking in C++ is ideal for anyone already familiar with C who now wants to learn C++. Eckel has synthesized more than five years of C++ teaching and programming experience into a well-structured course that moves step-by-step through each important C++ concept. He highlights poorly-understood C++ features like virtual functions, which can improve productivity. Editorial Reviews The Barnes & Noble Review Bruce Eckel, one of the world's best programming trainers, has thoroughly updated his classic THINKING IN C++—the book that won the Software Development Magazine Jolt Cola award in its first iteration. The new version is better than ever—which is to say, it's
Digital Systems: Principles and Applications
Ronald J. Tocci - 1977
KEY TOPICS For each new device or circuit, the authors describe the principle of the operation, give thorough examples, and then show its actual application. An excellent reference on modern digital systems.
Introducing Windows 8.1 for It Professionals
Ed Bott - 2013
It is offered for sale in print format as a convenience.Get a head start evaluating Windows 8.1 - with early technical insights from award-winning journalist and Windows expert Ed Bott. Based on the Windows 8.1 Preview release, this guide introduces new features and capabilities, with scenario-based advice on how Windows 8.1 can meet the needs of your business. Get the high-level overview you need to begin preparing your deployment now.Preview new features and enhancements, including:How features compare to Windows 7 and Windows XP The Windows 8.1 user experience Deployment Security features Internet Explorer 11 Delivering Windows apps Recovery options Networking and remote access Managing mobile devices Virtualization Windows RT 8.1
Learning SPARQL
Bob DuCharme - 2011
With this concise book, you will learn how to use the latest version of this W3C standard to retrieve and manipulate the increasing amount of public and private data available via SPARQL endpoints. Several open source and commercial tools already support SPARQL, and this introduction gets you started right away.Begin with how to write and run simple SPARQL 1.1 queries, then dive into the language's powerful features and capabilities for manipulating the data you retrieve. Learn what you need to know to add to, update, and delete data in RDF datasets, and give web applications access to this data.Understand SPARQL’s connection with RDF, the semantic web, and related specificationsQuery and combine data from local and remote sourcesCopy, convert, and create new RDF dataLearn how datatype metadata, standardized functions, and extension functions contribute to your queriesIncorporate SPARQL queries into web-based applications
Functional Programming in Java: Harnessing the Power of Java 8 Lambda Expressions
Venkat Subramaniam - 2013
You can use them to leap forward into a whole new world of programming in Java. With functional programming capabilities, which have been around for decades in other languages, you can now write elegant, concise, less error-prone code using standard Java. This book will guide you though the paradigm change, offer the essential details about the new features, and show you how to transition from your old way of coding to an improved style.In this book you’ll see popular design patterns, such as decorator, builder, and strategy, come to life to solve common design problems, but with little ceremony and effort. With these new capabilities in hand, Functional Programming in Java will help you pick up techniques to implement designs that were beyond easy reach in earlier versions of Java. You’ll see how you can reap the benefits of tail call optimization, memoization, and effortless parallelization techniques.Java 8 will change the way you write applications. If you’re eager to take advantage of the new features in the language, this is the book for you.
OCP: Oracle Certified Professional Java Se 8 Programmer II Study Guide: Exam 1Z0-809
Jeanne Boyarsky - 2015
With full coverage of 100% of exam objectives, this invaluable guide reinforces what you know, teaches you what you don't know, and gives you the hands-on practice you need to boost your skills. Written by expert Java developers, this book goes beyond mere exam prep with the insight, explanations and perspectives that come from years of experience. You'll review the basics of object-oriented programming, understand functional programming, apply your knowledge to database work, and much more. From the basic to the advanced, this guide walks you through everything you need to know to confidently take the OCP 1Z0-809 Exam and upgrade exams 1Z0-810 and 1Z0-813.Java 8 represents the biggest changes to the language to date, and the latest exam now requires that you demonstrate functional programming competence in order to pass. This guide has you covered, with clear explanations and expert advice.Understand abstract classes, interfaces, and class design Learn object-oriented design principles and patterns Delve into functional programming, advanced strings, and localization Master IO, NIO, and JDBC with expert-led database practice If you're ready to take the next step in your IT career, OCP: Oracle Certified Professional Java SE 8 Programmer II Study Guide is your ideal companion on the road to certification.
Mastering Emacs
Mickey Petersen - 2015
In the Mastering Emacs ebook you will learn the answers to all the concepts that take weeks, months or even years to truly learn, all in one place.“Emacs is such a hard editor to learn”But why is it so hard to learn? As it turns out, it's almost always the same handful of issues that everyone faces.If you have tried to learn Emacs you will have struggled with the same problems everyone faces, and few tutorials to see you through it.I have dedicated the first half of the book to explaining the essence of Emacs — and in doing so, how to overcome these issues:Memorizing Emacs’s keys: You will learn Emacs one key at a time, starting with the arrow keys. To feel productive in Emacs, it’s important you start on an equal footing — without too many new concepts and keys to memorize. Each chapter will introduce more keys and concepts so you can learn at your own pace. Discovering new modes and features: Emacs is a self-documenting editor, and I will teach you how to use the apropos, info, and describe system to discover new modes and features, or help you find things you forgot! Customizing Emacs: You don’t have to learn Emacs Lisp to alter a lot of Emacs’s functionality. Most changes you want to make are possible using Emacs’s Customize interface and I will show you how to use it efficiently. Understanding the terminology: Emacs is so old it predates almost every other editor and all modern user interfaces. I have an entire chapter dedicated to the unique terminology in Emacs; how it is different from other editors, and what that means to you.
Spring Boot in Action
Craig Walls - 2015
In it, you’ll learn how to bypass configuration steps so you can focus on your application’s behavior. Spring expert Craig Walls uses interesting and practical examples to teach you both how to use the default settings effectively and how to override and customize Spring Boot for your unique environment. Along the way, you’ll pick up insights from Craig’s years of Spring development experience.
Introducing Windows Server 2012
Mitch Tulloch - 2012
This practical introduction illuminates new features and capabilities, with scenarios demonstrating how the platform can meet the needs of your business.Based on beta software, this book provides the early, high-level information you need to begin preparing now for deployment and management. Topics include:Virtualization and cloud solutions Availability Provisioning and storage management Security and scalability Infrastructure options Server administration
Understanding Ecmascript 6: The Definitive Guide for JavaScript Developers
Nicholas C. Zakas - 2016
In Understanding ECMAScript 6, expert developer Nicholas C. Zakas provides a complete guide to the object types, syntax, and other exciting changes that ECMAScript 6 brings to JavaScript. Every chapter is packed with example code that works in any JavaScript environment so you'll be able to see new features in action. You'll learn:How ECMAScript 6 class syntax relates to more familiar JavaScript conceptsWhat makes iterators and generators usefulHow arrow functions differ from regular functionsWays to store data with sets, maps, and moreThe power of inheritanceHow to improve asynchronous programming with promisesHow modules change the way you organize codeWhether you're a web developer or a Node.js developer, you'll find Understanding ECMAScript 6 indispensable on your journey from ECMAScript 5 to ECMAScript 6.