New England Software Symposium
September 14 - 16, 2007 - Boston, MA
John Heintz
President of Gist Labs
Agile/Kanban coach, REST architect, software craftsman
John D. Heintz is a husband, father, developer, Agilist, entrepreneur. After studying electrons in college, John's intuition led him to pursue software, and he's been a digital craftsmen since. Always seeking solutions with higher leverage and deeper simplicity has led John to important methods and tools. John's approach to building systems and teams started with leading his first Scrum team in 1999, included XP and TDD, and now Agile and Lean methods are part of his daily work and consulting. John has built single-source hyperdocument SGML publishing systems, a version control CORBA/Python CMS, an AspectJ dependency acquisition framework, added test automation to many Java and .NET systems, coached a 100-person Agile/Lean game studio, and built RESTful Web integration systems. John has launched his own company, Gist Labs, to further his focus on essential innovation.
Presentations
Adding Behavior to Java Annotations
Java's Annotations provide a way to add data to program elements. Annotations are used to configure containers, describe persistence configuration, set security roles, and are defined by nearly every recent JSR standard. This presentation explains the processing options available for consuming Annotations and demonstrates the techniques with live code demonstrations.
The presentation: * introduces Annotations and how to create custom Annotations, * surveys the techniques that can add implementation effects from Annotations (code generation, bytecode transformation, runtime reflection), * demonstrates adding behavioral effect to an example with APT, Reflection, Javassist, and AspectJ, * wraps up with best practices for using and defining Annotations.
No prior experience is necessary, and attendees will learn how to define and to provide behavior for custom Annotations in their own systems.
REST: The basics, and not so basic...
This presentation introduces REST, compares and contrasts REST with SOA and WS-*, and finally delves into some of the more subtle topics that affect RESTful systems.
This presentation is for beginners and advanced students alike. REST is introduced by answering these questions: * What are the properties and constraints that define a RESTful system? * How does REST relate to HTTP and SOAP? * What does a Resource-Oriented system look like, compared to an Object-Oriented system?
The presentation highlights seldom presented and more subtle RESTful topics: * REST (HTTP) vs SOAP, when to choose SOAP? Hint: message passing styles * What does optimistic locking look like on the Web? * What is a stateless application protocol? Or conversational vs application state explained.
Some of these topics have definitive answers and clear explanations. Other topics should generate lively discourse, everyone is welcome!
Glassbox: Open Source Java Monitoring and Troubleshooting
In this session you will learn about the Glassbox open source troubleshooting and monitoring tool. Glassbox enable detection of common application problems such as database failures, slow operations, thread contention, and excessive distributed calls. Glassbox enables low overhead monitoring and troubleshooting without needing to "bake in" instrumentation up front.
Glassbox provides an intuitive Ajax Web interface, an automated installer and concise summaries of common problems out of the box. Glassbox focuses first on highlighting the underlying cause of a problem without requiring a person to sift through volumes of profiling information. Glassbox also supports customization and detailed analysis for deeper investigation. Under the covers, Glassbox uses JMX and Aspect-Oriented programming to discover applications, track performance, and automatically diagnose common problems in Java applications.
You will see how Glassbox can be extended easily (with XML, AspectJ and Spring AOP) to providing a useful foundation for customized application monitoring. Glassbox is open source and can be downloaded freely from http://www.glassbox.com/.


