Computer Science Books
Related Subjects: Scientists
More Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250

Used price: $35.96

Complete explanations of many of the potential problems when performing floating point operationsReview Date: 2007-08-11
Essential for anyone serious about modern day computingReview Date: 2005-02-26
Informative, and even entertainingReview Date: 2002-05-29
Much Better Than the TitleReview Date: 2001-08-22

Used price: $42.93

Object Oriented Programming ExplainedReview Date: 2000-06-20
Nice book for OO conceptsReview Date: 2000-08-08
One objective -- OOP ideas and techniquesReview Date: 2000-06-19
Excellent Coverage of Java and OO Concepts for the NoviceReview Date: 2000-06-21
Code snippets are surprisingly concise, and free of annoying syntax errors that could confound the novice developer.
The book begins with several chapters introducing basic OO concepts and gradually introduces and increasing amount of Java code and delving into the Java API.
The middle portion of the book covering the core concepts of OO development (Inheritance, Encapsulation, and Polymorphism.) It then goes on to cover slightly more advanced concepts such as Exception Handing, socket programming with TCP/IP, JDBC, multi-threading.
The book does provide good coverage AWT model and GUI construction. Sadly, the it does not include coverage of Swing.
To date, it's the best ground up coverage I have found for both Java and OO basics. Experienced C/C++ developers may find it a bit slow paced.
For those interested in following up with a more advanced guide for Java 2 certification, I'd consider A Programmer's Guide to Java Certification by Khalid Azim Mughal, Rolf Rasmussen. It's a great certification prep and also a good core language reference.

Everyhting you need to know as an intro to marine scienceReview Date: 2007-09-02
Oceanography Text BookReview Date: 2005-09-28
Best textbook I've ever read.Review Date: 1999-03-16
One of Tom Garrison's StudentsReview Date: 2002-08-26

Used price: $3.90

Wrap your mind around this!Review Date: 2003-09-26
Talk about a shattering Sci Fi book. This is groundbreakingReview Date: 2003-08-31
Can't wait until the next book comes outReview Date: 2003-06-24
I recommend this book not to just SCIFI fans, but people who just want a great story that they will never forget.
1/x personal reviewReview Date: 2003-03-03

Used price: $72.13

