Event Details

Location

Sheraton Reston
11810 Sunrise Valley Drive
Reston, VA 20191
View Map
NOTE: You are viewing details about a past event. We will be back in Reston November 2 - 4, 2007. You may view the event details here ».

Session Descriptions

Andrew Glover - Co-author of "Continuous Integration"

Andrew Glover

Behavior-driven development in Java

Behavior-driven development, or BDD, has attracted a lot of attention a la RSpec in the Ruby community, but BDD's roots stem from JBehave, a Java based framework. In this session, we'll look at what BDD is and how it shifts the traditional testing vocabulary from being test-based to behavior-based.

Groovy 101: core Groovy

It has been said that Grails is the addiction and Groovy is the drug. If you want to start building slick web applications rapidly with Grails it helps to start with a solid understanding of the Groovy language itself.

Monitoring Software Quality with Continuous Integration

The practice of continuous integration facilitates early visibility into the development process by regularly conducting software builds, thus integrating disparate software pieces earlier than later, which often times minimizes the interval between when a defect is coded and when it is discovered. Given the automated nature of continuous integration spawned builds, software teams can now start to look at their build process as something more useful than a simple compile and test process.

Refactoring Ant builds with Ivy, Groovy, and good old fashion common sense

Are your Ant builds giant XML files that scream for attention? Why not enhance your build process to act like a quality gate, much like a test suite would?


Brian Sam-Bodden - Java author, Ruby geek and Open Source Advocate

Brian Sam-Bodden

10 ways to use Hibernate effectively

Learn 10 tried and true ways to improve the way you use Hibernate today. In this session you would learn about a collection of 10 tips, tricks, practices and tools that will make you more effective at designing, implementing, testing and tuning your application's Hibernate-powered object-relational layer.

Beginning Drools - Rule Engines in Java

Drools is an open source pure-Java implementation of a forward chaining rules engine. Drools can be used in a J2SE or J2EE application and allows you to express rules programatically or by building domain specific rule languages. Learn how Business Rules with Drools can make your Java applications more flexible and robust.


Professional Java UI development with the Eclipse RPC

Learn how to build featured rich applications using the Eclipse Rich Client Platform. The Eclipse platform is an open tools platform, on top of this platform you can build your own applications (which do not need to be IDE like or IDE related). Yet you can enjoy the benefits of working with a mature and featured rich platform that can greatly reduce the amount of time required to create a professional-looking and robust Java UI application.


Brian Sletten - Forward Leaning Software Consultant

Brian Sletten

Data Integration : Beyond Cutesy Mashups

Ever since we started doing relational joins, we've looked for ways to tie data together. The web has given us no end of new data sources to integrate but it seems like the best we can come up with is locating Starbucks on Google Maps. The problem with browser-based mashups is that they don't survive the session, we have no way of referring to the results in future queries and ultimately we don't maintain ownership or control of the process.

We want control of our data and our mashup results. We want ever more ways to view, explore and requery them in multi-faceted ways. Do you know what your data integration strategy is for the next few years? Are you sure? You owe it to yourself to come find out.

Give it a REST

As developers, we sometimes get to make choices about the technologies we use, sometimes not. We base these decisions on personal experiences, recommendations from others and a general sense of where the industry is going.

Web Services have been all the rage for several years now. We have been told time and again that we should be building systems around them; as an industry, we've never been more confused. Perhaps it is time to Give it a REST.

RESTlet for the Weary

If you have started to take a look at REST as way of exposing web services or managing information spaces, you may be frustrated by the support offered by legacy containers. There is no direct support for REST concepts in the J2EE specs (yet). XML-based configurations are so 1990's. Come learn about Restlets, a little API that has caught the attention of many in the RESTafarian community.

Prerequisite: Give it a REST (unless you are very comfortable with REST)

Resource-Oriented Computing w/ NetKernel : Software for the 21st Century

