Aquest lloc utilitza galetes per a oferir els nostres serveis, millorar el desenvolupament, per a anàlisis i (si no has iniciat la sessió) per a publicitat. Utilitzant LibraryThing acceptes que has llegit i entès els nostres Termes de servei i política de privacitat. L'ús que facis del lloc i dels seus serveis està subjecte a aquestes polítiques i termes.
PlaidStallion (1): Capturing a wealth of experience about the design of object-oriented software, four top-notch designers present a catalog of simple and succinct solutions to commonly occurring design problems. Previously undocumented, these 23 patterns allow designers to create more flexible, elegant, and ultimately reusable designs without having to rediscover the design solutions themselves. * The authors begin by describing what patterns are and how they can help you design object-oriented software. They then go on to systematically name, explain, evaluate, and catalog recurring designs in object-oriented systems. With Design Patterns as your guide, you will learn how these important patterns fit into the software development process, and how you can leverage them to solve your own design problems most efficiently.… (més)
PlaidStallion (2): This still timely collection of papers by Donald Knuth, "the father of computer science," surveys the field of computer science and the nature of algorithms. Topics covered here include the relationship between computer science and mathematics, the connections between theory and practice, and the known limitations on what can be computed in a reasonable amount of time. Additionally, Knuth discusses the history of computer science from ancient Babylon through today.
Particularly clear and accessible, these essays were written for a general audience rather than specialists in computer science. They are thus a valuable resource for not only computer scientists but for anyone interested in the history of this fascinating field.… (més)
PlaidStallion (3): Concepts in Programming Languages elucidates the central concepts used in modern programming languages, such as functions, types, memory management, and control. The book is unique in its comprehensive presentation and comparison of major object-oriented programming languages. Separate chapters examine the history of objects, Simula and Smalltalk, and the prominent languages C++ and Java. The author presents foundational topics, such as lambda calculus and denotational semantics, in an easy-to-read, informal style, focusing on the main insights provided by these theories. Advanced topics include concurrency, concurrent object-oriented programming, program components, and inter-language interoperability. A chapter on logic programming illustrates the importance of specialized programming methods for certain kinds of problems.… (més)
PlaidStallion (4): Compilers: Principles, Techniques and Tools, known to professors, students, and developers worldwide as the "Dragon Book," is available in a new edition. Every chapter has been completely revised to reflect developments in software engineering, programming languages, and computer architecture that have occurred since 1986, when the last edition published. The authors, recognizing that few readers will ever go on to construct a compiler, retain their focus on the broader set of problems faced in software design and software development.… (més)
PlaidStallion (5): Anyone who develops software for a living needs a proven way to produce it better, faster, and cheaper. The Productive Programmer offers critical timesaving and productivity tools that you can adopt right away, no matter what platform you use. Master developer Neal Ford not only offers advice on the mechanics of productivity--how to work smarter, spurn interruptions, get the most out your computer, and avoid repetition--he also details valuable practices that will help you elude common traps, improve your code, and become more valuable to your team. You'll learn to:
Write the test before you write the code
Manage the lifecycle of your objects fastidiously
Build only what you need now, not what you might need later
Apply ancient philosophies to software development
Question authority, rather than blindly adhere to standards
Make hard things easier and impossible things possible through meta-programming
Be sure all code within a method is at the same level of abstraction
Pick the right editor and assemble the best tools for the job
This isn't theory, but the fruits of Ford's real-world experience as an Application Architect at the global IT consultancy ThoughtWorks. Whether you're a beginner or a pro with years of experience, you'll improve your work and your career with the simple and straightforward principles in The Productive Programmer.… (més)
PlaidStallion (6): Looking for a head start in your undergraduate degree in mathematics? Maybe you've already started your degree and feel bewildered by the subject you previously loved? Don't panic! This friendly companion will ease your transition to real mathematical thinking. Working through the book you will develop an arsenal of techniques to help you unlock the meaning of definitions, theorems and proofs, solve problems, and write mathematics effectively. All the major methods of proof - direct method, cases, induction, contradiction and contrapositive - are featured. Concrete examples are used throughout, and you'll get plenty of practice on topics common to many courses such as divisors, Euclidean algorithms, modular arithmetic, equivalence relations, and injectivity and surjectivity of functions. The material has been tested by real students over many years so all the essentials are covered. With over 300 exercises to help you test your progress, you'll soon learn how to think like a mathematician.… (més)
PlaidStallion (7): Masterminds of Programming features exclusive interviews with the creators of several historic and highly influential programming languages. In this unique collection, you'll learn about the processes that led to specific design decisions, including the goals they had in mind, the trade-offs they had to make, and how their experiences have left an impact on programming today. Masterminds of Programming includes individual interviews with:
Adin D. Falkoff: APL
Thomas E. Kurtz: BASIC
Charles H. Moore: FORTH
Robin Milner: ML
Donald D. Chamberlin: SQL
Alfred Aho, Peter Weinberger, and Brian Kernighan: AWK
Charles Geschke and John Warnock: PostScript
Bjarne Stroustrup: C++
Bertrand Meyer: Eiffel
Brad Cox and Tom Love: Objective-C
Larry Wall: Perl
Simon Peyton Jones, Paul Hudak, Philip Wadler, and John Hughes: Haskell
Guido van Rossum: Python
Luiz Henrique de Figueiredo and Roberto Ierusalimschy: Lua
James Gosling: Java
Grady Booch, Ivar Jacobson, and James Rumbaugh: UML
Anders Hejlsberg: Delphi inventor and lead developer of C#
If you're interested in the people whose vision and hard work helped shape the computer industry, you'll find Masterminds of Programming fascinating.… (més)
PlaidStallion (9): Peter Seibel interviews 15 of the most interesting computer programmers alive today in Coders at Work, offering a companion volume to Apress's highly acclaimed best-seller Founders at Work by Jessica Livingston. As the words “at work” suggest, Peter Seibel focuses on how his interviewees tackle the day-to-day work of programming, while revealing much more, like how they became great programmers, how they recognize programming talent in others, and what kinds of problems they find most interesting.
Hundreds of people have suggested names of programmers to interview on the Coders at Work web site: www.codersatwork.com. The complete list was 284 names. Having digested everyone's feedback, we selected 15 folks who've been kind enough to agree to be interviewed:
Frances Allen: Pioneer in optimizing compilers, first woman to win the Turing Award (2006) and first female IBM fellow
Joe Armstrong: Inventor of Erlang
Joshua Bloch: Author of the Java collections framework, now at Google
Bernie Cosell: One of the main software guys behind the original ARPANET IMPs and a master debugger
L. Peter Deutsch: Author of Ghostscript, implementer of Smalltalk-80 at Xerox PARC and Lisp 1.5 on PDP-1
Brad Fitzpatrick: Writer of LiveJournal, OpenID, memcached, and Perlbal
Dan Ingalls: Smalltalk implementor and designer
Simon Peyton Jones: Coinventor of Haskell and lead designer of Glasgow Haskell Compiler
Donald Knuth: Author of The Art of Computer Programming and creator of TeX
Peter Norvig: Director of Research at Google and author of the standard text on AI
Guy Steele: Coinventor of Scheme and part of the Common Lisp Gang of Five, currently working on Fortress
Ken Thompson: Inventor of UNIX
Jamie Zawinski: Author of XEmacs and early Netscape/Mozilla hacker
PlaidStallion (10): Refactoring is about improving the design of existing code. It is the process of changing a software system in such a way that it does not alter the external behavior of the code, yet improves its internal structure. With refactoring you can even take a bad design and rework it into a good one. This book offers a thorough discussion of the principles of refactoring, including where to spot opportunities for refactoring, and how to set up the required tests. There is also a catalog of more than 40 proven refactorings with details as to when and why to use the refactoring, step by step instructions for implementing it, and an example illustrating how it works The book is written using Java as its principle language, but the ideas are applicable to any OO language.… (més)
PlaidStallion (11): Even bad code can function. But if code isn’t clean, it can bring a development organization to its knees. Every year, countless hours and significant resources are lost because of poorly written code. But it doesn’t have to be that way.
Noted software expert Robert C. Martin presents a revolutionary paradigm with Clean Code: A Handbook of Agile Software Craftsmanship. 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.
What kind of work will you be doing? You’ll be reading code—lots of code. And you will be challenged to think about what’s right about that code, and what’s wrong with it. More importantly, you will be challenged to reassess your professional values and your commitment to your craft.
Clean Code is divided into three parts. The first describes the principles, patterns, and practices of writing clean code. The second part consists of several case studies of increasing complexity. Each case study is an exercise in cleaning up code—of transforming a code base that has some problems into one that is sound and efficient. The third part is the payoff: a single chapter containing a list of heuristics and “smells” gathered while creating the case studies. The result is a knowledge base that describes the way we think when we write, read, and clean code.
Readers will come away from this book understanding
How 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
This book is a must for any developer, software engineer, project manager, team lead, or systems analyst with an interest in producing better code.… (més)
PlaidStallion (12): The authors' treatment of data structures in Data Structures and Algorithms is unified by an informal notion of "abstract data types," allowing readers to compare different implementations of the same concept. Algorithm design techniques are also stressed and basic algorithm analysis is covered. Most of the programs are written in Pascal.… (més)
PlaidStallion (13): Some books on algorithms are rigorous but incomplete; others cover masses of material but lack rigor. Introduction to Algorithms uniquely combines rigor and comprehensiveness. The book covers a broad range of algorithms in depth, yet makes their design and analysis accessible to all levels of readers. Each chapter is relatively self-contained and can be used as a unit of study. The algorithms are described in English and in a pseudocode designed to be readable by anyone who has done a little programming. The explanations have been kept elementary without sacrificing depth of coverage or mathematical rigor.The first edition became a widely used text in universities worldwide as well as the standard reference for professionals. The second edition featured new chapters on the role of algorithms, probabilistic analysis and randomized algorithms, and linear programming. The third edition has been revised and updated throughout. It includes two completely new chapters, on van Emde Boas trees and multithreaded algorithms, substantial additions to the chapter on recurrence (now called "Divide-and-Conquer"), and an appendix on matrices. It features improved treatment of dynamic programming and greedy algorithms and a new notion of edge-based flow in the material on flow networks. Many new exercises and problems have been added for this edition. As of the third edition, this textbook is published exclusively by the MIT Press.… (més)
PlaidStallion (14): Moscow-born Sergey Brin and Midwest-born Larry Page dropped out of graduate school at Stanford University to, in their own words, ‟change the world” through a powerful search engine that would organize every bit of information on the Web for free. The Google Story takes you deep inside the company’s wild ride from an idea that struggled for funding in 1998 to a firm that rakes in billions in profits, making Brin and Page the wealthiest young men in America. Based on scrupulous research and extraordinary access to Google, this fast-moving narrative reveals how an unorthodox management style and culture of innovation enabled a search engine to shake up Madison Avenue and Wall Street, scoop up YouTube, and battle Microsoft at every turn. Not afraid of controversy, Google is expanding in Communist China and quietly working on a searchable genetic database, initiatives that test the founders’ guiding mantra: DON'T BE EVIL.… (més)
PlaidStallion (15): The long-awaited second edition of Norman Bigg's best-selling Discrete Mathematics, includes new chapters on statements and proof, logical framework, natural numbers, and the integers, in addition to updated chapters from the previous edition. Carefully structured, coherent and comprehensive, each chapter contains tailored exercises and solutions to selected questions, and miscellaneous exercises are presented throughout. This is an invaluable text for students seeking a clear introduction to discrete mathematics, graph theory, combinatorics, number theory and abstract algebra.… (més)
PlaidStallion (16): The phenomenal success of Bill Gates and his Microsoft Corporation hinges, above all, on an ability to look to the future. Not content with holding a bulging share of the market for software applications, nor with dominating the crucial operating systems business by virtue of its DOS and Windows programs, Microsoft is always looking to the future. And the future for Microsoft now goes by the name of "Windows NT." A software innovation of the first order, NT could redefine the standards for computing throughout the world, into the next century. NT endows inexpensive personal computers with the capabilities of giant mainframes - yet without sacrificing the inherent flexibility and appeal of PCs.… (més)
PlaidStallion (17): A perennial bestseller by eminent mathematician G. Polya, How to Solve It will show anyone in any field how to think straight. In lucid and appealing prose, Polya reveals how the mathematical method of demonstrating a proof or finding an unknown can be of help in attacking any problem that can be "reasoned" out--from building a bridge to winning a game of anagrams. Generations of readers have relished Polya's deft--indeed, brilliant--instructions on stripping away irrelevancies and going straight to the heart of the problem.… (més)
PlaidStallion (18): Masters of Doom is the amazing true story of the Lennon and McCartney of video games: John Carmack and John Romero. Together, they ruled big business. They transformed popular culture. And they provoked a national controversy. More than anything, they lived a unique and rollicking American Dream, escaping the broken homes of their youth to produce the most notoriously successful game franchises in historyâ€”Doom and Quakeâ€” until the games they made tore them apart. This is a story of friendship and betrayal, commerce and artistryâ€”a powerful and compassionate account of what it's like to be young, driven, and wildly creative.… (més)
PlaidStallion (19): First, businesses discovered quality as a key competitive edge; next came service. Now, Donald A. Norman, former Director of the Institute for Cognitive Science at the University of California, reveals how smart design is the new competitive frontier. The Design of Everyday Things is a powerful primer on how--and why--some products satisfy customers while others only frustrate them.… (més)
PlaidStallion (20): The bible of all fundamental algorithms and the work that taught many of today’s software developers most of what they know about computer programming.
Byte, September 1995
Countless readers have spoken about the profound personal influence of Knuth’s work. Scientists have marveled at the beauty and elegance of his analysis, while ordinary programmers have successfully applied his “cookbook” solutions to their day-to-day problems. All have admired Knuth for the breadth, clarity, accuracy, and good humor found in his books.
I can’t begin to tell you how many pleasurable hours of study and recreation they have afforded me! I have pored over them in cars, restaurants, at work, at home and even at a Little League game when my son wasn’t in the line-up.
Primarily written as a reference, some people have nevertheless found it possible and interesting to read each volume from beginning to end. A programmer in China even compared the experience to reading a poem.… (més)
PlaidStallion (21): Douglas Hofstadter’s book is concerned directly with the nature of “maps” or links between formal systems. However, according to Hofstadter, the formal system that underlies all mental activity transcends the system that supports it. If life can grow out of the formal chemical substrate of the cell, if consciousness can emerge out of a formal system of firing neurons, then so too will computers attain human intelligence. Gödel Escher and Bach is a wonderful exploration of fascinating ideas at the heart of cognitive science: meaning, reduction, recursion, and much more.… (més)
PlaidStallion (22): Peopleware - Productive Projects and Teams is a 1987 book on the social side of software development, specifically managing project teams. It was written by software consultants Tom DeMarco and Timothy Lister, from their experience in the world of software development.… (més)
PlaidStallion (23): Computers have changed since 1981, when Tracy Kidder memorably recorded the drama, comedy, and excitement of one companys efforts to bring a new microcomputer to market. What has not changed is the feverish pace of the high-tech industry, the go-for-broke approach to business that has caused so many computer companies to win big (or go belly up), and the cult of pursuing mind-bending technological innovations. The Soul of a New Machine is an essential chapter in the history of the machine that revolutionized the world in the twentieth century.… (més)
PlaidStallion (24): "The first edition of Programming Pearls was one of the most influential books I read early in my career, and many of the insights I first encountered in that book stayed with me long after I read it. Jon has done a wonderful job of updating the material. I am very impressed at how fresh the new examples seem." --Steve McConnell When programmers list their favorite books, Jon Bentley's collection of programming pearls is commonly included among the classics. Just as natural pearls grow from grains of sand that irritate oysters, programming pearls have grown from real problems that have irritated real programmers. With origins beyond solid engineering, in the realm of insight and creativity, Bentley's pearls offer unique and clever solutions to those nagging problems. Illustrated by programs designed as much for fun as for instruction, the book is filled with lucid and witty descriptions of practical programming techniques and fundamental design principles. It is not at all surprising that Programming Pearls has been so highly valued by programmers at every level of experience.In this revision, the first in 14 years, Bentley has substantially updated his essays to reflect current programming methods and environments. In addition, there are three new essays on / testing, debugging, and timing / set representations / string problems All the original programs have been rewritten, and an equal amount of new code has been generated. Implementations of all the programs, in C or C++, are now available on the Web. What remains the same in this new edition is Bentley's focus on the hard core of programming problems and his delivery of workable solutions to those problems. Whether you are new to Bentley's classic or are revisiting his work for some fresh insight, the book is sure to make your own list of favorites.… (més)
PlaidStallion (25): Few books on software project management have been as influential and timeless as The Mythical Man-Month. With a blend of software engineering facts and thought-provoking opinions, Fred Brooks offers insight for anyone managing complex projects. These essays draw from his experience as project manager for the IBM System/360 computer family and then for OS/360, its massive software system. Now, 20 years after the initial publication of his book, Brooks has revisited his original ideas and added new thoughts and advice, both for readers already familiar with his work and for readers discovering it for the first time.
The added chapters contain (1) a crisp condensation of all the propositions asserted in the original book, including Brooks' central argument in The Mythical Man-Month: that large programming projects suffer management problems different from small ones due to the division of labor; that the conceptual integrity of the product is therefore critical; and that it is difficult but possible to achieve this unity; (2) Brooks' view of these propositions a generation later; (3) a reprint of his classic 1986 paper "No Silver Bullet"; and (4) today's thoughts on the 1986 assertion, "There will be no silver bullet within ten years."… (més)
PlaidStallion (26): What others in the trenches say about The Pragmatic Programmer...
"The cool thing about this book is that it's great for keeping the programming process fresh. The book helps you to continue to grow and clearly comes from people who have been there."
—Kent Beck, author of Extreme Programming Explained: Embrace Change
"I found this book to be a great mix of solid advice and wonderful analogies!"
—Martin Fowler, author of Refactoring and UML Distilled
"I would buy a copy, read it twice, then tell all my colleagues to run out and grab a copy. This is a book I would never loan because I would worry about it being lost."
—Kevin Ruland, Management Science, MSG-Logistics
"The wisdom and practical experience of the authors is obvious. The topics presented are relevant and useful...By far its greatest strength for me has been the outstanding analogies—tracer bullets, broken windows, and the fabulous helicopter-based explanation of the need for orthogonality, especially in a crisis situation. I have little doubt that this book will eventually become an excellent source of useful information for journeymen programmers and expert mentors alike."
—John Lakos, author of Large-Scale C++ Software Design
"This is the sort of book I will buy a dozen copies of when it comes out so I can give it to my clients. "
—Eric Vought, Software Engineer
"Most modern books on software development fail to cover the basics of what makes a great software developer, instead spending their time on syntax or technology where in reality the greatest leverage possible for any software team is in having talented developers who really know their craft well. An excellent book."
—Pete McBreen, Independent Consultant
"Since reading this book, I have implemented many of the practical suggestions and tips it contains. Across the board, they have saved my company time and money while helping me get my job done quicker! This should be a desktop reference for everyone who works with code for a living."
—Jared Richardson, Senior Software Developer, iRenaissance, Inc. "I would like to see this issued to every new employee at my company..."
—Chris Cleeland, Senior Software Engineer, Object Computing, Inc.
"If I'm putting together a project, it's the authors of this book that I want...And failing that I'd settle for people who've read their book."
—Ward Cunningham Straight from the programming trenches,
The Pragmatic Programmer cuts through the increasing specialization and technicalities of modern software development to examine the core process—taking a requirement and producing working, maintainable code that delights its users. It covers topics ranging from personal responsibility and career development to architectural techniques for keeping your code flexible and easy to adapt and reuse. Read this book, and you'll learn how to
Fight software rot;
Avoid the trap of duplicating knowledge;
Write flexible, dynamic, and adaptable code;
Avoid programming by coincidence;
Bullet-proof your code with contracts, assertions, and exceptions;
Capture real requirements;
Test ruthlessly and effectively;
Delight your users;
Build teams of pragmatic programmers; and
Make your developments more precise with automation.
Written as a series of self-contained sections and filled with entertaining anecdotes, thoughtful examples, and interesting analogies, The Pragmatic Programmer illustrates the best practices and major pitfalls of many different aspects of software development.Whether you're a new coder, an experienced programmer, or a manager responsible for software projects, use these lessons daily, and you'll quickly see improvements in personal productivity, accuracy, and job satisfaction. You'll learn skills and develop habits and attitudes that form the foundation for long-term success in your career. You'll become a Pragmatic Programmer.… (més)
PlaidStallion (27): What do flashlights, the British invasion, black cats, and seesaws have to do with computers? In CODE, they show us the ingenious ways we manipulate language and invent new means of communicating with each other. And through CODE, we see how this ingenuity and our very human compulsion to communicate have driven the technological innovations of the past two centuries.
Using everyday objects and familiar language systems such as Braille and Morse code, author Charles Petzold weaves an illuminating narrative for anyone whoâ€™s ever wondered about the secret inner life of computers and other smart machines.
It’s a cleverly illustrated and eminently comprehensible story and along the way, you’ll discover you’ve gained a real context for understanding today’s world of PCs, digital media, and the Internet. No matter what your level of technical savvy, CODE will charm you and perhaps even awaken the technophile within.… (més)