New England Software Symposium

September 23 - 25, 2005



Event Details

Location

Sheraton Framingham
1657 Worcester Road
Framingham, MA 01701
View Map
NOTE: You are viewing details about a past event. We will be back in Boston September 23 - 25, 2005. You may view the event details here ».

Session Descriptions

Ben Galbraith - Book author, Ajaxian-at-Large, and Consultant

Ben Galbraith

Advanced Swing: Architecture and Frameworks

Are you spending more time plumbing your Swing applications than solving business problems? Has your Swing application grown out of control? This session is for you.

Ajaxian JavaScript Frameworks

In the "Introduction to Ajax" session, we discuss what Ajax is, how it works, and how others are using it.

This session goes deeper into Ajax by reviewing the existing JavaScript frameworks that aim to make it easier.

Being Productive with Java in the Enterprise

It sounded like such a good idea back in the mid-nineties: based the Java platform on a standards-based, open community, and let anyone participate. There is no question that Sun's strategy for Java's stewardship via the JCP and sponsored open-source has yielded some enormous benefits. However, these have not been enjoyed without tremendous cost.

Creating Killer Graphics and Professional PDFs with XML

You can do some pretty cool things with XML these days (despite what some curmudgeons in the technology world may claim). In the past few years,
XML has solidified its place as the lingua franca of data sharing and data manipulation. But XML as a data transfer language is only marginally
interesting. Things get really exciting when XML is dynamically transformed into other formats.
In this session, I focus on two XML formats which can be readily transformed into high-quality presentation-centric output formats. XSL-FO is a
typesetting format for XML that can be readily converted into PDF (or Postscript and some other formats). SVG is a vector graphics language in XML --
a sort of open-source version of the popular Macromedia Flash format. SVG files can be converted into beautiful, completely scalable -- and interactive -
- images.

Creating Polished Swing Applications

Too often, Swing applications are slow, ugly, and hard-to-maintain. It turns out that it doesn't have to be this way. Swing can be used to create highly-responsive, beautiful applications that are very maintainable. If this isn't consistent with your own experience, don't feel bad; its not very obvious how to make Swing sing.

Introduction to Ajax

Ajax -- called DHTML just a few months ago -- has revolutionized (or "radically iterated", if you like) web application development in the short few months since the term was coined.

What is it all about? Why are we excited about a set of capabilites that have been sitting in our browser for years? What can you do with it? And, how can you do it?

Making the Most of XML

For many of us, XML has become a ubiquitous presence in application development, whether parsing, validating, or manipulating it. For many of us, all
that XML is coupled with pain, in the form of tedious APIs (like, say, the W3C DOM API) and confusing technologies (oh, I don't know, W3C XML
Schema?).


Brian Goetz - Author of Java Concurrency in Practice

Brian Goetz

Garbage Collection in the HotSpot JVM

Pop quiz: which is faster, Java or C++? If you are talking about allocation performance, the answer is Java, hands-down.

Squashing bugs with FindBugs

Does your program have bugs, despite unit tests, integration tests, and code reviews? You bet. Are you using static analysis as part of your QA process? If not, you're probably missing out on some bugs that can be caught before they bite your customers.

Structuring concurrent applications in JDK 5.0

JDK 5.0 is a huge step forward in developing concurrent Java classes and applications, providing a rich set of high-level concurrency building blocks.

The Java Memory Model

What's the worst thing that can happen when you fail to synchronize in a concurrent Java program? Its probably worse than you think -- modern shared-memory processors can do some pretty weird things when left to their own devices.


Bruce Tate - Author of 3 JavaOne best sellers

Bruce Tate

Beyond Java

All programming languages have a limited life span, and Java is no different. This is a philosophical session rather than a programming session. Sooner or later, Java will lose its leadership position. This session will explore Java's strengths and weaknesses. We'll try to understand whether conditions are ripe for alternatives to emerge, and what those alternatives may be.

Introduction to Spring

This session, for the Spring beginner, helps you:
• Understand dependency injection and inversion of control
• Know the meaning of lightweight containers and Spring
• Understand the basic pieces of Spring
• See core Spring modules in action, including Persistence, AOP, transactions.

Attendees need not know anything about Spring. This session does talk about integration with core J2EE frameworks like JDBC and transactions.

Where Agile meets Argyle: New processes in established companies

