Showing posts with label patterns. Show all posts
Showing posts with label patterns. Show all posts

Patterns for Computer-Mediated Interaction (Wiley Software Patterns Series) Review

Patterns for Computer-Mediated Interaction (Wiley Software Patterns Series)
Average Reviews:

(More customer reviews)
Whenever I get a new book to review, I always approach it with a mixture of anticipation, curiosity, and dread, especially given the increasing number of books about patterns and, in this case, the size -- 581 pages! When I finally found a small window and sat down with "Patterns for Computer-Mediated Interaction," I was intending to hurriedly skim as much of the text as possible to get an idea of what it was like. Several hours later, I was hooked. What a surprise this book is! Yes, it's topical. The patterns are about developing software to allow people to have the best interaction experience possible. That is where the world is headed, no doubt! The patterns in this book, however, are not just about the technical aspects of these systems, the authors also address the "socio-technical" issues that are important for the people-side of this domain. What was especially interesting to me, as a long-time "patterns fan," was the intriguing and enlightening discussion of pattern languages and the close examination of the pattern language of Christopher Alexander. I've read many essays on this topic but this presentation was very special. I learned a lot. You can't ask for more than that. I can recommend this book whole-heartedly, not only for developers in this domain but also for anyone who wants to study a model pattern language and learn more about patterns and how they work together to solve problems. Two thumbs up!


Click Here to see more reviews about: Patterns for Computer-Mediated Interaction (Wiley Software Patterns Series)

Written by well-respected experts, this how-to guide provides patterns for the design of human computer human interaction (HCHI). An increasing number of applications are currently designed for use by more than one user, eg: multi-player games, interactive web sites, mobile phones, collaborative learning systems, interactive workspaces and smart environments. In these areas there is a shift from (HCI) human computer interaction to (HCHI) human computer human interaction. The role of patterns in this movement is twofold: 1st – patterns focus on the human user of the system; 2nd – patterns assist developers in the development process of groupware applications.

Buy Now

Click here for more information about Patterns for Computer-Mediated Interaction (Wiley Software Patterns Series)

Read More...

Data Mining and Predictive Analysis: Intelligence Gathering and Crime Analysis Review

Data Mining and Predictive Analysis: Intelligence Gathering and Crime Analysis
Average Reviews:

(More customer reviews)
From a technical perspective you won't find details about what algorithms are used and how to implement them in the real world. I came to this book looking for some field applications of DM, Instead a found a very interesting introduction to the kind of decisions related to crime prosecution and prevention without deep technical details.

Click Here to see more reviews about: Data Mining and Predictive Analysis: Intelligence Gathering and Crime Analysis



Buy Now

Click here for more information about Data Mining and Predictive Analysis: Intelligence Gathering and Crime Analysis

Read More...

Search Patterns: Design for Discovery Review

Search Patterns: Design for Discovery
Average Reviews:

