Skip navigation.
Home
Providing free education about open source to local developers

2008 Meeting Topics

December 2008 Meeting

TUESDAY, December 2nd, 2008

Basic Concepts: Matthew McCullough & Tim Berglund on Source Code Control with Git

Git is the most prominent of the Distributed Version Control Systems (DVCS) that are taking source code control by storm. Git allows you to host a local repository without any daemon process, in any directory. It then allows you to expose that via the GIT protocol with a simple daemon, or via SSH. Git is written for high performance and intense collaboration, and even has a bridge to Subversion repositories for an invisible transition to Git. We'll review the need for DVCS systems and give the audience a hands on demo of a practical application of Git in your current workplace.

Main Talk: Danno Ferrin on Griffon, the Groovy Swing UI Framework

Griffon is best described by analogy: "Grails for the Desktop." A runtime and build framework for Java Swing applications leveraging Groovy and the Grails build system to simplify and rationalized desktop and rich client applications.

Griffion got it's start as the SwingBuilder in Groovy, it was one of the original builders developed in Groovy as a proof of concept for the Builder pattern. While the SwingBuilder is still at Griffon's core, other dynamic features of Groovy really allow Griffon to transform how Swing applications can be written.

The presentation will cover
- A brief history of Desktop Java
- Comparison of Java Swing programming techniques and Groovy programming techniques
- Overview of the rails inspired conventions as applied to a desktop application
- Discussion of unique features Groovy adds to the mix
- A live demo of a simple Griffon application built from scratch

Bio: Danno Ferrin is a Senior Software Engineer at Intelligent Software Solutions, Inc., a Colorado Springs based Defense contractor specializing in data analysis tools.

Danno has also been a contributor to open source, being an emeritus committer at the Tomcat and Ant projects and as an active committer for Groovy and as a despot for Griffon.

November 2008 Meeting

TUESDAY, November 4th, 2008

Basic Concepts: Brian Pontarelli on Google Guice Dependency Injection

This presentation covers the latest dependency injection framework named Guice. Guice was written by the developers at Google and makes dependency injection lighter, faster and easier to write. Unlike other dependency injection frameworks, Guice uses annotations and Java code for configuration rather than XML. Like most of the projects from Google, Guice is extremely fast and can create large object graphs in milliseconds. Guice supports the most common dependency injection concepts, but in a type safe manner and without the XML.

The topics we'll cover during this presentation are

- Guice Modules
- Guice annotations
- Custom annotations
- Injecting and supporting legacy code
- Multiple implementations of an interface
- Injecting constants
- Injecting statics
- Scopes
- Aspect Oriented Programming

To round out the discussion, we'll compare Guice to the Spring and look at the differences for common day-to-day tasks.

Bio: Brian Pontarelli is the founder and president of Inversoft, a Colorado based software company. In addition to Inversoft, Brian works on many open source projects including Struts, Savant and Java.net commons. In the past, he was the president of the Chicago Java User Group and an enterprise architect for Orbitz.

Brian has been programming for many years and works primarily with Java and Ruby. He has published various articles in both print and online magazines about Java, J2EE security, Java Server Faces and NIO.

Advanced Concepts: Andrig Miller from RedHat/JBoss: JBoss Enterprise Application Platform Tuning

In this presentation, I cover tuning the JBoss Enterprise Application Plaform (sometimes still called JBoss Application Server). Along with that, I also cover basic performance tuning practices, Linux specific tuning (which can also be applied to all major OSes), and database and storage performance tuning.

Bio: Andy Miller, vice president of engineering, JBoss, a division of Red Hat. As vice president of engineering, Andy Miller manages JBoss' expanding number of open source projects, development talent, and enterprise platform products. He brings 23 years of experience and extensive, hands-on technical expertise working with open source and JBoss technologies. Previously, Andy was vice president of technical architecture at Corporate Express, where he led the company to move its information systems to open source to improve reliability, performance and drive down costs, including the strategic decision to make JBoss the platform for mission critical corporate applications.

October 2008 Meeting

TUESDAY, October 7th, 2008

Basic Concepts: Matthew Quinlan, Chief Evangelist & VP of Community Development for Appcelerator.

