Showing posts with label best practices. Show all posts
Showing posts with label best practices. Show all posts

12/14/2012

Omnigraffle 5 Professional Review

Omnigraffle 5 Professional
Average Reviews:

(More customer reviews)
I've been a Microsoft Visio user for years on the Windows platform. When I switched to using the Mac as my primary platform at home, I wanted some kind of solution for creating diagrams such as web site maps, system development flowcharts and so on.
My first solution was to run Visio for Windows under Parallels Desktop 4.0 for Mac. However, the performance running in a virtual environment never really impressed me. I've got a Mac mini with a 2Ghz Intel Core Duo processor and 2 GB of RAM, but even that wasn't enough to provide a satisfying experience under Parallels.
My next stop was Crossover for Mac, which allowed me to run Visio 2003 on the Mac and associate Visio files to run Visio in a Windows-like setting. This has been an acceptable solution performance-wise; but when it comes to editing files and integrating well with my external hard drives attached to the Mac mini, I really didn't feel it was a seamless experience.
After searching, I gave OmniGraffle 5 Pro a whirl. I've just completed a few site map design projects using OmniGraffle. On the second project, I had to exchange data with Visio, as OmniGraffle is not available for Windows and my Windows-installed laptop left me only the option of using Visio. The VDX (Visio XML Drawing) format allowed me to exchange data between OmniGraffle and Visio without too many glaring issues. There were some formatting problems when I read the VDX file exported from OmniGraffle into Visio (carriage returns and tabs ended up as garbage characters, and a few text boxes were out of place), but I was pleasantly surprised that the export process to VDX from OmniGraffle and then back into OmniGraffle when I came home went as smoothly as it did.
There are a few other thing that Visio users will need to remember when switching to OmniGraffle, such as the need to hit ENTER when adding text to a shape rather than just selecting and typing it as Visio allows, or the different keyboard shortcuts available in OmniGraffle, such as Z for zoom, 1 to switch to the selection cursor and so on. However, I found that after a brief period of adjustment, I was more productive in OmniGraffle.
Also, I found that the buttons and options are there where you expect and need them, and the overall feel of the application is very ergonomic and well-thought-out. (The text options in particular throw you for a loop first - clicking the text icon on the text style palette opens up the fonts palette, which provides more options... this could be consolidated a lot better!)
Although I'm not a big fan of all the floating palettes (which tend to clutter the screen and obscure the document you're working on, if you don't periodically minimize or close the ones you don't need), the combination of Illustrator-like keyboard shortcut options and the easy text input feature for shapes makes OmniGraffle a winner for any flowcharting, mind-mapping or general diagramming option.
Overall, I feel that although I have yet to really explore the options available in OmniGraffle, it has served my needs very well so far. With a little more attention to the usability of the floating palettes, and a bit more detail in the help screens, the application could be improved... but my feeling so far is that OmniGraffle is a very user-friendly, extremely versatile application that will provide a very satisfying experience that beats Illustrator hands-down for people who need to create diagrams and charts of all types on the Mac... and even for those who need a high degree of compatibility with Visio for Windows. I'm sticking with OmniGraffle. And if I had to make a choice between OmniGraffle and Visio, at this point I'd certainly choose OmniGraffle.


Click Here to see more reviews about: Omnigraffle 5 Professional



Buy Now

Click here for more information about Omnigraffle 5 Professional

Read More...

5/17/2012

Practical Java™ Programming Language Guide Review

Practical Java™ Programming Language Guide
Average Reviews:

(More customer reviews)
Practical Java Programming Language Guide used the "essay" style similar to "Effective C++" to explain some issues in Java. It covers General Technique,Object and Equality, Exception Handling, Performance, Multithreading and Class & Interface with total 68 'Praxis'.
This 'essay' style is my favorite. It represents topics in each small 'essay' and you can easily pick up the topic you are interested in without getting lost, or just read the book from cover-to-cover. It is also very useful for checking up something in which you'd like to have more understanding. You won't get bored there!
I would say this book is for intermediate to advance Java programmer. It is not a book to learn how to program in Java, it is a good book to get more understanding with Java. It will help you learn more about Java, become a better Java programmer. I feel like I've learn a lot even with my 4-years professional Java programming experience. Also, if you are new to Java, this book will help you Ace your Java interview:)
Sometimes, as a programmer, we tend to forget the low-level details as to why we do things that way. For example, the difference between "==" and ".equals()", we all know we need to use .equals() to comare Object reference, use "==" for primitive data type. After reading this book, I know more about "why" we did things that way than just "what" to do. That's just a small example, I bet you'll find lots of "ah-ha" monents in reading this book.
One shortcoming I'd like to point out is there are some duplicates in explaining some topic. Maybe the author wanted to emphasis some points but I feel like it is redundant. e.g. both Praxis 11 and praxis 15 talk about how to immplement equals() method which I think only one would be enough. Also, it would be great if the broadth of the topic was expanded some more.
Overall, it is a great book. I've been enjoying reading it and find it very helpful. I am looking forward to something like "More practical Java programming Language Guide" coming...

