| Mac OS X Tiger: Missing Manual
Publisher: O'Reilly Media |
|
| ISBN: 0596009410 List Price: $29.95 Amazon Price: $18.87 Usually ships in 24 hours |
Avg Cusomer Rating: 5 Reviews: Summary: GREAT MANUAL! This manual is awesome for all your mac needs. It really has so much detail and anyone can use it to fix most problems on their mac. It has really been useful since I purchased it about a month ago. Has really helped with startup issues (not that Macs have very many). And for general use, it contains great details about how to use OS X and the programs that come with it! Would definitely recommend for all Mac users, especially beginners! Summary: The Best Tiger Manual -- Stand up and applaud this book After reading this book, I felt like I had to stand up or at least applaud. It was really a masterpiece: extremely comprehensive, easy to understand, expertly organized. The missing manual series by O'Reilly claims to be "The book that should have been in the box." This book is to computer manuals what iPods are to digital music. Powerful, yet easy to use The book is designed for someone who has never used Tiger before and is not all that familiar with the Mac either. Unlike a dummies book, he doesn't talk down to you and respects the fact that you can learn things if shown how to use them. This book doesn't just cover Tiger, but also covers the iLife application suite: iMovie, iDVD and iTunes. In fact, I really don't consider this just a Tiger manual. It's really a iMac User's Guide, covering pretty much every aspect of your new Macintosh. Have a problem with your Mac not working right? There's a great troubleshooting section at the end of the book. The index and table of contents is well organized so you can focus on the sections you want to learn more about. For example, if you don't use classic applications (most people don't) then skip over the section. Finding out how to burn a music CD or setting up your email was very easy to find and understand. No aspect of Tiger was left unexplained. The book even explains how to use the voice recognition software..something I've never played with but always wanted to learn how to use Personally, I thought the coverage of Mac to PC and PC to Mac networking was great, since so many people live in mixed computing environments. The major complaint I think some people might have about this book is it's big. Over 800 pages can be a bit intimidating. I showed it to a customer and their response was: " I thought Macs were so easy to use?" Even though it is easy to understand and find the information you want, I wouldn't suggest it as the first manual to a new Mac user. I still think Mac OS X 10.4 Tiger: Peachpit Learning Series by Robin Williams is the best beginners book for Mac users. She really walks people through every step with bright colorful pictures. The ideal user of this book is someone who understands the basics of Tiger and their Mac but says "I don't think I'm using my Mac to it's full potential." After reading this book, they'll have a complete arsenal to understand any aspect of their Mac. Pros: The ideal book for Tiger users: complete, detailed, and easy to understand Cons: Not designed for brand new users with no previous Mac experience, the amount of information may seem overwhelming Summary: Good but not Great I recommend this book for most intermediate users but if you really want to everything, there isn't information here. Summary: |
| Programming PHP
Publisher: O'Reilly Media |
|
| ISBN: 0596006810 List Price: $39.99 Amazon Price: $25.19 Usually ships in 24 hours |
Avg Cusomer Rating: 4 Reviews: Summary: Better - What you would expect from a 2nd edition Spent an hour examining this 2nd edition. I've also spent some time reading the reviews of the 1st edition and you are right on the money, Nathan Torkington. Many of the reviews show that the reviwer did not take much time or care going thru the book. When you've got the kind of talent and writing experience shared by the two authors, you have got to be one doozy of a PHP person to find the kind of faults some reviewers report. O'Reiily does a great job of maintaining an ERRATA page for each of their books. You never made a typo, guys ? In general this is a nice cleanup of the book. Very good for starters & intermediates. And thank you to David Wall, who says it all: "The authors use a Talmudic (JBC adds:For readers not familiar with the TALMUD, check out Wikipedia)style to explore PHP's capabilities and explain them to their readers, meaning that they like to present code and commentary in close formation, with each enhancing the other. Typically, they'll present a capability generically and show the relevant code. Then they'll dig into variations on the theme, calling attention to required code alterations as they go. This is a book about PHP itself, so practically no attention is paid to PHP Builder or other development tools. Regardless, this book will help you solve programming challenges with PHP, and enable you to write efficient, attractive code." Summary: nice book Like many people I know, I have to use multiple programming languages, and php happens to be one of them. Programming PHP is a great book for PHP speakers and the excellent php function reference in appendix A is really adequate value for the book. Take heart, you can do without the book, if you don't already own a copy, but owning a copy is also a great way to support the community, so go get on. Summary: Lack of Examples This book lacks examples. It describes a function in English words but rarely gives an example of how to invoke it. If you're trying to do File I/O this book is NOT for you. Summary: |
| Web Database Applications with PHP & MySQL, 2nd Edition
Publisher: O'Reilly Media |
||
| ISBN: 0596005431 List Price: $44.95 Amazon Price: $28.32 Usually ships in 24 hours |
Avg Cusomer Rating: 2 Reviews: Summary: Disappointingly poor index I'm new to PHP and MySQL, but a programmer for over 3 decades. I'm customizing some PHP code, using code examples for ideas. When I (a) see something I want to understand better or (b) want to find the PHP analog for basic functions, I naturally turn to the index to try to find the information I need. However, I found the index very disappointing because of what it doesn't have. For example, simple and basic keywords are not in the index: "comment", "logical operator", "and", "or", etc. I'm going to have order a different book as a PHP reference. Summary: The best starting point to php and mysql I bought this book with the hope I could learn just enought to get me started with web application development. I only had little programming experience at that time, I I didn't even have any experience with databases. Well. This book was the perfect introduction to web applications. From security to authentication, from php basics to multi-table join sql queries, this book got me into this world, and I appreciate it so much because I am working now in web development, thanks to what I learned from here. Altough this book is not for the absolute beginner, it teaches you just what you need to know to get you started, and even more. It lacks some subjects, like caching, or some advanced php 5 language constructs. Its focus is in real world development, without too much emphasis in application design or php/mysql internals. It teaches you just what you really need to know, and it teaches you that extremely well. You will learn php, from its basic syntax and usage, to object oriented programming basics. Then the book takes you to mysql, with a great introduction to sql, and how to use mysql from php. The following chapters deal with typical database concepts you must grasp, like concurrency issues and even performance tunning. It doesn't get too deep in php as a language, rather it focuses on php and mysql interaction, with an eye towards constructing a real world web application (which finally gets its parts joined in the final chapter). Things I dislike are its use of templating systems over many chapters. That was not a subject I was interested in. Althought a serious php developer can't simply ignore this topic, it is not crucial in understanding the fundamentals, and it, in turn, adds a source of difficulty to the examples from chapter 7 on. Other thing I didn't like was the development of a complete application that I didn't have time to study, altough fortunately I managed to ignore it as much as I can, without losing too much. In summary, I love this book, it is not perfect, but it's just what I needed and I give it 5 stars because it is a really well written and focused book. Summary: Excellent Introduction Book & Reference This book is an excellent introduction to PHP, MySQL, and the interaction of the two. It has a few chapters introducing PHP, then a few introducing MySQL, and then walks through the steps necessary to build a functioning dynamic website. They also include an elaborate and detailed case study of a Winestore application the author's developed. Whenever somebody tells me they are interested in PHP and web programming, this is the book I tell them to get. Many friends have borrowed my copy since I got it. Summary: |
| MySQL Cookbook
Publisher: O'Reilly Media |
|
| ISBN: 0596001452 List Price: $49.95 Amazon Price: $31.47 Usually ships in 24 hours |
Avg Cusomer Rating: 4 Reviews: Summary: MySQL For Applications Server Excellent text well written and logical sequencing of chapters. Very good for students in their second or third semester of RDBMS studies. I do not recomend for beginning relational databse students. Summary: Solves a lot of problems! (That's how it's organized) I had a recent perl+mysql project and flipped between the Cookbook and the author's other work, MySQL, mentioned in other reviews. ( also referred to the O'Reilly Perl books _Programming Perl_ and _Perl for System Administration_. I don't usually have time to master any topic or skillset; I need to get in, get it going, and move on. This book is perfect for that. "How do I get the date?" There's a recipe for that. "How do I get perl to connect to the database and insert stuff?" There's a recipe. Also for PHP, python, etc. It's really focused on problem solving, and the problems are really well chosen. This book will save you hours of effort. Summary: Lucky Me! I am a big fan of hands-on books. I especially like the `From Scratch` and `Cookbook` type titles. Well, lucky me. When I attended the 2005 MySQL Users Conference in Santa Clara CA in April '05, I received the "MySQL Cookbook" by Paul DuBois as a reward for early registration. The day after I returned back to work from the conference, one of my co-workers came looking for some guidance in regards to a MySQL database issue he was having. His description sounded familiar to one of the recipes I skimmed in the cookbook. Sure enough, I found the resolution within two minutes, and had sent another satisfied customer on his way. The great aspect of this book is that it is written to provide solutions to over 315 real-world problems. Whenever I come up against an obstacle in regards to MySQL, I head straight to the table of contents and scan for a recipe that looks like it might be a match. One topic I wish was covered somewhere in this text is the concept of derived tables, which are basically sub-queries used as tables in a join. (...) The "MySQL Cookbook" and "MySQL in a Nutshell" books are permanent fixtures in my office ... except for when my co-workers borrow them. -Brett Berry PERL/PHP/JavaScript/MySQL (...) Summary: |
| Linux in a Nutshell (In a Nutshell (O'Reilly))
Publisher: O'Reilly Media |
|
| ISBN: 0596009305 List Price: $44.95 Amazon Price: $28.32 Usually ships in 24 hours |
Avg Cusomer Rating: 1 Reviews: Summary: O'Reilly Advocates on the lose Hiya! this book is a waste of money and space. what kind of an idiot would carry this book around? when all the information is in the linux system itself?? MAN pages and INFO pages. observe. you can search for utilities in the Linux system by using APROPOS. can you automatically search for the utility you want in this thick thick book? lets say i want to use an editor. all you do from the command line is... x@y:/$ apropos editor the linux system automatically searches the database and man pages for the keyword "editor" and you get a whole list of editors you can choose from. try that with this book, all the utilities in this book are listed alphebetically... very good filtering / indexing system indeed *sarcasm* you have to have pretty good knowledge and know the command and what you're looking for from the beginning to find this book useful. the irony of this is that once your knowledge level is at that level all you really need are the MAN pages. Summary: Excellent reference book. Title: Linux in a Nutshell: A Desktop Quick Reference (5th Edition) Authors: Ellen Siever, Aaron Weber, Stephen Figgins, Robert Love, Arnold Robbins Publisher: O'Reilly Pages: 925 ISBN: 0-596-00930-5 Linux in a Nutshell: A Desktop Quick Reference is exactly what it says in the subtitle. The book is geared almost exclusively to someone sitting at a machine, looking for how a command is used. If you're just starting with Linux and are looking for something to get you started, this is not the book you want. If you want something that will teach you how to use Linux, the introduction recommends Learning Red Hat Linux or Running Linux, both of which are also from O'Reilly. Pick up Linux in a Nutshell if you already have at least a basic understanding of using Linux and want a good book for looking up how specific commands work. The book starts off with a brief introduction that is equal parts extolling the virtues of Linux and description of the books content. The introduction is followed by a short section (5 pages) listing commands a beginning user might need, followed by a slightly longer (18 pages) list of common System and Network administration commands. These sections contain just enough description to know why and how you might use these commands. But you don't need to wait long before you get more detail. In the next chapter you hit the meat of the book, which is a 500 page alphabetized list of Linux commands. They provide the syntax for the command, along with a list of any options that are available. For me, the value here is not having to swap back and forth between looking at man pages and what I'm trying to work on. Chapters 4-6 are divided into task related sections. These sections all follow about the same format: a brief description of the process involved, followed by a list of related commands, their syntax, and options. The first of these (Ch 4) describes how to setup a Dual boot machine. They cover the use of LILO and GRUB, providing the commands and options used by each. Chapter 5 covers Package Management, the process used to install and update applications. They cover the use of RPM (Redhat Package Manager) and Debian style packages. They go into detail about various methods using apt, rpm, up2date, yum, and synaptic. They also cover building packages for those developing their own applications. Chapter 6 goes in depth into the functionality of the Bash and Korn shells. It covers both commands that can be issued at a prompt and the use of shell scripts. Chapters 7-11 cover some of the text manipulation utilities in Linux. Chapter 7 goes over pattern matching and the use of regular expressions. There's also a handy chart of what metacharacters work in which utility. Chapter 8 talks about the text editing functions of Emacs, including a 13 page list of commands and the associated hotkeys. Chapter 9 covers the same for vi, ex, and vim. Chapter 10 covers the application sed and its use as a script based text editing tool. Chapter 11 describes awk/gawk and how they can be used for text processing and as a scripting program language. Chapters 12-14 address Source code management in Linux. Chapter 12 gives a brief overview of the concepts of multiple developers, code versions, and source code repositories. It also introduces several code management systems. Chapters 13 and 14 go in depth about two of these, CVS and Subversion, respectively. Finally, there's a comprehensive index of both topics and commands. One of my pet peeves, especially with reference books, is a weak index. That is definitely not the case here. This book makes it easy to find what you're looking for. As far as I can tell, all the commands are indexed, and a random sampling of topics always netted me the correct page number. In conclusion, Linux in a Nutshell does an excellent job of providing you the commands and utilities available in your typical Linux installation. If you know what you're trying to do, this book is handy for looking up the command and syntax required to do it. The entries are clear and concise, but still provide a good level of detail on the commands, switches, and options they're describing. Summary: extra reference. over half of this book consists of material already available in the "man" pages on a linux system. the book boasts how it includes many many examples on how to use each command, this is utterly false. there are infact too few examples included. 100% of the material in this book can be found on the internet, on the linux system's info and man pages. this book will not be friendly for the linux newbie. the title is misleading, "in a nutshell" usually means "the basics of a working system". this book is merely acts as reference for the abundance of reference freely available. Summary: |
| Programming Jakarta Struts, 2nd Edition
Publisher: O'Reilly Media |
||
| ISBN: 0596006519 List Price: $44.95 Amazon Price: $28.32 Usually ships in 24 hours |
Avg Cusomer Rating: 4 Reviews: Summary: Thorough Review The previous book I had on Struts did a poor job of... well, everything. It is called "The Struts Framework" and the main reason I bought it was because it was a manageable 150 pages long. (Am I the only one tired of several hundred page tech books?) This bably logs in at around 400 pages and does a far better job of explaining what Struts is all about - both fundamentally and specifically. I read the first few introductory chapters and then just checked out the areas I was intrested in. The concepts were presented clearly and the corresponding examples weren't overly complex. Probably the biggest downside to this book is that it covers Struts 1.1, and today Struts is at 1.2.9, which means 1.3 can't be far away. (Man, writing tech books and then keeping them up-to-date has got to be one tough job!) Summary: Convoluted and difficult to understand Usually I consult Amazon for a book reference. This time I decided to buy this book simply because it's O'REILLY. Well...I was wrong. While the author writes well and clear, I believe it was address to the wrong audience (for struts experts.) I found the examples to be very convoluted, and difficult to understand. It also appears as if deadline pressures influenced the construction of this book. (but that's my assumption) 2 stars is best to reflect this book. Guzman, Dror Summary: If you like concepts buy this one, good book Great book to learn about struts concepts. I got the book trying to follow a logical sequence buy I found a lot of theory. Very helpful for a begginer who wants to learn J2EE and struts or for a teacher. You need to complement your learning activities with a tutorial. Try the Kurniawans's then this book. Summary: |
| JBoss at Work: A Practical Guide
Publisher: O'Reilly Media |
|
| ISBN: 0596007345 List Price: $34.95 Amazon Price: $23.07 Usually ships in 24 hours |
Avg Cusomer Rating: 5 Reviews: Summary: Excellent practical guide to JBoss and J2EE J2EE started out as a specification that left the implementation to each container vendor. It's readily apparent that two of the earliest vendors, WebSphere and WebLogic, implemented J2EE in vastly different ways. As a result, early books on J2EE or Enterprise JavaBeans (EJB) frequently either avoided or severely limited the discussion of a specific server because the details were better referenced from server vendors' manuals. JBoss changed that picture. It is an open source Java-based application server which is freely downloadable, plus it is a certified J2EE server. "JBoss at Work: A Practical Guide", aims to provide practical examples for using JBoss by showing a practical and complete example of a web application running on JBoss. The "JAW Motors" application supports a fictitious automobile dealership. Each chapter progressively adds a new J2EE technology that solves a specific business problem. Viewing cars on a website involves JSP pages and some form of persistence (JDBC or Hibernate). Performing a credit check sends a JMS message and an email response using JavaMail. Purchasing a car requires the transactional support of Stateless Session Beans. Sharing data from the JAW Motors inventory with other dealerships involves setting up Web Services, and so on. The authors' hope is that a coherent business application in action will hopefully give you a clearer idea of how the various layers interact, as opposed to a series of disjointed "Hello World" examples exercising each layer in isolation, and I think their concept worked out very well. The security portion of the book's example web application makes use of JAAS (Java Authentication & Authorization Service), which enables an application to protect its resources by restricting access to only users with proper credentials and permissions. It is a standard extension in J2SE 1.4, but is not yet widely understood. Thus, one of the appendices is devoted to a tutorial on its use, which I found very helpful. The authors assume that you're experienced in programming with the Java language and are familiar with Open Source tools such as Ant and XDoclet. They show how to download and install them, and they also provide Ant scripts for compiling and deploying the "JAW Motors" application. If you're new to J2EE, this book serves as a gentle introduction, but don't mistake it for a true J2EE reference manual. I found this book immensely helpful and clear and highly recommend it to anyone who wants to get to work quickly using JBoss as an application server. The table of contents is as follows: 1. GETTING STARTED WITH JBOSS Why "JBoss at Work"?; Why JBoss?; The Example: JAW Motors; The Tools; Installing JBoss; Deploying Applications to JBoss; Looking Ahead; 2. WEB APPLICATIONS The Servlet Container; Three-Tier Applications; Exploring the Presentation Tier; Building the View Cars Page; Adding a Model and Controller; Looking Ahead; 3. BUILDING AND DEPLOYING AN EAR WARs Versus EARs; Application.xml; Common JAR; Deploying the EAR; Adding a DAO; Using XDoclet; Looking Ahead; 4. DATABASES AND JBOSS Persistence Options; JDBC; JNDI; JNDI References in web.xml; JBoss DataSource Descriptors; JDBC Driver JARs; Database Checklist; Accessing the Database Using Ant; Creating JDBCCarDAO; Looking Ahead; 5. HIBERNATE AND JBOSS The Pros and Cons of ORMs; Hibernate Mapping Files; Hibernate MBean Service Descriptor; Creating a HAR; Adding the HAR to the EAR; Creating a JNDI lookup; Hibernate Checklist; HibernateCarDAO; Adding a Car; Editing a Car; Deleting a Car; Looking Ahead; 6. STATELESS SESSION BEANS Issues with EJBs; Should I Use EJB or Not?; Business Tier; Enterprise JavaBeans; Our Example; Iteration 1-Introduce a Session Bean; Calling the Session Bean from the Controller Servlet; EJB-Based JNDI References in Web-Based Deployment; Descriptors; Session Bean Types; Session Beans; Remote Versus Local EJB Calls; Local and Remote Interfaces; Home Interfaces; Reviewing Iteration 1; Testing Iteration 1; Iteration 2-Move Business Logic Out of the Controller; Reviewing Iteration 2; Testing Iteration 2; Iteration 3-Buy a Car; The AccountingDTO; Developing the HibernateAccountingDAO; Adding buyCar( ) to the InventoryFacadeBean; Reviewing Iteration 3; Testing Iteration 3; Final Thoughts on Session Beans; Looking Ahead; 7. JAVA MESSAGE SERVICE (JMS) AND MESSAGE-DRIVEN BEANS Sending Messages with JMS; Upgrade the Site: Running a Credit Check; JMS Architecture Overview; JMS Messaging Models; Creating a Message; Sending the Message; Core JMS API; Sending a JMS Message; JMS-Based JNDI References in Web-Based Deployment; Descriptors; Deploying JMS Destinations on JBoss; JMS Checklist; Message-Driven Beans (MDBs); MDB Checklist; Testing the Credit Check; Looking Ahead; 8. JAVAMAIL Running a Credit Check; Sending Email Messages with JavaMail; Upgrading the MDB to Send an Email Message; Sending an Email Message; JavaMail-Based JNDI References in EJB Deployment; Descriptors; Automating JavaMail-Based JNDI References with XDoclet; Deploying JavaMail on JBoss; JavaMail Checklist; Testing the Credit Check Notification Email; Looking Ahead; 9. SECURITY J2EE Security; Web-Based Security; Restricting Access with web.xml; JAAS; Deploying a JAAS-Based Security Realm on JBoss; Testing Secure JSPs; Protecting the Administrative Actions; Web Security Checklist; Integrating Web Tier and EJB Tier Security; EJB Security; EJB Security Checklist; Looking Ahead; 10. WEB SERVICES Web Services Architecture; JBoss 4.x and Web Services; J2EE 1.4 and Web Services; Implementing J2EE 1.4 Web Services; Service Endpoint Interface (SEI); Modifying ejb-jar.xml; webservices.xml; JAX-RPC Mapping File; WSDL File; Set the Web Service URL; Modifying the InventoryFacadeBean EJB; Web Services Deployment; Automating Web Services Deployment; J2EE Web Services Checklist; Testing Web Services Deployment; Web Services Client; Implementing a Web Service Client; Web Service Client Checklist; Testing the Web Service Client; Final Thoughts on J2EE 1.4 Web Services; Conclusion; Summary: My kind of book I've built a number of J2EE/Servlet/JSP web applications over the past many years but was never formally trained in OO techiniques nor had any formal Java training. I'm very much a hands on learner and this book fits very well with the way I like to attack things. Some commenters wished for a book more focussed on JBoss particulars but for me the project management stuff and the use of Ant and Xdoclet are a big plus. I "get things" best by looking at code and scripts and this book delivers that. I think it's a really swell book. Summary: Exactly what a "practical guide" to technology should be This is the kind of book that you can go through once quickly and get a good overview of things, then dig deeper with further readings and get more and more out of it each time. To me, that's an ideal "get-me-up-to-speed" book. If you're looking to learn about what JBoss is and does and how it does it all, this book is a great way to learn the basics quickly and work up to the more complicated stuff. I skimmed it quickly on a train ride into work one morning and got enough out of perusing the first five chapters to dive in and make use of it all. A lot of books talk about "starting with the basics" and building on acquired knowledge to teach the more advanced topics, but few actually do so in a consistent methodical way. This book achieves that goal by constructing an iteratively enhanced application over the course of the entire book. The JBoss directory structure and services functionality are explained in the context of deploying and configuring this app. The model and presentation components are iteratively built up over the course of the book. The JSP pages start out going against common best practices but evolve employ JSTL to provide iteration and conditional constructs more elegantly, optimize layout formatting with CSS, and finally make use of an MVC approach with controller that removes scriptlet code from the pages. Similarly, the model starts out as an in-core ArrayList, is enhanced to make use of a relational database, and finally uses Hibernate to demonstrate the flexibilities of ORM and EJB technologies. The application is refactored at each stage, and this demonstrates how bad practices evolve with experience into better and hopefully best practices. The chapters on EJB, especially Message Driven Beans with JMS, cover this complicated material very well, and explain it in the context of adding new functionality to this same application. This book covers not only the ins and outs of JBoss but the how's and why's of building a J2EE application in general, using JBoss as a specific example of how J2EE applications are written, configured, and deployed. A very practical guide indeed. Summary: |
| Linux Device Drivers, 3rd Edition
Publisher: O'Reilly Media |
|
| ISBN: 0596005903 List Price: $39.95 Amazon Price: $25.17 Usually ships in 24 hours |
Avg Cusomer Rating: 1 Reviews: Summary: Don't even read the free online version This book was so badly written that I just couldn't help writing my first review on Amazon. I NEVER bothered writting reviews. While I fully respect the authors' decision in providing the book online under the Creative Commons license, and while I do not doubt the sincerity of their intentions, the book is a total f*ck up. And f*ck up is an understatement. The book: 1) Is unorganized :- I felt I was being bombarded by information from all directions. One moment I was getting ready to test a simple "hello world" module, and the other I'm suddenly faced with a some strange esoteric block diagram showing "how function calls and function pointers are used in a module to add new functionality to a running kernel." with strange function names that were not mentioned and do not get mentioned for the rest of the chapter. How the hell did I get here? It just pisses you off and breaks your thought process and leaves you clueless and frustrated. 2) Is upside-down:- I read chapter 3 (Char drivers) and I compare it to real device drivers and some things just don't match. The book seems very theoretical because the "real" device drivers call some other functions that are not mentioned at all. After digging in the kernel source files and googling the internet I realize that in the "real world" there is a whole driver-model and generic objects and what not. Reading the source code documentation and some online material I actually understand how the "real" drivers work. I still don't understand the stuff in the book. I start wondering whether there is any mention of the driver-model and I find it in chapter 14 !!!!!!! The driver model seems, in my opinion, the first step to understanding how "real" drivers work and I find it after 14 chapters of utter nonsensce!! Not only that, the authors decide that "many driver authors can ignore the device model entirely" and "The complexity of the device model makes it hard to understand by starting with a high-level view"... surpisingly it was easier to understand from online sources and the source code documentation than trying to read chapter 2 in the book! 3) Is sadistic:- One thing I really hated was the carrot-and-stick approach the authors chose. First they give you a small tiny taste of a topic which finally seems relevant and just when you feel you're about to reach somewhere, they do a complete u-turn and throw all kinds of irrelevant off-the-topic rubish that leaves you sorry you were so shamefull as to expect any better. You end up confused, annoyed, and duped. Like in chapter 2 when they presented the code for the "hello world" module. OK fine. Seems easy enough. You naturally assume that this is an invitation to write the same code yourself. HAHA WROONG! The book suddenly does a "make hello.c" without showing you the content of the makefile. It leaves you out to dry with your uncompilable-"hello.c" and goes on describing IN DETAIL seemingly random stuff. You are left wondering whether the makefile must have been something too obvious to bother noting down and you start wondering whether to try to create a simple makefile or continue reading the chapter "as-is". I chose the former. HAHAHA WROONG AGAAIIN! I ended up compiling my whole kernel source tree because of something they decide to mention only 7 sections later.(At least they mentioned it?!) In summary.. I'd suggest you buy the book.. and (as "./Documentation/ManagementStyle" for another book says): "NOT read it. Burn it, it's a great symbolic gesture". I don't think anyone could have done a better job at making a worse technical book. If you come across any online material that "recommends" this book, *QUICKLY* discard that material too .. without thinking. This is a -5 stars book. It has affected me personally. Summary: Specialised skills [A review of the 3RD EDITION, 2005.] Device drivers will always be a small speciality in any operating system. Linux is no exception. While it grows strongly, most programmers using it simply can ignore issues of hooking up to various hardware items. Someone has already worked those out. Well, here you are that someone and this book addresses many of your needs. The coding is in C. No fancy object oriented stuff for you. Many higher level OO programmers are simply unaware of the extra overhead it takes. But you need to maximise performance, so it is C for you. Plus, to understand much of the book, it really helps to have written some assembly code, because it makes it easier to understand many low level operations discussed. Prior acquaintance with the overall design of a linux memory manager and interrupt handlers is also good. The book explains well individual issues as they arise. But having a clear, top-down understanding of the linux kernel may give you more context to understand the chapters. Summary: great book for the right person I used this book to write a device driver for my computer engineering senior project. It was very helpfull, but could improve. 2nd edition covers almost everything you'll need for 2.4 kernel drivers. Organization is like a text book that includes reference material, but attempts to be a tutorial. Hopefully the 3rd edition will be better organized. I noticed lots of negative reviews on Amazon, but after reading some chapters on safari (the oreilly free book site) I decided to purchase it any ways. If you buy this book and don't have a solid background in operating systems, computer architecture, and microprocessor interfacing you probably won't have an easy time understanding several key topics well enough to write a working driver. This will probably make you mad enough to write another bad review. Summary: |
| home |