Quin' will be discussing the multi-language web application and web services platform (http://www.appcelerator.org/), AppCelerator, that has been gaining a lot of attention in recent months.

Use POJOs to create services
Web Expression Language – drastically reduces the amount of Javascript required to build an interactive web application
Unified Widget Platform – allows you to create your own widgets or leverage widgets from other libraries including Flex and Flash widgets
Interactive Use Cases – since our architecture is message-oriented, we can create mock services in the UI to simulate service requests. The benefit of this is that you can build fully functional prototypes that are 100% reusable. The mock services also define the contract between the UI and the services that need to be implemented. It’s sort of like technology-driven Agile development. We use this process internally and with our customers – it has worked really well.
Matthew Quinlan serves as the Chief Evangelist & VP of Community Development for Appcelerator, leading the company's brand awareness, community development and user adoption programs. Prior to joining Appcelerator, Quinlan was the founder of the JBoss evangelist team, the open source middleware leader. After JBoss was acquired by Red Hat, Quinlan founded Red Hat's "Rockstar Program," through which he was responsible for the recruitment, training, and evaluation of all customer-facing technical talent at Red Hat. Prior to JBoss/RedHat, Quinlan spent 8 years as a professional consultant for Tallan and Interwoven writing custom software solutions for startups and Fortune 500 companies alike. Quinlan is a graduate of Purdue University, where he earned a bachelor's degree in Computer Science.

Main Topic: No Fluff Just Stuff Speaker: Venkat Subramaniam presenting Dynamic Languages in Spring Application Architecture

Venkat's appearance courtesy of No Fluff Just Stuff (http://www.nofluffjuststuff.com/) tour and Jay Zimmerman