(More customer reviews)
"There's no shortage of problems with search today," says Peter Morville at the end of Search Patterns, his most recent book. Throughout the book, Morville chronicles the challenges of search and effectively communicates the best practices of building usable search experiences. While the book more than adequately accomplishes it's stated goal -- to foster greater cross-disciplinary collaboration by increasing search literacy -- it would have been an even better book if the author had proposed more of his own innovative solutions to search's problems.
In the preface Morville sets out to tear down the walls between disciplines, and at this he succeeds. From user psychology to technical considerations to the specific components of the user interface, Search Patterns has something for everyone involved in implementing search.
The first two chapters lay the groundwork for the rest of the book, discussing both why people search and the individual components that make up search. The book is in full swing by chapter three where Morville discusses user behavior, elements of interaction, and -- my personal favourite -- the principles of design.
In talking about design principles, Morville describes search both as a conversation and a jazz-like improvisation. He urges the architect to make search an easy, simple process to initiate, followed by a progressively more sophisticated toolkit that enables users to iteratively refine their query. He argues for a no-suprises approach to the user interface in which valuable options are highly visible and elements of interaction are easily predictable. Many of the principles are applicable to a much broader context than search alone, but that only stregthens their merit.
The real heart of the book is chapter four, which looks at 10 design patterns over 50 pages. It considers the obvious patterns -- autocomplete, faceted navigation, advanced search -- as well as more disparate groupings like federated search and personalization. I was disappointed that the patterns only summarised existing conventions rather than challenging any bad habits. And while this chapter does consume 30% of the book by page count, it manages to stay at a very high level, even to a fault. I would have preferred more permutations and analysis of the cornerstone patterns, such as faceted navigation, while spinning some of the less well-defined patterns into chapters of their own for more consideration.
However, the lack of innovative solutions or granular analysis is quelled by the wealth of thought-provoking examples throughout the book, with an especially high concentration of desktop, mobile, and even kiosk visuals in chapter five.
The final chapter of the book is a forward-looking vision of what search could look like in the distant future, as well as what it probably won't look like (sorry, no "knowledge navigator" robot assistants). While an enjoyable thought exercise, I would have preferred more concrete insights into the near-future possibilities for search (collaborative, task-oriented searching, for example).
Despite a lack of new ideas, Search Patterns is a must-read for everyone collaborating on a search application. It will give your team of designers, engineers, and business stakeholders a common vocabularly and greater awareness of the many sides of search.
Morville ends the book -- as I will end this review -- by urging the reader to get to work on making search better: "For every unsolved problem," he says, "there are countless instances in which we know the solution, but nobody has bothered to implement it. Discipline and attention to detail would go a long way toward improving the world of search."
You should get started by reading this book.

Click Here to see more reviews about: Search Patterns: Design for Discovery

Search is among the most disruptive innovations of our time. It influences what we buy and where we go. It shapes how we learn and what we believe. In this provocative and inspiring book, you'll explore design patterns that apply across the categories of web, ecommerce, enterprise, desktop, mobile, social, and real-time search and discovery. Filled with colorful illustrations and examples, Search Patterns brings modern information retrieval to life, covering such diverse topics as relevance, faceted navigation, multi-touch, personalization, visualization, multi-sensory search, and augmented reality.




By drawing on their own experience-as well as best practices and evidence-based research-the authors not only offer a practical guide to help you build effective search applications, they also challenge you to imagine the future of discovery. You'll find Search Patterns intriguing and invaluable, whether you're a web practitioner, mobile designer, search entrepreneur, or just interested in the topic.

Discover a pattern language for search that embraces user psychology and behavior, information architecture, interaction design, and emerging technology
Boost enterprise efficiency and e-commerce sales
Enable mobile users to achieve goals, complete tasks, and find what they need
Drive design innovation for search interfaces and applications


Buy Now

Click here for more information about Search Patterns: Design for Discovery

Read More...

Web Application Design Patterns (Interactive Technologies) Review

Web Application Design Patterns (Interactive Technologies)
Average Reviews:

(More customer reviews)
User experience experts, information architects, and the like will want
to have a copy of "Web Application Design Patterns" as an important
addition to their knowledge base. Web developers and companies feeling
they can "handle it themselves in-house" will find this book an
absolutely critical must-have. It is obvious that years of experience
and research have gone into the production of this valuable reference.
Written at a college / professional level, Vora's style remains,
however, as user-friendly as his design solutions. Presented in a
straightforward PROBLEM --> SOLUTION --> WHY --> HOW format, this 429
page volume skips the editorializing and pontificating; instead, it provides
concrete examples and explanations of underlying concepts. This
book is a veritable encyclopedia of solutions to today's software
interface design issues.
Colorful screen shots grace almost every page, helping the reader
quickly understand problems and resolutions with real-world examples.
Along with the expected discussions of everyday mechanisms such as
forms, user authentication, and navigation schemes, "Web Application
Design Patterns" forges on with detailed examinations of rapidly
evolving areas such as Rich Internet Applications (RIA), social
networking sites and more.

