The Dream Machine: J.C.R. Licklider and the Revolution That Made Computing Personal
M. Mitchell Waldrop - 2001
C. R. Licklider, whose visionary dream of a human-computer symbiosis transformed the course of modern science and led to the development of the personal computer. Reprint.
Ruby for Rails: Ruby Techniques for Rails Developers
David A. Black - 2006
That means you can't tap into the full power of Rails unless you master the Ruby language. ""Ruby for Rails,"" written by Ruby expert David Black (with a forward by David Heinemeier Hansson), helps Rails developers achieve Ruby mastery. Each chapter deepens your Ruby knowledge and shows you how it connects to Rails. You'll gain confidence working with objects and classes and learn how to leverage Ruby's elegant, expressive syntax for Rails application power. And you'll become a better Rails developer through a deep understanding of the design of Rails itself and how to take advantage of it.Newcomers to Ruby will find a Rails-oriented Ruby introduction that's easy to read and that includes dynamic programming techniques, an exploration of Ruby objects, classes, and data structures, and many neat examples of Ruby and Rails code in action. ""Ruby for Rails"": the Ruby guide for Rails developers!What's Inside Classes, modules, and objects Collection handling and filtering String and regular expression manipulation Exploration of the Rails source code Ruby dynamics Many more programming concepts and techniques!
Crystal Clear: A Human-Powered Methodology for Small Teams
Alistair Cockburn - 2004
It describes the roles, teams, values, intentions, habits, activities, policies and work products of a small software development team forwhom time-to-market and development costs are critical considerations.Alistair Cockburn is one of the founders of the Agile software developmentmovement. He spells out proven best practices based on his extensiveexperience helping organizations build software quickly and with less cost. Theauthor understands that small teams cannot be burdened by process-heavysoftware methodologies. By advocating that developers stay close together andremain in steady, good-will communication with customers and users, thisbook teaches the reader how to develop software that not only does what it issupposed to do, but also gets completed on time and within budget.
The Scheme Programming Language
R. Kent Dybvig - 1987
Many exercises are presented to help reinforce the lessons learned, and answers to the exercises are given in a new appendix.Most of the remaining chapters are dedicated to the reference material, which describes in detail the standard features of Scheme included in the Revised$^5$ Report on Scheme and the ANSI/IEEE standard for Scheme.Numerous examples are presented throughout the introductory and reference portions of the text, and a unique set of extended example programs and applications, with additional exercises, are presented in the final chapter. Reinforcing the book's utility as a reference text are appendices that present the formal syntax of Scheme, a summary of standard forms and procedures, and a bibliography of Scheme resources.The Scheme Programming Language stands alone as an introduction to and essential reference for Scheme programmers. it is also useful as a supplementary text for any course that uses Scheme.The Scheme Programming Language is illustrated by artist Jean-Pierre Hébert, who writes Scheme programs to extend his ability to create sophisticated works of digital art.R. Kent Dybvig is Professor of Computer Science at Indiana University and principal developer of Chez Scheme.
Java Se8 for the Really Impatient: A Short Course on the Basics
Cay S. Horstmann - 2013
The addition of lambda expressions (closures) and streams represents the biggest change to Java programming since the introduction of generics and annotations. Now, with Java SE 8 for the Really Impatient , internationally renowned Java author Cay S. Horstmann concisely introduces Java 8's most valuable new features (plus a few Java 7 innovations that haven't gotten the attention they deserve). If you're an experienced Java programmer, Horstmann's practical insights and sample code will help you quickly take advantage of these and other Java language and platform improvements. This indispensable guide includes Coverage of using lambda expressions (closures) to write computation "snippets" that can be passed to utility functions The brand-new streams API that makes Java collections far more flexible and efficient Major updates to concurrent programming that make use of lambda expressions (filter/map/reduce) and that provide dramatic performance improvements for shared counters and hash tables A full chapter with advice on how you can put lambda expressions to work in your own programs Coverage of the long-awaited introduction of a well-designed date/time/calendar library (JSR 310) A concise introduction to JavaFX, which is positioned to replace Swing GUIs, and to the Nashorn Javascript engine A thorough discussion of many small library changes that make Java programming more productive and enjoyable This is the first title to cover all of these highly anticipated improvements and is invaluable for anyone who wants to write tomorrow's most robust, efficient, and secure Java code.
Hibernate in Action
Christian Bauer - 2004
Why is this open-source tool so popular? Because it automates a tedious task: persisting your Java objects to a relational database. The inevitable mismatch between your object-oriented code and the relational database requires you to write code that maps one to the other. This code is often complex, tedious and costly to develop. Hibernate does the mapping for you.Not only that, Hibernate makes it easy. Positioned as a layer between your application and your database, Hibernate takes care of loading and saving of objects. Hibernate applications are cheaper, more portable, and more resilient to change. And they perform better than anything you are likely to develop yourself."Hibernate in Action" carefully explains the concepts you need, then gets you going. It builds on a single example to show you how to use Hibernate in practice, how to deal with concurrency and transactions, how to efficiently retrieve objects and use caching.The authors created Hibernate and they field questions from the Hibernate community every day-they know how to make Hibernate sing. Knowledge and insight seep out of every pore of this book."What's Inside"- ORM concepts- Getting started- Many real-world tasks- The Hibernate application development process
Why Software Sucks...and What You Can Do about It
David S. Platt - 2006
. . . Put this one on your must-have list if you have software, love software, hate programmers, or even ARE a programmer, because Mr. Platt (who teaches programming) has set out to puncture the bloated egos of all those who think that just because they can write a program, they can make it easy to use. . . . This book is funny, but it is also an important wake-up call for software companies that want to reduce the size of their customer support bills. If you were ever stuck for an answer to the question, 'Why do good programmers make such awful software?' this book holds the answer."--John McCormick, Locksmith columnist, TechRepublic.com "I must say first, I don't get many computing manuscripts that make me laugh out loud. Between the laughs, Dave Platt delivers some very interesting insight and perspective, all in a lucid and engaging style. I don't get much of that either!"--Henry Leitner, assistant dean for information technology andsenior lecturer on computer science, Harvard University "A riotous book for all of us downtrodden computer users, written in language that we understand."--Stacy Baratelli, author's barber "David's unique take on the problems that bedevil software creation made me think about the process in new ways. If you care about the quality of the software you create or use, read this book."--Dave Chappell, principal, Chappell & Associates "I began to read it in my office but stopped before I reached the bottom of the first page. I couldn't keep a grin off my face! I'll enjoy it after I go back home and find a safe place to read."--Tsukasa Makino, IT manager "David explains, in terms that my mother-in-law can understand, why the software we use today can be so frustrating, even dangerous at times, and gives us some real ideas on what we can do about it."--Jim Brosseau, Clarrus Consulting Group, Inc. A Book for Anyone Who Uses a Computer Today...and Just Wants to Scream! Today's software sucks. There's no other good way to say it. It's unsafe, allowing criminal programs to creep through the Internet wires into our very bedrooms. It's unreliable, crashing when we need it most, wiping out hours or days of work with no way to get it back. And it's hard to use, requiring large amounts of head-banging to figure out the simplest operations.It's no secret that software sucks. You know that from personal experience, whether you use computers for work or personal tasks. In this book, programming insider David Platt explains why that's the case and, more importantly, why it doesn't have to be that way. And he explains it in plain, jargon-free English that's a joy to read, using real-world examples with which you're already familiar. In the end, he suggests what you, as a typical user, without a technical background, can do about this sad state of our software--how you, as an informed consumer, don't have to take the abuse that bad software dishes out.As you might expect from the book's title, Dave's expose is laced with humor--sometimes outrageous, but always dead on. You'll laugh out loud as you recall incidents with your own software that made you cry. You'll slap your thigh with the same hand that so often pounded your computer desk and wished it was a bad programmer's face. But Dave hasn't written this book just for laughs. He's written it to give long-overdue voice to your own discovery--that software does, indeed, suck, but it shouldn't.
Fullstack React: The Complete Guide to ReactJS and Friends
Anthony Accomazzo - 2017
Quickly get to work - or get that job - with the right tools and the best practices.Seriously: Stop wasting your time scouring Google, searching through incorrect, out-of-date, blog posts and get everything you need to be productive in one, well-organized place. The book is complete with both simple and complex examples to get your apps up and running.You'll learn what you need to know to work professionally and build solid, well-tested, optimized apps with ReactJS. This book is your definitive guide or your money back.Buy now at https://www.fullstackreact.com.
Schaum's Outline of Programming with C
Byron S. Gottfried - 1989
Includes some discussion of the Turbo C++ operating environment, as well as useful information on operators and expressions, data input and output, control sttements, functions, program structure, and arrays.
Computer Networks: A Systems Approach
Larry L. Peterson - 1996
This expanded and completely updated edition covers the why of network design, focusing not just the specifications comprising today's systems but how key technologies and protocols actually work in the real world to solve specific problems. It is the only introductory computer networking book written by authors who have had first-hand experience with many of the protocols discussed in the text, who have actually designed some of them as well, and who are still actively designing the computer networks today.The book makes less use of computer code to explain protocols than earlier editions. Moreover, this new edition shifts the focus somewhat higher in the protocol stack where there is generally more innovative and exciting work going on at the application and session layers than at the link and physical layers. Other new features are: increased accessibility by clearly separating the advanced material from more fundamental via special headings and boxed features; the material is structured in such a way as to make it easier to teach top-down. Furthermore, the book outstrips the competitors in offering a more robust ancillary package for student and instructor support. The text is complemented with figures as well as links to networking resources on the Web and links to author-created materials on author-maintained Web site.Computer Networks, Fourth Edition, will be an invaluable resource for networking professionals and upper level undergraduate and graduate students in CS, EE, and CSE programs.
Linux Command Line and Shell Scripting Bible
Richard Blum - 2008
Not only does this Bible give you a quick refresher on the structure of open-source Linux software, it also shows you how to bypass the hefty graphical user interface on Linux systems and start interacting the fast and efficient way?with command lines and automated scripts. You'll learn how to manage files on the filesystem, start and stop programs, use databases, even do Web programming?without a GUI?with this one-stop resource.
ng-book - The Complete Book on AngularJS
Ari Lerner - 2013
Ready to master AngularJS? What if you could master the entire framework – with solid foundations – in less time without beating your head against a wall? Imagine how quickly you could work if you knew the best practices and the best tools? Stop wasting your time searching and have everything you need to be productive in one, well-organized place, with complete examples to get your project up without needing to resort to endless hours of research.
Balancing Agility and Discipline: A Guide for the Perplexed
Barry Boehm - 2003
On the one hand, there are the more agile methods that focus on individual projects, and how to get them done fast--the camp represented by Beck and Cockburn. On the other hand, there are the more disciplined methods, focused on setting up organizational processes for getting projects done with predictable high quality--the camp best represented by the SEI, the CMMI, and Humphrey. Although these methods are often presented as mutually exclusive, they actually lie on a continuum. The authors of Balancing Agility and Discipline have worked out clear guidelines for determining where on that continuum a particular software development project is located--and therefore, how agile or disciplined a chosen methodology can or has to be.
Pragmatic Unit Testing in C# with NUnit
Andy Hunt - 2004
This book gives teams straightforward and proven ways to introduce unit testing into their process, resulting in higher quality and fewer bugs.All over the world, software teams are using unit testing both to verify their code and as a way of helping them design better code. This book is unique in the way it covers two aspects: showing developers both how to test and helping them determine what to test.New in the second edition:Updated for NUnit 2.4 (.NET 2.0 and Visual Studio 2005) More assert methods New String and Collection assertion support Better support for multiple-platform development Higher-level setup and teardown fixtures Whole new chapter on extending NUnit and more!
Programming In C#
E. Balagurusamy
The revised edition maintains the lucid flow and continuity which has been the strength of the book.