Programming Books
Related Subjects:
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: $17.00

An essential Rails resourceReview Date: 2008-07-07
A must-read for any experienced Rails developerReview Date: 2008-05-19
This book should be non-optional for all Rails development teams, as it has some of the most sane and sober treatment of relevant topics I've ever read in a single book. From security to databases to deployment, this book gives the reader a solid foundation in nearly all of the major disciplines involved in building web applications.
Limited depth but Lots of Topics and Good InformationReview Date: 2008-02-27
Author Brad Ediger has been kicking around the Rails scene since the pre-1.0 days. Though not a Rails "luminary" necessarily, he certainly qualifies as an advanced user. He is CTO for a Real Estate tech company called Tasman Labs and runs a web design (and Rails consulting) firm called Madriska Media Group. He seems like a sharp cookie and a decent writer.
Advanced Rails covers quite a bit of territory, going for breadth rather than depth most of the time. Each chapter covers a classic, pivotal development concern... well, at least most of them do. The chapters are as follows:
1. Foundational Techniques
2. ActiveSupport and RailTies
3. Rails Plugins
4. Database
5. Security
6. Performance
7. REST, Resources, and Web Services
8. i18n and L10n
9. Incorporating and Extending Rails
10. Large Projects
By "Foundational Techniques", Ediger is referring to Ruby and Rails techniques, principals and patterns like Metaprogramming, Don't Repeat Yourself, and Functional Programming techniques. The chapter also goes into a fair amount detail about the Object/Class/Module relationship. A bunch of this may not be particularly new material for most Rails users who've been at it for at least a few months. However, it's still nice to have all this stuff in one forty page chapter... good to have handy to refer to. Also, there are some nice nuggets in there that could save you some head-scratching. For example, what's the difference between Kernel#lambda and Proc.new? The answer is that, if you *return* a value from the block passed to Proc.new, the calling method is exited as well, abandoning any code that you might have after it.
If the first chapter feels like it's leaning towards a reference work, the second chapter -- which digs into all the goodies offered by ActiveSupport and RailTies -- pretty much falls over right into reference-land, complete with a method-by-method listing of features added to standard library classes. This may seem even more like just putting api docs available online into print, but Eidger defintely adds a bit more explanation. And, I haven't really seen anyone give a rundown of just what the heck RailTies does. That's the library that provides the glue to pull together the more famous Rails libraries to make it all work together as rails: generators, initializers, etc. There is definitely some interesting and not necessarily readily available information here.
Chapter three covers Rails Plugins, and is quick and painless. It explains the common files and directory structure in a plugin and talks about how Rails loads them. It also talks about using Piston instead of svn:externals to manage plugins and show some example plugins.
The following three chapters cover more of the classic eternal problems faced in running high-traffic sites: databases, security, and performance. These really make the most sense in an "advanced" book; they are the "brass tacks" that everyone must get down too if they go beyond the "toy app" stage. Ediger talks about the strengths and weaknesses of the various popular database systems. He also goes into the benefits of using the filesystem to store data, which is largely because web servers can make use of fast system calls to dump files straight into the TCP socket. He also covers some advanced db features like composite keys, stored procedures and clustering.
The security chapter isn't all that long and a lot of the info it covers can be found in beginner Rails books... SQL injection, cross-site scripting etc. However, the book would be remiss to not include this material and it is presented in a concise and complete manner. This would be good to refer back to now and then to make sure you haven't slipped in your security awareness. Ediger also doesn't hesitate to make specific recommendations, like "whitelist rather than blacklist".
He also jumps right into recommendations while writing about performance optimization in the next chapter: "Algorithmic improvements always beat code tweaks", "As a general rule, maintainability beats performance", "Only optimize what matters", "Measure twice, cut once". He then goes on to cover specific tools and techniques for uncovering your bottlenecks, from a quick explanation of basic statistics to using httpperf, benchmark, and Rails Analyzer Tools, improving database calls (using indexes and "include" on finders), and the various caching solutions. There is plenty of good information in this chapter; also a good bit of reference next time you need to track down a logjam.
Chapter seven covers RESTful Rails, from the very basic theory as outlined by Roy Fielding to exactly how Rails has chosen to use these concepts, and is the longest chapter in the book. The amount of coverage REST gets seems questionable since Rails has been very heavily into the RESTful approach for over a year and embraced the philosophy so thoroughly that it's hard to imagine anyone using Rails today without being exposed to the concepts.
On the other hand, one can still wire up verb-oriented actions in routes.rb and might be able to get away with ignoring all the RESTful goodness. So maybe there are some out there that can benefit from this chapter. Plus, having such thorough, theory-to-practice coverage allows the chapter to stand on its own as a solid reference to the whys and hows of RESTful Rails. It also has one of the better sections on RESTful routing that I have seen (routes being one of the more mysterious and sometimes frustrating pieces of Rails).
Rails has gotten plenty of grief for its lack of official support for Internationalization and Localization, but in Chapter eight, Ediger lays out the options, such as gettext, Gibberish, and Globalize. He is most enthusiastic about this last library and it does appear to be quite powerful, including support for translating strings, translating model fields, localizing numbers and dates, and even recording what needs to be translated by saving them in the database. Creating multi-lingual websites is a hard problem in any web-development framework and most other frameworks have plenty of head start. However, Ruby and Rails certainly isn't without options and it will only get better.
The next to last chapter of Advanced Rails runs through a number of alternatives to the standard components of the Rails framework. On the database end, it covers DataMapper, Ambition, and Og, giving this last one the most attention. For alternatives to ERB templates, Ediger talks about Markaby, Liquid and Haml, all in a very brisk fashion. He also talks about using traditional Rails components -- like ActiveRecord and ActionMailer -- outside of Rails applications. The chapter closes with a discussion of how to contribute to Rails (hint: submit a patch... don't just bitch!).
The last chapter is called "Large Projects" and covers some useful information about working on a Rails project with a team, beginning with version control (though anyone who is writing code that covers more than a single file and *not* using version control is just plain insane). This starts with a quick overview of Subversion, however this feels like it is really a set up for making a case for "decentralized version control". Ediger does a good job of explaining these concepts, using Mercurial for his examples. This seems a bit unfortunate, since many people on the Rails core team have embraced Git and it is looking like Rails will eventually move its repository to Git. However, Mercurial has a reputation of being more user-friendly, so that may have influenced his decision. And it's useful information regardless.
Chapter ten continues on to discuss avoiding migration numbering collisions, issue tracking, keeping Rails and required gems within a project, web servers, load balancers, production architecture and deployment tools like Capistrano. This is all covered in a fairly quick fashion so don't expect a lot of depth.
That last sentiment came up often while reading this book. It often felt like Ediger was trying to get every possible Rails-related topic into the book that he could, but didn't want to come out with some 1000-page behemoth. Plenty of the topics mentioned don't have much more coverage than you could get with a quick "googling". However, there is something to be said for being exposed to a lot of tools, projects and concepts in one go, even if the exposure is sometimes superficial. I definitely found reading this book worthwhile and will keep it around to refer back to now and then. I don't know if I'd go so far as to label it required reading, but then again books on web frameworks rarely are.
Good Rails Companion BookReview Date: 2008-04-02
Chapter Overview:
01. Metaprogramming
02. ActiveSupport and RailTies
03. Rails Plugins
04. Database Stuff
05. Security
06. Performance
07. REST and Web Services
08. i18n and L10n
09. Incorporating and Extending Rails
10. Large Projects (Source Control and the like)
Rails is a powerful framework but it isn't an easy one to always understand and get working. If you are looking to use Rails in your web app and want to get better at understanding the ins and out of it, this book can really help fill in the blanks.
If you want to become a better Rails developer/admin pick up this book and get better immediately.
**** RECOMMENDED
A Great Intermediate/Advanced Rails Guide - A must addition to any RoR bookshelfReview Date: 2008-01-25
Half of the book is bits of rails wisdom mixed in with recipe like code snippets.
A very timely book for me. I especially like the further reading sections at the end of each chapter. The book is new enough that all the links are current, and I have learned a few nuggets of knowledge from these as well.
The section on globalize was immediately useful on one of my current projects and returned my investment in the book many times over.
No wonder amazon only has one left today.

Used price: $33.84

Great all around Mac bookReview Date: 2008-02-13
Best book out there to study for the ACHDS exam.Review Date: 2007-12-18
Get this book, you won't regret it.
Very Good Book - with tutorialsReview Date: 2007-12-03
SolidReview Date: 2007-11-02
I recommend this book if you are looking to study on your own or if you just need, or want, more insight into the way Mac OS X works. The information is fairly complete and when it is not exhaustive, I found that the authors had placed direct URLs to many of the great resource web sites.
The definitive book on certification, and a good overall reference. Review Date: 2007-09-18

Used price: $35.00

Excellent but needs improvementReview Date: 2005-09-03
Excellent reference.
However, I didn't like the idea of using MIX assembly language. Book would have been more readable if examples were in plain english pseudocode (even better would be 'C'). At least second edition should have taken care of this aspect.
I also suggest books from Cormen & Sedgewick on same subject.
Legendary bookReview Date: 1999-12-22
It contains most detailed explanation of searching and sorting methods I ever found in a book. Contains all internal sorting and searching and external sorting and searching algorithms.
The only drawback of the book is that all algorithms are written in MIX - some kind of assembler, and because of that they are hard to read.
Just try sorting and searching with out this book.Review Date: 2004-08-03
The Encyclopedia of AlgorithmsReview Date: 2004-07-11
Knuth uses the MIX programming language thoughout, and if you hope to learn programming by reading this book, you should look elsewhere. Someday we'll have 2^30 registers, and we will still be trying to make our programs work faster on this, as yet, uninvented architecture. But the fundamental concepts will remain the same, and people will still be reading Knuth to understand them.
A good reference for serious computer science students. Others should look at O'Reilly. They have some really good books on visual basic.
This is an encyclopedia of what is known about sorting and searching and what computers can do. It is nothing else.
Graduate students in computer science (especially those in theory, algorithms and the occasional compiler fan) will benefit. Hackers will probably not benefit from this book.
What's old is new againReview Date: 2006-11-04
Yes, if you're on the edge of technology, it does need to be done again, and again, and again. That's because technology keeps expanding, and violating old assumptions as it does. Memories got big enough that the million-record sort is now a yawn, where it used to be a journal article. But, at the same time, processor clocks got 100-1000x ahead of memory speeds. All of a sudden, those drum-based algorithms are worth another look, because yesteryear's drum:memory ratios are a lot like today's memory:cache ratios of size and speed - and who doesn't want a 100x speedup? Parallel processing is moving from the supercomputing elite into laptops, causing more tremors in the ground rules. GPU and reconfigurable computing also open whole new realms of pitfalls as well as opportunities.
Knuth points out that the analyses have beauty in themselves, for people with eyes to see it. His analyses also demonstrate techniques applicable way beyond the immediate discussion, too. Today, though, I have nasty problems in technologies that no one really knows how to handle very well. I have to go back and check all the assumptions again, since so many of them changed. If that's the kind of problem you have, too, then this is the place to start.
//wiredweird

Used price: $18.00

Enthusiastic RecommendationReview Date: 2007-05-07
Money well spent on this book.
No Muss, No FussReview Date: 2007-02-09
Book is one example from beginning to end; presumably the author. Starts with some pictures and, step-by-detailed-step, ends with an avatar.
The only fault I found is that he doesn't mention Poser in the list of 3D modeling programs for human figures.
Look no further for detailed and anatomically correct human modelling! Excellent book!!Review Date: 2006-10-03
The author explains in great detail the process of modelling every body part (head,neck,arms,hands,legs,feet and torso) with anatomical references where they're most important.
I wanted a book which I could use as a definitive guide to model a detailed and anatomically correct human body or body part,and I'll look no further when I have to do so. It's also got a clever chapter about modifying the same model to create very different ones, and a good chapter about texturing and UVW unwrapping. Finally, it refers to cloth and hair (somewhat briefly) and,no,it DOESN'T cover rigging. But it does cover, extremely well, human modelling, which is what mr.Brilliant had set out to do,I assume. Very very good!
Pretty Good.Review Date: 2006-08-03
This is modeling for realism/cinematics and if you want to use this book to model in-game characters, you are out of luck. The was he teaches you to model is extremely high poly (especially in the head). The CD doesn't do much for you, it mainly just has naked pictures of the guy he models on it so you can copy exactly what he does. The book does give good information on the differences between modeling men and women, although it is fairly brief. He does go into UV mapping pretty good as well as modeling hair. The book doesn't, however, go into modeling clothing fairly well, just a short chapter. The book also doesn't even mention rigging, which I think is a crucial part in character modeling.
He thought of everything!Review Date: 2005-09-30
One thing that did make it a little difficult to use was that in the screenshots, the mesh was transparent and therefore you couldn't tell whether vertices were at the front or the back of the model. More screenshots with an opaque mesh would have made it easier to see the topology.
Overall, the explanations are concise and makes the task seem efficient, easy, and fun.

Used price: $38.95

A definitive text for learning the C languageReview Date: 1999-05-31
Admittedly, if you're new to programming in general, then this book may seem a little difficult. For instance the first chapter launches straight into a discussion of C idioms: keywords, variables, operators etc. If these are foreign to you I would recommend you also buy an introductory programming text, then return to this book when you understand these concepts.
These assumptions aside, Kalicharan clearly and concisely discusses control structures and arrays, functions, character handling, data types, input/output and more. The concepts of each chapter are thoroughly explained and incorporated into numerous programming examples.
Indeed this is one of the strongest points of the book. In particular I liked the way Kalicharan introduces the three programming constructs; conditional execution, looping and iteration first, BEFORE discussing for example, the printf statement like most other C books do - which can be highly confusing to the novice C programmer. (Kalicharan leaves it until chapter 9). Thus a strong grounding in the fundamentals of programming is emphasised from the very start and is a consistent theme revisted throughout the book.
Unlike other C books, Kalicharan gives a brilliant discussion of pointers. What is dismissed as "too hard" in other texts is covered with ease and again, numerous examples to illustrate. For this chapter alone, one should buy this book.
Following the chapter on pointers is a good introduction to "advanced" data structures, linked lists and binary trees. These are left out of most other C books, bar those dealing with data structures specifically (university texts etc) but it is here that the power of the C language becomes apparent.
Topping off the book is a chapter in file handling. Text and binary files are discussed.
The range of topics, clarity of expression and *working* examples (I compiled every program in the book without error...) makes this book an essential addition to any C programmer's library. I hope another book from this talented author is on the way soon! (How about Java or C++?)
The clearest explanation of C concepts I have ever read.Review Date: 1998-11-12
Uses book for lecturesReview Date: 2006-12-12
An excellent book for learning CReview Date: 1998-12-01
A good reference for new programmersReview Date: 2002-06-07
The writing style is very nice, the author has done some fine efforts in keeping his threads of thought clear and easy to follow.
For people who already know C, this is also good as a quick reference and is something concise to quickly refer to, in small issues. They could also just use it to quickly refresh their knowledge of C every once in a while.
It doesn't cover any advanced topics, but it does what it promises to do, so there's nothing serious to put this book down.
This book could have helped me greatly when I was just starting to learn C programming, but it didn't... Just because I only bought it too late, at the end of my C programming days!
-Mokhtar M. Khorshid

Used price: $14.74

quick nutshellReview Date: 2006-08-28
Great companionReview Date: 2002-09-24
In my opinion it is also good to read it at least once from the beginning - this gives some good insight on the language that might not always be immediately visible to beginners, or intermediate programmers who do not have years of experience behind them.
Most every C compiler these days supports some extensions and non-standard features, and some of those might be difficult to notice as non-standard. This book will also help you program in a more portable manner, and think in more standardized C.
references to MSDOS are long in the toothReview Date: 2005-09-25
A lot of the questions revolve around the assembly language-like constructs in C, for pointer arithmetic. Very easy to trip up here. And also in the related area of memory (buffer) allocation.
If that is not enough to keep you busy, Summit also talks about issues of portability across different operating systems or across different versions of the same operating system. At least you usually don't have to worry about the version of C itself. For system dependencies, Summit covers both unix and MSDOS. While C and unix grew up together, a reality is that much C programming goes on under Microsoft.
The references to MSDOS in the text reflect that the book was written in 95. Though even then, Microsft was deprecating DOS in favour of its newer Windows offerings. A newer version of this book might be overdue. Where Summit would no doubt discuss C under XP.
A C programmer's must readReview Date: 2005-03-14
One of the best programming booksReview Date: 2003-07-25
This is an excellent book. It is organised into chapters on different aspects of C, and in each chapter are dozens of FAQs that range from rather common to extremely fine-detailed. Three chapters which I particularly liked were Chapter 1 (declarations and initalisations), 3 (expressions and evaluation order), and 6 (arrays and pointers). Later chapters introduced new (at the time) concepts to me, including getopt, variable-length argument lists, and preprocessor tricks. The level of detail provided in each answer is extraordinary.
Other things I liked about the book: The index is excellent. There is a lot of discussion (spread across the FAQs) on the differences between K&R and ANSI C. (This was relevant to me because at the time, I was splitting my work between gcc and the proprietary cc compilers on DEC Ultrix and SunOS.) The style of writing is friendly and does not talk down to you. This is not a beginners' book!
Note that there is an online version, but it does not have nearly as many questions as in this book.

Used price: $5.50

The demonstration of real power of STLReview Date: 2003-05-11
C++ Standard Library From ScratchReview Date: 2002-03-23
An approachable book on the standard libraryReview Date: 2002-04-07
One point I should clarify, though: as far as I can tell, Jesse Liberty's contribution to this book consists of having his name on the cover. While this is unfortunate for the actual author, whose real accomplishments are undermined by that association, it is much better for the reader than if Mr. Liberty had actually had anything to do with the writing of the book. In that case, I would have expected to see much less clarity in the explanations and hundreds of errors, as those are his trademarks.
Kudos to Mr. Halpern! Keep writing... but under your own recognizance. You shouldn't have any trouble finding a publisher who will take you on without any "sponsorship". Good, clear technical writing is hard to find.
Finally, an STL book anyone can learn withReview Date: 2000-08-26
Gain valuable hands on STL experienceReview Date: 2002-05-24

Used price: $0.01

Good Book for a quick startReview Date: 2008-03-25
Blends concepts and code, paper book and online sourceReview Date: 2003-09-13
The use of an 8 character "CodeNote pointer" allows obtaining additional information from the codenotes web site while keeping the book a readable size and price. For example the paper chapter on SAX included examples in Java, but the online "CodeNotes" allows obtaining the source in Visual Basic. In the chapter on installation, I found both the instructions on the book and the online web site out of date, so they might want to update the web. The online notes on Sample architectures was particularly helpful, so don't neglect the section on "additional material" at the front of the book. I would have also liked an actual completed application demonstrated online.
great book, great valueReview Date: 2003-02-12
Excellent ResourceReview Date: 2003-01-19
Fantastic bookReview Date: 2002-08-01

Clear and conciseReview Date: 2008-04-27
Highly recommended!
Very nice beginner's book on LispReview Date: 2007-06-05
In the first part of the book, when describing functions, the author stays away from Lisp and any real programming notation, using diagrams to show some of the fundamental concepts -- which are explained in such a clear way that everything become so obvious! Later he switches to Lisp, telling you it's a "different notation for the same ideas".
The text is always clear, short and right to the point.
Excellent !!!Review Date: 2005-10-31
Makes you fall in love with LISPReview Date: 2006-01-06
Excellent TutorialReview Date: 2005-12-24
Although the book is now out of print, you can use the link below to download the pdf at no expense.
http://www.cs.cmu.edu/~dst/LispBook/


Lucid and TimelessReview Date: 2008-02-29
It is the best book that I know for fundamentals. Hence, it will be useful for years to come.
Must have for all embedded systems people.
Has been there on many occasionsReview Date: 2007-11-08
Excellent undergraduate textReview Date: 2005-07-13
Excellent BookReview Date: 2000-02-10
excellent, thorough, and clearReview Date: 2006-07-01
I dare say the student who aces this course is all but prepared to build a simplistic CPU on his own--"simplistic" because, though the concepts can be understood quite completely, it's an intricate challenge. Notably, the book has kept pace with the times: while the PDP-11 instruction set is didactically wonderful--clear and easy and even sporting reasonable opcode mnemonics--you don't see lots of PDP or LSI (or, for that matter, VAX) minis floating around nowadays. So, HV&Z moved on to the 68000, the Power PC, perhaps even the Pentium in the latest (of five or six) editions. (Good move, gentlemen: you've actually done your homework rather than just changing "happy" to "glad" and reprinting with a new version number!)
I used this book as a junior, but (a) I went to Cooper Union, which operates at an extremely high intellectual level [let's put it this way: I took a number of graduate-level computer science electives--compilers, OS, etc.--taught by Bell Labs MTSs as a junior and senior; and some "doctoral" courses that I took at Case were--honest Injun--watered-down versions of similar courses I had taken at Cooper], and (b) I graduated more than twenty years ago, and requirements always creep downward: a few credits fewer, a few tangential courses eliminated, perhaps one fewer humanities elective necessary to matriculate, etc. By 2006 standards, I would reluctantly have to reclassify HV&Z as a postgraduate text.
(A little puzzle for the reader: we had to build--from NAND gates--a microcomputer featuring two three-bit registers, and my squad was the only one that implemented an "exchange registers" function that required only one cycle and used no auxiliary storage registers. How did we do it? Tick ... tick ... tick ... time's up! The circuitry compared corresponding bits from both registers. If they matched, it did nothing; if they differed, it flipped both! So, there was no literal "exchange" operation: rather, each was simultaneously reset to the value of the other.)
Related Subjects:
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