Imagine the simplicity of REST married to the power of Unix pipes with the benefits of a loosely-coupled, logically-layered architecture. If that is hard to imagine, it may because the architectures available to you today are convoluted accretions of mismatched technologies, languages, abstractions and data models.

NetKernel is a disruptive technology that changes the game. It has been quietly gaining mind share in the past several years; people who are exposed to it don't want to go back to the tired and blue conventions of J2EE and .NET. Not only does it make building the kinds of systems you are building today easier, it does it more efficiently, with less code and a far more scalable runway to allow you to take advantage of the emerging multi-core, multi-CPU hardware that is coming our way.

Come see how this open source / commercial product can change the way you think about building software.


David Bock - Principal Consultant, CodeSherpas Inc.

David Bock

Internationalization and Localization in Java

Internationalization and Localization in Java is easy, right? Everyone knows you just store your strings in some resource bundles, set the locale, wave your hands a little bit, and your application is good-to-go. Right? Maybe not... Java provides some great utilities to get started, but leaves you needing more when it comes to things like screen layout, cultural sensitivities, semantic differences in translation, use of color and iconography, and other issues.

Introducing Agility to Large Organizations

For several years, I was a member of a team of people caught in the middle of a 200+ person software development company, with senior management wanting "buzzword compliant process improvement" such as CMMI, and engineers wanting more ?agile? solutions (and people on both sides confusing Agile with ad-hoc). We were responsible for sorting it all out. Reconciling this was a herculean effort, and can be a source of lessons learned for your own process improvement efforts. Are you trying to be more agile in your organization? Are you expecting it to be harder than it needs to be because of political and bureaucratic forces beyond your control? Do you have to "educate" your senior management to protect them from buzzwords? Come learn from my successes... and mistakes.

Maintaining Project Integrity with JDepend, Macker, PMD, Maven, and other open source tools

How many times have you started a new project only to find that several months into it, you have a big ball of code you have to plod through to try to get anything done? How many times have you been the ?new guy? on an established project where it seems like the code grew more like weeds and brambles than a well-tended garden? With a few good structural guidelines and several tools to help analyze the code, we can keep our project from turning into that big ball of mud, and we can salvage a project that is already headed down that path.


David Hussman - Agility Instructor/Mentor

David Hussman

Creating Agile Requirements

Successful project communities balance written requirements with a healthy amount of discussion. This is at the core of requirements that could be deemed "agile". Many agile projects choose to use user stories, but others may be using use cases or other forms of written requirements. This session is for anyone wanting to improve their requirements, including the creation of good requirement and the presentation styles that help people focus on creating great software products, and stop focusing on documents.

Executable Documentation

Why is so much documentation worthless? Wouldn't is be nice if your documentation actually reflected what your system does? One way to do this is to create what is being called executable documentation or executable specifications. If you are struggling with ambiguous requirements, lack of contact with the business, or a chasm between development and testing, this session is for you.

Getting Agile Planning and Tracking Up and Running

If your company is using agile or thinking about it, this session will show you how to plan and tracking an agile project. Examples projects will be discussed, including the glory and horrors. Various planning tools that help distributed teams will be presented as well as a collection of lo-fi tools which truly help find and address the issue that plagues so many projects: "when are we going to complete this project".

Leading Agile Projects: Finding Your Groove in the First 4 Iterations

Although there are many books about agile, but few provide a path for guiding you through the beginning of an agile project. Whether you are preparing for your first agile project, or taking the lead for the first time, this session will provide a guided tour filled with practical advice and a pile of anecdotes.

Leading Agile Projects: Maintaining Sustainable Agility

Once your agile project is rolling along, there are many bumps and roadblocks which can derail the train. Whether you are leading the project formally or informally, there are techniques you can use to keep the project alive and innovative. This session will cover skills and techniques for leading sustainable project communities.

Prerequisite: Leading Agile Projects: Finding Your Groove in the First 4 Iterations



Jason Harwig - Senior Software Engineer at Near Infinity