Click Here to see more reviews about: Web Application Design Patterns (Interactive Technologies)

Ever notice that-in spite of their pervasiveness-designing web applications is still challenging? While their benefits motivate their creation, there are no well-established guidelines for design. This often results in inconsistent behaviors and appearances, even among web applications created by the same company. Design patterns for web applications, similar in concept to those for web sites and software design, offer an effective solution. In Web Application Design Patterns, Pawan Vora documents design patterns for web applications by not only identifying design solutions for user interaction problems, but also by examining the rationale for their effectiveness, and by presenting how they should be applied.. Design interfaces faster, with a better rationale for the solutions you choose.. Learn from over more than 100 patterns, with extensive annotation on use and extension.. Take a short-cut into understanding the industry with more than 500 full-color screenshots and a web site for help, discussion, and a collection of additional patterns.

Buy Now

Click here for more information about Web Application Design Patterns (Interactive Technologies)

Read More...

Beginning POJOs: Lightweight Java Web Development Using Plain Old Java Objects in Spring, Hibernate, and Tapestry (Novice to Professional) Review

Beginning POJOs: Lightweight Java Web Development Using Plain Old Java Objects in Spring, Hibernate, and Tapestry (Novice to Professional)
Average Reviews:

(More customer reviews)
Missourians -- residents of the "Show Me State" -- are sure to appreciate this unusual book on lightweight Java development with "Plain Old Java Objects." In a fast-paced 10 chapters, Brian Sam-Bodden builds a single complete application, all the way through. Believe it or else, he starts with a detailed design, then talks about fundamental tools like Eclipse and Ant, and before you know it he's implemented the persistence and business tiers. Screenshots and detailed instructions will help you get your environment installed and set up in no time.
The first five chapters of the book are astonishingly linear as the application is developed to this point, with each technology choice presented as a fait accompli. In this day of political correctness and cultural relativism, many authors bend over backwards to consider all the alternatives to every decision they make, and I felt that Sam-Bodden's approach was incredibly refreshing. Eclipse, Ant, Hibernate, EJB3 on JBoss. Take it or leave it.
I was therefore almost disappointed when, in Chapters 6 and 7, he considers several different alternative implementations of the business and presentation tiers. Still, showing how to use Tapestry and especially Spring offsets the raised eyebrows some of you might have on hearing that a book on POJOs was advocating using EJBs -- even though the radically reworked EJB3 specification does indeed let you use Plain Old Java Objects to implement the business layer.
From this point, the book gets more conventional, with the traditional tacked-on chapter about testing that nevertheless asks you to do testing as an integral part of development.
Although some of the technology choices and development approaches may stretch your personal definition of the term "lightweight," this is still the best book on end-to-end development of modern enterprise applications that I've seen. If you have a hint of the Missourian in you, and you'd like someone to show you how things are done, this book was written with you in mind.

Click Here to see more reviews about: Beginning POJOs: Lightweight Java Web Development Using Plain Old Java Objects in Spring, Hibernate, and Tapestry (Novice to Professional)


Beginning POJOs introduces you to open source lightweight web development using Plain Old Java Objects (POJOs) and the tools and frameworks that enable this. Tier by tier, this book guides you through the construction of complex but lightweight enterprise Java-based web applications. Such applications are centered around several major open source lightweight frameworks, including Spring, Hibernate, Tapestry, and JBoss (including the new lightweight JBoss Seam).

Additional support comes from the most successful and prevalent open-source tools: Eclipse and Ant, and the increasingly popular TestNG. This book is ideal if you're new to open source and lightweight Java. You'll learn how to build a complete enterprise Java-based web application from scratch, and how to integrate the different open source frameworks to achieve this goal. You'll also learn techniques for rapidly developing such applications. NOTE: The source code files to accompany this book are now hosted at https://github.com/bsbodden/techconf.


