GOLSCO
Books Online Store
UK | Germany
books   baby   camera   computers   dvd   games   electronics   garden   kitchen   magazines   music   phones   software   tools   toys   video  
 Help  
Books - Computers & Internet - Programming - Introductory & Beginning - Computer Science for Real Men

1-13 of 13       1
Featured ListSimple List

  • General (favr)  (list)
  • C & C++ Tutorials (favr)  (list)
  • Computer Dictionaries (favr)  (list)
  • Computer Glossaries (favr)  (list)
  • For Dummies - Programming (list)
  • Visual Basic (favr)  (list)
  • Go to bottom to see all images

    Click image to enlarge

    Structure and Interpretation of Computer Programs - 2nd Edition (MIT Electrical Engineering and Computer Science)
    by Harold Abelson, Gerald Jay Sussman
    Average Customer Review: 3.5 out of 5 stars
    Hardcover (25 July, 1996)
    list price: $80.00 -- our price: $68.78
    (price subject to change: see help)
    US | Canada | United Kingdom | Germany | France

    Editorial Review

    Abelson and Sussman's classic Structure and Interpretation of Computer Programs teaches readers how to program by employing the tools of abstraction and modularity. The authors' central philosophy is that programming is the task of breaking large problems into small ones. The book spends a great deal of time considering both this decomposition and the process of knitting the smaller pieces back together.

    The authors employ this philosophy in their writing technique. The text asks the broad question "What is programming?" Having come to the conclusion that programming consists of procedures and data, the authors set off to explore the related questions of "What is data?" and "What is a procedure?"

    The authors build up the simple notion of a procedure to dizzying complexity. The discussion culminates in the description of the code behind the programming language Scheme. The authors finish with examples of how to implement some of the book's concepts on a register machine. Through this journey, the reader not only learns how to program, but also how to think about programming. ... Read more

    Reviews (140)

    5-0 out of 5 stars A Classics Indeed
    SICP takes you to the heart of Computer Science.It teaches you to be a computer scientist, not a programmer.

    Being a Berkeley graduate having taken the 61A course with A+ (couldn't believe!), I can only say that this is a book that you read in your spare time, not when your have a project due in two weeks (or a final tomorrow).It is more philosophical than practical, and is for the aspiring computer scientists rather than those who need to get out there to make some money and buy stocks.

    And it is quite advanced in theory for an introductory text.Beginners are better off with books that approach these ideas from a practical programming perspective.

    5-0 out of 5 stars Fantastic Book.
    This is a fantastic book. I agree with the reviewers that say this book as little to do with contemporary software design and practice, and that's a shame, because if this book HAD more influence on contemporary software design, programs would work much, much better.

    This is a book about writing software, controlling complexity, identifying abstractions. It is filled with intelligence and wisdom. It is also a lot of fun.

    5-0 out of 5 stars The Pons Asinorum of programming
    Barry Mazur (talking about mathematics, not programming) once characterised the encounter with a genuinely new concept in terms of Gabriel Garcia Marquez's experience on reading the first lines of Metamorphosis, when he literally fell off the sofa in shock, thinking 'I didn't know you were allowed to do that'.
    I still remember the same shock, even if I didn't literally fall of my chair, when, as an undergraduate, I encountered the first edition of this on the new acquisitions rack in my departmental library: I must have been the first person in the University, in Northern Ireland even, to read it, which I did, from cover to cover, over several days sitting in the library, even before it was released into the stacks.

    The reason why Structure and Interpretation is the best there is, is that it manages, not just once, but several times, to deliver that fall-off-a-chair intellectual jolt. People who complain that you can only do such things in Scheme, and therefore that the ideas are pointless, are missing the point. ... Read more

    Isbn: 0262011530
    Subjects:  1. Computer Bks - Languages / Programming    2. Computer Books: Languages    3. Computer Science    4. Computer programming    5. Computers    6. LISP (Computer program languag    7. LISP (Computer program language)    8. Lisp (Programming Language)    9. Programming - Software Development    10. Programming Languages - General    11. Programming Languages - LISP    12. Computers / Computer Science   


    $68.78

    Artificial Intelligence: Modern Approach
    by Stuart J. Russell, Peter Norvig
    Average Customer Review: 4.0 out of 5 stars
    Hardcover (15 January, 1995)
    list price: $84.00
    US | Canada | United Kingdom | Germany | France

    Editorial Review

    Artificial Intelligence: A Modern Approach introduces basic ideas in artificial intelligence from the perspective of building intelligent agents, which the authors define as "anything that can be viewed as perceiving its environment through sensors and acting upon the environment through effectors." This textbook is up-to-date and is organized using the latest principles of good textbook design. It includes historical notes at the end of every chapter, exercises, margin notes, a bibliography, and a competent index. Artificial Intelligence: A Modern Approach covers a wide array of material, including first-order logic, game playing, knowledge representation, planning, and reinforcement learning. ... Read more

    Reviews (48)

    4-0 out of 5 stars Re: Survey type of book, shallow but good for reference
    I think the book is good overall, it could be more focused in some places and have better examples for the students.

    My major point with writing this review though is to counter false claim from the reviewer who wrote the "Survey type of book, shallow but good for reference", the book does cover Simulated Annealing, see page 116 in the International Edition for instance.

    4-0 out of 5 stars An `ok' general purpose book on AI.
    This is currently the best general purpose book on AI (the field). It is by no means the best book on any individual topic though... but I guess that wasn't the point of the book to begin with.

    I'm not particularly happy with this book though. I think it's the language, or the examples, or something, but often it's just not `clear'---not as intuitive as I'd like. Many teachers seem to use it in a `general purpose course on AI' though (not anything particularly detailed, so it's `ok'---there are worse books on the subjects).

    In short: as a general purpose AI book on everything, it does its job, but don't expect it to be anything other than a glorified field overview.

    4-0 out of 5 stars the book is an excellent material

    the book enters all the aspects of AI today and tomorow. ... Read more

    Isbn: 0131038052
    Subjects:  1. Artificial Intelligence    2. Artificial Intelligence - General    3. Computer Bks - General Information    4. Computer Books: General    5. Neural Networks   


    Object-Oriented Software Construction (Book/CD-ROM) (2nd Edition) (Prentice-Hall International Series in Computer Science)
    by Bertrand Meyer
    Average Customer Review: 4.5 out of 5 stars
    Paperback (21 March, 2000)
    list price: $83.00 -- our price: $83.00
    (price subject to change: see help)
    US | Canada | United Kingdom | Germany | France

    Editorial Review

    The developer of the acclaimed Eiffel programming language comes through with one of the clearest and most informative books about computers ever committed to paper. Object-Oriented Software Construction is the gospel of object-oriented technology and it deserves to be spread everywhere. Meyer opens with coverage of the need for an object-oriented approach to software development, citing improved quality and development speed as key advantages of the approach. He then explains all the key criteria that define an object- oriented approach to a problem. Meyer pays attention to techniques, such as classes, objects, memory management, and more, returning to each technique and polishing his readers' knowledge of it as he explains how to employ it "well." In a section on advanced topics, Meyer explores interesting and relevant topics, such as persistent objects stored in a database. He also offers a sort of "Do and Don't" section in which he enumerates common mistakes and ways to avoid them. Management information isn't the main point of Object-Oriented Software Construction, but you'll find some in its pages. Meyer concludes his tour de force with comparisons of all the key object-oriented languages, including Java. He also covers the potential of simulating object technology in non-object-oriented languages, such as Pascal and Fortran. The companion CD-ROM includes the full text of this book in hypertext form, as well as some tools for designing object-oriented systems. If you program computers, you need to read this book. ... Read more

    Reviews (43)

    5-0 out of 5 stars highly recommended as a first introduction to OOP
    When writing a treatise on computer programming one has to strike a balance between providing a book that is both useful (which usually means writing within the context of a compilable programming language), but general enough so as not to oversimplify or truncate parts of the theory because it is not represented by the chosen language. In OOSC2 Meyer does just this, by providing a sound and general introduction to object-oriented programming, while using the Eiffel language for purposes of notation and practical programming examples.

    Meyer has a very engaging writing style: very clear, with lots of good (and humorous : ) examples. And the Eiffel language itself seems quite simple, readable (it was obviously influenced by ADA) and brilliantly designed (think of Java, but with multiple inheritance, generics, and without the run-time inefficiency of the java virtual machine).
    But whether you program in Eiffel, Java, C#, or (heaven forbid unless your run-time performance positively cannot live without it) C++, OOPSC2 has alot to offer in terms of OO software design, and a good understanding of the issues behind inheritance, polymorphism, the importance of static typing, and dynamic binding.

    May be my only complaint, at perhaps half a star, is the fact that Meyer often weighs in heavily against other languages for their shortcomings, while going easy on his own Eiffel language. For example, he failed to give an objective analysis regarding the run-time costs of garbage collection. Indeed, the chapter on garbage collection seemed more of handwaving defense of the fact that Eiffel uses this technology. A presentation of run-time empirical studies for various applications would have been much more welcomed. However I believe that the benefits of this book far outweigh the occasional partisanship shown towards Eiffel. I truely believe that Meyer favors Eiffel because he believes in it more on the basis of principle than on profit (he does own a software company that supports Eiffel development tools).

    4-0 out of 5 stars very good, but not the holy grail of software engineering
    In this book Bertrand Meyer did an excelllent job in explaining object oriented software design in a rigourous way. Too often authors of OO books were not formal and rigorous enough, leading to a lot of confusion in the OO world. This book gives a very formal and exact treatment of Object orienteation. As a consequence this book is a must read for every OO expert. That the book focusses on eiffel should not be seen as a drawback : you can apply most of the explained techniques in other OO languages.
    Also this book does not focus much on UML. However, to my opinion,this is not a drawback neither since the power of UML is strongly overhyped.

    Though there are some minor drawbacks in this book :
    -the book can be reduced to half of its size without sacrifying rigour and clearity. Some topics are not needed.
    -design patterns are missing in this book.
    -does not explain enough about unit testing. While the book gives very good explanation on design by contract, design by contract should be seen as an addition to unit testing, but it cannot replace it !!!

    Finally some remarks : please do not overestimate the power of software reuse : in reality it has limited usage since in order to create reusable software and reuse it, each teammember has to know quite well what the other teams are doing in order to reuse some part of their work. In reality, for big projects, this is often impractical.
    -Design by contract is an important software technique, but you can also use it (apart from some limitations) in Java the assert statement. Of course eiffel is probabaly the best designed programming language. But that does not make it the best choice for building complex applications!! I am convinced that Java , in combination with the techniques describbed in this book, with unit testing frameworks like Junit, with aspect oriented programming facilities, and with usage of design patterns can beat eiffel as a development environment for building mission critical applications.

    4-0 out of 5 stars A must have book for professionals in OO
    Unfortunately, the majority of books in computing science area suffers a lack of
    precise definition and clarity of terms and concepts. In my personal opinion, the
    commercial aspects that strongly affect this area, comparing to other technological
    ones, contributes to open the computing book market for authors of highly questionable
    experience and a quite shalow knowledge about the matter they're treating. For example, it
    is not unusual to see the same author (or group of authors) writing books about Java, .NET,
    JSP, ASP, Perl, OO, C/C++ and so on.
    Bertrand Meyer's OO book is an exception in this tendency. The subjects treated are logically
    distributed and the concepts are clearly and precisely defined. Then, the reader gets an
    intuitive and deep understanding of OO theoretical aspects, independent of OO language
    specifics. All the concepts are perfectly prioritized and sequenced: software quality before
    OO, ADT before classes, features before functions, DBC before exception handling. Every
    single concept bases the following ones. I must say, however, that the author should be more
    concise: he writes too much to explain a single concept. He reveals his large academic
    literate background inserting unnecessary large comments in the text. The book could have
    a quite less number of pages without any loss in learning the main concepts.
    I sincerely do not see any problem about the relation between the OO concepts presented and
    their practical implementation: EIFFEL language. At least, the author shows concretely that
    the concepts treated in the book are implementable. If there were not any language to
    complete and support the theoretical aspects, we could say : "Ok, all the concepts
    in the book are perfect and beautiful, but the closest programming language to
    these concepts we can use is JAVA, for example." ... Read more

    Isbn: 0136291554
    Subjects:  1. Computer Bks - Languages / Programming    2. Computer Books: Operating Systems    3. Computer software    4. Computers    5. Development    6. Object-oriented programming (C    7. Object-oriented programming (Computer science)    8. Programming - Object Oriented Programming    9. Programming Languages - General    10. Software Design    11. Computers / Programming / Object Oriented   


    $83.00

    Computer Architecture: A Quantitative Approach
    by John Hennessey, John L. Hennessy, David Goldberg
    Average Customer Review: 4.0 out of 5 stars
    Hardcover (01 January, 1996)
    list price: $85.95
    US | Canada | United Kingdom | Germany | France

    Editorial Review

    An excellent successor to Hennessy and Patterson's Computer Organization and Design, this book presents computer architecture and design as something quantitative that can be studied in the context of real running systems rather than in an abstract format. The concepts are again grounded in real machine architectures and many of the examples are contemporary architectures, such as PowerPC chips and Intel 80x86. Computer Architecture follows the same outline as its predecessor, but covers information in more depth, moving rapidly from introductory discussions to issues just shy of computer design research. The format again includes an excellent mix of exercises and historical background. This book is recommended for people with some experience in digital design--or people who have read and understood the authors' first text. ... Read more

    Reviews (18)

    5-0 out of 5 stars 20
    my name is abduallah alhammadi from yemen Iam student at computer engineering in yemen

    4-0 out of 5 stars A little outdated...but still a great book
    Anyone who is interested in computer architecture or computer performance benchmarking should have a copy of this book. It is well organized, packed full of information, and has many challenging exercises at the end of each chapter that reinforce and extend the concepts outlined. Also, the inside jacket gives a list of useful formula for quick reference. For those interested in vector processors, the authors have included an overview of these in the appendix. Do to new hardware and updated versions of operating systems, the book is of course somewhat out-of-date since it first appeared. It takes a long time to get through the book, but the time spent is well worth it. My interest in the book was mostly in performance aspects of computer architecture, and how to relate the material in the book to the SPEC benchmarking studies. For this reason, and for lack of space, my comments will briefly summarize the parts of the book that I found exceptionally well-written in this area.

    The discussion on the measuring and reporting of computer performance begins early in the book, wherein the authors attempt to quantify what it means for one computer to be faster than then another. They take the position that the best measure of performance is the execution time of real programs. They of course mention benchmarks as a way of doing this, and discuss briefly the SPEC92 benchmark suites. The SPEC standards have changed considerably since this book was written however. After a discussion of the methods to calculate performance, and their drawbacks, the authors discuss Amdahl's Law and how to use it correctly. This is followed by a discussion of the CPU performance equation with several interesting examples given. There is a "fallacies and pitfalls" section at the end of chapter one, as there is at the end of every chapter, that discusses the problems with approaches taken in benchmarking performance. These arguments are considerably important if one is to step away from marketing claims when developing commercial software packages, especially for scientific applications. Customer satisfaction in using these packages is dictated by the actual performance, not what might be accomplished in an isolated test environment. The author's honest approach to these issues is extremely helpful to those involved in developing these kinds of programs and applications.

    One of the more common fallacies that they discuss in this regard are: The MIPS value as being indicative of performance among computers. They argue that this is not the case since MIPS is dependent on the instruction set, the program being run, and it can vary inversely to performance. For the later, they give the well-known example of machines with optional floating-point hardware. The MIPS rating can be misleading since floating-point programs using the hardware take less time but have a lower MIPS rating. If software floating point routines are used, they result in a higher MIPS rating but the execution time is longer. The issues with instruction sets are given a very detailed treatment by the authors, along with the role of compilers in designing an efficient instruction set. They discuss how variables are allocated and addressed and how many registers are needed to allocate the variables appropriately. They use a hypothetical load-store architecture, which they call DLX to illustrate the points they are attempting to make. The DLX is generic enough so as to be convincing in its didactic quality, based as it is on the computer hardware that was available at the time of writing.

    The authors give a thorough discussion of pipelining, including performance issues and potential pitfalls in using it. They also describe the use of dynamic scheduling to avoid stalling when data dependencies are present. The scoreboard and Tomasulo approaches to dynamic scheduling are discussed. In addition, the authors spend a lot of time discussing cache memory design and cache optimization, and virtual memory. The chapter on storage media is excellent and the authors employ some queuing theory to estimate the reponse time and throughput of an I/O system, assuming that the system is in equilibrium. The authors then discuss in detail different ways to benchmark I/O performance. This discussion is extremely important for those involved in Web server performance modeling and benchmarking. An excellent example is given dealing with the performance of a UNIX file system.

    Chapter 7 is very important for those who need to study the performance of networked computers. The authors begin by considering a simple network consisting of two machines containing FIFO queues. They then design a simple protocol, similar to UDP for transferring data between these machines, and calculate the total latency of this network. Interconnection media are considered, although the presentation is somewhat out-of-date due to improvements and costs since the book was written. Performance issues with switched (ATM) versus shared medium (Ethernet) are discussed. The authors also treat connectionless networks with a brief overview of the TCP/IP protocol, and mention the role of the Internet, but do not discuss, disappointingly, performance issues with TCP/IP over the Internet, which is a formidable mathematical problem.

    The treatment of multiprocessor architectures is excellent and the authors discuss two application kernels that are frequently used in scientific applications: the Fast Fourier Transform and the LU factorization from linear algebra. The parallel implementation of these algorithms is extremely important in scientific programming. They consider the Barnes-Hut n-body algorithm and the Ocean application to study scaling and performance issues in parallel programs.

    Some excellent appendices appear in the book, particularly the ones on vector architectures. For those interested in scientific applications, vector processing is a popular methodology for performance enhancement. But the authors point out that the popularity of vector processing seems to becoming to an end, due to advances in microprocessor technology. Scientific progammers have realized this, and have devoted much of their time in writing code that will run on these processors, which is frequently a challenging proposition.

    3-0 out of 5 stars wordy and rambling
    It is true that this is _the_ reference book for computer architecture.However, that has nothing to do with it being a well-written book.Its popularity may be attributed
    to the lack of books on the same topic which allowed it to become
    the standard textbook in many universities.This is how I came to have to suffer through it in a college graduate course.

    Contrary to what some of the previous reviews described, this book is not conceptual at all.One of Patterson's main points is, to put it bluntly, why bother theorizing when you can benchmark with a set of most heavily used real programs for the intended application?The computations involved don't go beyond what one needs to balance a checkbook.And the few "laws" such as Amdahl's Law, is so common sense that it's sad that a name is attached to it.All of these are minor complaints, however, compared to the terrible writing style.I don't expect a technical writer to be polished or even engaging.But at the very least s/he must be coherent and to-the-point.In several chapters especially in the second half of the book, the authors would ramble on for pages without getting anywhere.Phrases or even paragraphs could have been taken out to clarify the content.It almost seemed that the authors were trying to fill enough pages just to get paid.

    In short, this book does not live up to its reputation but anyone interested in computer architecture will probably have to endure it until a better book comes out. ... Read more

    Isbn: 1558603298
    Subjects:  1. Computer Architecture    2. Computer Architecture - General    3. Computer Books: General    4. Computers    5. Programming - Systems Analysis & Design   


    Computer Organization and Design Second Edition : The Hardware/Software Interface
    by David A. Patterson, John L. Hennessy
    Average Customer Review: 3.5 out of 5 stars
    Hardcover (01 August, 1997)
    list price: $89.95 -- our price: $89.95
    (price subject to change: see help)
    US | Canada | United Kingdom | Germany | France

    Editorial Review

    This textbook provides a basic introduction to the fundamentals of current computer designs. As the title suggests, the text skirts the border between hardware and software. After an overview of the subject and a discussion of performance, the book launches into technical matter such as instruction sets, how they are constrained by the underlying processor hardware, the constraints on their design, and more. An excellent critique of computer arithmetic methods leads to a high-level discussion on processor design. Following is a great introduction to pipelining, nice coverage of memory issues, and solid attention to peripherals. The book concludes with a brief discussion of the additional issues inherent in multiprocessing machines. The extremely lucid description is grounded in real-world examples. Interesting exercises help reinforce the material, and each section contains a write-up of the historical background of each idea. Computer Organization and Design is accessible to the beginner, but also offers plenty of valuable knowledge for experienced engineers. ... Read more

    Reviews (48)

    2-0 out of 5 stars Verbose, boring, disorganized and skips important concepts.
    This book starts off nicely and explains some of the basics of assembly programming (empasis on MIPS). Some of the arithematic stuff is a little out of its place and the authors skip important concepts (which I had to learn online). It has a fairly decent introduction to MIPS architecture. But right after the first few chapters - starting from caches, virtual memory and I/O this books starts to get really really disorganized and confusing. The chapter or caches and virtual memory will bore you and you'll end up spending 3-4 hours reading and giving yourself a big headache. I think topics like caches and vm need more diagrams for better understanding. Since lot of stuff happens in parallel in caches and vm's, its actually hard to understand what the authors are trying to convey from those chapters. I totally skipped those topics and studied them from elsewhere. I wouldn't want to recommend this book for students intending to go for into to computer architecture, but since this is the only book which covers all the topics, we don't have a much of a choice.

    4-0 out of 5 stars One of the better texts on hardware
    If you have to use this book in a college course and you are not directed to do so, download the SPIM simulator (MIPS spelled backwards) the author mentions in the book. This can help you understand some of the more complex topics.

    The reason I gave the book four stars is because the topic of pipelining as introduced in the book is confusing and may require most readers to go back over the topic several times before it clicks.

    I also think that having a course in digital fundamentals prior to taking a course that requires this book would help, too. It used to be that colleges would require undergrad computer science students to take a digital fundamentals course (or equivalent) before taking and organization class. It seems now that many schools have dropped the digital requirement and have students take one computer organization class. If you fit in this boat, maybe thing about picking up a Schaum's outline on digital design concepts to go along with this book.

    2-0 out of 5 stars Very boring and tedious to read!!
    This book has a good potential in teaching students about computer organization. Unfortunately, the authors spend too much time explaining simple concepts which makes the book very boring and tedious to read. For example: the authors spend 335 pages just to explain basic MIPS assembly languages and computer performance. Those concepts could have been explained in 50 pages at most. Giving too much unnecessary detail won't help me to get a better understanding of computer organization. In fact, I get lost because the main topic was buried inside all the unimportant unnecessary details. This book could have been written in 300 pages, which is about a third of the length of the book, and still gives a clear, to the point, concise explanation of computer organization. ... Read more

    Isbn: 1558604286
    Subjects:  1. Computer Architecture    2. Computer Architecture - General    3. Computer Bks - General Information    4. Computer Books: General    5. Computer Design    6. Computer Engineering    7. Computer interfaces    8. Computer organization    9. Computers    10. Reference - General    11. Computers / Computer Architecture   


    $89.95

    Introduction to Algorithms, Second Edition
    by Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein
    Average Customer Review: 4.0 out of 5 stars
    Hardcover (01 September, 2001)
    list price: $80.00 -- our price: $80.00
    (price subject to change: see help)
    US | Canada | United Kingdom | Germany | France

    Editorial Review

    Aimed at any serious programmer or computer science student,the new second edition of Introduction to Algorithms builds onthe tradition of the original with a truly magisterial guide to theworld of algorithms. Clearly presented, mathematically rigorous, andyet approachable even for the math-averse, this title sets a highstandard for a textbook and reference to the best algorithms forsolving a wide range of computing problems.

    With sample problems andmathematical proofs demonstrating the correctness of each algorithm,this book is ideal as a textbook for classroom study, but its reachdoesn't end there. The authors do a fine job of explaining eachalgorithm. (Reference sections on basic mathematical notation will helpreaders bridge the gap, but it will help to have some math backgroundto appreciate the full achievement of this handsome hardcover volume.)Every algorithm is presented in pseudo-code, which can be implementedin any computer language, including C/C++ and Java. This ecumenicalapproach is one of the book's strengths. When it comes to sorting andcommon data structures, from basic linked lists to trees (includingbinary trees, red-black, and B-trees), this title really shines, withclear diagrams that show algorithms in operation. Even if you justglance over the mathematical notation here, you can definitely benefitfrom this text in other ways.

    The book moves forward with moreadvanced algorithms that implement strategies for solving morecomplicated problems (including dynamic programming techniques, greedyalgorithms, and amortized analysis). Algorithms for graphing problems(used in such real-world business problems as optimizing flightschedules or flow through pipelines) come next. In each case, theauthors provide the best from current research in each topic, alongwith sample solutions.

    This text closes with a grab bag of usefulalgorithms including matrix operations and linear programming,evaluating polynomials, and the well-known Fast Fourier Transformation(FFT) (useful in signal processing and engineering). Final sections on"NP-complete" problems, like the well-known traveling salesman problem,show off that while not all problems have a demonstrably final and bestanswer, algorithms that generate acceptable approximate solutions canstill be used to generate useful, real-world answers.

    Throughout thistext, the authors anchor their discussion of algorithms with currentexamples drawn from molecular biology (like the Human Genome Project),business, and engineering. Each section ends with short discussions ofrelated historical material, often discussing original research in eacharea of algorithms. On the whole, they argue successfully thatalgorithms are a "technology" just like hardware and software that canbe used to write better software that does more, with betterperformance. Along with classic books on algorithms (like DonaldKnuth's three-volume set, The Art of ComputerProgramming), this title sets a new standard for compiling thebest research in algorithms. For any experienced developer, regardlessof their chosen language, this text deserves a close look for extendingthe range and performance of real-world software. --RichardDragan

    Topics covered: Overview of algorithms (including algorithms asa technology); designing and analyzing algorithms; asymptotic notation;recurrences and recursion; probabilistic analysis and randomizedalgorithms; heapsort algorithms; priority queues; quicksort algorithms;linear time sorting (including radix and bucket sort); medians andorder statistics (including minimum and maximum); introduction to datastructures (stacks, queues, linked lists, and rooted trees); hashtables (including hash functions); binary search trees; red-blacktrees; augmenting data structures for custom applications; dynamicprogramming explained (including assembly-line scheduling, matrix-chainmultiplication, and optimal binary search trees); greedy algorithms(including Huffman codes and task-scheduling problems); amortizedanalysis (the accounting and potential methods); advanced datastructures (including B-trees, binomial and Fibonacci heaps,representing disjoint sets in data structures); graph algorithms(representing graphs, minimum spanning trees, single-source shortestpaths, all-pairs shortest paths, and maximum flow algorithms); sortingnetworks; matrix operations; linear programming (standard and slackforms); polynomials and the Fast Fourier Transformation (FFT); numbertheoretic algorithms (including greatest common divisor, modulararithmetic, the Chinese remainder theorem, RSA public-key encryption,primality testing, integer factorization); string matching;computational geometry (including finding the convex hull);NP-completeness (including sample real-world NP-complete problems andtheir insolvability); approximation algorithms for NP-complete problems(including the traveling salesman problem); reference sections forsummations and other mathematical notation, sets, relations, functions,graphs and trees, as well as counting and probability backgrounder(plus geometric and binomial distributions). ... Read more

    Reviews (122)

    2-0 out of 5 stars Too much coverage and few examples
    I am a MS student, we used this book as Text Guide. Thank God I pass although I just got a B in part due to the poor coverage of exercises of this book. Despite of my willingness to try the examples and exercises it was really frustating not be able to check any of my answers.
    First of all the book tries to cover all the possible topics related to Algorithms from sortingto NP-completeness problems. My recommendation, focus on what you know well and cover it thouroughly or at least split this book in 2 volumes.
    Second, the anoying way to explain things by leaving them as exercises.
    Third, the exercises were not in any way helpful to reinforce the material covered in the chapter, on the contrary are just the introduction of new concepts; and on top of that no answers available. In some cases the answers are not even related to the chapter you are reviewing, just an example, the solution for some of the problems in NP chapter are the application of Dynamic Programming which is a different chapter in the book.

    If you have the unfortune of using this book, search on the net for answers that may guide you on your homework assignments.

    Best of the luck.

    4-0 out of 5 stars Comprehensive and (almost) complete.
    I am an EE PhD student in Princeton, with basic CS background. I bought this book about a week ago, and I just finished reading more than half of it. I am impressed by the organisation and dedication of the authors to write something understandable to a wide audience, without sacrificing in depth analysis. If you need a good and complete introductory book,that summarizes also the latest research in the field, I would recommend this one.

    Drawbacks...Minor (+ I am a weird guy) and hardly mentionable, but I have the feeling that some proofs may have been presented more rigorously. I would also like to see more examples or SOLUTIONS to some of the problems.

    4-0 out of 5 stars Lots of stuff, but a little verbose
    A good introductory text but that's about it. Any CS major worth his salt should chew his way through this level material pretty quickly, and there's the only rub... at points this could be a little bit more concise because it actually can aid understanding in an exact field. Sometimes less is more. The spared pages could be used to cover more material or to raise the bar a little. ... Read more

    Isbn: 0262032937
    Subjects:  1. Computer Bks - Languages / Programming    2. Computer Books: Operating Systems    3. Computer Science    4. Computer algorithms    5. Computer programming    6. Computers    7. Programming - Algorithms    8. Computers / Computer Science   


    $80.00

    Applied Cryptography: Protocols, Algorithms, and Source Code in C, 2nd Edition
    by BruceSchneier
    Average Customer Review: 4.5 out of 5 stars
    Hardcover (19 October, 1995)
    list price: $85.00 -- our price: $78.21
    (price subject to change: see help)
    US | Canada | United Kingdom | Germany | France

    Editorial Review

    Cryptographic techniques have applications far beyond the obvious uses of encoding and decoding information. For Internet developers who need to know about capabilities, such as digital signatures, that depend on cryptographic techniques, there's no better overview than Applied Cryptography, the definitive book on the subject. Bruce Schneier covers general classes of cryptographic protocols and then specific techniques, detailing the inner workings of real-world cryptographic algorithms including the Data Encryption Standard and RSA public-key cryptosystems. The book includes source-code listings and extensive advice on the practical aspects of cryptography implementation, such as the importance of generating truly random numbers and of keeping keys secure. ... Read more

    Reviews (91)

    5-0 out of 5 stars The Bible of the Crypto-world
    For anyone working or studying the crypto-world (IT Security, Cryptographer, Cryptologists, PKI/PGP/SecureID Technologists, etc.) this is a must read.

    For the fascinating world of Cryptography (the practical application of Cryptology) this is an essential textbook that any graduate course of digital security and cryptology should include.It is inteded as a reference book as well as a practical book to have handy for the working professional.

    It's no wonder the NSA had asked the author not to publish this book.It leaves the Crypto-world naked to the average viewer/reader.

    5-0 out of 5 stars Excellent Text - Not Too Mathematical
    This book provides excellent coverage of the mayor cryptography algorithms.It is a must have (for academic study or implementation), if only for the completeness of coverage and the comprehensive references.The C code provided is adequate, but reasonable programming skills are assumed.The book is not overly mathematical (which many of the other cryptography texts are - this is great for me, as I am more intereseted in practice).There is also good information on assessing / comparing the merits of different algorithms.Great for the practictioner or student taking a first course (it's still not bedtime reading).Mathematicians will look for more ......

    5-0 out of 5 stars Essential reference for any programmer
    Over the long term, this is the applied math book that I come back to most often.

    The first quarter of the book may come as a surprise. It's not about encryption, it's about secure protocols. This is great stuff. It includes secure key exchange, where you and I can agree on an encryption key in a public conversation, but none of the other listeners know what we agreed on. It includes zero-knowledge proofs, ways of establishing authorization without releasing your identity. It includes lots more, as well. The next brief section discusses different modes for using encryption algorithms, key management, and other logistics.

    The third section is what you might have expected: detailed descriptions of many encryption schemes, taking up at least half the book. That includes public key schemes, private key codes, secure hashing algorithms, and all the other details needed for implementing the algorithms. One of the most useful subsections here is a set of pseudorandom number generators. It's not exhaustive, by any means - it omits the Mersenne Twister, for example. Still, it gives a fair set of algorithms, some of which are "cryptographically secure". That means the generator's output strongly resists attempts to find regularities, just the way a truly random sequence would.

    The last two chapters give a brief summary of the practice, legalities, and even culture around cryptography.

    This won't make you into a crypto professional. Despite its600+ pages, it barely introduces the world of crypto and certainly doesn't release anything from the "closed" world of government agencies. It will, however, give you useful algorithms, a basic background, and an appreciation of just what real crypto is about. That last may be the most important part. Too many people think inventing a good code is like making love: anyone can do it, and they instinctively do it better than most people. Wrong! Real crypto is not for dabblers, and this book gives some sense of what is involved.

    The first edition of "Applied Cryptography" was a landmark text, but the second edition is even better. It's so much better that, if you just have the first edition, you really should upgrade to the second, and I've never said that about any other book. ... Read more

    Isbn: 0471128457
    Subjects:  1. Computer Bks - Languages / Programming    2. Computer security    3. Cryptography    4. Cryptography/Access Control    5. Programming Languages - General    6. Science/Mathematics    7. Security    8. Security measures    9. Telecommunication    10. Telecommunication (Engineering)    11. Computers / Security    12. Data security & data encryption   


    $78.21

    Computer Graphics: Principles and Practice in C (2nd Edition)
    by James D. Foley, Andries van Dam, Steven K. Feiner, John F. Hughes
    Average Customer Review: 4.5 out of 5 stars
    Hardcover (04 August, 1995)
    list price: $79.99 -- our price: $63.02
    (price subject to change: see help)
    US | Canada | United Kingdom | Germany | France

    Editorial Review

    Computer Graphics: Principles and Practice is the most exhaustive overview of computer graphics techniques available. This textbook's 21 chapters cover graphics hardware, user interface software, rendering, and a host of other subjects. Assuming a solid background in computer science or a related field, Computer Graphicsgives example programs in C and provides exercises at the end of each chapter to test your knowledge of the material. The guide has over 100 beautiful, four-color photographs that illustrate important topics and algorithms, such as ray tracing and bump maps, and also inspire you to acquire the skills necessary to produce them. Encyclopedic in its coverage, the book has a good table of contents so that you can immediately turn to information on the z-Buffer algorithm or the chapter on animation. ... Read more

    Reviews (38)

    2-0 out of 5 stars An out-dated clasic.
    I see that this book is getting a 4.5 average star rating.I really think many of these ratings are based largely on nostalgia.I bought this book 7 years ago or so.I definitely can say that I learned a great deal from this book, and it is a classic.

    However, it hasn't been updated since then, and I think that, considering the price tag, it really doesn't make sense for most modern readers to buy it.(Especially if they don't have Real-Time Rendering, which is my recommendation.)

    Let's scan through the table of contents and see which chapters might be worth reading:

    1.) Introduction
    2.) SRGP - if you don't know what this means, it's because it stands for a graphics system that nobody uses anymore.
    3.) Basic raster graphics algorithms for drawing 2d primitives - this is a good reference for this stuff.Of course, a lot fewer people need to know how to do software rasterization nowadays
    4.) Graphics Hardware - circa 1996
    5.) geometrical transforms - standard material as covered elsewhere, though more difficult to understand
    6.) viewing in 3D - This is actually a pretty unique chapter and worth reading once you've read other books (which will be easier to learn from).There's some unique information about different types of projections, and some alternative ways of looking at the problem.
    7.) Object heirarchy and SPHIGS.Another graphics programming system nobody uses anymore.
    8.) input devices, interaction techniques, and interaction tasks - I never read these chapters because they were about UI design.Maybe you'll find them useful - but they aren't really about "graphics"
    9.) dialogue design - Same comments as Ch 8 - probably not what you're buying the book for.
    10.) user interface software - Same comments as Ch 8 - probably not what you're buying the book for.
    11.) Representing curves and surfaces - there's some good meat here, most of it pretty timeless.But again, I think the information is contained in plenty of other books, as well.
    12.) solid modeling - some interesting material here that isn't the same old stuff found in every other graphics book.
    13.) achromatic and colored light - gets into the theory of color and different color models.Interesting and useful.
    14.) the quest for visual realism - largely out of date, but some decent information
    15.) visible surface determination - covers a wide variety of algorthims, many of which are more interesting than useful.
    16.) illumination and shading - gives the standard local lighting model.Mostly this is standard information you can get elsewhere.
    17.) image manipulation and storage - discusses filtering techniques, etc.
    18.) Advanced Raster Graphics Architecture - out of date
    19.) Advanced Geometric and Raster Algorithms - Mostly out of date, but with some standard information you can get elsewhere
    20.) Advanced Modeling techniques - fractals, particle systems, etc - doesn't cover much in detail
    21.) Animation - not much can be covered in 23 pages...

    For most people, I would suggest "Real-Time Rendering" as a more modern "survey of computer graphics".

    This is not a book for beginners - there's so much information in this book that none of it is covered with any sort of decent explanation.

    And the code is all really old-school K&R C style with the type of the function arguments declared in between the closing paren and the opening brace.

    The reasons to get this book are:

    1.) To "complete your bookshelf" with a book that all good programmers are "supposed to have"
    2.) As an interesting (but expensive) read on algorithms and ideas that you probably won't use directly, but you may find interesting and learn altative ways of looking at problems.

    5-0 out of 5 stars A thorough coverage of the Computer Graphics world.
    I have found this book to be _the_ most useful book in my line of work yet. I have been involved in computer graphics and software development for about 10 years, and this stands out as the ideal reference book.

    Dont bother with this book if you just want source code. This book is all about explanation of the fundamentals of computer graphics. It is excellent in helping with design descisions and implementation strategies. Dont overlook this book if you are in anyway involved with the creation of a computer graphics application. The theory and algorithms described are old, but these are still used today - interestingly other reviewers seem to think this is bad, its not. It saves you spending months researching a method only to find it was already mentioned in this book, and the benefits and disadvantages are often written well with solid references.

    In my opinion, in Computer Graphics, this is the Bible. The theories and algorithms assist in solving any problem you will find in the computer graphics world. It wont give you the code, but it will give you a solution.

    4-0 out of 5 stars Good book for 3D graphics
    It is a book for the ones who like math, not for general programmers. ... Read more

    Isbn: 0201848406
    Subjects:  1. Computer Bks - Desktop Publishing    2. Computer Books: General    3. Computer Graphics    4. Computer Graphics - General    5. Computers / Computer Graphics / General   


    $63.02

    3D Computer Graphics (3rd Edition)
    by Alan H. Watt
    Average Customer Review: 4.0 out of 5 stars
    Hardcover (06 December, 1999)
    list price: $59.95 -- our price: $52.20
    (price subject to change: see help)
    US | Canada | United Kingdom | Germany | France

    Editorial Review

    The third edition of Alan Watt's 3D Computer Graphics, a bible of computer graphics, includes a CD-ROM full of examples and updated information on graphics and rendering algorithms. The book discusses many of the techniques that have evolved in the seven years since the previous edition was published.

    3D Computer Graphics is a textbook, and it's designed for serious programmers creating graphics applications (not end users). Over the course of 16 sections, Watt introduces the concepts and implementation of computer imaging, from "Mathematical Fundamentals of Computer Graphics" to "Representation and Rendering" and ending with "Image-Based Rendering and Photo-Modeling." The last section, devoted to computer animation, includes methods for linked structures, collision detection, and particle animation (to name a few).

    Although the topics are sometimes hard to grasp, Mr. Watt writes clearly and concisely, making generous use of diagrams to help convey the principles described in the text.

    The accompanying CD-ROM includes over a dozen studies of computer graphics techniques and rendering algorithms. Presented in HTML, the exhaustive studies, each with a matrix of thumbnails, demonstrates the varied achievable results. One minor complaint here: although the thumbnails can be clicked to view a much larger image, the larger versions come in .tif format, which few (if any) Web browsers can view. Users will need another application to view them. Having the large image in .jpg format would have enabled the reader to view it in the already-open Web browser.

    3D Computer Graphics is ideally suited to graphics programmers and researchers working to create new medical imaging devices; geological research systems; virtual structural testing systems for aircraft, cars, and spacecraft; or effects and photorealistic Hollywood animation. --Mike Caputo ... Read more

    Reviews (12)

    1-0 out of 5 stars Very tough
    I am a junior student at Computer Engineering major. I am taking a computer graphics course and unfortunately, the instructor chose this title as the textbook.

    I am not saying it is a bad book or something, but it is targeted to people who have some experience with computer graphics.... (e.g: for people doing graduate studies in computer graphics) As for me, my first encounter with computer graphics in this book made me hate the topic so much. The book makes you feel that graphics involve so much mathematics, especially analytic geometry. It is so hard as an introduction to the topic of Computer Graphics.

    I would not recommend this book at all as an introduction to computer graphics, it may be good for those who have some (actually a lot) of experience in this so advanced topic.

    4-0 out of 5 stars a Disk version is wanted for the text
    This is no doubt a very good book, but as a professor who wants to use it as a textbook, I can't make a powerpoint lecture notes from this book for my class presentation. I would like to have a disk version that goes together with the book.

    5-0 out of 5 stars classic
    I have an earlier version of this book and I've always found it to be one that I return to time and again.It was one of the first three graphics programming books I bought during the same early career book shopping session, it was definately the most useful of the three and it's stayed with me ever since, where other books have been and gone.

    It's generally very easy to read and very informative.It has a good progression of topics that introduce the reader to graphics programming concepts.

    The thing I most like about this is that it covers much of the foley and van dam book, but avoids the many irrelevant sections and is a little more to the point.It's like a more concise reference to that book, which is also one that I would recommend.

    The only thing I don't like about the updated version is the new layout, typeface and style.The old version just seems so much more appealing to me.

    If you program game or computer graphics, then this is a reliable book to have in your collection. ... Read more

    Isbn: 0201398559
    Subjects:  1. Computer Bks - Desktop Publishing    2. Computer Books: Desktop Publish    3. Computer Graphics - General    4. Computer graphics    5. Computers    6. Desktop Publishing - General    7. Microcomputer Graphics    8. Three-dimensional display syst    9. Three-dimensional display systems   


    $52.20

    The Art of Computer Programming, Volumes 1-3 Boxed Set
    by Donald Knuth, Donald E. Knuth
    Average Customer Review: 4.5 out of 5 stars
    Hardcover (October, 1998)
    list price: $164.99 -- our price: $103.94
    (price subject to change: see help)
    US | Canada | United Kingdom | Germany | France
    Reviews (42)

    5-0 out of 5 stars "Check it out"
    I borrowed volume 2 to implement a special data structure.It helped me immensely in that task.But it wasn't the only resource I used.I could not justify spending the money on this book.

    Short of the mathematical treatment, the knowledge certainly wasn't limited to Knuth.In fact, most (all?) of the Art of Programming is a compilation of ideas, isn't it?

    I used a variety of resources.I even used to web.There are some terrific animations that show special case tree rotations for AVL trees or red-black trees out there.

    Knuth will be appreciated by academics the most.Very specialized programmers, such as embedded designers, OS authors, or database designers will likely be the next biggest group of fans.Application developers will be next in line.They mostly depend on APIs to implement the topics for them.And Rapid Application Developers will hate the book.Don't care.Don't need to know.And they don't.So figure out where you are in that list and that's how much you need this book.

    A modern rewrite would definitely nudge me into buying the book.But I just can't force hand on wallet ... to ... shell ... out ... bucks for a book that's already widely available in a variety of formats for free.

    PROS:
    Likely the best mathematical treatment of a computer science subject you will find.No one ties the practicality of CS and abstraction of math better than Knuth.

    Coverage of many core concepts of computer science such asdata structures, big-O notation and efficiency, bit wise arithmetic algorithms, random number generators, etc.

    Classic work.Impress your colleagues by idly leaving the book around.Bonus points:leave it open AND have a copy of Red Dragon nearby.

    CONS:
    Not enough pictures.Seriously.I am a visually oriented person.Two pages of tree rotation diagrams are far more helpful than ten pages of prose.

    The book is type faced as a college text.The typeface is difficult to read.The exercises litter the book and make thumbing through it a bit annoying.

    MIX.This is Knuth's solution to describing algorithms in a universal programming language the audience can understand.Unforunately, the language is assembly designed for a fictional computer.So no one can understand it but equally as well.Actually, any popular assembler experience (Motorola/Intel/PIC) should span the gap nicely.But when's the last time you programmed in assembler?How come?I blew past the MIX examples and looked for better psuedocode elsewhere.

    4-0 out of 5 stars My two cents
    Yes, using MIX is all wrong.Psuedo-code that's intuitively obvious would save
    us so much trouble.But, why not a "TAoCP in FORTRAN-90",
    a "TAoCP" in APL, a "TAoCP" in COBOL, a "TAoCP" in BASIC,
    a "TAoCP" in LISP, a "TAoCP" in ALGOL, a "TAoCP in Ada", a "TAoCP in C", a
    "TAoCP in Java", etc. ??Think of the money to be made re-selling it in every
    possible langauge if there's a market for it?I might even do it myself and
    make some $.Actually, there's no need for a Visual Basic version, etc. because
    I/O, etc. is not the issue.This set is about art, about *algorithms*, so most of
    the high level language specific aspects are irrelevant (except for recursion,
    details like garbage collect, inheritance, polymorphism...). Equally irrelevant is
    worrying about efficient memory usage and the like. Today, memory, disk
    space, etc. are not scare resources.While (being from the old school) I don't
    believe in wasteful code, all people really want today out of algorithms is
    optimal speed.Time and CPU power are the only resources that is still
    constraints.Discussions about sort algorithms which optimize for anything
    else (memory space, etc.) are pointless if they aren't also the most time
    efficient.We don't care!Also, unless you work for the US Census or Social
    Security Administration, you don't care about hardware devices like tape drives,
    so those algorithms are just theoretical mind games. Anyway, please rewrite
    this set in a practical high level psuedo-code with time optimal algorithms
    only.But only the timeless (pun-intended) universally necessary algorithms
    that are always going to be useful.Stuff like searching, data structures,
    hashing,trade offs between techniques. In the future all people will want are
    parallel processing algorithms for distributed environments and perhaps
    eventually quantum computing algorithms for a language built on a CPU which
    only processes QBits. One final thing: wasn't there originally
    supposed to be 7 volumes and only these 3 were completed? What ever
    happened to the rest?Why were they abandoned? I guess I never heard.

    3-0 out of 5 stars Precisely, but let us keep our logic straight.
    From the review by Ekalavya Nishada: "It is true it uses MIX and does not cover the last 20 years of advances in computer science yet but if you cant understand MIX you have no hope of understanding the mathemtical analysis of algorithms in these books nor appreciate a quality book like this."

    But this is precisely the point! Indeed, w/o MIX you won't be able to really read TAoCP, right, but let us keep our logic straight. Do you need MIX for anything other than reading this book? Nope. Does it add anything to the subject matter? Nope (in fact, it detracts from it; C would be more illustrative and realistic.) Is learning it so easy as to make the issue unworthy of bringing it up? No, learning it will take quite a bit of effort. Yet it *is* a precondition to being able to read TAoCP. And, btw, it's not that MIX "doesn't cover the advances of the last 20 years" -- I suspect, it simply has nothing in common with reality, whether today or 20 years ago. Is it worth your time to dig into this piece of gratuitous esoterica simply in order to be able to read the book? Is TAoCP *that* great and indispensable? Everyone will decide on one's own, but personally I think not, not today -- there are now quite adequate alternatives that do not tax the reader unnecessarily. Life is short; its demands are many; not everyone's a tenured professor...

    (And to propose that the only alternative to TAoCP is "O'Reilly cookbooks" is a wild exaggeration: there are just as in-depth *yet readable* books to choose from. Twenty years ago, maybe this wasn't the case, but life didn't stop then -- our then-beloved books and us, we all have to face a threat of obsolescence ; let's not mistake our sentimental rememberances of the past for eternal verities.) ... Read more

    Isbn: 0201485419
    Sales Rank: 12393
    Subjects:  1. Computer Bks - Languages / Programming    2. Computer Books: Languages    3. Computers    4. Programming - General    5. Reference - General   


    $103.94

    Concrete Mathematics: A Foundation for Computer Science (2nd Edition)
    by Ronald L. Graham, Donald E. Knuth, Oren Patashnik
    Average Customer Review: 4.0 out of 5 stars
    Hardcover (28 February, 1994)
    list price: $64.99 -- our price: $51.45
    (price subject to change: see help)
    US | Canada | United Kingdom | Germany | France
    Reviews (24)

    3-0 out of 5 stars A pourry of combinatorics
    I want to start saying that this is a book designed for Engineers, not for Mathematicians. It focuses on the tecniques, not on the arguments. This is not a book about combinatorics, it is a wide raging introduction (it lacks on definitions, and his proofs are a lot far away from mathematical ones). The Enegineers can use this book as a good reference. The Mathematicians can improve their lateral thinking, for them (well: us) it is book about problem-solving strategies.
    I will never use this book as a textbook for a graduate/undergraduate course, it can be helpful if used with another book about combinatorics: when you study a combinatorial object, you can read from this book the techniques it involves.
    The exercises are extremely exciting, when I read this book I spent a lot of time about its exercises (proportion read:solve = 1:3), and they led me to interesting results.

    4-0 out of 5 stars Steep learning curve, the definitive prerequisite for TAOCP.
    Why I got this book:
    It's a great feeling to know how computers work, when I decided that I want to make a career and a life out of computers, as its truly a passion for me, I delved deeper, discovering the true beauty in the Science part of Computer Science, so I decided to get Donald Knuth' "The Art of Computer Programming" - to describe that seminal, huge work, it's like biting more than you can chew while trying to drink from a fire hose, moreover, the technical and mathematical prerequisites for the work are sometimes too demanding, they require a huge amount of experience with discrete mathematics, although I had some lectures and read some books, none came close "Concrete Mathematics", it covers, from ground up (though with a dangerously steep learning curve) a lot of discrete mathematics topics, it is by far the most extensive work I've read about Sums and really teaches the algorithmic problem solving thinking skill the authors preach so much about, with small amusing comments written by actual students of this course, a comfortable format, and very good writing skills, you can feel these guys are great professors who enjoy this material and are passionate about teaching it.

    Recommended, though some better, less steep, introductionary text books are probably out there.

    Enjoy.

    3-0 out of 5 stars Only one problem with this textbook
    Basically, I like this textbook. The material is interesting, the way the authors presented the material is inspiring, and they provided a lot of jokes to make even studying for exams not that boring. But there is one big problem which made me decided to rate this book only 3 stars instead of 5 stars: the authors like to use non-standard notations. For example: m\n means "m>0 and n=mk for some integer k". One of the worst thing in scientific world is writing things others cannot read, and the authors did this by introducing many strange notations. These things makes the good work sometimes almost unreadable. This is not computer systems in which we use "cp" for the copy command and "cd" for change directory command.

    What a pity the authors did that. This textbook will be perfect without those strange notations.... ... Read more

    Isbn: 0201558025
    Sales Rank: 46706
    Subjects:  1. Computer Bks - Languages / Programming    2. Computer Science    3. General    4. Mathematics    5. Programming Languages - General   


    $51.45

    The Stanford GraphBase: A Platform for Combinatorial Computing
    by Donald E. Knuth
    Average Customer Review: 3.0 out of 5 stars
    Hardcover (30 November, 1993)
    list price: $64.99 -- our price: $57.08
    (price subject to change: see help)
    US | Canada | United Kingdom | Germany | France
    Reviews (1)

    3-0 out of 5 stars Knuth's eccentricity discourages beginners
    I found that Knuth's reputation for eccenctricity gets in the way of actually getting to the meat of the book.For example, getting the programs to compile under Windows was not as straightforward as it could be (although not that difficult).Much harder was to get used to the idea of using CTANGLE and CWEB in order to get Graphbase to a state where you can actually compile it.

    It does not help at all that Chapter 3 of the book is when how to install Graphbase is actually discussed.Just for these alone I have to give the book a 3 star rating.Perhaps I will change this once I have had the opportunity peruse the _real_ contents of the book. ... Read more

    Isbn: 0201542757
    Sales Rank: 879928
    Subjects:  1. Algorithms (Computer Programming)    2. Combinatorial Analysis    3. Combinatorics    4. Computer Books: Languages    5. Data processing    6. Graphic Methods    7. Mathematics    8. Programming - General    9. Stanford GraphBase    10. Computers / Programming / General   


    $57.08

    Sams Teach Yourself Visual Basic 6 in 21 Days
    by Greg Perry
    Average Customer Review: 2.5 out of 5 stars
    Paperback (13 August, 1998)
    list price: $29.99 -- our price: $19.79
    (price subject to change: see help)
    US | Canada | United Kingdom | Germany | France

    Editorial Review

    "Wordy and plodding, but a nicely paced introduction to the Visual Basic world."

    This book has all the earmarks of a series designed in-house. This is a bad thing. It means the book contains elements that obviously are the result of compromises made by people sitting through endless meetings and eventually settling on the most stubborn person's ideas because, well, everyone was tired and wanted to go home and watch the Pacers game on TV. And none of those people actually have read any computer books, let alone tried to learn a programming language from one.

    The in-house style earmarks are aplenty: the ubiquitous Do and Do Not sidebars; Note and Tip boxes; the New Term paragraphs; Summaries; Q&As; Workshops; and end-of-chapter quizzes and exercises. Gadzooks. Whatever happened to an experienced programmer trying to explain the best way to learn something in well-written, down-to-earth, right-to-the-point prose? Well, you won't find it here, not in your allotted three weeks.

    On the plus side, this book does have you create your first program on page 24 (day one), which is pretty quick. It's not really a program, though--it's a "project," or something that Visual Basic can whip together for anyone who's ever used one of the Windows wizards. Is that cheating? I don't know. But I'll give Greg Perry a happy face for letting the reader actually do something at that early stage of the game.

    As with any book on Visual Basic, the decision is whether to document the programming language or the application environment first. Like everyone else, Perry documents the environment for the first week or so. (At which point I'm beginning to wonder whether any book will bother to document the programming language itself.) And I do admire his logical flow; the days and weeks build on each other nicely. The pace is pretty even throughout the book.

    On the downside, the book has no soul. It's really routine and, well, kind of boring. The programs lack some of the insanity you would find in Wally Wang's Dummies book. But I do like the way Perry presents the steps--at over 800 pages, he gives his steps the space they need. Not bad, but, peppered with some insights, it could have been better. --Dan Gookin ... Read more

    Reviews (82)

    2-0 out of 5 stars The worst VB 6.0 book a true beginner could ever buy!!!
    I have been struggling to learn VB 6.0 with this book, and I will tell you, it is terrible.The book starts out great, with a very thorough explanation and it doesn't overwhelm you.But, all the details it tells you not to worry about come back to haunt you as you progress.They don't just come back to haunt you; they slam you hard.This book goes from a snail's pace to WAYYYYY too fast, in a matter of pages.The book leaves out a ton of details. In one instance, you are asked to create a form with option buttons (radio buttons) that respond to the user clicking them with messages; well, they never even tell you how to write the code for an option button in the section that was supposed to cover it!!!!!!Horrible stuff here, people.To make matters worse, the book is strewn with a ton of errors!The very first problem they have you code has a mistake in it, that only a more advanced programmer would pick up on.The errors continue thoroughout the book and, in some cases, the whole program is completely out of wack.Not only this, but there are not many good sample problems to solve and the examples they give are incomplete, which only adds to the confusion.Simply do not buy this book if you are a true beginner and if you are not, then why would you need this book anyway????I cannot recommend this at all, and am only giving it 2 stars based on the fact that it has a decent introduction to the VB world, but the substance is flawed.This book almost made me hate VB.Please stay away everybody:(

    2-0 out of 5 stars Not even worth it for free
    My company has a subscription to Safari Books Online, so I decided to see what Visual Basic books were available rather than buy my own book.I found this book and decided to try it out.What a mistake!

    The key to learning programming is to get as much hands-on practice as possible.Therefore, it is critical that programming books offer as many coding exercises as possible.This book doesn't have enough coding exercises, and many of the ones it does have do not work!I've double-checked my code to make sure it matched what is in the book, and I still get the "compile error" that other reviewers have mentioned.Worse yet, I checked the "Updates & Corrections" link at the Sams website and found nothing.

    In short, don't waste your money.I'm frustrated enough and I got it for free!

    3-0 out of 5 stars Is errors
    Lots of syntax errors that will really trip up a beginner.They say that learning a programming language is easier than a language like Spanish or French, however in programming, your whole entire program is usless if one word is mispelled and you can't continue until it's fixed.

    For example: there's a bonus project at the end of every chapter that takes about an hour to go through. Then, when you're finally done, BLAMM!! COMPILE ERROR!!! That's one whole chapter that you won't learn anything. They're not just typos either. There is actual code that doesn't do what he sais that it's supposed to and you'll have to decypher it on your own.

    This guy seems like a good teacher and this book covers alot of importance, but errors and errors. If you're at least 6 months or more experienced with VB you might like this. Just don't pay attention to anything in the book. ... Read more

    Isbn: 0672313103
    Subjects:  1. BASIC (Computer program langua    2. BASIC (Computer program language)    3. Basic (Programming Language)    4. Computer Bks - Languages / Programming    5. Computer Books: Languages    6. Computers    7. Microsoft Visual Basic for Win    8. Microsoft Visual Basic for Windows    9. Programming Languages - Visual BASIC    10. Computers / Programming Languages / Visual BASIC   


    $19.79

    1-13 of 13       1
    Prices listed on this site are subject to change without notice.
    Questions on ordering or shipping? click here for help.

    Top 

     
    Books - Computers & Internet - Programming - Introductory & Beginning - Computer Science for Real Men   (images)

    Images - 1-13 of 13       1
    Click image to see details about the item
    Images - 1-13 of 13       1