A must have for analog designers.Review Date: 2008-06-05
You'll have to tear it from my cold, dead hands...Review Date: 2004-12-16
It isn't a cookbook, although it does include many useful concrete design examples. It is more of an applications problem-solving guide. I've often found that some of the most useful op amp design information is buried in specific device datasheets and application notes, and have often found myself wishing someone would extract all of those nuggets, organize them, fill in the gaps, and publish them. As I read through this book, I found many such nuggets (primarily derived from Analog Devices' datasheets and app notes), which I had previously regarded as hidden treasure, uncovered only by tedious slogging through numerous datasheets. This is not, however, a re-packaging of previously published app notes. The chapters are comprehensive, well-written, and well-integrated.
Those interested in audio applications may remember that the original edition of the author's Op Amp Cookbook contained an extremely useful chapter on audio circuits. In the second edition, this material was extracted and published in a separate book, which (unfortunately) went out of print and has become hard to find. You will be happy to note that the new Applications Handbook has excellent coverage of audio op amp applications and design principles.
A great reference book for anyone interested in op ampsReview Date: 2006-02-21
Anyone interested in analog circuit design in general, and op amps in particular will enjoy this book. It is a good reference for any engineer's bookshelf.
Excellent Reference: Technical and HistoricalReview Date: 2005-08-02

Used price: $57.98

Finally, everything in one place.Review Date: 2003-02-05
An excellent book on loop based optimizationReview Date: 2003-04-14
to compiler design theory. This book is a clearly written
discussion of the issues involving loop optimization and
dependence analysis. While this book also covers scalar
optimization issues, it is naturally complemented by Steven
S. Muchnick's excellent book "Advanced Compiler Design and
Implementation".
Randy
Allen has spent many years implementing a variety of
compilers for supercomputers and hardware design languages.
While
Ken Kennedy has published seminal theoretical work on
compiler optimization, he has also been involved in hands on
implementation
as well. The experience of these two authors
results in a book which covers the huge body of knowledge in
compiler
optimization and provides this knowledge in a
practical form that can be used by software engineers working
on compiler
design.
For anyone working on modern compilers that require sophisticated
optimization features, this is an important
reference work.
As with Muchnick's book, I have owned this since it was first
published. Rereading it reminds me of
what a gem this work is.
Must-have for compiler writers and processor designersReview Date: 2007-01-15
It centers heavily on Fortran - even today, a mainstay of scientific computing and an active area of language development. Today, just as 50 years ago, the language's straightforward structure makes detailed behavioral analysis relatively easy. That's especially true in handling the array computations that soak up so many dozens (as of this writing) of CPU-hours per second on todays largest machines. There's far too much to summarize here, but A&K cover a huge range of processor features, including caches, multiple ALUs, vector units, chaining, and more. C code gets some attention as well, much needed because of the cultural weirdness around array handling in C. In every case, the focus is on the real-world kernels that need the help and on explicit ways of identifying and manipulating those code structures. As a result, the authors disregard the unreal situations that sometimes arise, e.g. in
"while (--n) *a++ = *b++ * *c++;"
Yes, the arrays pointed to by a, b, and c can overlap. But the pointer a can also point to a, b, c, or n, somewhere in its range - and likewise for pointers b and c, or all three. There is essentially no limit to how bad this can get, e.g when n is an alias for a, b, or c. Yes these are rare situations and generally errors - but I've seen on-the-fly code generation in production environments, so even the A&K example isn't as bad as it gets. I admit these to be pathological cases, though, better suited to an 'Obfuscated C' contest than to a compiler textbook.
The real disappointment comes from the section on compilation for Verilog and VHDL, and that disappointment may be a matter of emphasis only. The authors focus heavily on the strangeness of four-valued bits, which exist in Verilog and VHDL simulation, but not in synthesis. I.e., not in what really matters to a deployed application. The real challenge lies in compilation of C or Fortran into gates, a topic that the authors barely skim. That, however, is still a field of research exotica. It should be mentioned in a general book on compilation, as it is here, but awaits a text of its own.
All you processor designers out there should read the title a little differently. You should read this as "Modern Architectures for Optimizing Compilers," but you probably worked that out for yourself. If you have the luxury to define your own memory structure, all that analysis of memory access will give you plenty of ideas for your next ASIP. It will certainly give you lots of ways to quantify the behavior of your target applications, so you'll know just how to get the most MIPS per Mgate, including hard limits on how much hardware paralellism can actually do you any good.
All architects of performance computing systems, hardware or software, need this book. Even application developers can learn better ways to cooperate with the compilers and tools that run their codes. It has my very highest recommendation.
//wiredweird
Very readable, very specificReview Date: 2005-08-11

JEKYLL AND HYDE - THE WAR YEARS - VOL 3Review Date: 2004-05-08
This diary ends on 9 April 45. According to the introduction he continued writing through at least 22 April 45 when he and his family moved into the bunker. It would be interesting to read any additional entries through 22 April -- and beyond if available -- as the situation became more hopeless. The book does, however, conclude with an epilogue that included his and his wife's last letters to his stepson, the only member of the Goebbels family to survive the war.
The term "Jekyll and Hyde" was easily applicable to the first diary and not as easily applicable to this diary. However there term is somewhat applicable. The man -- despite the obvious problems at the fronts -- still has hope. Maybe the hope is flickering but he still has hope. He does realize that military victory is now unattainable but maybe if the military can score one or two major successes they can finagle some kind of a negotiated settlement more favorable than "unconditional surrender". This thought appears to be running through the Nazi government during the February - April 45 timeframe covered in the book.
Whereas in the previous two diaries great words are written about great events that resulted in great victories, this time Goebbels write great words about not so great events. The brave German military puts up great resistance to stall an American, or a British, or a Soviet offensive. Nazi forces counterattack and push eight or ten or twelve kilometers. The war is not lost yet! Why are such events important? The longer the war goes on and the more casualties are inflicted upon the enemy maybe the people in the West will grow tired and more conciliatory towards a less than complete defeat of Germany. Or maybe by stretching out the war maybe the Nazis can finagle a separate settlement with the Soviets. Or maybe the western Allies will realize how dangerous the Soviets are -- who are, after all, spreading its Bolshevic tentacles over eastern Europe contrary to previous agreements. Goebbels is hoping that something -- anything -- will happen to preclude what looks like an inevitable defeat.
Reading the book one realizes how little hold the government actually had over the people. Even in the previous diaries there were criticisms of the government that was voiced by the people that Goebbels acknowledged. Of course, in 1945 there was little the government could do. The people were unhappy about the air raids for which the government generally and the Luftwaffe specifically had no answer. Althought Goebbels still disliked several of his counterparts in the government like Foreign Minister Ribbentrop his greatest condemnation falls upon Hermann Goering. He feels Goering's corrupt and inept leadership of the Luftwaffe is the main reason why victory that appeared so close in 1941 is now so far away in 1945. Yet he still writes that even as late as April 1945 if there are major personnel changes in the military and the government National Socialism could still be saved in Germany.
He is not beyond criticizing is Fuehrer. He still thinks Adolf Hitler himself can do no wrong. The problem is that Adolf Hitler has surrounded himself with wrong people and for whatever reasons will not get rid of them. Although Hitler agrees with almost all of Goebbels suggestions for fixing the government Hitler does virtually nothing. Goebbels is frustrated.
It is also interesting how his attitude toward the inferior Slavic Soviet forces has evolved. He is still convinced the Soviet military is -- man for man -- inferior to the German soldier. But the Germans are being overwhelmed by superior numbers and machinery being thrown at them by the Allies. But he is impressed with Stalin. Once upon a time he and others had scorned Stalin for the massive purges of the Soviet military in the late 1930s. At one point in the book he relates reviewing the biographies of the leading Soviet military leaders. The Soviet military leaders were all under the age of 50 and were die-hard Bolshevics who would do anything to win. This was a big reason why the Soviets survived the seemingly hopeless situation in 1941 and why they were winning the war in 1945. In contrast, the German military leaders were old and had no deep political or philosopical ties to National Socialism. If they won the war, great. If not, oh well. Goebbels concludes that maybe Stalin was not so crazy for purging his military and after the war the Nazis should do likewise with their military.
The popular perception of Hitler and his entourage is they were living in an insane fantasy land as the Soviets closed in on Berlin. Unfortunately, the last three weeks of Goebbels life were missing so maybe there was some degree of truth to that perception. But in the book you see a somewhat different view. Yes the war was going bad but he had to grasp at some kind of hope -- whatever that may be. Goebbels recognized that if the end is near it would be a catastrophic defeat. Therefore his only hope was to stretch the war out as long as possible and hope for some miracle. Hitler himself is not so much a ranting, raving lunatic (many of the accounts of Hitler's final days were written by witnesses who were the target of his anger and thus had a reason for depicting his as insane) as a man who is angry with his generals but is resigned to his fate.
As we know, neither Joseph Goebbels nor his Fuehrer survived the war and neither man was able to write their autobiographies explaining why they did what they did. Perhaps the closest thing to a Hitler autobiography would be Mein Kampf that depicted his early life and early political battles through 1924 and his "Table Talks" -- a series of monologues recorded between 1942 and 1944. For his Propaganda Minister these diaries is the closest we can probably hope to find to an autobiography. These "autobiographies" may be distorted but they are distorted in their own words.
Jews and Poles Remain Scapegoats; Goebbels Perceives Actual Soviet Intentions Review Date: 2006-10-04
However, Jews were not the only scapegoats; nor were they the only ones blamed for starting WWII. On March 18, 1945, Goebbels referred to Poland's losses to, of all things, "...Polish arrogance in August 1939..." and having failed to accept the "...extraordinarily generous [German] proposals at that time..." [Sic!] (p. 165). Goebbels engages in an even more overt blame-the-victim mentality towards Poles when, in his entry of March 30, 1945, he quips about: "...Poland, which began this war anyway..." (p. 274). In addition, on March 26, 1945, Goebbels mentioned "...Poland and Russia, the most primitive countries of Europe." (p. 233).
In other contexts, Goebbels had various scapegoats coming in handy, as summarized by historian Trevor-Roper: "...castigating whole classes, whole groups, whole nations: the miserable bourgeoisie, the generals, the Luftwaffe, the Churches, the Jews, the Swiss, the Swedes." (P. xxx).
It is both sobering and sad to realize that someone of Goebbels's character had a much better grasp of Soviet intentions that did Churchill or Roosevelt. Goebbels even quoted a British newspaper in this regard (March 3, 1945): The Daily Mail just made a truly sensational admission; it says that for two years now I have been the only person to analyze the case of Poland correctly and forecast accurately the way in which England would succumb to the Kremlin. Churchill comes in for criticism of rare severity." (p. 30).
In stark contrast to the appeasing attitude of western politicians towards "Uncle Joe" Stalin, Goebbels commented (March 9, 1945): "In the region which was formerly Poland the Soviets are pursuing their bloody reign of terror undeterred by Anglo-American protests. They take not the smallest notice of Churchill and Roosevelt. A new wave of arrests is sweeping across the country, the victims being mainly the Polish nationalists." (p. 88). Also (March 21, 1945): "The Soviets are going quietly on deporting Poles to the interior of Russia. They take not the smallest notice of the Anglo-Americans." (p. 190).
The situation under which Poles found themselves was obvious to Goebbels: (March 11, 1945): "Stalin is firmly determined--and no one can understand this--to negotiate with no one over the Polish question. How rigidly he has already imposed his will is evident from the fact that Mikolajczyk, the former Polish Minister-in-exile, now proposes to submit to the dictates of the Kremlin. Under protest admittedly, but what value are such protests today? Anyway the only choice for the Poles is either to be exterminated by force or to bow the Kremlin." (p. 100).
Goebbels saw right through the Communist smear campaign directed against non-Communist regimes (March 19, 1945): "It is well known that Communists always call everything fascist that is not Communist and, under the guise of a struggle against fascism, exterminate all forces opposing bolshevization of a country in which they have any influence...According to Pravda, the London Poles are a gang of degenerate landowners rejected by the Polish people. In short, Pravda's general tone is one hardly customary even between enemies, let alone between allies." (p. 172).
On March 22, 1945, Goebbels discussed the Soviet-staged trials, in Bulgaria, of two witnesses who had been present, two years earlier, at the site of the Katyn massacre (p. 206). The two priests were tearfully forced to recant their blame of the Soviets.
Goebbels repeats certain themes throughout this latest set of his diaries. He seems obsessed with the incipient British loss of their worldwide colonial empire, and that regardless of the outcome of the war. He thinks that the new German jets can enjoy a 5:1 kill ratio over the Allied propeller-driven planes, but recognizes that Germany can produce far too few jets to make a realistic impact in the air war. He repeatedly suggests that the Germans should have withdrawn from the Geneva Convention. This would have allowed the Germans to kill Allied POWs in reprisal for the German civilians killed by Allied bombing raids. It also would make the German soldiers fight harder, aware of the fact that the Allies would reciprocally take no prisoners.
Information ministers are all alikeReview Date: 2003-08-15
It is very hard to judge Goebbels as a man from these pages. Even given that they were unedited, this was intended to be the record of a Reich that won the war. This is not a private journal in the sense that he was always intending to rewrite it for history-- and presumably he was smart enough to realize that if he was still around to rewrite it for history then the Hitler regime had in some measure made it successfully through the war.
What is interesting for the armchair historian are the places where his real feelings break through the propaganda. Presumably these are the moments that would have been edited out for publication. At times he whines about other nazi officials, at another point he sarcastically remarks that a plan of Hitler's would have been brilliant had it had any chance at all of succeeding.
He was clearly a bright man (if an evil one), and it is interesting to watch his mind work in what were obviously (even to him) the final days.
A glimpse into an ugly mindReview Date: 2003-01-22
So I rated it a "5", but it hardly matters. I don't think anyone will read Goebbel's diary because it's "popular."
My reactions to this book were mixed. I found my opinion of Goebbels as a man and a mind considerably lower after finishing the book. Yes, I knew beforehand that he was a recalcitrant Nazi and mass-murderer. On the other hand, I've read Albert Speer's books, and he always spoke admiringly of Goebbel's intellect. I respect Speer's intellect highly, but I must say that he was wrong about Goebbels. Goebbels in this diary is an ugly, sordid, vicious little man, repeating the same tired mantras again and again, transparently trying to varnish his image for history, and sniping and gossipping about everyone around him. (But then, Speer found himself to be dreadfully wrong about Hitler, too.)
Intellect? I hardly found myself able to discern one in this mess.
Still, I'm glad I read the book. It adds another dimension to my understanding of the Third Reich, and serves as a counterbalance to the other accounts I've read.
But I wouldn't call the experience of reading this book enjoyable.


The clearest, most comprehensive survey of the fieldReview Date: 2008-01-26
No other book approaches the clarity and comprehensiveness of this book.
When you try to read most literature about parsing, authors tend to throw around a lot of terms without explaining them. What exactly is a "deterministic" parser, a "canonical" parser, a "directional" parser? Grune and Jacobs explain every one of these distinctions lucidly, and put all known algorithms in context of how they compare to the rest of the field. How do the algorithms compare in what languages they can parse, how fast they are, and how much of the work can be done ahead of time? The book addresses all of these trade-offs, but doesn't stop at asymptotic complexity: in chapter 17 (the comparative survey), they note that general parsers may be a factor of ten or so slower than deterministic methods, even though both are linear. This high-level overview and comparative survey are something I was desperately seeking, and I've found nothing comparable to them anywhere.
There is also a lot of important background information that other authors tend to assume you know: for example, did you know that when authors say "LL" they almost always mean "strong LL" unless they specifically say "full LL?" Are you totally clear on the difference between strong LL, simple LL, and full LL? If you're not sure, Grune and Jacobs will give you all the explanation you need to fully understand.
This book strikes a perfect balance between breadth and depth. All significant algorithms are covered, most with enough detail to fully understand and implement them, but Grune and Jacobs punt on less practical material like proofs or rigorous formal descriptions. That information is never more than a citation away though, thanks to the 417-entry annotated bibliography, which gives you not only references to source material but a paragraph or two describing their key results.
I couldn't be happier about adding this book to my bookshelf of compiler books -- it quickly became the book I refer to most often, and I thank Grune and Jacobs for this superb guide to this vast and diverse field of computer science.
make it approachableReview Date: 2002-10-07
This edition is NOT available on-lineReview Date: 2008-01-22
available for free onlineReview Date: 2006-01-05


BrilliantReview Date: 2002-02-28
from The Philosophers' Magazine (9)Review Date: 2000-01-19
from "Ends and Means"Review Date: 2000-01-19
Philosophy and Computing: An Introduction is Luciano Floridi's wide-ranging account of the philosophical aspects of computers, the Internet, and digitisation in general. It is philosophy in quite a broad sense of the term, including both some relatively technical (for an introduction) sections on elementary computation theory, and many observations of a more sociological nature, examining how computer use is changing our ways of thinking and working.
Review in the New ScientistReview Date: 1999-11-03

Used price: $0.46

Practical Data Structures in C++ Roma 6.03.2002Review Date: 2002-03-06
le principali caratteristiche delle strutture implementate in C++.
L'unico difetto - non imputabile all'Autore - sta nel linguaggio
adoperato, oramai piuttoso obsoleto e lontano dall'attuale standard ANSI.
Perchè la Wiley non invita il dr Flamig a pubblicare un aggiornamento dei suoi ottimi libri? Sono sicuro che diventerebbe un best-seller!
In ogni modo, anche cosi' è altamente raccomandabile ai programmatori di ogni livello, perchè contiene un'infinita' di
varianti e suggerimenti e,soprattutto, il codice completo che mostra come realizzare in pratica quanto appreso nella teoria.
-
A very good C/C++ bookReview Date: 1999-02-04
I don't understand why the codes in ch8 don't work.Review Date: 1997-12-04
Practical Data Structures in C++Review Date: 2001-04-06
Related Subjects: Scientists
More Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250
This book begins with those issues and then explores them in the context of the IEEE floating point arithmetic standard. The treatment is extensive, going far beyond the basics one would normally cover in a numerical methods class. There is additional coverage of representations of numbers in the C programming language as well as how Sun has implemented rounding in the Java programming language and how it differs from the IEEE requirements. Some of the technical detail would be considered to be arcane by most people, but as the Intel floating point error demonstrated, no flaw in computer arithmetic or feature that gives "unusual" results can be considered harmless.
If you program solutions that are reliant on the accuracy of floating point operations, then this book is one you should study. Short and to the point, it contains complete explanations of some of the potential problems that you could encounter when performing floating point operations.