Jason Harwig

JavaScript Security - Seeing the possibilities of a sand-boxed scripting language

JavaScript's popularity in recent years has brought with it the attention of hackers, white and black. Both sides looking for ways to do things that weren't intended with the scripting language.


Jason Rudolph - Author of Getting Started with Grails

Jason Rudolph

Advanced Domain Models in Grails: Enterprise Integration Made Easy

Have you seen someone develop a Rails or Grails application in a matter of minutes, only to later discover that their domain model and database schema followed conventions that are different from your existing systems? Or perhaps you're interested in using Grails, but you don't want to duplicate your existing Java domain classes in Groovy. In this session, we'll see how Grails makes it easy to hook into your pre-defined schemas or existing entity classes, while still getting all the rapid application development (RAD) goodness that Grails has to offer.

Getting Started with Grails

Grails is an open-source web application framework that's all about getting things done. Grails combines best-of-breed Java technologies (including Hibernate and Spring), convention over configuration, and the powerful and dynamic Groovy language. Together with these elements and Groovy's ability to seamlessly integrate with your existing Java code, Grails finally legitimizes rapid web application development for the Java platform.

Going Further with Grails

Grails provides a tremendous jump-start to any web application. With easy scaffolding and zero-configuration ORM, you're up and running in no time. But what's needed to effectively move from a vanilla Grails project to a fully-customized application fit for public consumption?


Kito Mann - Editor-in-chief of JSF Central and the author of JSF in Action

Kito Mann

AJAX and JSF: Natural Synergy

With the emergence of AJAX as a preferred way of building web user interfaces, JavaServer Faces (JSF) has proved itself to be a natural fit for integrating AJAX with Java sever-side logic.

Exploring the JavaServer Faces Ecosystem

This session examines the ecosystem of products built on JavaServer Faces.

Prerequisite: Basic familiarity with web application development in Java.

Introduction to JBoss Seam

JBoss Seam is a popular open-source application framework for Java Platform, Enterprise Edition (Java EE) 5.0. For web application developers, a significant benefit of Seam is that it greatly enhances JavaServer Faces technology. This session explains key Seam features such as tight integration with EJB3, Hibernate and JPA integration, conversations, RESTful web pages, and so on.

Prerequisite: Basic understanding of Java web application development. Familiarity with Dependency Injection/Inversion of Control, JSF, and JPA/Hibernate persistence is a plus.



Mark Fisher - Spring Integration Lead

Mark Fisher

Enterprise Security with Spring

Spring Security (formerly known as 'Acegi') enables self-contained, consistent, and extensible solutions for securing your applications. Version 2.0 provides major enhancements including a domain-specific XML namespace, convention-based defaulting, and annotation support. This provides a significantly simpler experience for developers while still supporting the same degree of flexibility.

Message Driven POJOs with Spring

Spring 2.0 introduced support for Message-Driven POJOs meaning that it is now possible to receive JMS messages asynchronously and delegate the handling of those messages to simple objects even within a lightweight application running outside of any application server. If your POJO has a return value, it will automatically be sent to a response destination.

The Role of Spring in an ESB

An Enterprise Service Bus (ESB) brings flow-related functionality such as message routing and transformation to a Service-Oriented Architecture. An ESB also provides a layer of abstraction with endpoints for various protocols and transports. These features promote decoupling of integration logic from business functions, flexibility in the transport layer, and pluggability of POJO services.


Mark Johnson - Director of Consulting at CGI

Mark Johnson

Requirements Drive Design and Development (RDDD)

Validate that requirements are not missed during the design and development process by creating Requirements document test fixtures to clarify and validate the requirements between the end users, business analysts, architects, and developers early in the project.

Software Development Risk Analysis techniques

Once you leave academic "hello world" projects, software development is full of unknowns which result in the high rate of project failure we see too often in industry. Reasons for a project failure will vary based on the stakeholder interviewed. This session will provide a software development risk framework and examples you can apply in your projects to reduce or at least soften the impact of failure.