Buy Now

Click here for more information about Beginning POJOs: Lightweight Java Web Development Using Plain Old Java Objects in Spring, Hibernate, and Tapestry (Novice to Professional)

Read More...

The Design of Sites: Patterns for Creating Winning Web Sites (2nd Edition) Review

The Design of Sites: Patterns for Creating Winning Web Sites (2nd Edition)
Average Reviews:

(More customer reviews)
This is a book that shows how far website designing has come, since the early days of the mid 90s. Back then, texts on the subject often focused on the technical mechanics. Heavy on HTML, explaining what all those tags did. Plus much details on how to run the web servers. Those were texts for programmers.
Duyne and his co-authors give a higher level discourse. One better attuned to a true design approach. And germane to people of different skill sets than programmers. While there is still some discussion at the HTML level, nowadays you can safely assume that much of that degree of detail can be safely handed off, after the design (or a first cut of it) is done.
The text spans many aspects of a website. Like having a consistent visual style across all the pages. Or perhaps distinct styles, but each within a clear subset of pages. And the developer should always try to keep in mind what a visitor might expect. For this, a logical and easy to understand layout of the pages relative to each other is key. Along with an accompanying site map. Granted, if you are just starting out with a small site, the map may be unnecessary. But if you have ambitions for more, then designing a logical subdivision of the pages is advised.
You probably want search engines to list your site. And list it prominently. Where this applies whether you have a corporate site or a non-profit site. So a chapter offers several hints for search engine optimisation. For one thing, try having meaningful titles for each page. But perhaps the best thing you can do, if you want other websites to link to yours, is simply to write the text as fluently and interestingly as you can. Make visitors WANT to read your pages. All the technical SEO steps are important, but ultimately secondary compared to this.
The book also warns of phishing attacks against your site. Perhaps inevitable if you will be doing ecommerce, and if your site becomes popular. One key piece of advice is NOT to outsource your email subscriptions to a third party site. Not only can it make some subscribers suspicious, but it increases their vulnerability to phishing messages.

Click Here to see more reviews about: The Design of Sites: Patterns for Creating Winning Web Sites (2nd Edition)

Praise for the second edition of The Design of Sites


"In my worldwide IBM marketing role, I have the benefit of working with some of the finest international interactive agencies and internal Web teams. As I read The Design of Sites, [I see] the insight from years of professional advice has been put to paper. Nowhere have I seen such a practical, effective, and easy-to-use book to solve and avoid Internet design issues. I keep a copy of the book handy to remind me of the things I forgot and to gain fresh perspectives. It never fails to deliver."-John Cilio, marketing manager, IBM System x & z Storage Synergy

"The Design of Sites artfully brings forward the original intent of Christopher Alexander's pattern language into the user experience design arena. It is a valuable and comprehensive reference."
-George Hackman, Jr., senior director of User Experience for User Interface Guidelines, Patterns and Standards, Oracle Corporation

"The Design of Sites is one of the best tools I have in my usability toolbox. [These] Web UI design patterns make it easy for me to show my clients how to get the most usability bang for their buck."
-Claudia Alden Case, usability consultant and interaction designer, Alden Case Enterprises, Inc.

"If only biology class had been like this. Lucid text, bulletproof content, and a comprehensive taxonomy that's just as much a source of inspiration as it is a production tool. This is a really, really good book. If you build Web sites, read it."
-Marc Campbell, author of Web Design Garage

Praise for the first edition of The Design of Sites

"Stop reinventing the wheel every time you design a Web site! The Design of Sites helps you rethink your Web sites in terms of genres and patterns. Once you have identified the patterns and applied the best practices for those patterns as outlined in this book, you will reduce your design effort by 50 percent . . . at least!"
-Pawan R. Vora, vice president, Information Architecture, Seurat Company

