Book Reviews

Brockmann: "Creating Rich Web Applications Gets a Ton Easier"

This is an analysis that was written by Peter Brockmann, President of Brockmann & Company, a high tech marketing consulting company which is featured on the company's website.

"Faster development of a rich media experience for web applications that are secure in operation has been a particularly elusive goal for many enterprise application developers since the debate about thin client and thick clients a decade ago. Until now.

...Visual WebGui brings the ultimate simplicity to the .NET development framework through an enterprise SDK that plugs into popular development tools such as Windows Forms... The runtime server product acts as a web interface to the application and supports DHTML, Silverlight and other presentation standards.

...There should be no doubt that with the interest in cloud computing services and user preferences for rich media applications running on a wider variety of platforms will only exacerbate the concerns about security of enterprise data and the cost of multiple device support which plays well to the Visual WebGui advantage in the marketplace."

Brockmann and Company researches the business user experience and writes about the business impact of communications technologies.

Click gere to read the full article...

50 Must-read Books on Web Development


Looking for a good book on web development? Well, over at Nettuts they have put together a good list of 50 good books. So, if you are looking for a good book on web development this list should have quite a few good suggestions.

Below is an excerpt from the list.


8. Agile Web Development with Rails

Ever since Rails took the development world by storm a few years back, there has been plenty written about the Ruby framework. But you can't find a much better resource than one written by Rails creator David Heinemeier Hansson.

  • 9. Python Web Development with Django

    Django is an excellent python framework, and one that is highly respected in the development community. Python Web Development with Django is 400 pages of excellent techniques and tutorials for learning django development.

  • 10. Professional CodeIgniter

    CodeIgnitor is a PHP-based framework that has shown excellent promise amongst other frameworks. Professional CodeIgnitor gives an overview of MVC programming, and outlines how to build excellent web applications with CodeIgnitor.

  • 11. Beginning CakePHP: From Novice to Professional

    Beginning CakePHP: From Novice to Professional is a handy paperback for beginners trying to learn the MVC-based framework, but also, as the name implies, is highly useful for an intermediate or advanced CakePHP programmer. The book claims it's geared for... audience of developers already familiar with PHP but who may not be PHP experts. This book is tailored for those new to CakePHP and who want a thorough tutorial.

  • You can read the full post here.

    Book Review: ZK Developer's Guide

    Title: ZK Developer's Guide
    Publisher: Packt Publishing
    Authors: Markus Stauble and Hans-Jurgen Schumacher
    Publish Date: March, 2008

    Some Background

    The ZK framework, created by Tom Yeh, started out life as a project on Sourceforge, where it quickly became a popular open-source project (nominated for the 2006 Community Choice Award). It has since moved to its own site (but continues to distribute files through Sourceforge), where it vies for share with other AJAX frameworks in the RIA market. The project is officially sponsored by the Potix Corporation, which provides consulting services for ZK. It is distributed under both GNU and commercial licenses.

    ZK is a thin-client Java- and XML-based component framework which uses JavaScript underneath the covers to communicate between the (browser-based) client and server.

    • ZK uses its own extension of Mozilla's XUL library, ZUML, to describe the page components, which are then rendered into the appropriate HTML and JavaScript by the ZK engine. ZK can also use XHTML-based components.
    • Scripting is handled using Java and EL expressions.
    • Communication between the client and server is based on an event model: user interaction is propagated (via AJAX) back to the server, which may modify the client DOM in response to the event, passing back those modifications (via AJAX) to the framework's client-side JavaScript, which handles them. The server keeps its own hierarchy of ZK components which correspond to the browser's DOM.

    There is a resemblance here to other "JavaScript-less" AJAX frameworks, notably GWT and the JSF-based ICEFaces.

    The Book

    Like many of Packt's books, the format is focused on being lightweight and easy to read. There are 7 chapters and 159 pages, but the pages are small and have plenty of whitespace (presumably for adding notes). Add to that an abundance of illustrations and screenshots, and you get the idea: it can easily be consumed in a day or two.

    The emphasis of the book is on learning the framwork, not really serving as a reference (the authors refer you to the online documentation for that), so the book generally assumes the form of a "walk-through" of the framework with an emphasis on the "Online Media Library" example application (chapters 2-4). A general breakdown of the book is as follows:

    • Chapter 1, Getting Started With ZK, is an introduction to the framework with a definition of terms, description of underlying technologies, the obligatory "Hello World" in ZK, as well as an in-depth treatment of how the framework functions (events, phases, component creation).
    • Chapter 2, Online Media Library, is a quick overview of the example application, how to set up the project in Eclipse (as a Maven project), and develop the basic application pages using ZUML. It does not discuss ZK-Bench (the subject of Ch. 7) presumably to focus on the technology itself, rather than the tools.
    • Chapter 3, Extending the Online Media Library, goes more into the full capability of the framework, turning the example application into a full MVC (Model-View-Controller)-based application and introducing "Live Data" (AJAX) in order to make the application more desktop-like.
    • Chapter 4, Is It on the Desktop or the Web?, continues where Ch. 3 left off, adding Drag-and-Drop capability to the application, embedding the rich text editor FCKEditor into ZK, and covering internationalization.
    • Chapter 5, Integration with Other Frameworks, covers integrating the ZK framework with other popular frameworks and technologies, including Spring, Hibernate, Jasper Reports, mobile phones (ZK mobile), and even JSF (ZK's JSF components).
    • Chapter 6, Creating Custom Components, shows you how to create custom ZK components for your application.
    • Chapter 7, Development Tools for the ZK Framework, covers how to install and use the Eclipse-based ZK-Bench development environment.

    The Good

    ZK Developer's Guide strikes a good balance between approachability and depth, and as such is a good introduction to the framework for developers not wishing to be overwhelmed by details. It is a simple and quick read with an emphasis on practical development that will be especially useful to developers without any previous RIA or AJAX development experience. The provided Online Media Library example is simple enough for illustrative purposes with enough functionality to demonstrate the framework's functionality.

    The Bad

    On the downside, the book lacks coverage of many of the built-in widgets that come with the ZK framework (audio controls, slider, progress meter, charts, etc.); granted, its stated intention is not to serve as a reference, but it seems a strange omission for a book about an AJAX framework. Much of the discussion around integrating with other frameworks in Ch. 5 also seems a bit thin (outside of Spring).


    ZK Developer's Guide is a good book for those wishing to get up and running with the ZK framework quickly. Though it does not include much detail on the framework's built-in widgets, this can easily be supplemented by ZK's own online documentation.

    Syndicate content