IT programming books related reviews
Title: The Guru's Guide to Transact-SQL
Publisher: Addison-Wesley Professional
Authors: Ken Henderson
Rating: 5/5
I like this book because it's honest. The author is obviously more than just a DBA -- he's obviously a software craftsman in his own right. This book combines a very deep knowledge of SQL Server and Transact-SQL with best practices and sound software engineering techniques to produce the best database book I've seen in a very long time. The problem with most developers learning SQL is that they tend to approach it using a 3GL mindset. The problem with most DBAs is that they tend to not be very good software developers. Mr. Henderson is obviously a skilled developer as well as an expert DBA, and his book shows that. Highly recommended.
Title: MCDBA, MCSE, MCSD, MCAD Training Guide (70-229): SQL Server 2000 Database Design and Implementation
Publisher: Que
Authors: Thomas Moore, Ed Tittel
Rating: 4/5
This is a very useful book, and it helped me both on the job and the exam. The practice exam was especially beneficial, as some of the questions on the real exam happened to be from the practice exam. Good advice on what to concentrate on in your studies. Together with Transcender, this book really prepares you for the exam.The only problem with this book is an excessive number of typos which kind of hindered the learning process.
Title: SQL: Visual QuickStart Guide
Publisher: Peachpit Press
Authors: Chris Fehily
Rating: 5/5
I would recommend this SQL book for acadamic classes to use it. As most of the SQL text book out the market really confuse student a lot without practical examples on how to use it. This book explains in details in a qucik and visul way. Students can also use this book as reference on how different database work with SQL. Excellent SQL book i have never seen before. Thanks for the author, Chris Fehily who did the great job on it.
Title: Macromedia Dreamweaver MX 2004 with ASP, ColdFusion, and PHP : Training from the Source
Publisher: Macromedia Press
Authors: Jeffrey Bardzell
Rating: 2/5
I bought this book upon seeing all of the wonderful reviews it was given here on Amazon. I had been designing web pages professionally for about a year, and was ready to make the move to dynamic development. I had only a little knowledge of web programming and attendant technologies and thought this would offer the best place to begin. Unfortuntely for me, it was a little too simplistic. The book is mapped from beginning to end on an imaginary site, Newland Tours; the reader follows along, doing the steps given, to turn the site from static into dynamic. The problem for me was two-fold. I learn by understanding the fundamentals, and theory, first, and then by trial-and-error. This book allows for neither. The author barely scrapes the theory or "why" behind any of what is shown; in fact at one point he states that it would be beyond the scope to do so - which is precisely the trouble with much of the book, everything one might want to know seems to be beyond the scope. Much of the book is "do this, do that, save and close." If you make a mistake, you can fix it easily enough by loading the completed page - but this proves to be a double-edged sword. Since the fundamentals of structure and syntax have not been thoroughly realized, the reader may feel as if he has no idea of what went wrong in the process, and it becomes tempting to load the finished pages and move on. In fact, the author encourages this in several spots. So those like me, who like to explore and learn from our mistakes are rather left by the wayside, ironically, in the book's attempt to make itself more newbie-friendly. Additionally, the pages are bloated with disruptive screenshots, but the code is often obscurely placed, with its attendant notes even more buried inside a paragraph of "advice." This advice follows every single step in the book, but is so overwritten that it fails to convey its intentions in many cases. A paragraph may read like this: "You have to ... You have to ... You have to ... And you have to ..." Again, for a person who learns by trial-and-error, this is slog-through material. Finally, it was an unfortunate publishing choice (and perhaps not the author's) to try and cover all three scripting languages in one introductory book, particularly one so overly simplified as this - in fact it doesn't make any sense at all. It's akin to trying to learn algebra, geometry, and trigonometry concurrently. It's confusing, annoying, and most often results in skipping or skimming over large chunks of text, even pages and sections. The fact that every one of the author's examples is given in ASP, and that PHP is on several important occassions almost ignored (the form-to-mail script, for instance, is hugely underwritten, with the flimsy excuse that it is too involved to go into) doesn't help. If you -really, really, really- are clueless in the realm of dynamic web programming, and you like to have someone map everything out for you, and you don't necessarily feel the need to apply this to your own site, but rather just want a general overview to gain some familiarity, this book will be useful (if not helpful). However, if you are actually hoping to build your own site dynamically after going through this book, you might want to consider buying one of these, instead:Sam's Teach Yourself PHP, MySQL, and Apache All-in-One ;
PHP and MySQL Web Development, by Welling/Thomson, second ed.-- or any other book suited to your language of choice (ASP, CFML).Both are much more informative and far more open-ended.
Title: Google Hacks
Publisher: O'Reilly
Authors: Tara Calishain, Rael Dornfest
Rating: 5/5
This is a really fun book to read. There are some great ideas and tips available to do things you never would have imagined possible with Google. Highly recommended for anybody who uses Google extensively.
Title: OCA/OCP: Introduction to Oracle9i SQL Study Guide
Publisher: Sybex
Authors: Chip Dawes, Biju Thomas, Chip Dawes, Biju Thomas
Rating: 4/5
There is no such thing as an error free technical book, but this one sets a new high-water mark for errors. Don't even begin without incorporating all the changes from the errata - which cover perhaps 3/4 of the errors. And there are even errors in the errata! The book has lost so much credibility with me that I find myself reading with considerable skepticism. Fortunately I have several years of Oracle SQL experience, so if something looks suspicious I just go to OTN to check. All that said, the book is well designed as far as subject presentation (tho I would move data types to beginning), uses lots of clear (& usually correct) examples, and covers most of the material needed. I would probably purchase it again.
Title: Optimizing Transact-SQL : Advanced Programming Techniques
Publisher: SQL Forum Press
Authors: David Rozenshtein, Anatoly Abramovich, Eugene Birger
Rating: 1/5
My first problem with this book is its rather dry prose. It puts me to sleep often, and that's saying something for a 100+ page book. Second, the code examples are not usuable in the real world. They're difficult to read, slow, and unnecessary. CASE is a much better approach than characteristic functions. It's faster and more readable. The techniques this book shows will perform poorly against large tables. You can't cross join two huge tables and expect it to magically run fast. It won't. These techniques created a bit of buzz when they were first published way back in '92, but their value now is really only one of historical interest. Since CASE was added to Transact-SQL (an ANSI '92 addition), there's little need for characteristic functions. Moreover, other authors have introduced means of solving positional problems that don't involve cross joins. Essentially, the techniques presented in this book are obsolete, so a book written for the sole purpose of documenting them is of little value to the modern T-SQL developer.
Title: PHP and MySQL Web Development
Publisher: Sams
Authors: Luke Welling, Laura Thomson
Rating: 5/5
This is an excellent book. Well, that's not much of a review, so let me explain what makes it so excellent.I was not a programmer when I read it, but I can now confidently code fairly interesting things. I had an objective in mind, but I didn't know how to create it. Now I do, so I saved a few thousand dollars on hiring someone else.I knew what object-oriented programming was, but didn't know what power it hid inside. Now I can harness the power of PEAR and phpclasses.org. Accessor functions was quite an eye opener for me. Please don't laugh :-).I had a faint understanding of C, but this book introduces you to the concepts gradually and smoothly. Before you know it, you start thinking like a C programmer. Yet the beauty of PHP is that you don't have to worry about memory allocations, variable definitions (although something like Options Explicit would be welcome), or variable types.If you are an absolute beginner to programming and databases, you will probably be a little lost along the way. Just read it a few times and it will start to make sense, I promise. As for me, I was an IT person who had a mission to do. At first I wrote a simple application using Dreamweaver MX, which is the absolute best software to use for this purpose, and ran out of built in options to do what I wanted to do. The next logical thing was to read an appropriate book. I've spent a few hours choosing, and finally settled on this one as most promising to teach me exactly what I needed to know. Corporate electronic libraries have their perks.The book progresses smoothly to gently introduce the reader to the main string operations functions, variables, variable operations, classes, functions, and then it goes in-depth on specific integration issues of php, mySQL, and specific applications that are commonly necessary.You will learn sessions, error handling, how to implement secure transactions and so on. Believe me, you can build an application that you can charge thousands for after reading this. I've done just that as a result because I no longer had to hire a contractor to get my work implemented exactly as it was specified in my design documents.If you have a real world problem, you need real world solutions, not the "Hello world!" examples. This book is exactly what you want to read. I've read well over 300 computer books in general, and this one is really one of the very best I've ever read.If you are a smart person who was given a mission impossible to implement in PHP with mySQL, this book will get you to at least intermediate level fast.Enjoy your trip,Leonid
Title: Inside Microsoft SQL Server 7.0
Publisher: Microsoft Press
Authors: Ron Soukup, Kalen Delaney
Rating: 5/5
This book covers the topics very well in which I do agree and I have quoted the following points from Microsoft's site:- * Evolution, architecture, and toolset: The history of SQL Server since 1989, an architectural overview, and a comprehensive tour of its tools and features * Planning and deployment: Everything you need to know about installation and deployment issues such as multiple instances, Super Sockets, and upgrades * Databases, files, tables, and data: How to create, modify, back up, and restore databases, files, and tables; and how to query and modify data * Built-in development tools: Using Query Analyzer and SQL Server Profiler to simplify system administration and optimize performance; programming with Transact-SQL; and extending functionality with batches, transactions, stored procedures, and triggers * Query-processing techniques: Multiple indexes, hash and merge joins, and data-manipulation capabilities such as parallel queries * Internal architecture: Low-level details of data and index-page structures, cursors, locking mechanisms, optimization, and plan cachingIf you like to have 90% of your work done and not too worry about the last 10%, this book is for you, even the author have said it himself, his book is not perfect. Simply because it would take him 90% of the time to finish the last 10% of the work and the book will never be published. The author is humble and in my opinion, this is one of the best books I have read and it worths five stars, although it may still contain spelling and syntax errors.If you are a serious SQL developer and have not read this book before, I would wonder about the percentage of you to be more SQL Server junkier than the two authors, who have dedicated and exposed their life to the development of SQL Server. This book is not for the light-hearted. For those who are only interested in finding lots of examples and picked at the last 10% of the material, which was not covered by the book to do your special tasks, this book may not suit you. This book is for the true SQL Server professionals who wish to learn and build on a solid SQL foundation, can think and derive solutions for themselves, to succeed into this field.
Title: Apache Server 2.0: The Complete Reference
Publisher: Osborne/McGraw-Hill
Authors: Ryan B. Bloom
Rating: 3/5
The trouble with this book can be summed up in the Introduction:
This book is aimed at two groups of people: Apache administrators of all levels and Apache module authors. This range of readers means that the book must cover concepts both having to do with programming and with basic configuration. I hope I have accomplished that task in a way the book is useful to both sets of people.
That's a monumental task to take on! Writing a book for each group separately would each take a tome the size of this book. Instead, we cram two subjects into one book without increasing size and get this -- a book that covers everything but in missing detail.
The first the sections start off on the right foot -- an introduction to Apache and how the web works; a comparison of Apache 1.3 and 2.0 with other web servers; configuring, compiling, and installing Apache; and a module overviews, including the MPM modules that handle pre-forking and threading.
After that, the details begin to slip. Sure, you can get Apache up and running with this book. Heck, you can even get it to pull off some nice tricks with this book. It's not until you start dabbling in these "nice tricks," though, that the incompleteness of this book shows through.
For example, while explaining virtual hosting, the author goes over two ways to go about it -- the one-by-one method and mass virtual hosting using mod_vhost_alias. However, he only briefly mentions using a third method, mod_rewite, which is admittedly more complex. The author also spends some time going over security and logging issues with virtual hosting, but at 21 pages, the chapter covering virtual hosting leaves a lot to be desired.
The same goes if you're interested in programming for Apache. Actually, I'm taken aback as to the amount of coverage the author devotes to the programming of Apache. Not because the author goes into greater detail on how the Apache code works than I care to indulge in (which is to say, any). It's because of it's interspersal throughout the book. In the end, this upsets both sets of people -- the administrators that don't want to program and the programmers that don't want to administer.
I guess one could say that this is a "complete reference" in that it covers every aspect of Apache. However, I'd rather have a "complete reference" that covers its subjects in full detail.