Agile programming is a collection of core principles and techniques that allow software developers to create lighter, more responsive applications, and to have fun doing it. Many established organizations are either openly or sub-conciously hostile to many of the principles of Agile development.


Dave Thomas - Pragmatic Programmer, Ruby, Rails, Process Improvement

Dave Thomas

Herding Racehorses and Racing Sheep

Are you frustrated by experts who can't tell you what to do, or by junior team members who refuse to see the big picture? How can you best develop careers: both yours and those of your teammates and managers? How can we learn to apply experience more effectively, and why do the many approaches designed to tame complexity actually end up increasing it?

Ruby for Java Programmers

Ruby recently enjoyed its tenth birthday. Instead of cake and candles, the community celebrated by releasing a wave of new libraries and frameworks that make Ruby programming even easier. This talk features some of the best of these, as we explore Ruby.

Ruby on Rails

The Ruby on Rails framework has exploded onto the scene over the last few months. Propelled by some genuine benefits, and fueled by a whole lot of controversy, Rails seems here to stay. So, is it a Java killer? (No.) Is it a great way to develop certain classes of web application? (Yes.) Does it really deliver the 10-fold increase in developer productivity that some have claimed? (It depends...)



David Geary - Author of Graphic Java and co-author of Core JSF

David Geary

Felix: A bag of Tricks for Java Server Faces

Okay, so you know a little about JSF. You understand managed beans, action outcomes and how to attach standard JSF validators to components in a JSP page.

But there is a great deal of functionality that the average web application supports that JSF doesn't provide out of the box. For example, wouldn't you like to have JSF automatically place asteriks in front of labels for required fields? You are going to implement client-side validation, which JSF does not support out of the box, aren't you? Of course, you're going to test your application, right? And don't forget to trap unauthorized use of the back button.

Shale: Turbo-charge your JSF Apps

JavaServer Faces is a well designed user interface framework, but it lacks a number of features you might otherwise expect out of the box; for example, JSF does not explicitly provide support for client-side validation.

So, from the folks that brought you Struts, comes Shale, a collection of useful enhancements to JSF. A top-level Apache Software Foundation project, Shale adds some really cool features to vanilla JSF, including:

Web flow: script dialog flow
Remote Method Calls: easily call JavaBean methods from JavaScript
Tapestry-like views: code views in pure HTML
Use Apache Commons Validator validators on the client or server, or both
JSF testing framework: mocks for easy JSF testing

There's a lot of cool stuff in Shale that makes JSF a much more compelling proposition. Come see what it's all about.


Ian Roughley - Software Consultant

Ian Roughley

Code Coverage: A Guardian of Quality

Code coverage is generally viewed as a metrics that managers use to chart progress, a number that has to be blindly attained. In this talk we discuss everything that you, the developer, need to know to make it more than a number and part of a process that will improve code quality.

Evaluating Open Source Solutions

Many companies and most, if not all, software today utilizes open source. Whether it is databases, application servers, frameworks or libraries, these projects are fast becoming a standard commodity for building business-related functionality upon and speeding up development time. Sometimes technology evaluations are done, but frequently the library is simply slipped into the code base to address an urgent requirement - often without evaluating the technology beyond the immediate need.



Justin Gehtland - Founder of Relevance, co-author of Better, Faster, Lighter Java

Justin Gehtland

Advanced Hibernate

Hibernate is easy to get started with, but can sometimes be hard to make efficient or secure. In fact, the default settings for Hibernate createapplications that will run slowly, cause unwanted round trips to the database, and may be more restrictive and/or permissive from a security standpointthan you would otherwise want.

Introduction to Hibernate

O/RM (Object/Relational Mapping) seeks to eliminate repetitive or tedious work enabling the CRUD (create, read, update, delete) that underlies most applications. Hibernate is a popular, open-source O/RM tool that uses reflection (instead of code generation, like EJB, or bytecode injection, like JDO) to manage your persistence layer. This session will introduce you to Hibernate. After an overview of common usage scenarios, including web and enterprise applications, we'll examine the basics of getting Hibernate running. We'll cover the mapping file format and syntax, including common relational mapping structures. Then, we'll examine the Hibernate API for interacting with the framework. Finally, we'll cover the common architectural decisions you'll have to make as you include this (or any other) O/RM framework.

Spring Intro

The Spring framework is one of the fastest growing open source frameworks. New job postings are gaining rapidly, and many customers are adopting Spring instead of heavier alternatives. In this session, we’ll introduce Spring. You’ll see how Spring can give you much of the power of EJB, without the complexity or pain.

