Showing posts with label software design. Show all posts
Showing posts with label software design. Show all posts

Programming Microsoft® .NET (Core reference) Review

Programming Microsoft® .NET (Core reference)
Average Reviews:

(More customer reviews)
Are you looking to buy Programming Microsoft® .NET (Core reference)? Here is the right place to find the great deals. we can offer discounts of up to 90% on Programming Microsoft® .NET (Core reference). Check out the link below:

>> Click Here to See Compare Prices and Get the Best Offers

Programming Microsoft® .NET (Core reference) ReviewThe primary focus of the book (500+ pages) is on using .NET with ASP. Since I bought the book figuring that the book would be more focused on the FCL (Framework Class Library), the majority of the book is not useful to me.
The 180 pages dedicated to using the FCL and CRL (Common Runtime Library) with C# were very good, but could have used some additional material. Specifically, sample programs using more than just the edit, list, and button controls would have been good. In addition, detailed samples using streams would have also been good.
The final 100+ pages is a whirlwind tour of other aspects of .NET including ADO.NET (databases), threading, and remoting. The chapters do not have as much depth as the other chapters and give you just enough information to be dangerous. Again, additional depth would have been good.
If you want to use .NET from ASP with a little C#, this is THE book for you. If you want to use .NET from C#, this probably isn't the book for you.Programming Microsoft® .NET (Core reference) Overview

Want to learn more information about Programming Microsoft® .NET (Core reference)?

>> Click Here to See All Customer Reviews & Ratings Now
Read More...

Memory as a Programming Concept in C and C++ Review

Memory as a Programming Concept in C and C++
Average Reviews:

(More customer reviews)
Are you looking to buy Memory as a Programming Concept in C and C++? Here is the right place to find the great deals. we can offer discounts of up to 90% on Memory as a Programming Concept in C and C++. Check out the link below:

>> Click Here to See Compare Prices and Get the Best Offers

Memory as a Programming Concept in C and C++ ReviewI agree with the other reviewers. In general this is good book. It bridges the gaps between many computer science disciplines. Especially OS and programming language. It also touched a little bit on computer architecture and linking process. The text was written in a a very clear way. However, I do have two complains. The author didn't spend enough effort on the relatively more complex and advanced topics. Eg, linking process for C++, advanced topics in memory leakage detection and prevention. On the other hand, author spent too much energy describing linked data structure in terms of serialization. I personally don't think its relevance is higher than the advanced memory leakage issues. For seasoned profressionals, this book can be used to refresh your knowledge. It is a beginner level to intermediate level book.Memory as a Programming Concept in C and C++ Overview

Want to learn more information about Memory as a Programming Concept in C and C++?

>> Click Here to See All Customer Reviews & Ratings Now
Read More...

STL Pocket Reference Review

STL Pocket Reference
Average Reviews:

(More customer reviews)
Are you looking to buy STL Pocket Reference? Here is the right place to find the great deals. we can offer discounts of up to 90% on STL Pocket Reference. Check out the link below:

>> Click Here to See Compare Prices and Get the Best Offers

STL Pocket Reference ReviewThe author states right near the front, on pg 2, that in order to keep this book down to pocket reference size it is not a detailed reference like C++ in a Nutshell, nor does it cover C++ I/O streams or the C/C++ Standard Library. I fully agree on the necessity of that (the 'Nutshell' book is almost 800 pages), however, I would have found this pocket reference far more helpful if it had done two things differently:
1) Like a previous reviewer stated, include more examples. As my own example, the author does a good job of explaining some of the drawbacks of reverse iterators, as in this sentence: "The solution is to increment the reverse iterator, call base() to obtain the adapted iterator, and then pass the adapted iterator to erase." That's useful advice but--like a picture being worth a thousand words--a quick code example would speed up immediate understanding of the point being made, which is the purpose of a pocket reference. Code examples would also help clarify the often obtuse syntax of the STL. There are two reasons I pick up a pocket reference: to remind me what the name and operations of that call was to iterate backwards over a container, and to help me get the syntax right so the compiler stops whining. Unfortunately, the second part is missing from this pocket reference.
2) Include C++ ios_base. For one thing, the author already includes the basic_string template and I/O stream iterators. That's 2/3s of the way there already. From an academic standpoint, the ios_base stuff is low-level detail. From a practical programming view, I'm always referencing the ios_base format flags, open state, etc. when dealing with streams, even the STL I/O streams. It would be convenient if the necessary syntactical details were in the same pocket reference.
I don't regret buying this pocket reference. Like most of the O'Reilly pocket references, it's full of useful information. But I still need to refer to Stroustrup, the Nutshell book, etc. more often than not to really get a handle on exactly how I need to express my wishes to the compiler. Code examples would really help.
STL Pocket Reference Overview

