New England Software Symposium

March 10 - 12, 2006



Event Details

Location

Sheraton Ferncroft
50 Ferncroft Road
Danvers, MA 01923
View Map
NOTE: You are viewing details about a past event. We will be back in Boston March 10 - 12, 2006. You may view the event details here ».

Session Descriptions

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.

Java Performance Myths

Performance myths about the Java platform abound, from the general "Java is slow", to the more specific "reflection is slow", "allocation is slow", "synchronization is slow", "garbage collection is slow", etc. Many of these myths have their root in fact (in JDK 1.0, everything was slow); today, not only are many of these statements not true, but Java performance has surpassed that of C in many areas, such as memory management.

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.


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...)

Using Ajax with Ruby on Rails

Ajax is becoming a requirement for new applications: it creates richer
user experiences and more dynamic applications. However, doing Ajax by
hand is difficult and error prone. The good news is that if you use
Rails, you don't have to do Ajax the hard way.


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

David Geary

Ajaxian Faces

JavaServer Faces is a perfect platform for implementing Web 2.0 interfaces with Ajax. This session explores how you can use these two potent technologies--JSF and Ajax--together to create applications that look and behave like desktop applications but run in the browser.

JSF: State of the Art

In 2005, JSF hit its stride, as evidenced from overwhelming support from both vendors and the open-source community. JSF 1.0 had plenty of holes, but open-source projects have arisen to address those needs. This session takes a look at three of those projects: Tomahawk (MyFaces component library) FaceletsSeam

JavaServer Faces: A Whirlwind Tour

In April 2005, annual growth rates for jobs in JavaServer Faces, Struts, and Ruby on Rails were all at about 0%. Today, Struts' growth rate still hovers around 0%, but JSF and Rails have taken off. At the end of 2007, both JSF and Rails were growing at a rate of between 400-500% annually (according to indeed.com).

JSF has passed the adoption tipping point, and is now the Java-based framework of choice, as is evidenced by its ecosystem. From vendors such as MyEclipse and RedHat to open source projects such as Seam, Facelets, and Ajax4JSF, JSF is where the action is.

Come see why JSF is so popular. In this code- and demo-intensive session, I'll show you the fundamentals of JSF.

Prerequisite: Some knowledge of Java-based web applications, such as Struts, is a plus, but is not required. If you have a significant experience with JSF, you probably already know most of what's covered in this session.

Killer Web UIs

User interfaces are usually the most turbulent aspect of an application during development. Constant tinkering with the UI means constant changes to your code, so as a UI developer, you want to minimize the scope and effects of those code changes.

Open-source Java provides two powerful software packages that help you manage UI complexity: Tiles and Sitemesh. Tiles composes webpages from discrete regions of your user interface known as tiles. A tile contains a JSP page for layout and one or more JSP pages for content. Sitemesh decorates webpages with decorators that can be associated with URL patterns. Once you set up your decorators, you can decorate pages that match a decorator's URL pattern.


David Hussman - Agility Instructor/Mentor

David Hussman

Automating Business Value with FIT and FitNesse

The presentation will briefly discuss stories, the origin and authoring of story tests, and a demonstration of how FIT and FitNesse (FIT living within a Wiki) can be used to automate acceptance tests.

Creating, Telling, and Tracking User Stories

The participants of this session will become agile customers and product owners, using personas to create stories for a sample product development.

Losing Battles and Winning Wars: Adopting Agile

Adopting agile is different for each company, but most companies will go through some amount of change during the adoption of agile.

Ready, Set, Agile?

As with many methodologies, moving agile into an organizations poses larger challenges. Before jumping in, it helps to ask a few questions before "racing toward agility". This session will provide 3 tactical steps that can help your adoption of agile.

“Show Me the Numbers” - Agile Planning Tools and Techniques

This session will focus on tools and techniques for tracking an agile project plan from creation to project completion.


Glenn Vanderburg - Consultant specializing in Ruby, JavaScript, and Java.

Glenn Vanderburg

Java Collections Power Techniques

The Java Collections framework is a cornerstone of Java development. It's been a part of J2SE for six years now. Every Java developer knows it—how to create Lists, Maps, and Sets, how to put things into them and take things out, and how to iterate over the contents. But there's a lot more to the collections framework than that -- and very few programmers really know how to exploit the power that's just under the surface.

JavaScript Exposed: There's a Real Programming Language in There! (Part 1)

With the sudden importance of Ajax, it's time to take JavaScript seriously. That means learning it the right way: looking at the fundamentals of the language and surveying its strengths and weaknesses, instead of just copying other people's poorly written examples.

JavaScript Exposed: There's a Real Programming Language in There! (Part 2)

Building on part 1, this talk dives deep into JavaScript's object model. We'll see how it differs from more mainstream object-oriented languages, and why. We'll explore how to hide some of those differences, as well as the reasons you might not want to. Additionally, we'll cover useful tools for JavaScript testing, debugging, and profiling.