Bio: Dr. Venkat Subramaniam, founder of Agile Developer, Inc. has trained and mentored thousands of software developers in US, Canada, Europe, and Asia. He helps his clients succeed with Agile Development and various software technologies. He is a frequent invited speaker at various international software conferences. He authored .NET Gotchas (O'Reilly), and co-authored the 2007 Jolt Productivity Award winning book Practices of an Agile Developer (Pragmatic Bookshelf). His most recent book is Programming Groovy (Pragmatic Bookshelf).

Abstract: Dynamic languages provide some great capabilities for adding dynamic behavior to your Spring applications. In this presentation we will take a look at the various options for mixing dynamic languages with Spring and what benefits you will derive from mixing these languages with Java. You will take away tips on how to enhance your Spring applications using languages like Groovy and JRuby.

September 2008 Meeting

Tuesday, September 2nd, 2008

Basic Concepts: Frederic Jean, Selenium Test Cases and Groovy

Frederic is the User Experience technical lead for the xVM Server and xVM Ops Center projects at Sun Microsystems. He is focussed on applying Ajax technologies to the problem of managing large scale data centers.

Frederic first learned about Groovy in 2005 when he was looking for a way to simplify writing unit tests for Sun's update delivery infrastructure code. He has been an advocate for it's use within Sun since.

Topic Summary:

Groovy's syntax and metaprogramming abilities provides powerful means to simplify writing UI tests using Selenium RC. Frederic will discuss how metaprogramming techniques can remove noise from Selenium test scripts and implements methods that are otherwise not implemented by the Selenium RC Java driver. He will then introduce GroovierSelenium which uses these very techniques to simplify UI tests written for xVM Server and xVM Ops Center at Sun Microsystems

Main Topic: Orion Letizi, Terracotta Scalability Framework

Orion Letizi is a co-founder and software engineer at Terracotta. He has worked in enterprise Java for nearly ten years. Before Terracotta, he was a software architect at Walmart.com.

Stateful Applications that Scale Like Stateless Ones

Within every innocent web application lies a sleeping monster. There comes a time when every successful web application outgrows its single-machine architecture. Whether for high-availability, scalability, or both, the adult web application must grow to live on more than one application server. That’s when the latent beast strikes: the State Monster.

The most recent accepted wisdom about solving application state problems in a scaled-out production architecture is to make your web application “stateless”—i.e., externalize all application state out of the application tier so that any application server can serve any user request. Unfortunately for the owners of such applications, making it “stateless” is hard to do, corrupts the programming and data model of the application, and pushes the problem out to other pieces of infrastructure that are ill-equipped to handle it.

Stateless programming is hard on the application developer, hard on the application infrastructure, and hard on the application. There must be a better way to write business applications. In this talk, we will discuss the current “stateless” application paradigm, its shortcomings, and a new alternative using Terracotta’s open-source availability and scalability technology for the Java Virtual Machine.

Files:

Slides can be downloaded here.
http://www.slideshare.net/programr/terracotta-stateless-versus-stateful-...

Example source can be downloaded here.
http://svn.terracotta.org/svn/forge/projects/thebook/tags/

August 2008 Meeting

TUESDAY, August 5th, 2008

Basic Concepts: Tom Flaherty, Scala for Java Developers

Slides Link on SlideShare.net
http://www.slideshare.net/axiom6/dosug-scala-basic-concepts-0805/

1. How does Scala relate to my existing work?

Like Groovy:
A. Scala is based on the JVM and compiles into JVM byte code.
B. Scala's expression syntax resembles Java.
C. Scala calls Java and Java can call Scala.

2. How can I weave this into my day job?
Like Groovy:
A. Scala has plugins for Eclipse, IntellJ and NetBeans (beta).
B. Scala is rich in syntactic sugar which means that clumsy blocks of code say for XML and JDBC can be rewritten into short, easily understood and maintained code.

Overview:
Scala is an OO and functional programming language (FP). Scala is easy to get into. It runs on the standard Java platform, compiles to Java byte code and interoperates seamlessly with all Java libraries.

Scala improves on Java with:
(1) A uniform object model.
(2) Pattern matching and higher-order functions.
(3) Novel ways to abstract and compose programs.

The name Scala stands for scalable language, since its greatest strength is in building large systems and frameworks of reusable components.

In this talk we will discuss why unifying OO and FP is important and then introduce Scala's syntax, object model and pattern matching.

BIO:
Tom Flaherty is Chief Architect at Axiom Architectures. He is currently developing a Scala symbolic math application. In the past he has created enterprise architectures and tools for Williams Communications, DMR and Glaxo.

Main Topic: Nikita Ivanov, GridGain Founder/President, GridGain 2.0 – Grid Computing Made Simple

Slide link on Slideshare.net
http://www.slideshare.net/programr/gridgain-java-grid-computing-made-sim...

The topic of this presentation is about fastest growing open source Java grid computing framework called GridGain and how its focus on elegant simplicity and Enterprise Java integration is helping to revolutionize the grid computing for Java in the same way as Spring or JBoss have changed Enterprise Java landscape.

The presentation will start with a brief introduction to grid computing and specifically data and compute grids. MapReduce will be discussed. Real-life examples will be discussed.

Following introduction to grid computing presentation will outline the key features of GridGain 2.0 highlighting simplicity of the usage.

To underscore the topic of presentation it will also include live demonstration of writing a simple application and grid enabling it to run on a small grid right in front of the audience. All coding during demonstration will be done live. Detailed and in-depth explanations will highlight that grid computing in Java can be fun, simple and productive to use in everyday applications and systems.

Outline
- Introduction
- What is Grid Computing?
o Compute grids (MapReduce)
o Data grids
- Why is Grid Computing?
- What is GridGain?
- Key Features
o Advanced MapReduce
o Zero deployment
o Automatic fault tolerance
o SPI-based architecture
o JMX-based management & monitoring
o Early and late load balancing
o Annotation-based grid enabling with AOP
- Live coding demonstration
- Conclusion
- Q&A

June 2008 Meeting

TUESDAY, June 3rd, 2008:
Main Topic:) Bruce Snyder - Take a Ride on Apache Camel

Apache Camel is a powerful Spring based Integration Framework.

