193 symposiums and 30,000 attendees since 2001

South Florida Software Symposium

May 18 - 20, 2007

Hotel Intercontinental Miami West
Hotel Intercontinental Miami West
2505 Northwest 87th Avenue
Miami, FL 33172
Map »


NOTE: You are viewing details about a past event. View our upcoming event schedule here ».

Session Descriptions

Mark Fisher - Spring Integration Lead

Mark Fisher

Developing Portlets with Spring Portlet MVC

Spring's Portlet MVC framework is one of the major new additions in Spring 2.0, bringing the proven benefits of the servlet-based Spring MVC framework to JSR-168 Portlet development.

Spring MVC Essentials

Spring MVC is a powerful and flexible framework for building web applications. Its interface-based API promotes loose coupling, yet it also offers many convenient base classes for common functionality. Whether you use the base classes or roll your own, you will discover numerous strategies and extension points. This flexibility will be greatly appreciated once you are up to speed, but newcomers often wonder where to begin.

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.



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.

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.

Keynote: Software "Engineering" & Polyglot Programming

About bridges, languages, engineering, polyglot programming, and the near future.

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.

Regular Expressions in Java

Regular expressions should be an integral part of every developer?s toolbox, but most don?t realize what an important topic it is. Regular expressions have existed for decades, but many developers don't understand how to take full advantage of this powerful mechanism, either through command line tools and editors or in their development.

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.



Ben Hale - dm Server Team Core Developer

Ben Hale

Acegi Security: The security framework with the funny name

Security is one of the major requirements in modern day enterprise applications and yet it is also one of the weakest parts of most developers toolboxes. The problem is of course that security is HARD! It turns out that rather than reinventing the wheel for each application, developers can turn to a great security framework out there already; Acegi.

Spring 2.0: New and Noteworthy

Spring 2.0 has marked a major advance in the Spring Framework. While still maintaining backwards compatibility, this release adds quite a few new features. What are those features and how do they add value? Come by and see.

Spring and Hibernate in the Middle Tier

To today's JEE developer, there are two indispensable tools for creating applications; Spring and Hibernate. Together these two frameworks comprise one of the most powerful and often used stacks in the industry. While it is possible to do amazing things it's not always obvious how best to use them to maximize value. This session aims to correct that.



David Hussman - Agility Coach/Instructor/Practioner

David Hussman

Agile Immersion

Have you heard about SCRUM or XP but never done it? If you want to give it a try, this session will allow you to participate in planning and executing several agile iterations. A working knowledge of either XP or SCRUM will be helpful but not mandatory.

Coaching Agile Projects: Finding Your Groove

Is someone asking you to lead an agile project? There are many how to books for agile methods, but the coverage of skills and techniques for leading are a bit on the light side. Whether you are a manager, tech lead, or a non-stop inspiration for your fellow developers, this session will provide you with new insights into the how and whys associated with coaching / leading an agile project or an agile transition.

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.



Scott Leberknight - Chief Architect at Near Infinity

Scott Leberknight

Advanced Hibernate

This session covers advanced Hibernate topics beyond simple object persistence including session management, object locking, detachment and versioning, lazy loading performance issues and query tuning, advanced O/R mapping support, legacy database considerations, and the Hibernate cache architecture.

Effective Hibernate

Hibernate seems simple on the surface yet when you go beyond very simple use cases it can become much more complex. Intended for beginner to intermediate-level Hibernate developers, come see how to put Hibernate to effective use on your projects.

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.



Greg Murray - Ajax Architect @ Sun and Project jMaki Lead

Greg Murray

Enterprise Ajax with Java

Ajax and Java are the perfect combination for creating Web 2.0 applications. This session will many of the key issues that Java developers may experience when developing Ajax clients and services. Topics that we will cover various topics related to creating services for JavaScript centric clients including security, debugging, and working with JavaScript Object Notation (JSON). This session will conclude with a discussion of both Java-centric and JavaScript-centric approaches (i.e, light client-side logic versus heavy client-side logic) along with the tradeoffs to consider with both of these approaches.

Enterprise JavaScript

The popularity of Ajax has given us many JavaScript toolkits over the past few years, each of which have their strengths and weaknesses. This talk will include a discussion of some of the more popular of these, such as Dojo, JQuery, Protoype, Spry, Script.aculo.us, and the Yahoo User Interface (YUI) library. In addition, the presentation will also discuss what you need to know about JavaScript to develop enterprise-grade applications, including topics such as emulating namespaces in JavaScript, object creation and inheritance using prototypes, associative arrays, closures, internationalization, and Ajax interaction techniques.

Project jMaki - Enabling Web 2.0 Application Developers