Neal Ford - Application Architect at ThoughtWorks, Inc.

Neal Ford

Advanced Selenium

This session discusses advanced Selenium techniques for testing web applications. It discusses techniques for both TestRunner and Remote Control Selenium, including data driven tests, creating branch points, testing Ajax applications, creating flexible tests, integration with continuous integration, and tons more.

Agile Project Management (With Just a Bit About Mingle)

You can read books about Agile projects, but you must consult real-world experience to really understand the dynamics of agile project management. This session discusses agile management topics including estimation, project tracking, and useful metrics (and how to obtain them). And just a little about Mingle, the agile project tracking tool from ThoughtWorks.

Code Metrics & Analysis for Agile Projects

What does code + methodology have to do with one another? Everything! Agile projects focus on delivering working code, and tools exist to allow you to verify some quality metrics for your code. This session is a survey of tools and metrics that allow you to determine the quality of your code and strategies to "wire it" into your agile project.

Debugging and Testing the Web Tier

As out applications have spilled from the server across the wire to the web tier, we increasingly must debug and test in the browser. This session covers debugging and testing tools for clients, JavaScript, and Ajax.

Implementing SOA

This talk avoids SOA hype and gets to the meat of the matter: how do you implement a Service-Oriented Architecture, what are the technological pitfalls, how do you test it, and what traps should you avoid. No marketecture: just implementation details.

Introduction to JRuby

This session describes JRuby, the 100% pure-Java implementation of the Ruby programming language. It covers the basics of programming with JRuby and examples of how to integrate it into existing Java projects.

Productive Programmer: Acceleration, Focus, and Indirection

This session discusses how to use the Productive Programmer principles of acceleration, focus, and indirection to become a more productive programmer. This session describes these principles, but the primary focus of this session is demonstration of these principles with real-world examples.

Productive Programmer: Automation and Canonicality

This session discusses how to use the Productive Programmer principles of automation and canonicality to become a more productive programmer. This session describes these principles, but the primary focus of this session is demonstration of these principles with real-world examples.

Rails for JRuby

This session explains all the hype surrounding Ruby on Rails, in a context familiar to Java developers. It covers convention over configuration, ActiveRecord, controllers, views, Ajax, scaffolding, testing, and deployment...on the JVM, using JRuby.

The Productive Programmer: Practice (10 Ways to Improve Your Code)

No one writes perfect code: even the best developers fall into bad habits and traps. These topics from The Productive Programmer illustrate blind spots and helps you write better code.


Pramod Sadalage - Co-author of "Refactoring Databases:Evolutionary Database Development"

Pramod Sadalage

Database Refactoring

Evolve an existing database schema a small bit at a time to improve the quality of its design without changing its semantics.

Recipies for Continuous Database Integration

is your database being tested and integrated like your application code? do you have a database integration strategy? do you have a process to upgrade your database as you make subsequent releases? Make the database part of your Continuous Integration cycle and benefit from it.


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

Ramnivas Laddad

AspectJ for Spring Developers

If you are keeping up-to-date with all the cool features in Spring 2.0, you have surely heard about much improved integration with AspectJ. AspectJ is for real. Come to this session to understand the core concepts of this wonderful technology and how to use it to create even simpler Spring-based applications.

Enterprise Applications with Spring: Part 1

This session (part 1 of the two-part session) shows the core concepts in the Spring Framework -- the most popular lightweight container that recently crossed 1 million downloads.

Enterprise Applications with Spring: Part 2

This session (the second part of the 2-part session) will cover advanced concepts in the Spring framework. While the core concepts in the first session will get you started with Spring, the advanced concepts in this session will make you effective at developing Spring-based applications.

Leveraging annotations with AOP