Camel implements the Enterprise Integration Patterns (http://activemq.apache.org/camel/enterprise-integration-patterns.html) allowing you to configure routing and mediation rules in either a Java based Domain Specific Language (or Fluent API) (http://activemq.apache.org/camel/dsl.html) or via Spring based Xml Configuration files. Either approaches mean you get smart completion of routing rules in your IDE whether in your Java or XML editor.

http://activemq.apache.org/camel/

Bruce Snyder is a veteran of enterprise software development and a recognized leader in open source software. Bruce has experience in a wide range of technologies including Java EE, Messaging and Service Oriented Architecture. In addition to his role as a Principal Engineer
for IONA Technologies, Bruce is also a founding member of Apache Geronimo and a developer for Apache ActiveMQ, Apache ServiceMix and Castor among other things. Bruce serves as a member of various JCP expert groups and is the co-author of Professional Apache Geronimo and Beginning Spring Framework 2 both from Wrox Press. Bruce lives in beautiful Boulder, Colorado with his family.

May 2008 Meeting

TUESDAY, May 6th, 2008:
1) Basic Concepts: Matthew McCullough - Wicket Web Framework

wicket.apache.org

With proper mark-up/logic separation, a POJO data model, and a refreshing lack of XML, Apache Wicket makes developing web-apps simple and enjoyable again. Swap the boilerplate, complex debugging and brittle code for powerful, reusable components written with plain Java and HTML.

Hold on just one second before you say "Not Another Web Framework!". Wicket has been around for 3 years, and I'll show you exactly the situations that it is a great fit. It carries a nearly identical MVC setup (even class names!) to Java Desktop Swing programming, and is a great transition for those of us saying, "please don't make me embed logic in XML and JSPs". Keep code where it belongs -- in your Java files -- and keep markup and presentation where it belongs -- in plain HTML files.

BIO:
Matthew McCullough is co-owner of Ambient Ideas, LLC a local holdings company with a family of interrelated marketing and software application businesses. Matthew operates the software architecture business lines and currently consults and trains developers on Open Source and Application Architecture in Colorado, California, New Mexico, Canada, Mexico, Panama, Belize, and El Salvador.

2) Main Talk: Scott Ryan - JQuery

www.jquery.com

jQuery is a fast, concise, JavaScript Library that simplifies how you traverse HTML documents, handle events, perform animations, and add Ajax interactions to your web pages. jQuery is designed to change the way that you write JavaScript. This presentation will introduce you to the major concepts behind JQuery including how to leverage its power in conjunction with other Ajax and Javascript libraries. We will look at a series of live code examples to demonstrate the power of JQuery to reduce many lines of Javascript to just a line or two of JQuery. We will also look at plugins available for use with JQuery as well as a quick overview of plugin development. This presentation is a basic to medium level presentation and requires a beginning understanding of web development technologies including HTML, Javascript, Ajax, DOM. This presentation can be followed up at a later date with more advanced concepts.

BIO:
Scott is a Senior Enterprise Java Architect and Developer working on contract for a number of companies around the world. Scott specializes in process optimization leveraging Open Source and commercial offerings to achieve unparalleled efficiencies. Scott has been delivering leading edge solutions in countries around the world including Latin America, Canada, Russia, China, Europe, Middle East and Africa since 1984. He has leveraged his teams to deliver software, hardware and consulting solutions in multiple industries including Petroleum, Visualization, Telecommunications, Entertainment, Banking and Mortgage. Scott is currently working in the areas of Web Services, Portals, Frameworks and delivery optimization. He is a BEA Technical Director, serves on the Board of Directors of the Denver BEA User’s Group and Denver Open Source User’s Group, and is a President and CTO of Soaring Eagle, LLC (http://www.soaringeagleco.com). He participates in several open source projects including Maven, Mojo, Cargo, Pollinate, Beehive, Eclipse and AppFuse. Scott is a regular speaker at user group meetings and industry conferences. Scott holds a degree in Geophysical Engineering from Colorado School of Mines. In his free time he enjoys volleyball, riding his Harley, flying and skiing.

April 2008 Meeting

TUESDAY, April 1st, 2008:

Downloadable Meeting Annoucement Flier to Post At Your Office

1) Rob Hall: Apache Commons Validator 30 Minute Review

2) Bruce Snyder: Service Oriented Integration With Apache ServiceMix