Creating a breathtaking user interface requires that you and your team are skilled in JavaScript, Cascading Style Sheets (CSS), and Ajax interactions. This session will discuss how you can use Project jMaki (or just the ideas behind it) to create JavaScript-centric user interfaces that are developer and designer friendly. Project jMaki is an open-source client/server framework hosted on java.net that is focused on creating JavaScript-centric web applications. jMaki promotes a clean separation of JavaScript, CSS, and template code following the web design approach widely known as ?unobtrusive JavaScript?. This session will include a technical discussion of the architecture and features of jMaki including JavaScript toolkit interoperability, widget design, using layouts, wiring JavaScript functionality together, and service/data integration.



Ted Neward - Enterprise, Virtual Machine and Language Wonk

Ted Neward

Java6: Exploring Mustang

Mustang, the Java6 release, is out, and even if you're not looking to adopt the new platform right away, it's important to know what's there so you can start to plan for it. In this presentation, we'll go over the major new features of the Java6 platform, including the new integrated XML services capabilities (JAX-WS and JAXB), dynamic/scripting language support (javax.script), new JVM "attach" capabilities, new annotations supported by the javac compiler, and more.

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 Reflection

If you've never used Reflection (java.lang.reflect), you don't know what you're missing. In this presentation, we'll take a code-first, soup-to-nuts look at the Java Reflection APIs, from how to examine the class metadata that Reflection provides, to using annotations to enhance that metadata with your own information, even through the use of Java Dynamic Proxies to create flexible object "interceptors" that can layer services in front of ordinary method calls with nothing more complicated and an interface and a factory.

The Busy Java Developer's Guide to Rules and Rules Engines Using JESS

If you've been keeping your ear to the ground, you may have heard some talk recently about "rules", "business rules" and "rules engines", but not necessarily any clear discussion on what they are, how to use or design them, or why they might be useful or important.



Venkat Subramaniam - Founder of Agile Developer, Inc.

Venkat Subramaniam

Agile Web Development with Grails

Agile development is all about developing code and seeking feedback from your users to make sure you're developing what's relevant. When they suggest changes, those must be affordable and reliable. Grails, along with its facility to develop test driven, is a killer combination for rapidly developing web applications. In this ZePo (Zero PowerPoint) presentation, we will take a test driven approach to developing a small but fully functional web application in Grails. We will cover the fundamental features of Grails along with utilizing other capabilities like Ajax. At the end of this presentation, you not only be confident, but eager to roll your own web application using Grails.

Annotation Hammer

Annotation is an interesting feature in Java. However, like any features, there are good uses and bad uses. When should you use Annotation? This presentation will answer that question for you.

Domain Driven Design

Domain Driven Design (DDD) is an approach that places emphasis on the domain model and carrying it into implementation. DDD is mostly repackaging of fundamental OO Design. It brings new emphasis to what we should be already doing, but often find it hard and confusing given the realities and complexities of our real world. In this presentation we will take a close look at what DDD is and how to use it for agile development. We will discuss several design options, and also look at some examples of good modeling and layering.

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.

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.

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.

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.

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.



Burr Sutter - Software Architect

Burr Sutter

JBoss ESB Deep Dive

This session will be a deep dive into the capabilities of the open source JBoss Enterprise Service Bus 4.2 GA. An ESB is primarily categorized by its capabilties in the areas of protocol mediation/abstraction, transformation, orchestration, routing, endpoint registry, etc. Numerous live demos of ESB functionality.

Open Source SOA

At some point, code will be written, software tools will be acquired and systems will be built. Unfortunately the Java development world is a confused mess as it relates to a method of building a Service Oriented Architecture (SOA)-based anything. Our objective is to answer the following questions: Should I use Web Services everywhere? Is an Enterprise Services Bus (ESB) useful and required? Should I be programming in the XML-based syntax of BPEL instead of Java? Do I need JBI and/or SCA? What Open Source implementations are available to solve SOA related challenges?





Mark Fisher

close

Mark Fisher Spring Integration Lead
Mark Fisher is an engineer within the SpringSource division of VMware and lead of the Spring Integration project. He is also a committer on the core Spring Framework and the Spring BlazeDS Integration project. Mark has provided consulting services for clients across numerous industries, and he has trained hundreds of developers how to use the Spring Framework and related projects effectively. Mark speaks regularly at conferences and user groups in America and Europe.



Neal Ford

close

