SpringOne 2GX 2011

Chicago, October 25-28, 2011

Magnificent Mile Marriott
Downtown Chicago
540 North Michigan Ave.
Chicago, Illinois   60611
1 (800) 228-9290
[ Map it ]

Keith Donald

SpringSource Principal & Founding Partner

Keith Donald is a principal and founding partner at SpringSource, the company behind Spring and a division of VMware. At SpringSource, Keith is a full-time member of the Spring development team focusing on web application development productivity. He is also the architect behind SpringSource's state-of-the-art training curriculum, which has provided practical Spring training to over 10,000 students worldwide.

Over his career, Keith, an experienced enterprise software developer and mentor, has built business applications for customers spanning a diverse set of industries including banking, network management, information assurance, education, retail, and healthcare. He is particularly skilled at translating business requirements into technical solutions.

Presentations

"Full Stack" Web Frameworks: How Does Spring Stack Up?

This session will explore the "full stack" web framework trend and answer the question: how does Spring stack up? This session will first define what a full-stack web framework is, then provide a fair technical comparison between a Spring-centric web development stack and the alternatives. Attendees will learn the feature-set of modern "full stack" web frameworks, and what Spring has that differentiates itself from the pack.

Spring is best known for bringing POJO Enterprise Java programming to the mainstream. No matter what web framework you use, chances are you use Spring to integrate your application's business logic using the proven POJO model. In addition, all credible Java web frameworks today, including the ones that classify themselves as full stack frameworks, provide Spring integration.

Since it's inception, Spring has also shipped its own web framework that builds on the core Spring Framework, and released products like Spring Web Flow, Spring Security, and Spring Web Services that solve previously under-served needs of web application developers. When a Spring-managed web tier is combined with a Spring-managed middle-tier, then all conveniently packaged together into a integrated development environment, one could argue you have a single "full stack" solution for developing web applications. Many architecture groups within enterprise organizations have built on Spring to offer exactly this in-house.

Today, off-the-shelf stacks also emerging as the overall web framework market matures. Ruby on Rails, JBoss Seam, and Grails are three particularly interesting examples of this trend.

This session will explore the "full-stack" web framework phenomena and answer the question: how does a Spring stack, stack up? This session will provide a fair technical comparison along with a brief look at the companies and communities behind the major full-stack web frameworks. Attendees will leave with a good understanding of how a Spring-centric web stack compares to the alternatives.

Web Application Data Access Patterns

This session explores the challenges of accessing a shared data repository from a high-volume web application with many users. Attendees will learn how to ensure data integrity and data access performance while maintaining a satisfactory user experience. In addition, attendees will gain an understanding of key web application data access patterns and how to use frameworks like Spring and Hibernate to apply them.

Specific topics covered include: - How to properly isolate an application transaction, like an edit session occurring in a browser window, that may span several requests into the application server before committing or canceling - Object persistence guidelines and how to prevent lazy loading exceptions - When locking is required and how to select a locking strategy - How to use Spring, Spring Web Flow, and Hibernate to address web application data access challenges

Web patterns covered include: - Application Transaction - Conversational Persistence Context - Editable Data Table - Master Detail - Data List Paging - Open Session in View - Optimistic Locking - Pessimistic Locking

Best Practices in UI Component Design

In this session, you will learn to recognize opportunities for extracting high-level, reusable UI components within your web applications, how to capitalize on them, and how to use the technique of component composition to create highly-interactive web applications.

This session will also highlight important concepts present in all modern component-oriented web frameworks, and leave you with practical examples of component engineering you can hit the ground running with.

Some of the topics covered include: - How do extract UI panels into reusable modules that can be embedded anywhere in your web app - How to design for linear wizards embeddable within a page - How to have embedded components like a wizard or shopping cart view share application state, and free them from HTTP session management concerns - How to isolate state between multiple browser windows. - How to demarcate application transaction boundaries within your UI components to prevent duplicate submits

Birds of a Feather: Web Application Design

Come to this BOF for a lively discussion on web application design with Keith Donald, Graeme Rocher, Jeremy Grelle, and Mark Meeker.