Specifying metadata using annotations has gained huge popularity since its introduction in Java 5. However, the story on consuming annotations isn't as clear. Reading and processing annotation is still a complex process often requiring you to understand byte-code manipulation tools and their low-level API. As a result, most developers shy away from using custom annotations, limiting their usages of annotations only those prescribed by frameworks. The result is missed opportunities for programming simplification. In this session, we explore how AOP can make it a simple task to consume annotation in a powerful manner.


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

Scott Davis

Ajax development with the Yahoo! UI Library and Grails

Yahoo! is a company that eats its own dog food. They open sourced the Ajax code that drives many of their own websites, including their eponymous homepage, Yahoo! Mail, and Yahoo! News. Come see first hand how the various pieces of the library work together as a seamless whole.

Groovy and Java: The Integration Story

I'm attracted to Groovy because of its spirit of inclusiveness. Because it extends my platform of choice, not replaces it -- include a single JAR in your classpath and you are Groovy-enabled. Because it offers full bidirectional integration with Java. Because it offers a nearly flat learning curve for experienced Java developers. Come see how you can use Groovy to augment your existing Java codebase.

Groovy: The Next Generation of Java

This is the year of the dynamic scripting language. Ruby (and Rails) has won the hearts and minds of many independent software developers. JavaScript is experiencing a renaissance thanks to the wild success of AJAX and websites like Google Maps. And Groovy (JSR-241) brings the same level of excitement and "scripting goodness" to the Java platform.

Real World Grails

Scott Davis is the Editor in Chief of aboutGroovy.com. The website, in addition to being, umm, about Groovy, is implemented in Grails. This talk shows you how to get started with Grails, but also talks about the experience of using it in a live, production web site.

The Secrets of GORM

GORM (the Grails Object/Relational Mapper) is one of the many high points of the Grails web framework. GORM is a thin Groovy wrapper over Hibernate, but that doesn't begin to capture excitement of what GORM brings to the party. Imagine being able to call book.save() and book.delete() on your Book class; calling Book.get(1) to retrieve your book from the database by primary key; using Book.list() to pull an ArrayList of Book objects into your application. Now imagine getting all of that functionality (and more) for free with each new class you define. No interfaces to implement. No abstract classes to extend. Persistence that is transparent, automatic, and simple to use: GORM.


Scott Leberknight - Chief Architect at Near Infinity

Scott Leberknight

Introduction to Hibernate

This session introduces the Hibernate Object/Relational Mapping (ORM) framework, showing the basics of persisting Java objects to relational databases. No prior knowledge of Hibernate or ORM is assumed.

Spring, Hibernate, and JDBC Integration Patterns

Spring's Hibernate integration simplifies applications that use Hibernate by removing tedious and repetitive infrastructure code that you need to write. Spring JDBC achieves a similiar simplification for executing SQL statements using the lower level JDBC API. So when do you use one or the other, and what are the important usage guidelines? Come to this session to find out.


Ted Neward - Enterprise, Virtual Machine and Language Wonk

Ted Neward

The Busy Java Developer's Guide to Annotations

Want to get the soup-to-nuts story on Java annotations? In this presentation, we'll first talk about what annotations provide to the Java language. After setting ourselves a conceptual basis to operate from, we'll look at the language definition for Java annotations, from how to use them to how to define them. Finally, we'll take a look at the other side of annotations, consuming them at source-level (using "apt", the annotation processing tool), class-level (using a bytecode toolkit such as BCEL), and at runtime (using enhancements to the Reflection API made in Java5).

The Busy Java Developer's Guide to ClassLoaders

If you've ever gotten a ClassCastException and just knew the runtime was wrong about it, or found yourself copying .jar files all over your production server just to get your code to run, then you probably find the Java ClassLoader mechanism to be deep, dark, mysterious, and incomprehensible. Take a deep breath, and relax--ClassLoaders aren't as bad as they seem at first, once you understand a few basic rules regarding their operation, and have a bit more tools in your belt to diagnose ClassLoader problems. And once you've got that, and hear about ClassLoaders' ability to run multiple versions of the same code at the same time, and to provide isolation barriers inside your application, or even compile code on the fly from source form, you might just find that you like ClassLoaders after all... maybe.