Spring uses concepts like dependency injection and aspect oriented programming to ease standard enterprise development. Spring developers write plain, ordinary Java objects (POJOs), instead of sophisticated components. In this session, you’ll see a basic Spring application. You’ll also see some details about some of the enterprise integration strategies, including:

• Spring AOP
• Transactions
• Persistence
• Model/view/controller

When the session is over, you won’t be an expert, but you should have a much clearer understanding of what Spring does, what it doesn’t do, and why it’s growing so rapidly.

Spring MVC

The Spring team, as in all things they do, have learned the valuable lessons of the past when introducing a Spring solution. Spring MVC is everything Struts should be, and more besides.

Writing Secure Web Services (with Java and Axis)

Web Services are message-oriented. This means that any application intention (the need for security, for transactionality, for reliability, etc.) must be
included in the message and not just assumed as external context. The WS-Security specifications are very advanced and currently being used in the wild to create robust, secure web services.


Mark Richards - SOA and Enterprise Architect, Author of Java Transaction Design Strategies

Mark Richards

EJB 3.0 and New Java Persistence API

The new EJB 3.0 spec (JSR-220) offers some great improvements over the prior EJB specs in terms of development simplicity and new features. In this session we will take a look at the new EJB 3.0 spec and the new Java Persistence API. Included in this session will be a discussion about Java metadata annotations, simplification of enterprise beans (session and message-driven beans), interceptors, changes in transaction processing, and how the new Java Persistence API works. During the session I will be demonstrating how the EJB 3.0 spec differs from the EJB 2.1 spec through code example comparisons. I will also be discussing how the new Java Persistence API compares to related Java persistence options and whether we should be excited about the new persistence API or (yawn) sticking with what we have.

Java EE Command Pattern Architecture

Tired of dealing with EJBs but cannot use other frameworks like Spring? How would you like to replace all of your remote Stateless Session Beans with POJOs and still access them remotely within Java EE? By using the Java EE Command Pattern we can write EJBs as POJOs and solve many of the issues facing EJB, including testability, configuration complexity, and performance, and still remain within the boundaries of the Java EE container. The Java EE Command Pattern is a simple pattern that can significantly reduce the complexity of large-scale Java EE enterprise applications. In this session we will explore the numerous issues facing a typical EJB architecture and learn how the use of the Java EE Command Pattern can solve these issues. We will walk through the different design alternatives and see how the command pattern is implemented in both EJB3 and in Spring. Through interactive coding examples you will learn what components make up the Command Pattern framework and what simple coding changes are required to convert a complex remote EJB-based application to a much simpler remote POJO-based application.

Making Architecture Work Through Agility

As companies continue to change the way they do business, so must the IT systems that support the business. Changes due to regulatory requirements, competitive advantage, mergers, acquisitions, and industry trends require flexible IT systems to meet the demands of the business. Software Architects must therefore make their architectures more agile to meet the flexible demands of today's business. Through real-world examples and scenarios we will explore some of the challenges facing Software Architecture and discuss several concrete techniques for applying agility to both the architecture process and the technical architecture itself. We will also look at various architecture refactoring techniques, and discuss the pros and cons of each. By attending this session you will learn how to apply various agile techniques to improve your architectures and overcome some of the challenges facing software architecture in today's ever-changing market.

The Enterprise Service Bus: Do We Really Need It?

There has been a significant amount of buzz in the community and industry about the definition and role of an Enterprise Service Bus (ESB), particularly within the area of Service-Oriented Architecture (SOA). In this product-agnostic high energy session we will take a step back and consider whether we really need an ESB. Through real-world application and architecture scenarios we will see where an ESB would be helpful and where it would be overkill. We will take a look under the hood and find out just what an ESB is really doing, and take a quick look at JBI (JSR-208) and see the impact it has on the ESB worls. Then, using product-agnostic coding examples we will learn what an Enterprise Service Bus is supposed to do, then answer the question about whether the ESB is just a bunch of hype or if we really need it.


Paul Duvall - CTO of Stelligent and author of "Continuous Integration"

Paul Duvall

Continuous Integration

Increase feedback on your project by building your software with every change applied to your source code repository. The practice of Continuous Integration (CI) can be used to decrease the time between when a defect is introduced and when it is fixed.

Development Infrastructure Patterns