Want to learn more information about STL Pocket Reference?

>> Click Here to See All Customer Reviews & Ratings Now
Read More...

Applying Domain-Driven Design and Patterns: With Examples in C# and .NET Review

Applying Domain-Driven Design and Patterns: With Examples in C# and .NET
Average Reviews:

(More customer reviews)
Are you looking to buy Applying Domain-Driven Design and Patterns: With Examples in C# and .NET? Here is the right place to find the great deals. we can offer discounts of up to 90% on Applying Domain-Driven Design and Patterns: With Examples in C# and .NET. Check out the link below:

>> Click Here to See Compare Prices and Get the Best Offers

Applying Domain-Driven Design and Patterns: With Examples in C# and .NET ReviewI was surprised that this book slipped under my radar for almost 3 months. I've been on the lookout for just such a unifying tome of knowledge that relates patterns and domain-driven design (DDD) to a practical .NET example for quite some while. The book delivers well on its promises, significantly surpassing the only other real competitor, Foundations of Object-Oriented Programming Using .NET 2.0 Patterns. The pros and cons, as I see them, are outlined below:
PROS
* Combines the ideas of Domain Driven Design (Evans) with Patterns of Enterprise Application Architecture (Fowler). These books are pretty much mandatory reading prior to diving into this book.
* Draws upon a myriad of other well-known sources, including materials from Refactoring to Patterns and the GoF, work from Johnson and Lowy, as well as a rare reference to Naked Objects. The more experienced and better read you are, the more this stuff will make sense.
* Rare .NET coverage of advanced concepts like Plain Old CLR Objects (POCOs), persistence ignorant (PI) objects, O/R mapping with NHibernate, Dependency Injection, Inversion of Control, and Aspect-Oriented Programming.
CONS
* While some sections are really insightful and could contain more interesting materials, other sections seem to drone on too long. The work on defining the NUnit tests, in particular, flows like a stream of consciousness and doesn't really add a lot of structured value to understanding DDD, patters, or TDD for that matter.
* Embedded comments in the text adopt from the style used in Framework Design Guidelines. It worked very well for Cwalina / Abrams in their book because it seemed planned in from the outset. Comments like "one reviewer commented on the code with the following, more succinct version" seem like editorial comments left in and not collaborative authoring by design.
All-in-all a very solid book that fills a unique market niche, leaving it pretty much without peers. If Amazon had a 4.5 starts rating, Applying DDD would get it. As a secondary reference book, it doesn't offer the earth shattering insights of some of the innovative source materials found in the Fowler Signature Series, for example. It does, however, weave together an interesting example of how to tie all of these concepts together for the .NET architect looking to take their understanding to the next level.Applying Domain-Driven Design and Patterns: With Examples in C# and .NET Overview

Want to learn more information about Applying Domain-Driven Design and Patterns: With Examples in C# and .NET?

>> Click Here to See All Customer Reviews & Ratings Now
Read More...

Glitch: The Hidden Impact of Faulty Software Review

Glitch: The Hidden Impact of Faulty Software
Average Reviews:

(More customer reviews)
Are you looking to buy Glitch: The Hidden Impact of Faulty Software? Here is the right place to find the great deals. we can offer discounts of up to 90% on Glitch: The Hidden Impact of Faulty Software. Check out the link below:

>> Click Here to See Compare Prices and Get the Best Offers

Glitch: The Hidden Impact of Faulty Software ReviewGiven my (and many others') increasing frustration with consequences of buggy software, I was really hoping for this book to be useful at identifying the issues and proposing some solutions. Not only did the book come up short on both of these, but much of the book has nothing to with glitches. Further there were numerous errors in much of the material, and most of the "solutions" proposed amounted to suggesting increased regulation, as if the government can demand bug-free software (when that isn't even defined) or "certified" software engineers, again not showing what kind of certification (or even training) can reduce bugs.
Some examples of wrong, if not downright dangerous, advice:
He points to Bernie Madoff as an example of the need for more government regulation (in general), ignoring the fact that preventing situations like Bernie Madoff was EXACTLY what the SEC was set up to, and even after 75 years was unable to do so.
He also aims to expand government's consumption of technology - "without ... Web 2.0 capabilities on government websites, e-government initiatives will deliver diminishing returns. ... when ... [Web 2.0 capabilities are] unavailable on government sites, citizens will not return." This completely misses several major points - most notably, that government does not have competitors (for true government functions), and that as long as an electronic solution is easier than the alternative, it will succeed. Will anyone really choose to go in to the DMV for a renewal that can be done on the web, just because the website doesn't offer flashy graphics or collaboration features?
In suggesting not to understand, much less upgrade mission-critical systems- "Know when to leave well enough alone. Given fluctuations in staffing and long-term investments in technology, the reality is that you simply won't fully understand certain applications. ... you will not always know exactly what makes them tick ...If it's a business-critical application, ... you may not need to know every line of code ... In this case, the risk of compromising the infrastructure by opening the application far outweighs the need to sate curiosity." One would think that if a system were business-critical, understanding every line would be business-critical. Or else one glitch could bring down the company, because no one will understand enough to repair it in a timely manner. Also, even the most green developer knows that "opening the application" (i.e. reviewing source code) does not entail ANY risk. Ignorance, however, that's risk.
In proposing more attention being paid to cloud applications - "Should faulty software practices make their way into a cloud, they might impact a wider audience than a more traditional on-premises model of software ownership. Therefore we need to be that much more diligent when it comes to developing [cloud applications]" This is particularly disturbing as he earlier pointed out software bugs that killed people in a (not widely used) radiology application. "Diligence" should be a function of potential impact, not where an application is hosted, or even how many users it has.
Even his definition of a software problem is questionable - "When I buy a flat-panel TV and it takes me four hours to make it work with the components, that's a software lifecycle problem. When I wait for three hours for what was supposed to be a one-hour brake pad replacement, that's a software life cycle failure."
Speaking of definitions, he continually talks about "transparency" and "governance" without ever clearly defining those terms.
In summary, while the author may have been CEO of Lotus Development Corp, it sounds like he was never actually a developer or even a tester, and hence appears to be a PHB (pointy haired boss) right out of Dilbert, spouting off dictates with no understanding of the real problems, much less solutions. What a shame.
Glitch: The Hidden Impact of Faulty Software Overview

Want to learn more information about Glitch: The Hidden Impact of Faulty Software?

>> Click Here to See All Customer Reviews & Ratings Now
Read More...