The Busy Java Developer's Guide to Debugging

Bugs? We all know your code has no bugs, but someday, you're going to find yourself tracking down a bug in somebody else's code, and that's when it's going to be helpful to have some basic ideas about bug-tracking in your toolbox. Learn to make use of the wealth of tools that the Java Standard Platform makes available to you--tools that your IDE may not know exist, tools that you can make use of even within a production environment.

The Busy Java Developer's Guide to Java Platform Security

Permissions, policy, SecurityExceptions, oh my! The Java platform is a rich and powerful platform, complete with a rich and powerful security mechanism, but sometimes understanding it and how it works can be daunting and intimidating, and leave developers with the basic impression that it's mysterious and dark and incomprehensible. Nothing could be further from the truth, and in this presentation, we'll take a pragmatic, code-first look at the Java security platform, including Permissions, the SecurityManager and its successor, AccessController, the Policy class and policy file syntax, JAAS, and more.

The Busy Java Developer's Guide to Performance and Scalability

Wondering why your enterprise Java app just... sucks? Trying to figure out why you can't get more than 10 concurrent users online at the same time? Looking for ways to try and spot the slowdowns and ways to fix them?


Venkat Subramaniam - Founder of Agile Developer, Inc.

Venkat Subramaniam

Domain Specific Languages

Domain Specific Languages or DSLs are languages that target a specfic kind of problem or domain. We've had various degree of success with DSLs, over the past several years, in narrow areas. However, DSLs are not widely used in general purpose application partly because the popular widely used languages today do not make it easy.

Drooling with Groovy and Rules

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.

FP for Java Programmers

Most interest around Functional Programming (FP) has been academic until recently. Recent commercial languages are beginning to exploit FP features. Knowing more about FP will not only help us make better use of these features, but to
exploit those. In this session we will take a close look at FP.

Java 6 Features, what's in it for you?

What benefit do new Java 6 features offer you. Are there issues with using these features.
The objective of this presentation is not simply to introduce you to the features, but to
the effective use of these as well.

OSGi: A Well Kept Secret

In this presentation we will introduce OSGi and
discuss how it can help modularize and version
your enterprise Java applications.

Spring into Groovy

What do you get when you mix an agile, object-oriented, dynamic language with a lightweight, flexible, and extensible framework? You get a Groovier Spring. Spring allows you to develop using Groovy as much as Java. Groovy brings some neat concepts to the Java Platform that is hard to realize directly through the Java language. Using these capabilities can lead to elegant and easier Spring development.

get Fit

Unit testing tells you, the programmer, that your code (and the change) meets your expectations. How do you know if you are meeting your customers' expectations? Agile development is all about feedback and doing what's relevant to the customers, isn't it? Framework for Integration testing or Fit helps you to automate tests for customer expectations.




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.


Brian Sam-Bodden

close

Brian Sam-Bodden Java author, Ruby geek and Open Source Advocate
Brian Sam-Bodden is an author and recognized international speaker that has spent over twelve years working with object technologies, with an emphasis on the Java platform and in recent times falling in love with Ruby. He holds dual bachelor degrees from Ohio Wesleyan University in computer science and physics and is the president and chief software architect for Integrallis http://www.integrallis.com, where he focuses on building great applications with Java and Ruby. Brian has worked as an architect, developer, mentor, and trainer for several Fortune 500 companies in the tax, insurance, retail sciences, telecommunications, distribution, banking, finance, aviation, and scientific data management industries. As an independent consultant, he has promoted the use of open source in the industry by educating his clients on the cost benefits and productivity gains they can achieve. He is a frequent speaker at user groups and conferences nationally and abroad. Brian is the author of "Beginning POJOs: Spring, Hibernate, JBoss and Tapestry" and has also co-authored the Apress Java title "Enterprise Java Development on a Budget: Leveraging Java Open Source Technologies".