"The content [in The Design of Sites] could make a novice into a seasoned professional over a weekend. Many companies pay a fortune for the information contained in the book's primary chapters."
-John Cilio, marketing manager, IBM System x & z Storage Synergy

"This book has many handy checklists for what you should and should not do in creating a conventional Web site. Just following the authors' suggestions would put your site in the top few percent for readability and usability."
-Jef Raskin, creator of the Macintosh computer and author of The Humane Interface

"Now that The Design of Sites has made its appearance, we won't have to put up with those poorly designed Web pages. These authors have captured patterns from successful Web designers, including their own experience in consulting and teaching, and have made this information accessible to all of us. The book is readable yet full of worthwhile information--a valuable addition to any Web designer's bookshelf."
-Linda Rising, independent consultant and author of The Patterns Handbook, The Pattern Almanac 2000, and Design Patterns in Communications Software

"[The Design of Sites] bridges the gap from theory to practice and makes it possible for people in the Web-design space to use user-centered design principles in their work—without having to undertake extensive training."
-Maya Venkatraman, human interface engineer, Sun Microsystems

"The coverage [in The Design of Sites] is excellent--issues go beyond the traditional 'design the best page' focus and do a good job of showing the context. I haven't seen any other book with the kind of breadth this has."
-Terry Winograd, professor of computer science, Stanford University, and editor of Bringing Design to Software

"With this book as a reference, you can benefit from what companies like Yahoo! have learned and apply it to your site, even if you don't have a design and research team similarly sized and staffed."
From the foreword by Irene Au, director of User Experience, Google; former vice president of User Experience and Design, Yahoo!

The Design of Sites, Second Edition, is the definitive reference for the principles, patterns, methodologies, and best practices underlying exceptional Web design. If you are involved in the creation of dynamic Web sites, this book will give you all the necessary tools and techniques to create effortless end-user Web experiences, improve customer satisfaction, and achieve a balanced approach to Web design.

After a comprehensive tutorial covering the foundations of good Web site design, you will move on to discover the thirteen major Web design pattern groups. These patterns solve recurring design problems and help design teams avoid reinventing the wheel. Patterns range from creating a solid navigation framework and the all-important home page, to instilling trust and building credibility with your customers and improving site performance through better design.

The book features

Coverage of AJAX, the Mobile Web, and online communities
Seventeen new design patterns to add to the original ninety, including the new blog site type
More than twenty significantly updated patterns
450 four-color screen shots and diagrams, including more than 150 new images
Key site elements, including site maps, style sheets, dynamic elements, and customer profiles
Clear, visual organization with color-coded sections for easy reference
A balanced approach to Web design that takes both customer and business needs into account


Buy Now

Click here for more information about The Design of Sites: Patterns for Creating Winning Web Sites (2nd Edition)

Read More...

Python Web Development with Django Review

Python Web Development with Django
Average Reviews:

(More customer reviews)
We are a Python shop at work and have recently started developing in Django. So I picked this book up as a total beginner to Django, but an experienced Python programmer. I feel that the book would be more or less the same even for someone totally new to Python, because Django is definitely a different kind of beast.
Overall, this book was okay to good. I would give it 3.5 stars if I could. It is definitely targeted at beginners to Django (and possibly Python). As a Django beginner, I first ran through the tutorial on the Django website, because it is very thorough and good. I definitely recommend that as a starting place regardless of which book you end up buying. Then I cracked open this book. The first chapter is a 50-page introduction to Python, so I skipped that. Chapter 2 is a tutorial in which you build a simple blog. So by the time I had finished that chapter, I had built two different Django sites but not really read anything about the language or framework or theory thereof. I think this is a good thing, and this chapter is well-placed. Chapter 3 introduces Django. It covers dynamic web sites, communication, data storage, presentation, separating the layers (MVC), general django architecture, and "core philosophies of Django". It is a decent introduction, though I read through it quickly so I could get to the next three chapters.
The next three chapters make up the Django in Depth section and are the bread-and-butter of the book. The first chapter covers models, the second URLs/HTTP/views, and the third templates and form processing. For me, these were the chapters I was most looking forward to, where I would learn everything I needed to know to get started really understanding. And they let me down a bit. Each one was good in what it covered, but the problem was that it left out quite a bit. The part on the models themselves was pretty good and covered the necessities. But the part on querying was a little sparse. They left much for the reader to go to the documentation and find out. (But what's the point of the book, then?) I did think it was nice that they mentioned fixtures, as I had trouble finding that information online when I needed to set one up for work. The chapter on views was decent, but seemed to leave out too much detail. The section covering views specifically was short. Finally, the template/forms chapter again left the reader to find out critical details in the online documentation. First, the template section was short. Second, the forms section seemed long enough, but I just found that it wasn't that helpful when I was really creating forms for work.
The next four chapters are tutorials in which you build various applications. I haven't gone through these yet, but they look pretty good. I think Django is one of those things that is best learned in a very hands-on fashion. Perhaps some of the weaknesses of the previous three chapters are made up for here; but I doubt it, and if so feel that information should have still been included in the earlier chapters. (The book is fairly slim and could definitely be expanded.) Chapter 11 covers advanced Django programming, including customizing the admin, using syndication, generating downloadable files, enhancing Django's ORM with custom managers, and extending the template system. The chapter seems decent enough, although I haven't had to do any of these things yet. Likewise, with Chapter 12 covering advanced Django deployment, I haven't had to deploy anything yet so I only know that the chapter seems to cover some useful information.

Click Here to see more reviews about: Python Web Development with Django

Using the simple, robust, Python-based Django framework, you can build powerful Web solutions with remarkably few lines of code. In Python Web Development with Django®, three experienced Django and Python developers cover all the techniques, tools, and concepts you need to make the most of Django 1.0, including all the major features of the new release. The authors teach Django through in-depth explanations, plus provide extensive sample code supported with images and line-by-line explanations. You'll discover how Django leverages Python's development speed and flexibility to help you solve a wide spectrum of Web development problems and learn Django best practices covered nowhere else. You'll build your first Django application in just minutes and deepen your real-world skills through start-to-finish application projects includingSimple Web log (blog) Online photo gallery Simple content management system Ajax-powered live blogger Online source code sharing/syntax highlighting tool How to run your Django applications on the Google App EngineThis complete guide starts by introducing Python, Django, and Web development concepts, then dives into the Django framework, providing a deep understanding of its major components (models, views, templates), and how they come together to form complete Web applications. After a discussion of four independent working Django applications, coverage turns to advanced topics, such as caching, extending the template system, syndication, admin customization, and testing. Valuable reference appendices cover using the command-line, installing and configuring Django, development tools, exploring existing Django applications, the Google App Engine, and how to get more involved with the Django community.Introduction 1Part I: Getting StartedChapter 1: Practical Python for Django 7Chapter 2: Django for the Impatient: Building a Blog 57Chapter 3: Starting Out 77Part II: Django in DepthChapter 4: Defining and Using Models 89Chapter 5: URLs, HTTP Mechanisms, and Views 117Chapter 6: Templates and Form Processing 135Part III: Django Applications by ExampleChapter 7: Photo Gallery 159Chapter 8: Content Management System 181Chapter 9: Liveblog 205Chapter 10: Pastebin 221Part IV: Advanced Django Techniques and FeaturesChapter 11: Advanced Django Programming 235Chapter 12: Advanced Django Deployment 261Part V: AppendicesAppendix A: Command Line Basics 285Appendix B: Installing and Running Django 295Appendix C: Tools for Practical Django Development 313Appendix D: Finding, Evaluating, and Using Django Applications 321Appendix E: Django on the Google App Engine 325Appendix F: Getting Involved in the Django Project 337Index 339Colophon 375

Buy Now

Click here for more information about Python Web Development with Django

Read More...