Usability advocates should never satisfy themselves with sitting back and finding fault with one product or another. Why? If for no other reason, because you can find fault with almost any product. Go the next step. Be constructive. Engage in design! Get out there and create highly usable systems.

Design principles are a good start
Design principles are self-apparent and they are usually true. Simplicity. Consistency. Clarity and Communication. Safety. Standardization. Accessibility. Appeal. These set the stage for creating designs that are successful, engaging, helpful, and reasonable. Designs ought to be critiqued against important principles like these in order to identify ways to continually improve. In fact, we could write out thousands of guidelines for good design that are all important in the contexts in which they apply. But principles will only get you so far, because principles won't create designs for you, and principles won't find all the problems, no matter how insightful you are.

Effective design is a process, not an inspiration
Effective design involves innovation, evaluation, and iteration. Effective design requires that you explore the design space, which means creating and refining a wide variety of alternatives for solving the design problems. Evaluation can involve using the standard design principles, but most significantly, it needs to involve the users: user testing, interviews, focus groups, surveys.

User testing always provides insights and usually provides surprises. You could spend years reviewing your site with experts and still miss the most obvious simplifications of your design. User testing shows you in immediate and concrete terms where (and usually why) people are getting stuck.

Effective design processes are systematic
Systematic doesn't mean rigid. A good systematic process is a flexible one. Systematic means that you always know your status and your options at each step. It means you're familiar with every design and evaluation technique and thoughtful in selecting the appropriate technique to address any problem. It means you're evaluating the quality of your design as you proceed and you're watching your budget and schedule.

Good design processes are centered around usability because usability is the whole point to design. Good design processes are oriented to giving the highest probability of achieving the best design within your design constraints.