Masterminds of Programming: Conversations with the Creators of Major Programming Languages (Theory in Practice (O'Reilly)) Review

Masterminds of Programming: Conversations with the Creators of Major Programming Languages (Theory in Practice (O'Reilly))
Average Reviews:

(More customer reviews)
Are you looking to buy Masterminds of Programming: Conversations with the Creators of Major Programming Languages (Theory in Practice (O'Reilly))? Here is the right place to find the great deals. we can offer discounts of up to 90% on Masterminds of Programming: Conversations with the Creators of Major Programming Languages (Theory in Practice (O'Reilly)). Check out the link below:

>> Click Here to See Compare Prices and Get the Best Offers

Masterminds of Programming: Conversations with the Creators of Major Programming Languages (Theory in Practice (O'Reilly)) ReviewMost of these "masterminds" come across as rather provincial, making for an unintentionally hilarious read. Stroustrup can't go much more than a page without complaining about Java. The creator of basic opines that, because all languages are basically the same, if you've learned one you can easily learn any . . . then later talks about how he is trying (and failing) to learn objective-C. Guido van rossum asserts that you can define reduce in a couple of lines of python, which you simply cannot do in a functional language. Huh?
reduce f z [] = z
reduce f z (x:xs) = reduce f (f z x) xs
Or is haskell not a functional language in his book, just like lisp is not a functional language?
Don't get me wrong, a few of the interviews are worth reading for something other than comedic value. When creators are actually willing to talk about the mistakes and tradeoffs they made, as the team behind Awk does, the results are sometimes illuminating. The interview with charles moore is completely insane, in a good way. Adin falkoff's comments on apl are interesting, and he does a good job of taking the high road when the interviewer attempts to provoke comparisons to other languages. Unfortunately the overall tone of the book drags it down to not much more than an amusing light read - good for a plane ride, but not worth coming back to.Masterminds of Programming: Conversations with the Creators of Major Programming Languages (Theory in Practice (O'Reilly)) Overview

Want to learn more information about Masterminds of Programming: Conversations with the Creators of Major Programming Languages (Theory in Practice (O'Reilly))?

>> Click Here to See All Customer Reviews & Ratings Now
Read More...

Foundations of Agile Python Development (Expert's Voice in Open Source) Review

Foundations of Agile Python Development (Expert's Voice in Open Source)
Average Reviews:

(More customer reviews)
Are you looking to buy Foundations of Agile Python Development (Expert's Voice in Open Source)? Here is the right place to find the great deals. we can offer discounts of up to 90% on Foundations of Agile Python Development (Expert's Voice in Open Source). Check out the link below:

>> Click Here to See Compare Prices and Get the Best Offers

Foundations of Agile Python Development (Expert's Voice in Open Source) ReviewIf you are looking to purchase this book, and you are in the year 2010 or beyond, DO NOT BUY THIS BOOK. Please continue reading my review below, however, to understand why.
This book is outdated because:
1. It has extremely detailed instructions for using eclipse (the IDE) with pydev, mylyn, and pydev-extensions. Eclipse has changed a LOT since this book was written, and the instructions are no longer accurate. The pydev-extensions plugin doesn't actually exist anymore, it was merged with pydev. This can be confusing for new users trying to get things running.
2. The instructions for getting buildbot running are no longer correct. Buildbot has changed a bit as well, and the details for installation is different than it used to be.
3. It spends a while talking about pMock, one of 2 python mock libraries, which hasn't been developed since 2004 and is considered obsolete.
4. It spends a while talking about pyfit, which hasn't been worked on since 2006 and is also not commonly used.
Now, for my thoughts about the book itself:
I decided to give this book a 5 star review because it is an excellent book:
- The author writes extremely well, and has a bit of humor throughout the book.
- The author covers extensions why TDD is good, how it helps, and how it should be used.
- The author describes the different types of testing, and provides clear, intuitive, and thoughtful examples that clearly demonstrate *how to* do the testing.
- The author covers extremely detailed setup / installation / configuration of the tools and development environments discussed.
The reason why I have to not recommend any readers purchase this book though, is that it is sorely in need of an update. I just finished reading this book (August, 2010), and it is very clear that it is outdated. This book would have been extremely useful two years ago, and maybe also the first quarter of 2009, but agile practices and tools have changed so much since then that this book really needs to be rewritten.
My advice to readers who are considering purchasing this book is to do so only if you are aware of what you will be getting, but would like to make use of the author's code examples, writing, and TDD explanations while disregarding the tools used.
I really did enjoy reading this book, however, and I really hope that Apress forces Jeff to release a new copy.Foundations of Agile Python Development (Expert's Voice in Open Source) Overview

Want to learn more information about Foundations of Agile Python Development (Expert's Voice in Open Source)?

>> Click Here to See All Customer Reviews & Ratings Now
Read More...