Neal Ford Application Architect at ThoughtWorks, Inc.
Neal is Software Architect and Meme Wrangler at ThoughtWorks, a global IT consultancy with an exclusive focus on end-to-end software development and delivery.
Before joining ThoughtWorks, Neal was the Chief Technology Officer at The DSW Group, Ltd., a nationally recognized training and development firm. Neal has a degree in Computer Science from Georgia State University specializing in languages and compilers and a minor in mathematics specializing in statistical analysis.
He is also the designer and developer of applications, instructional materials, magazine articles, video presentations, and author of 6 books, including the most recent The Productive Programmer. His language proficiencies include Java, C#/.NET, Ruby, Groovy, functional languages, Scheme, Object Pascal, C++, and C. His primary consulting focus is the design and construction of large-scale enterprise applications. Neal has taught on-site classes nationally and internationally to all phases of the military and to many Fortune 500 companies. He is also an internationally acclaimed speaker, having spoken at over 100 developer conferences worldwide, delivering more than 600 talks. If you have an insatiable curiosity about Neal, visit his web site at http://www.nealford.com. He welcomes feedback and can be reached at nford@thoughtworks.com.


Ben Hale

close

Ben Hale dm Server Team Core Developer
Ben Hale is a senior software engineer with Springsource and a core developer on the SpringSource dm Server project. Ben specializes in middleware development with using technologies such as OSGi and Aspect Oriented Programming as well as directing the build and release processes for all products in the Spring and SpringSource portfolios.

His interests include middle-tier architecture and effective build and release management strategies.

Prior to joining SpringSource, Ben spent several years leading teams in architecture and development of large-scale enterprise management applications for the telecommunications industry.


David Hussman

close

David Hussman Agility Coach/Instructor/Practioner
David teaches and coaches the adoption and improvement of agility as a delivery tool. His work includes helping companies of all sizes all over the world. Sometimes he is pairing with developers and testers, while other times he is helping to invent, evolve and plan the delivery of all types of products and projects. David also spends a great deal of time helping leaders at all levels find ways to pragmatically use agility to foster innovation.

Prior to working as a full time coach, David spent years building software in a variety of domains: digital audio, digital biometrics, medical, financial, retail, and education to name a few. David now leads DevJam, a company composed of agile collaborators. As mentors and practitioners, DevJam focuses on agility as a tool to help people and companies improve their software production skills. DevJam provides seasoned leaders that strive to pragmatically match technology, people, and processes to create better and cooler products in competitive cycles.

Along with teaching and coaching, David participates in conferences around the world. He is the recipient of the Agile Alliance, 2009 Gordon Pask Award. David continuously contributes to books and various publications.

For coaching information, presentations, and more, visit www.devjam.com


Scott Leberknight

close

Scott Leberknight Chief Architect at Near Infinity
Scott is Chief Architect at Near Infinity Corporation, an enterprise software development and consulting services company based in Reston, Virginia. He has been developing enterprise and web applications for 14 years professionally, and has developed applications using Java, Ruby, Groovy, and even an iPhone application with Objective-C. His main areas of interest include alternative persistence technologies, object-oriented design, system architecture, testing, and frameworks like Spring, Hibernate, and Ruby on Rails. 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, three children, and cat. He also tries to find time to play soccer, go snowboarding, and mountain bike whenever he can.


Greg Murray

close

Greg Murray Ajax Architect @ Sun and Project jMaki Lead
Appointed as AJAX Architect for Sun Microsystems, Greg Murray is deeply involved in the Ajax movement through his participation in the OpenAJAX Alliance and promoting of Ajax throughout the world. Within Sun, Greg lead a grass roots effort advancing the integration of client-side scripting with Java technologies and is the creator and principal architect of Project jMaki. jMaki allows developers to create Ajax web applications . Greg recently contributed to the design and development of the Ajax-based Java Pet Store 2.0 Demo and helped create Java BluePrints solutions for using Ajax with Java and PHP technologies.


Ted Neward

close

Ted Neward Enterprise, Virtual Machine and Language Wonk
Ted Neward is the Principal with Neward & Associates, where he specializes 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, programming languages, and virtual machine technologies. He has written several widely-recognized books in both the Java and .NET space, including the recently-released "Effective Enterprise Java", and the forthcoming "Professional F#". He lives in the Pacific Northwest.


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," coauthor of 2007 Jolt Productivity Award winning "Practices of an Agile Developer," author of "Programming Groovy: Dynamic Productivity for the Java Developer" and "Programming Scala: Tackle Multi-Core Complexity on the Java Virtual Machine" (Pragmatic Bookshelf).


Burr Sutter

close

Burr Sutter Software Architect
Burr Sutter is a current Sun Java Champion, President of the Atlanta Java Users Group and President of the Atlanta Chapter of the
International Association of Software Architects. He has over 15 years of software design and development experience along with numerous published articles, book chapters and developer conference speaking engagements. He is presently employed at JBoss, a division of Red Hat.




Event Highlights

Don't miss your chance to attend more than forty education and solutions sessions:

  • In-depth Discussions
  • Peer Exchange
  • Access to Speakers
  • Expert Panel Discussions
  • Hands-on Code Examples
  • Best Practices
  • Birds of a Feather Session
  • Insight on Cutting-Edge Tools

 

Stay Informed


 
Subscribe to our RSS Feed.
RSS Feed