Brian Sletten

close

Brian Sletten Forward Leaning Software Consultant
Brian Sletten is a liberal arts-educated software engineer with a focus on forward-leaning technologies. He has a background as a system architect, a developer, a mentor and a trainer. His experience has spanned defense, finance and commercial domains with security consulting, network matrix switch controls, 3D simulation/visualization, Grid Computing, P2P and Semantic Web-based systems. He has a B.S. in Computer Science from the College of William and Mary and currently lives in Fairfax, VA. He is a partner in Zepheira, LLC, a new services company focused on using semantic-oriented technologies to solve architectural and data integration problems not handled by conventional tools and techniques.


David Bock

close

David Bock Principal Consultant, CodeSherpas Inc.

David Bock is a Principal Consultant at CodeSherpas, a company he founded in 2007. Mr. Bock is also the President of the Northern Virginia Java Users Group, the Editor of O'Reilly's OnJava.com website, and a frequent speaker on technology in venues such as the No Fluff Just Stuff Software Symposiums.


In January 2006, Mr. Bock was honored by being awarded the title of Java Champion by a panel of esteemed leaders in the Java Community in a program sponsored by Sun. There are approximately 100 active Java Champions worldwide.


David has also served on several JCP panels, including the Specification of the Java 6 Platform and the upcoming Java Module System.

In addition to his public speaking and training activities, Mr. Bock actively consults as a software engineer, project manager, and team mentor for commercial and government clients.




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



Jason Harwig

close

Jason Harwig Senior Software Engineer at Near Infinity
Jason Harwig full-time job is a senior software engineer at Near Infinity Corporation, an enterprise software development and consulting services company headquartered in Reston, Virginia. In his spare time he runs Pine Point Software LLC, writing Mac OS X applications in Cocoa/Objective-C.

His interests include Cocoa, JavaScript, OpenGL and user-interface design.


Jason Rudolph

close

Jason Rudolph Author of Getting Started with Grails
Jason Rudolph is a Principal at Relevance, a leading consultancy and training organization specializing in Ruby, Rails, Groovy, and Grails, and integrating them into enterprise environments. Jason has more than nine years of experience in developing software solutions for domestic and international clients of all sizes, including start-ups, Dow 30 companies, and government organizations.

Jason is the author of the highly-praised book, Getting Started with Grails, and speaks frequently at software conferences and user groups. Jason also contributes regularly to the open source community, both as an early committer to Grails, and also as a committer to the Streamlined framework and numerous other Ruby and Rails projects.

Jason holds a degree in Computer Science from the University of Virginia. You can find Jason online at http://jasonrudolph.com.


Kito Mann

close

Kito Mann Editor-in-chief of JSF Central and the author of JSF in Action
Kito D. Mann is editor-in-chief of JSF Central and the author of JavaServer Faces in Action (Manning). He is a member of several Java Community Process expert groups (including JSF and Portlets), and an internationally recognized speaker. Kito is also the Principal Consultant at Virtua specializing in enterprise application architecture, training, development, mentoring, and JSF product strategy. He holds a BA in Computer Science from Johns Hopkins University.


Mark Fisher

close

Mark Fisher Spring Integration Lead
Mark Fisher is a Senior Software Engineer with SpringSource and lead of the Spring Integration product. As a core developer for the Spring Framework, he has played a central role in developing the annotation-based configuration features of Spring 2.5. He has also provided consulting and training services for clients across numerous industries throughout North America including several fortune 500 companies.

In addition to the "No Fluff, Just Stuff" symposium tour, Mark speaks regularly at conferences such as The Spring Experience and SpringOne. He has also presented at Java User Groups throughout the United States on various Spring-related topics.


Mark Johnson

close

Mark Johnson Director of Consulting at CGI
Mark Johnson is currently Director of Consulting at CGI where he is exploring software development management approaches to leverage offshore and local development resources to deliver high quality applications on-time and budget in a highly competitive environment.