SOA is simply a way to think when designing systems. Service oriented integration is a way to leverage investments in existing IT systems. Apache ServiceMix is an enterprise service bus (ESB) that provides a
platform for system integration utilizing reusable components in a service oriented manner. This session will discuss some definitions of an ESB and how to evaluate them, the Java Business Integration (JBI)
spec and will show an integration using multiple components with Apache ServiceMix.

Apache ServiceMix (http://servicemix.apache.org/) is an Open Source ESB (Enterprise Service Bus) that combines the functionality of a Service Oriented Architecture (SOA) and an Event Driven Architecture (EDA) to create an agile, enterprise ESB.

Apache ServiceMix is an open source distributed ESB built from the ground up on the Java Business Integration (JBI) specification JSR 208 (http://www.jcp.org/en/jsr/detail?id=208) and released under the Apache license. The goal of JBI (http://servicemix.apache.org/what-is-jbi.html) is to allow components and services to be integrated in a vendor independent way, allowing users and vendors to plug and play.

http://servicemix.org/

Bruce Snyder is a veteran of enterprise software development and a recognized leader in open source software. Bruce has experience in a wide range of technologies including Java EE, Messaging and Service Oriented Architecture. In addition to his role as a Principal Engineer
for IONA Technologies, Bruce is also a founding member of Apache Geronimo and a developer for Apache ActiveMQ, Apache ServiceMix and Castor among other things. Bruce serves as a member of various JCP expert groups and is the co-author of Professional Apache Geronimo and Beginning Spring Framework 2 both from Wrox Press. Bruce lives in beautiful Boulder, Colorado with his family.

February 2008 Meeting

TUESDAY, February 5th, 2008:
1) Om Sivanesan: Apache Top Level Project: XMLBeans
http://xmlbeans.apache.org/overview.html
View & Download Slides
http://www.slideshare.net/programr/xml-beans-overview-by-om-sivanesian

2) Kirstan Vandersluis: XAware, Open Source Data Integration
http://www.xaware.com/products/adapters-connectors.php
View & Download Slides
http://www.slideshare.net/programr/dosug-tech-overview-of-xaware

Data Integration using the XAware Project
One of the most difficult and often overlooked challenges facing
developers is complex data access and integration. In this session,
you'll be introduced to XAware using Eclipse with the XAware Project to
build data components for SOA. The XAware Project's layered architecture
is discussed, and several common use case scenarios will be presented.
For those interested, download and install XAware from www.xaware.org,
and bring your laptop for hands-on training.

Topics covered:
* XAware Project Framework
* Eclipse plugin and runtime Engine
* Demonstration: Exposing relational and text data as services
* Accessing services using HTTP, SOAP, Java API, and scripting
* Hands-on training: Build A Simple Service
* Hands-on training: Shred XML into 2 database tables

As a founder of XAware, Kirstan Vandersluis has been instrumental in developing and patenting XAware’s product suite. Vandersluis has extensive experience in software development spanning multiple industries, including DoD, semi-conductor, and telecommunications, where he has engineered the deployment of both corporate and commercial software products. Previously, Vandersluis was a software development manager and senior architect at MCI. As a published author of, "XML-Based Integration with XAware," Vandersluis often speaks publicly about XML-related technologies and XAware product strategies. Vandersluis holds a BS in Computer Science from Michigan and an MS in Computer Science from University of Colorado.

January 2008 Meeting

DATE:
THURSDAY, January 17th, 2008:

TOPICS:
1) Om Sivanesan: Apache Commons Library: BETWIXT
http://commons.apache.org/betwixt/

2) An Introduction to OSGi by John Lowe:
As the Java 7 release gains steam OSGi is getting more attention as a mechanism for providing modular software. This presentation will cover what OSGi is, why you would consider using it, what problem does it solve (and what problems it does not) and provide some simple examples to help get started. We will also touch on the Java 7 & OSGi debate.
Bio:
John Lowe is a Software Engineer at GE Analytical Instruments in Boulder, CO. John's area of expertise includes embedded systems and hardware/software interaction. John has been developing embedded systems for the past 15 years including, robotics, analytical instrumentation and medical monitoring applications. He has been working with Java since 1996, and has been attending Java User groups in the Denver/Boulder area for 7 years.