Howard Lewis Ship

Creator of Apache Tapestry

Howard Lewis Ship is the creator and lead developer for the Apache Tapestry project, and is a noted expert on Java framework design and developer productivity. He has over twenty years of full-time software development under his belt, with over ten years of Java. He cut his teeth writing customer support software for Stratus Computer, but eventually traded PL/1 for Objective-C and NeXTSTEP before settling into Java.

Howard is respected in the Java community as an expert on web application development, dependency injection, Java meta-programming, and developer productivity. He is a frequent speaker at JavaOne, NoFluffJustStuff, ApacheCon and other conferences, and the author of "Tapestry in Action" for Manning (covering Tapestry 3.0). Lately, he's been dipping his toes into alternate languages, including Clojure.

Howard is an independent consultant, offering Tapestry training, mentoring and project work as well as training in Clojure. He lives in Portland, Oregon with his wife Suzanne, and his son, Jacob.



Blog

Yet More Spock Magic: Mocks

Posted Friday, April 20, 2012

Spock's built-in mock object capabilities are just a dream to use .more »

Yet Another Bit of Spock Love

Posted Thursday, April 19, 2012

I'm gradually converting a back-log of existing tests to Spock .more »

Node and Callbacks

Posted Saturday, March 10, 2012

One of the fears people have with Node is the callback model. Node operates as a single thread: you must never do any work, especially any I/O, that blocks, because with only a single thread of execution, any block will block the entire process. Instemore »
Read More Blog Entries »

Presentations



Books

by Howard M. Lewis Ship

Tapestry in Action (In Action series) Buy from Amazon
List Price: $44.95
Price: $34.16
You Save: $10.79 (24%)
  • The creator of Tapestry details how to use this new framework's components to create rich web-based GUIs using links, images, and HTML forms. The challenges of web application development are discussed, such as managing server-side state properly, application localization, and maintaining synchronization between the client web browser and the application server. At the same time, the benefits of a clean separation between presentation logic and business logic and how well Tapestry succeeds in keeping these two concerns apart are identified. Written for new Tapestry users and even developers new to creating web applications in general, this guide includes extensive notes on development "gotchas," including common Tapestry errors and how to fix them. Advanced techniques are covered as well, including creating entirely new components, integration with traditional servlet and JSP applications, and creation of client-side JavaScript. Finally, a complete J2EE application, the Virtual Library, is presented and analyzed in detail.