Click Here to see more reviews about: Practical Java™ Programming Language Guide

This book does for Java what Scott Meyers' classic Effective C++ did for C++: identifies the key practices and rules that enable good developers to become great developers. IBM Java expert Peter Haggar brings together 68 rules for writing better Java 2 code, complete with insightful discussions and real-world examples. These are the "rules of thumb" expert developers have discovered: guidelines that consistently lead to clear, correct, and efficient code. Haggar focuses on the key issues virtually every Java developer faces, from general techniques (such as when to use polymorphism and when not to use method overloading); to working with objects, exception handling, performance, multithreading, classes, interfaces, and beyond. Haggar has a remarkable talent for crystallizing a problem and solution, and communicating it in words and code. The result: a book that can help any Java developer get dramatically better results -- fast.

Buy NowGet 19% OFF

Click here for more information about Practical Java™ Programming Language Guide

Read More...

1/26/2012

Designing Web Usability Review

Designing Web Usability
Average Reviews:

(More customer reviews)
I agree with other reviewers, Jakob does present his ideas as Rules You Must Follow, rather than observations or suggestions. On a few things, he offers no data to back up his assertion, and on a couple things I know he's factually incorrect. I also agree that there are a lot of typos in this book, but only if you're observant.
However, what he does present is just great. I like the writing style. I like the example images. For example, when he says to design for "any" screen size, and then shows you 3 screenshots of Web sites that lock themselves into a certain size, that certainly illuminates how stupid some designers can be.
One other point. Jakob is writing for usability, about how people get information. He pays no attention to marketing issues, such as branding, creating product interest, giving the customer a memorable experience, entertainment, etc. It is fine that he concentrates on other areas, but know before you buy the book that you will have to make up you own mind in those areas (at least). For instance, site reports from the Web site I work on show that any time I throw a DHTML "whiz-bang" widget onto the site, the area it is promoting gets a doubling to a quadrupling of traffic. That flies in the face of his "don't use whiz-bang features" philosophy. But I've learned that his data and my data don't always agree. So take Jakob with a grain of salt.

Click Here to see more reviews about: Designing Web Usability



Buy NowGet 37% OFF

Click here for more information about Designing Web Usability

Read More...

11/17/2011

Java(tm) in Practice: Design Styles and Idioms for Effective Java Review

Java(tm) in Practice: Design Styles and Idioms for Effective Java
Average Reviews:

(More customer reviews)
Overall, this book does a decent job of explaining good design techniques to the programmer who is already familiar with Java. There are plenty of code examples, along with UML diagrams to help explain the designs that are presented. There's even an appendix on UML for those unfamiliar with the modeling language.
There are some flaws in this book, however. The book is not updated for Java 2, and is therefore rapidly becoming obsolete. Additionally, a significant number of typos and inconsistent use of terms clouds the already difficult subject matter. Especially bad is the discussion of the Cloneable interface, in which the authors state that different compilers treat Cloneable classes differently, but do not explain what the correct behavior is according to the Java Language Specification or how to work around these compiler problems.
There is some good material in the book, but in my opinion not enough of it and too many problems in the presentation, to justify the cover price.

Click Here to see more reviews about: Java(tm) in Practice: Design Styles and Idioms for Effective Java



Buy Now

Click here for more information about Java(tm) in Practice: Design Styles and Idioms for Effective Java

Read More...

10/11/2011

Core Security Patterns: Best Practices and Strategies for J2EE™, Web Services, and Identity Management Review

Core Security Patterns: Best Practices and Strategies for J2EE™, Web Services, and Identity Management
Average Reviews:

(More customer reviews)
This is the best book I ever had for Java security. This book talks everything you need to know about java security architecture and how to implement them with patterns. In addition to patterns, the book also recommends security bestpractices considerations for J2EE production, how to do proactive and reactive security assessments using well-defined checklists, security design case-study for portal. Undoubtedly, this book is very easy to understand, good code examples and nicely organized to support the needs of a Java developer. It is highly recommended for anyone wants to get involved with security architecture in J2EE applications and web services. If you are a Java guy..then go for it.

Click Here to see more reviews about: Core Security Patterns: Best Practices and Strategies for J2EE™, Web Services, and Identity Management

Praise for Core Security Patterns
"Java provides the application developer with essential security mechanisms and support in avoiding critical security bugs common in other languages. A language, however, can only go so far. The developer must understand the security requirements of the application and how to use the features Java provides in order to meet those requirements. Core Security Patterns addresses both aspects of security and will be a guide to developers everywhere in creating more secure applications."

--Whitfield Diffie, inventor of Public-Key Cryptography

"A comprehensive book on Security Patterns, which are critical for secure programming."

--Li Gong, former Chief Java Security Architect, Sun Microsystems, and coauthor of Inside Java 2 Platform Security

"As developers of existing applications, or future innovators that will drive the next generation of highly distributed applications, the patterns and best practices outlined in this book will be an important asset to your development efforts."

--Joe Uniejewski, Chief Technology Officer and Senior Vice President, RSA Security, Inc.

"This book makes an important case for taking a proactive approach to security rather than relying on the reactive security approach common in the software industry."

--Judy Lin, Executive Vice President, VeriSign, Inc.

"Core Security Patterns provides a comprehensive patterns-driven approach and methodology for effectively incorporating security into your applications. I recommend that every application developer keep a copy of this indispensable security reference by their side."

--Bill Hamilton, author of ADO.NET Cookbook, ADO.NET in a Nutshell, and NUnit Pocket Reference

"As a trusted advisor, this book will serve as a Java developer™s security handbook, providing applied patterns and design strategies for securing Java applications."

--Shaheen Nasirudheen, CISSP,Senior Technology Officer, JPMorgan Chase

"Like Core J2EE Patterns, this book delivers a proactive and patterns-driven approach for designing end-to-end security in your applications. Leveraging the authors™ strong security experience, they created a must-have book for any designer/developer looking to create secure applications."

--John Crupi, Distinguished Engineer, Sun Microsystems, coauthor of Core J2EE Patterns

Core Security Patterns is the hands-on practitioner™s guide to building robust end-to-end security into J2EE' enterprise applications, Web services, identity management, service provisioning, and personal identification solutions. Written by three leading Java security architects, the patterns-driven approach fully reflects today™s best practices for security in large-scale, industrial-strength applications.

The authors explain the fundamentals of Java application security from the ground up, then introduce a powerful, structured security methodology; a vendor-independent security framework; a detailed assessment checklist; and twenty-three proven security architectural patterns. They walk through several realistic scenarios, covering architecture and implementation and presenting detailed sample code. They demonstrate how to apply cryptographic techniques; obfuscate code; establish secure communication; secure J2ME' applications; authenticate and authorize users; and fortify Web services, enabling single sign-on, effective identity management, and personal identification using Smart Cards and Biometrics.

Core Security Patterns covers all of the following, and more:

What works and what doesn™t: J2EE application-security best practices, and common pitfalls to avoid

Implementing key Java platform security features in real-world applications

Establishing Web Services security using XML Signature, XML Encryption, WS-Security, XKMS, and WS-I Basic security profile

Designing identity management and service provisioning systems using SAML, Liberty, XACML, and SPML

Designing secure personal identification solutions using Smart Cards and Biometrics

Security design methodology, patterns, best practices, reality checks, defensive strategies, and evaluation checklists

End-to-end security architecture case study: architecting, designing, and implementing an end-to-end security solution for large-scale applications


Buy NowGet 37% OFF

Click here for more information about Core Security Patterns: Best Practices and Strategies for J2EE™, Web Services, and Identity Management

Read More...

9/15/2011

Core J2EE Patterns: Best Practices and Design Strategies Review

Core J2EE Patterns: Best Practices and Design Strategies
Average Reviews:

(More customer reviews)
Having just completed the initial design and development phase of a J2EE web-based implementation of a major application vendor's product, I bought this book. I don't know whether I was trying to see what I could have done better or what I, hmmm, messed up?
A little history ' I have been in the application development field for 25 years, working up from being a coder to a consulting enterprise architect. Having worked with a lot of technologies over the years, I have noticed that while some things change every 18-36 months, some things don't change all that much. I didn't acknowledge this trend as 'patterns' because I called it experience.
I've bought a hundred books over the years, from the Martin books back in the 70's to Monson-Haefel in 2000. With very few exceptions, such as Alexander's Timeless Way of Building and a few others, they were trivial or excellently focused on a very small segment of what you need to know (such as EJB) to be a system architect. Or, in attempting to focus on the bigger picture, they show absolutely no practical detail, and in their own way, are useless.
Now, after all that BS, I get down to the book. This is an outstanding document of a large number of essential enterprise level patterns applied to the J2EE context. Just as Bruschmann's Pattern-Oriented Software Architecture, A System of Patterns took patterns that, by themselves, are trivial and combined them into architecturally significant frameworks; this book shows architectural patterns that are significant in the light of J2EE and Javasoft's Model 2 reference architecture.
Anybody that has worked with Model 2 knows that it is a naïve architecture. It uses practically every part of J2EE because it is there (remember that both were created by Sun) and the patterns of communication and service support really don't work robustly. You will have to significantly enhance the Controller, how the View gets data from the Model, exception handling and propagation, how services are provided and much more.
It seems that the authors of this book realize that. Look at the Front Controller, Service to Worker and Dispatcher View patterns. Check out how the Business Delegate, Session Façade and Composite Entity patterns work. For services, the Service Locator and Service activator patterns are significant. If you have any reservations about Entity Beans (more later), check out the Data Access Object.
If the View Helper, Composite View, Value Object, V.O. Assembler, Value List Handler are new to you, read this book. As an architect, they shouldn't be new.
On Entity Beans, I have to say that the authors did an excellent job. In providing patterns such as Composite Entity and DAO, they help to reduce the triviality of the 1.0 Entity Bean Specification. Within the Composite Entity, the Composite Entity Contains Coarse-Grained Object Strategy and the Composite Entity Implements Coarse-Grained Object Strategy may seem the same, but they are not. They are both powerful ways of leveraging Entity Beans. The Lazy Loading and Dirty Marker Strategies are excellent, also.
A few places in the book have what I believe are errors, or at least naïve statements. The introduction to Entity Beans reads like a java marketing hack wrote it. If you've worked with Entity Beans, you might have run into the fact that they are a relatively simple solution to what can be an extremely complex problem. Many people do not even use them. I usually don't. The Synchronizer Token is interesting, but it seems to assume a single VM on a single machine. What happens to this token when you are stateless, in a multiple VM, multiple node load-balanced cluster? You have to address the location transparent, session state management service scheme before you can deal with this.
Look at the bad practices. I did, with one hand over my eyes! Luckily, I wasn't guilty. These are things that should be obvious to you as a system architect. If not read them and remember them.
All in all, this is one of the best books I have read this decade! In terms of practicality, this is the J2EE architecture book to buy.

Click Here to see more reviews about: Core J2EE Patterns: Best Practices and Design Strategies

Sun Microsystems' Java 2 Platform, Enterprise Edition (J2EE) has become the platform of choice for Web-centric distributed enterprise application development. Expert consultants from the Sun Java Center have been helping customers build J2EE-based solutions since the earliest days of the technology, focusing primarily on up-front design and architecture. Along the way, they've identified powerful J2EE design patterns that lead to applications with superior performance, scalability, and robustness. This book brings those design patterns together, sharing Sun's best practices for development with Java Server Pages (JSP), Servlets, EJB, and other J2EE technologies. It presents a complete catalog of J2EE patterns encapsulating proven and recommended designs for common J2EE-related problems, organized into presentation tier, business tier and integration tier solutions. Presentation tier patterns describe solutions involving JSP and servlets; business tier patterns describe solutions involving EJB; and integration tier patterns describe solutions involving JDBC and Java Messaging Service (JMS). The book also identifies bad practices to be avoided.Finally, it presents an end-to-end multi-tier case study covering every stage of enterprise development.

Buy Now

Click here for more information about Core J2EE Patterns: Best Practices and Design Strategies

Read More...

9/12/2011

Microsoft Office SharePoint Server 2007 Best Practices Review

Microsoft Office SharePoint Server 2007 Best Practices
Average Reviews:

(More customer reviews)
When deploying SharePoint, it is critical to plan for not only what you need now, but for how it will grow and scale down the road, especially when Document Management is involved. If you don't plan adequately for searchability, scalability, or disaster recovery, you can easily run into problems.
One criticism I have had of many SharePoint books is that they are written from a technical perspective and explain how to install and configure SharePoint, but they gloss over the critical planning stages or the best practices for scalability.
As the name of this book indicates, this is a very thorough guide covering the best practices for planning, deploying, optimizing, and organizing SharePoint. This book is not necessarily intended to give you step-by-step instructions for installing SharePoint, but rather cover the full lifecycle of a SharePoint deployment and give you best practice recommendations. The layout and organization of the book is very logical, making it easy to quickly find what you are looking for. It covers both Windows SharePoint Services 3.0 and MOSS 2007.It is written to be accessible by anyone on a team evaluating or implementing SharePoint, or anyone who just wants to learn more about it.
The book is broken into the following sections:
Introduction--includes an overview of the various SharePoint Technologies, how to determine which you need, and how SharePoint will help your business.
Part I--Planning--This is not just about planning for the IT infrastructure, but more about planning for the impact that SharePoint will have on your organization, such as dealing with push-back from users after moving away from shared folders to SharePoint document libraries and breaking down departmental "information kingdoms."
Part II--Building--This section gets into best practices for building your environment, including content management strategies, the role of custom development, and dev and test environments, including replication of content between environments.
Part III--Deploying--This section has a great discussion about organizing your content and search/crawling strategy to optimize searchability for your content, security of content, business intelligence, and intranet/extranet/internet deployment scenarios.
Part IV--Operating--This section has great tips on availability, disaster recovery, capacity planning, and performance monitoring.
What I appreciated most about this book is it is very readable and does not include a lot of "fluff," just straightforward best practices. For example, in Chapter 8, the section on should SharePoint replace file servers is very straightforward about the limitation of SharePoint and when file servers should still be used.
If you are someone new to SharePoint or a System Administrator charged with deploying SharePoint, this book may leave you wanting more--it is not designed to be a how-to book; however, it does include many good recommendations for additional resources.


Click Here to see more reviews about: Microsoft Office SharePoint Server 2007 Best Practices

Get field-tested best practices and proven techniques for designing, deploying, operating, and optimizing Microsoft Office SharePoint Server 2007 and Windows SharePoint Services 3.0. Part of the new Best Practices series for IT professionals from Microsoft PressÂ, this guide is written by leading SharePoint MVPs and Microsoft SharePoint team members who ve worked extensively with real-world deployments and customers. You ll find out how to deploy the software, design your environment, manage content, analyze and view data, perform disaster recovery, monitor performance, and more. You'll learn how to create SharePoint sites that help your organization collaborate, take advantage of business insights, and improve productivity with practical insights from the experts.
Key Book Benefits:
Delivers authoritative, field-tested best practices for working with Microsoft SharePoint solutions Covers the full IT lifecycle, from planning, design, and deployment through operations and support Includes a CD with job aids, utilities, and a fully searchable eBook

Buy NowGet 37% OFF

Click here for more information about Microsoft Office SharePoint Server 2007 Best Practices

Read More...

9/02/2011

Enterprise SOA: Service-Oriented Architecture Best Practices Review

Enterprise SOA: Service-Oriented Architecture Best Practices
Average Reviews:

(More customer reviews)
Too many "SOA" books are either API documents or high-level hand waving. You can tell that this book is based on actual project experience. The authors manage to give actionable guidance and explain their reasoning well without diving into too many technology details. If you are interested in the "A" of "SOA", you will like this book.

Click Here to see more reviews about: Enterprise SOA: Service-Oriented Architecture Best Practices

This book spells out guidelines and strategies for successfully using ServiceOriented Architecture (SOA) in large-scale projects. SOA represents the latestparadigm in distributed computing and middleware development. However,SOA is not a revolution, but rather an evolution in software architecture. SOAis a collection of best practice software construction principles accompanied byproven methodologies in development and project management.This book is unique in that it offers a pragmatic approach to the topic. Theauthors borrow from their more than forty years of collective enterpriseexperience, and offer a frank discussion of the challenges associated withadopting SOA. They also help readers ensure that their organization does notbecome too closely tied to a specific technology. The result is a detailedintroduction to the topic and an architectural blueprint for implementing SOA.

Buy NowGet 37% OFF

Click here for more information about Enterprise SOA: Service-Oriented Architecture Best Practices

Read More...