Design Patterns became part of the software development industry mainstream in the mid-1990s with the release of the Go4 Design Patterns book. Since then, architecture, design, and more recently, organizational patterns have become a part of our nomenclature. But, what about the software that helps us develop and deliver the software to our users: the software development infrastructure?


Ramnivas Laddad - Author of AspectJ in Action, Principal at SpringSource

Ramnivas Laddad

Introduction to Aspect-oriented Programming with AspectJ

Aspect Oriented Programming (AOP) enables modularizing implementation of crosscutting concerns that abound in practice: logging, tracing, dynamic profiling, error handling, service-level agreement, policy enforcement, pooling, caching, concurrency control, security, transaction management, business rules, and so forth. Traditional implementation of these concerns requires you to fuse their implementation with the core concern of a module. With AOP, you can implement each of the concerns in a separate module called aspect. The result of such modular implementation is simplified design, improved understandability, improved quality, reduced time to market, and expedited response to system requirement changes. Come to this session and learn all about how AOP can help you simplify developing complex systems.

Introduction to Aspect-oriented Programming with AspectJ

Aspect Oriented Programming (AOP) enables modularizing implementation of crosscutting concerns that abound in practice: logging, tracing, dynamic profiling, error handling, service-level agreement, policy enforcement, pooling, caching, concurrency control, security, transaction management, business rules, and so forth. Traditional implementation of these concerns requires you to fuse their implementation with the core concern of a module. With AOP, you can implement each of the concerns in a separate module called aspect. The result of such modular implementation is simplified design, improved understandability, improved quality, reduced time to market, and expedited response to system requirement changes. Come to this session and learn all about how AOP can help you simplify developing complex systems.

Performance Monitoring in J2EE Applications

J2EE has become the main new platform for enterprise application deployment. Good performance is an important business requirement. Supporting this requirement needs application profiling during the development phases and performance monitoring after application deployment. Come to this session to understand challenges and choices in monitoring J2EE applications.

The State of AOP

A lot is happening in the field of Aspect-oriented programming (AOP). AspectJ and AspectWerkz, the two leading AOP implementations, have merged, bringing in their respective strengths. The merged version, AspectJ 5, adds many new features aimed at simplifying writing and deploying aspects. The new features include an annotation-based and XML-based syntax to define aspects, support for new Java 5 concepts, and load-time weaving. The tools support for AOP continues to improve, as well. Further, the most popular IOC framework, Spring, enables integrating aspects written in AspectJ. There is also serious discussion and preliminary work going on to support AOP right into the VM itself. All in all, there is a lot to learn about the changes in the exciting field of AOP. This session is designed to help you get up to date with all these changes.


Stuart Halloway - CEO of Relevance

Stuart Halloway

Cryptography for Programmers

For centuries people have used crypto to build (and break) secure systems. Computers have only raised the pitch of conflict, providing enormous cryptographic power at commodity prices. Most programmers do not write their own crypto libraries, instead relying on the services of an operating system or virtual machine. But even with all this support, building secure systems is a daunting task.

Design Patterns Revisited: Taking advantage of dynamic, reflective languages

(3 Hour Session)
Attendees should attend the Introduction to Reflection talk, or have some experience using reflection or metaprogamming in a reflective language such as Java, Objective-C, Smalltalk, Python, or Ruby. Familiarity with the GOF book is helpful but not required.

Design patterns are recurring solutions to problems that consistently appear in software development. However, this does not mean that design patterns cannot be "solved", i.e. converted into language or library features. In fact, most of the original design patterns can be solved using dynamic language features such as reflection.

Design Patterns Revisited: Taking advantage of dynamic, reflective languages

(3 Hour Session)
Attendees should attend the Introduction to Reflection talk, or have some experience using reflection or metaprogamming in a reflective language such as Java, Objective-C, Smalltalk, Python, or Ruby. Familiarity with the GOF book is helpful but not required.

Design patterns are recurring solutions to problems that consistently appear in software development. However, this does not mean that design patterns cannot be "solved", i.e. converted into language or library features. In fact, most of the original design patterns can be solved using dynamic language features such as reflection.

Java Platform Security and JAAS

The Java platform is built from the ground up with security in mind. This talk will introduce the security features of the J2SE, building quickly from the basic classes to realistic examples.

Unit Testing Java with Jython and JRuby

JUnit is great. Jython and JRuby are even better. Unit testing libraries look the same everywhere, so why not use the one that lets you get your job done faster?