Mark Johnson has over 20 years of software development experience in industries including Healthcare, state government, and strategic sourcing. Mark most recently has spent the last 2 years working with Commonwealth of Massachusets EOHHS to develop the NewMMIS application. The NewMMIS application makes use of J2EE, Portal, and Web Services technologies designed to modernize the existing Medicaid processing. In addition, Mark is active in the software community as the President of the New England Java Users Group. When not working, Mark can be found riding his mountain bike on local trails and playing with his family.





Neal Ford

close

Neal Ford Application Architect at ThoughtWorks, Inc.
Neal Ford is an Application Architect for ThoughtWorks. He is an architect, designer, and developer of applications, instructional materials, magazine articles, and video/DVD presentations. Neal is also the author of Developing with Delphi: Object-Oriented Techniques (Prentice Hall PTR, 1996), JBuilder 3 Unleashed (SAMS Publishing, 1999), and Art of Java Web Development (Manning, 2003). His language proficiencies include Java, C#/.NET, Ruby, Object Pascal, C++, and C. Neal’s primary consulting focus is the design and construction of large-scale enterprise applications. He is also an internationally acclaimed speaker, having spoken at over 30 developers’ conferences worldwide.


Pramod Sadalage

close

Pramod Sadalage Co-author of "Refactoring Databases:Evolutionary Database Development"
Pramod Sadalage is the co-author of the 2007 Jolt Productivity Award winning
"Refactoring Databases: Evolutionary Database Development", a Martin Fowler
signature series book and author of "Recipes for Continuous Database
Integration". Pramod works as a DBA and developer at ThoughtWorks. He works on
large custom-developed applications that use agile methodologies. While on these
projects, he pioneered the practices and processes of agility in the database.
Pramod writes and speaks about these concepts and practices to help those
interested in using agile practices on databases. He has written and presented
about database administration on XP projects, the adoption of agile processes
with databases, and the impact of agile practices on database administration and
design. Pramod is the owner and founder of the agiledatabases Yahoo! group; he
moderates group discussions and helps group members learn about agile databases.
When he is not working, you can find him spending time with his wife Rupali and
daughter Arula, and trying to improve his running.


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.


Scott Leberknight

close

Scott Leberknight Chief Architect at Near Infinity
Scott is Chief Architect at Near Infinity Corporation, an enterprise software development, training, and consulting services company based in Reston, Virginia. He has been developing enterprise and web applications for over 13 years professionally, and has developed applications using Java, Ruby/Rails, Groovy/Grails and Python. His main areas of interest include object-oriented design, system architecture, testing, and frameworks of all types including Spring, Hibernate, Ruby on Rails, Grails, and Django. In addition, Scott enjoys learning new languages to make himself a better and more well-rounded developer a la The Pragmatic Programmers' advice to "learn one language per year."

Scott holds a B.S. in Engineering Science and Mechanics from Virginia Tech, and an M. Eng. in Systems Engineering from the University of Maryland. Scott speaks at the No Fluff Just Stuff Symposiums and various other conferences. In his (sparse) spare time, Scott enjoys spending time with his wife, two daughters, and two cats. He also tries to find time to play soccer, go snowboarding, and mountain bike whenever he can.


Ted Neward

close

Ted Neward Enterprise, Virtual Machine and Language Wonk
Ted Neward is an independent consultant specializing in high-scale enterprise systems, working with clients ranging in size from Fortune 500 corporations to small 20-person shops. He speaks on the conference circuit, including the No Fluff Just Stuff Symposium tour, discussing Java, .NET and XML service technologies, focusing on Java-.NET interoperability. He has written several widely-recognized books in both the Java and .NET space, including the recently-released "Effective Enterprise Java". He lives in the Pacific Northwest with his wife, two sons, four video-game consoles, thousands of books (on programming and otherwise), and eight PCs.



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