Modern Project Infrastructures

The support infrastructure for your software project is a crucial factor for success. A new generation of tools offers significant benefits over their predecessors. This talk discusses how to choose the right mix of tools for a top-shelf project infrastructure.

Under the Hood of Java Memory Management

Most of the time, Java's automatic memory management works really well—it's one of the things that makes programming in Java a pleasant and productive experience, and it's nice that we don't have to worry about managing memory manually. However, although it's usually nice to ignore memory management, occasionally we have to pay close attention. Sometimes we need to take control of certain aspects of memory management. Sometimes Java programs do exhibit memory leaks, or unacceptably long garbage collection pauses, or very poor overall performance. But because Java's memory management is supposed to be "fully automatic," it can be difficult to find out what's really going on inside the VM.



Howard Lewis Ship - Creator of Tapestry and HiveMind

Howard Lewis Ship

Introduction to Tapestry 4

An introduction to the Apache Tapestry web application framework, which will explain the concepts and features of the framework with some simple applications. We'll discsuss Tapestry forms, request cycle, component object model. The use of several important components, including BeanForm and Table will be highlighted, along with meta-programming using the Trails framework.

Pragmatic Unit Testing with TestNG and EasyMock

You've heard about unit testing but were daunted when it came time to put the pedal to the metal. That's because JUnit is just one tool and there's others you need to learn about, including the wonderful and wierd EasyMock and the easy and powerful TestNG.

Tapestry In Action (Part Two)

In Tapestry, components are not an add-on; in fact, anything but! Tapestry components are integral to the entire framework ? if something dynamic is going on in a page, there's a component involved.


Ian Roughley - Software Consultant

Ian Roughley

8 Steps to Struts2

This presentation introduces the features of Struts2, and the framework differences between it and Struts, by iteratively migrating a simple application in 8 steps.

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.



Jared Richardson - Agile coach and co-author of Ship It

Jared Richardson

Software Development Techniques

Throughout our software careers we learn habits from our coworkers, from books we've read, and occasionally, from conferences we attend. Much of our competence comes from the tips and tricks we pick up as we go.

Software Tools That Make Life Easier: Part One

a.. Do you spend more time fighting your tools than writing code?
b.. Do you avoid merging your code with your teammates because of “Integration Hell”?
c.. Do the same bugs keep sneaking back into your product?
d.. Do your builds depend on the roll of the dice?

A good set of infrastructure tools can go a long way toward smoothing out these and other problems. Come see how to make your toolset work seamlessly in the background so you can Just Work. We'll cover source code management (SCM), build scripts, automated test harnesses, automatic builds, feature tracking and issue tracking.

Software Tools That Make Life Easier: Part Two

This talk is a continuation of Part One of the Tools talk. During Part Two we'll cover Continuous Integration, automated testing, bug tracking, and feature tracking.


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.

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.


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

Ramnivas Laddad

Enterprise AOP with AspectJ

Enterprise application development is a gold mine for applications of AOP. There are many crosscutting concerns found in a typical enterprise application, ranging from well-known security and transaction management to application- and technology-specific concerns. Using AOP leads to implementations that are easy to understand and easy to change.

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.

Testing Strategies for Web Applications

Ever wondered if you can automate testing of your web application, but couldn't produce a satisfactory solution? If so, this is the session for you! Attend this session to understand the alternatives you have for unit and functional testing of web 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.


Scott Davis - Author of "Groovy Recipes" & TDD Expert

Scott Davis

Easing into Agile

How do you get started with an Agile development methodology? Everyone has been talking about eXtreme Programming for years, but how do you get it introduced to your team? Many times, you're not simply transitioning from from one methodology to another -- you're introducing a methodology for the first time. Adding structure to a previously unstructured endeavor. Adding a touch of discipline where programmers once roamed free.

Guerrilla Web Techniques

Frameworks? We don't need no stinkin' web frameworks. OK, so maybe that's overstating the case. Web frameworks do plenty of good things, but sometimes they can also be golden handcuffs. Too many web developers fall into the trap of thinking, "If it can't be done by my web framework, then it simply can't be done."

Holistic Testing

Mark Twain once said, "Everyone talks about the weather, but nobody does anything about it." Do you feel the same way about Unit Testing? Are you actively testing your code, or are you just thinking about testing your code... some day... once you get some more free time...

Real World Web Services

In this talk, we'll survey the web services exposed by leading websites (Google, Yahoo, Amazon, eBay) and discuss how they are driving the AJAX revolution. You'll see examples of RESTful, SOAP, and JSON web services, as well as the strengths and weaknesses of each.


Stuart Halloway - CEO of Relevance

Stuart Halloway

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.

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.

Pragmatic AJAX (Intro)

Web applications have traditionally been a sort of Faustian bargain, yielding the high-quality user experience that desktop applications can deliver in exchange for incredibly easy deployment and lower support costs.