Venkat Subramaniam - Founder of Agile Developer, Inc.

Venkat Subramaniam

Agile Methodologies

Agile development is picking up steam. You have heard about eXtreme Programming(XP). What other Agile methodologies are you familar with and what do they bring of interest or significant to the table of Agility? More important, why should you learn about these different methodologies instead of simply focusing on one?
There is no one shoe that fits all. Any methodology that requires you to follow it in totality and not let you adapt is rather dogmatic, not pragmatic. To be effective we have to take the best of different approaches and apply to our projects base on our specific needs.

Good, Bad and Ugly of Java Generics

Java introduced Generics in the 1.5 version (Java 5). What are the capabilities of Generics?
How do you use it? Are there some gotchas in using it? In this example driven presentation,
we will start at the basics of generics and look at its capabilities. We will then look at some
of the under the hood details on generics implementation. We will then delve into the details of
some of the changes to Java libraries to accommodate generics. Finally we will take a look at
some restrictions and pitfalls that we need to be familiar with when it comes to practical and
prudent use of generics.

Java 5 Features, What's in it for you?

A number of new features have been introduced in Java.
What benefit do these features offer you. Are there
issues with using these features. For instance, when should you use annotation? The objective of this presentation is not simply to introduce you to the features, but to the effective use of these as well.

Programming with Mock objects

You are convinced that Test Driven Development is good for you and your project. You realize the benefits it has to offer. What's holding you back? All the code and components that your code so heavily depends on is most likely making you wonder if TDD is really for you. We will start out by looking at dependency and dependency inversion. Then we will discuss how mock objects can help separate our code from its dependencies.

Prudent OO Design

Is your code object-oriented? Developing with objects involves more than using languages like Java, C#, C++ or Smalltalk for that matter. From time to time, the OO paradigm stumps even expert developers. Agile programming becomes a mere act of hack if we code without knowing the OO principles. What are these principles – the ones that influence your design? In this presentation the speaker will present some of the challenges that are fundamental in nature. Then he will present OO Design principles and good practices for prudent development of OO code.




Andrew Glover

close

Andrew Glover Co-author of "Continuous Integration"
Andrew Glover is the President of Stelligent Incorporated, which helps companies address software quality with effective developer testing strategies and continuous integration techniques that enable teams to monitor code quality early and often.

Andrew was the founder of Vanward Technologies, which was acquired by JNetDirect in 2005. He is the co-author of Addison Wesley's "Continuous Integration", Manning's "Groovy in Action" and "Java Testing Patterns". He is an author for multiple online publications including IBM's developerWorks and Oreilly's ONJava and ONLamp portals. He actively blogs about software quality at thediscoblog.com and testearly.com.


Ben Galbraith

close

Ben Galbraith Book author, Ajaxian-at-Large, and Consultant
Ben Galbraith is a frequent technical speaker, occasional consultant, and author of several Java-related books. He is a co-founder of Ajaxian.com, an experienced CTO and Java Architect, and is presently a consultant specializing in Java Swing and Ajax development. Ben wrote his first computer program when he was six years old, started his first business at ten, and entered the IT workforce just after turning twelve. For the past few years, he’s been professionally coding in Java. Ben has delivered hundreds of technical presentations world-wide at venues including JavaOne, The Ajax Experience, JavaPolis, and the No Fluff Just Stuff Java Symposium series; he was the top-rated speaker at JavaOne 2006.


Brian Goetz

close

Brian Goetz Author of Java Concurrency in Practice
Brian Goetz has been a professional software developer for 20 years. He is the author of over 75 articles on software development, and his book, Java Concurrency In Practice, was published in May 2006 by Addison-Wesley. He serves on the JCP Expert Groups for JSRs 166 (concurrency utilities), 107 (caching), and 305 (annotations for safety analysis). He is a frequent presenter at JavaOne, OOPSLA, JavaPolis, SDWest, and the No Fluff Just Stuff Software Symposium Tour. Brian is a Sr. Staff Engineer at Sun Microsystems.


Bruce Tate

close

Bruce Tate Author of 3 JavaOne best sellers
Bruce Tate is a father, kayaker, author and independent consultant in Austin, Tx. He worked for 13 years at IBM, in roles ranging from a database systems programmer to Java consultant. He left IBM to work for several startups in roles ranging from director to CTO. He now is building his own consulting practice, with emphasis on lightweight development in Java and Ruby, and persistence strategies. He is the author of nine books, including Rails Up and Running, From Java to Ruby, Beyond Java, the best selling Bitter series, the Jolt-winning Better, Faster, Lighter Java, and the Spring Developer's Notebook.


Dave Thomas

close

Dave Thomas Pragmatic Programmer, Ruby, Rails, Process Improvement
Dave Thomas is recognized internationally as an expert who develops high-quality software--accurate and highly flexible systems. He helped write the now-famous Agile Manifesto, and regularly speak on new ways of producing software. He is the author of six books, including the best selling The Pragmatic Programmer: From Journeyman to Master (Addison-Wesley) and Programming Ruby: A Pragmatic Programmer's Guide (Pragmatic Bookshelf).


David Geary

close

David Geary Author of Graphic Java and co-author of Core JSF
David Geary is the president of Clarity Training, Inc. (corewebdevelopment.com), where he teaches developers to implement web applications using JavaServer Faces and the Google Web Toolkit.

A prominent author, speaker, and consultant, David holds a unique qualification as a Java expert: He wrote the best-selling books on both Java component frameworks: Swing and JavaServer Faces (JSF). David's Graphic Java Swing was one of the best-selling Java books of all-time and Core JSF, which David wrote with Cay Horstman, is the best-selling book on JavaServer Faces.

David was one of a handful of experts on the JSF 1.0 Expert Group (EG) that actively defined the standard Java-based web application framework, and he's currently helping to define the next version of JSF on the JSF 2.0 EG.

Besides serving on the JSF and JSTL Expert Groups, David has contributed to open-source projects and co-authored Sun's Web Developer Certification Exam. He invented the Struts Template library which was the precursor to Tiles, a popular framework for composing web pages from JSP fragments, was the 2nd Struts committer and contributed to Shale.

A regular on the NFJS tour, David also speaks at other conferences such as JavaOne and JavaPolis. David has taught at Java University and was twice voted a JavaOne rock star, for presentations in 2005 and 2007.



David Hussman

close

David Hussman Agility Instructor/Mentor
David has been creating software for more than 15 years in a variety of domains: digital audio, digital biometrics, medical, financial, retail, legal, and education to name a few. For the past 8 years, David has mentored and coached agile teams in the U.S., Canada, Europe, India, Egypt, Russia, and Ukraine. Along with presenting and leading workshops / tutorials at conferences in the U.S. and Europe, David has contributed to several books (Managing Agile Projects and Agile in the Large), and worked on agile curriculum for The University of Minnesota and Capella University. David is currently writing a book for the Pragmatic Programmer series.

David leads DevJam, a Minneapolis based company composed of agile collaborators. As mentors and practitioners, DevJam focuses on using agile to help people and companies improve their software production skills. DevJam provides seasoned leaders that strive to pragmatically match technology, people, and processes in a way which produces software that makes people happier and more productive.

For more information, check out the DevJam website www.devjam.com



Ian Roughley

close

Ian Roughley Software Consultant
Ian Roughley is a speaker, author, and consultant based in Boston, MA, where he runs From Down & Around, Inc., a consultancy specializing in architecture, development, and process improvement services. For more than 10 years, he has been helping clients ranging in size from Fortune 10 companies to start-ups.

Focused on a pragmatic and results-based approach, he is a proponent for open source, as well as process and quality improvements through agile development techniques.

Ian is a committer on the XWork and WebWork projects; member of the Apache Struts PMC; and speaks at conferences in the United States and abroad. He is also a Sun Certified Java Programmer and J2EE Enterprise Architect and an IBM Certified Solutions Architect.


Justin Gehtland

close

Justin Gehtland Founder of Relevance, co-author of Better, Faster, Lighter Java
Justin is the co-founder of Relevance, a consulting/training/research organization located in the Research Triangle of North Carolina. Justin has been developing applications with static and dynamic languages since 1992. He has written code with Java, .NET, C#, Visual Basic, Perl, Python and Ruby. He loves to talk, especially in front of people, but all by himself in the corner if he must. Justin is currently focused on: Rails (because its the law), Spring (because Java isn't going anywhere) and security (because paranoia is your friend).


Mark Richards

close