One of the arguments against creating rich HTML/JavaScript has been how difficult they can be to write and maintain. You will see how to adapt modern Java web frameworks such as JavaServer Faces and Tapestry to ease both the creation and maintenance of these types of applications.

With Ajax we can get a lot of the best of both worlds. Now our web applications can be powerful, usable, an easily deployed!

Web applications have traditionally been a sort of Faustian bargain, yielding the high-quality user experience that desktop applications can deliver in exchange for incredibly easy deployment and lower support costs (i.e., no client software to install, upgrade, and test on every conceivable desktop configuration).

Programming Java Concurrency

Java has always provided a model for concurrency and threads. With Java 1.5, this model received a major facelift. Learn how to use the new concurrency utilities to build responsive, scalable, and correct concurrent applications.

Spring AOP

Learn to use Spring AOP, aspect injection. and AspectJ integration

Spring Dependency Injection

Dependency Injection (DI) is the cornerstone of Spring. The core concept is quite simple, but (surprise!) actual practice can become complex. To take full advantage of Spring DI, you need to understand not only the basics on configuration, but also the container lifecycle model and the various hooks provided by the framework.

Spring Fundamentals

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.



Venkat Subramaniam - Founder of Agile Developer, Inc.

Venkat Subramaniam

Groovy for Java Programmers

Object-oriented scripting languages, or agile dynamic languages, as some like to call those, are gaining programmers' attention. Groovy bring this excitement to
the Java platform with its ability to generate byte code. You can use Groovy instead of Java for some parts of your application. By learning it, you can switch between the languages where you consider fit.

Open Source Tools for Agile Development

As a Java developer, you have taken the time to learn the basics of the language and relevant parts of its rich API. However, you need more than that to develop serious industrial strength applications. In this presentation, the speaker will introduce you to a number of open source tools which you can use to improve your application quality and your development process.

Practices of an Agile Developer

You have worked on software projects with varying degree of success. What were the reasons for the success of your last project? What were the reasons for those that failed? A number of issues contribute to project success - some non-technical in nature. In this presentation the speaker will share with you practices in a number of areas including
coding, developer attitude, debugging, and feedback. The discussions are based on the book with the same title as the talk.

Refactoring your code - a key step in agility

Refactoring is one of the core practices in Agile Software Development. Refactoring is based on some core principles that apply to more than writing good code. But, what's refactoring? Why should you do it? How do you go about doing that? What tools are available to successfully refactor your App?

Working with Rules Engines

Rule based programming allows us to develop applications using declarative rules. These can simplify development in applications where such rules based knowledge is used for decision making.




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.


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



Glenn Vanderburg

close

Glenn Vanderburg Consultant specializing in Ruby, JavaScript, and Java.
Glenn Vanderburg is an independent consultant focused on cutting-edge software development technologies and techniques, including Ruby, JavaScript, Ajax, and state-of-the-art development practices.


Howard Lewis Ship

close

Howard Lewis Ship Creator of Tapestry and HiveMind
Howard Lewis Ship is the creator and lead developer for the Apache Tapestry project, and the creator of the Apache HiveMind project. He has over fifteen years of full-time software development under his belt, with over nine 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 the author of Tapestry in Action for Manning Publications (which covers Tapestry 3.0), and is currently the Director of Open Source Technology for Formos Software Development. He lives in Portland, Oregon with his wife Suzanne, a novelist.

Howard is polishing the last rough edges of Tapestry 5 in anticipation of a final 5.0 release.


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.


Jared Richardson

close

Jared Richardson Agile coach and co-author of Ship It
Jared Richardson, co-author of Ship It! A Practical Guide to Successful
Software Projects
, is a speaker, consultant, and mentor with NFJS One. Jared has been in the industry for more than fifteen years as a consultant, developer, tester, and manager.

Jared can be found online at Agile Artisans.



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.


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.


Scott Davis

close

Scott Davis Author of "Groovy Recipes" & TDD Expert
Scott Davis is an internationally recognized author and speaker. He is passionate about open source solutions and agile development. He has worked on a variety of Java platforms, from J2EE to J2SE to J2ME (sometimes all on the same project).

Scott's books include Groovy Recipes: Greasing the Wheels of Java, GIS for Web Developers: Adding Where to Your Web Applications, The Google Maps API, and JBoss At Work.

Scott is the Editor in Chief of aboutGroovy.com, a news and information website that tracks the latest developments in Groovy and Grails. He also writes a regular column for IBM DeveloperWorks -- Mastering Grails.

Scott is a frequent presenter at national conferences (such as No Fluff, Just Stuff) and local user groups. He was the president of the Denver Java Users Group in 2003 when it was voted one of the top-ten JUGs in North America. After a quick move north, he is currently active in the leadership of the Boulder Java Users Group. Keep up with him at http://www.davisworld.org.


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).