Mark Richards SOA and Enterprise Architect, Author of Java Transaction Design Strategies
Mark Richards is a Director and Sr. Solutions Architect at Collaborative Consulting, LLC, a Boston-based Business and Architecture Consulting Firm, where he is involved in the architecture, design, and implementation of Service Oriented Architectures in J2EE and other technologies. He has been involved in the software industry since 1984, and has significant experience and expertise in J2EE architecture and development, Object-oriented design and development, and systems integration. Mark served as the President of the Boston Java User Group in 1997 and 1998, and the President of the New England Java Users Group from 1999 thru 2003. Mark is currently working on the 2nd edition of the "Java Message Service" book from O'Reilly. He is also the author of "Java Transaction Design Strategies", contributing author of "NFJS Anthology Volume 1", contributing author of "NFJS Anthology Volume 2", and contributing author of the upcoming "97 Things Every Software Architect Should Know" book from O'Reilly. Mark has many architect and developer certification, including ones from IBM. Sun, The Open Group, and BEA. He is a regular conference speaker at the No Fluff Just Stuff Symposium Series and speaks at other conferences and user groups around the country. When he is not working Mark can usually be found hiking with his wife and two daughters in the White Mountains or along the Appalachian Trail.


Paul Duvall

close

Paul Duvall CTO of Stelligent and author of "Continuous Integration"
Paul M. Duvall is the CTO of Stelligent Incorporated in Reston, VA -- a consulting firm and thought leader in helping development teams optimize Agile software production. He has worked in virtually every role on a software development project: developer, tester, architect and PM. He has contributed design and development expertise to complex system development efforts in various domains, from military logistics systems to translational medical research to the customization and implementation of software development processes. Paul authors a series for IBM developerWorks called Automation for the people, is a contributing author to the UML 2 Toolkit (Wiley, 2003) and is the lead author of Continuous Integration: Improving Software Quality and Reducing Risk (Addison-Wesley Martin Fowler Signature Series, 2007). He is a co-inventor of a clinical research data management system and method that is patent pending. He actively blogs on TestEarly.com and IntegrateButton.com


Ramnivas Laddad

close

Ramnivas Laddad Author of AspectJ in Action, Principal at SpringSource
Ramnivas Laddad is an Interface21 Principal. He has over a decade of experience in applying his enterprise Java and aspect-oriented programming (AOP) expertise to middleware, design automation, networking, web application, user interface, and security projects.

Ramnivas is a well-known expert in enterprise Java, especially in the area of AOP. He is the author of AspectJ in Action, the best-selling book on AOP and AspectJ. His book is highly recommended by leading industry experts for its practical and innovative applications of AOP solving a wide range of real-world problems. Ramnivas is also one of the industry's leading conference speakers, who has given over one hundred talks at conferences such as JavaOne, No Fluff Just Stuff, JavaPolis, and EclipseCon. Ramnivas hosts the Aspectivity blog, where he shares his thoughts on AOP and related topics. He is an active member of the AspectJ community and has been involved with AOP since its early form.

Ramnivas’ role at SpringSource includes working with the Spring community and SpringSource clients to help them leverage the power of AOP. He is currently involved in interesting work combining ideas in domain-driven design with AOP and DI. He is also working on creating reusable aspects to simplify development of typical Spring-based projects. His work at SpringSource is expected to drive major new innovations atop the Spring 2.0 platform.

Ramnivas lives in Princeton, New Jersey.


Stuart Halloway

close

Stuart Halloway CEO of Relevance
Stuart Halloway is the CEO of Relevance, Inc. (www.thinkrelevance.com). With co-founder Justin Gehtland, Stuart helps enterprises adopt emerging best practices such as Ruby on Rails. Justin and Stuart founded the Streamlined Framework (www.streamlinedframework.org), and authored Rails for Java Developers. Stuart is also the author of Component Development for the Java Platform. Prior to founding Relevance, Stuart was the Chief Architect at Near-Time, and the Chief Technical Officer at DevelopMentor.


Venkat Subramaniam

close

Venkat Subramaniam Founder of Agile Developer, Inc.
Dr. Venkat Subramaniam, founder of Agile Developer, Inc., has trained and mentored thousands of software developers in the US, Canada, Europe, and Asia. Venkat helps his clients effectively apply and succeed with agile practices on their software projects, and speaks frequently at international conferences and user groups. He is author of ".NET Gotchas" (O'Reilly), coauthor of 2007 Jolt Productivity Award winning "Practices of an Agile Developer" (Pragmatic Bookshelf), and author of "Programming Groovy: Dynamic Productivity for the Java Developer" (Pragmatic Bookshelf).