Sean Sullivan
Google Web Toolkit (GWT) is a development toolkit used to construct and optimise complex browser-based applications. This presentation will highlight new GWT 2.0 features. We will discuss GWT 2.0 development mode, declarative user interface, layout panels, and the new Google Eclipse plugin. Here is a link to the application “podcast by phone.” Here, you can view the app’s GWT code.
The most recent JavaFX
Joshua Marinacci
Josh will update us on the most recent JavaFX release, 1.2, which includes numerous enhancements to make JavaFX more useful for real-world applications (speed, more controls, charts and graphs). Josh will also provide us with a sneak peek of the features that will be included in future versions of JavaFX, along with some excellent demo applications.
Performance of Java, the Lifecycle Approach
The rules have changed.
The Joe Hoffman
Java Enterprise Performance Tuning is typically viewed as the responsibility of someone else.
QA will complete the task.
Operations will determine a solution.
Shouldn’t the Developers find these things?
However, it can and should be done throughout the lifecycle.
We will investigate this novel concept as well as the following:
GC diagnosis while under load Is my Framework achieving my objectives?
- Hello? Is this thing operational?
- Who’s your daddy? (How do services interact in reality?)
Java Grid Packet Computing (GPC4J)
Lyle Harris
GPC4J is a computing paradigm that divides a partitionable problem into GridPackets that are then routed, processed, and reassembled into the original problem’s solution. This presentation will cover the system’s functionality and the web application’s layout.
Google Application Engine (PDF)
Sean Sullivan
Google App Engine enables the execution of web applications within Google’s datacenters. This presentation will focus on the Java runtime of App Engine. Developer tools, the datastore, and core platform services will be discussed. Additionally, we will discuss how to invoke third-party web services from the App Engine environment.
Writing a Java database application without understanding SQL (also known as POJO’s JPA and ORM).
Jon Batcheller
Using the JPA (Java Persistence API) and ORM (Object Relational Mapping) via Toplink or Eclipselink, we will discuss constructing a Java Swing application (installed or web start) that saves its data POJO’s (Plain Old Java Objects) into a remote SQL database (mySQL) or a local embedded database (Derby). REAL applications are able to take advantage of technology that typically resides in the world of Hibernate and Web Apps. You’ve got to love SQL database data persistence without the need to build tables or write SQL!
Performance Testing of Java using Project Bonneville (PPT)
Christopher Cowell-Shah
Chris Cowell-evenings Shah’s and weekends are devoted to the open source Project Bonneville, which measures the performance of certain core Java SE features. Chris will examine the results of these benchmarks in light of the following questions.
How does performance differ between JVM vendors?
How does performance differ between JVM versions?
How does the performance of various operating systems vary?
How does the functionality of 1.4 features differ from their 1.5+ counterparts?
How accurate are commonly held beliefs regarding Java performance?
Is it possible to generate simple guidelines for high-performance Java SE programming?
The Sensation of Scala
Scala is a new programming language for the Java Platform that combines object-oriented and functional concepts. This presentation will focus on Scala’s design decisions and their impact on developer productivity. This talk will explain what it means to programme in a functional style and demonstrate how Scala supports a hybrid of functional and imperative programming styles. The presentation will also compare Scala to dynamic programming languages such as Ruby and Python. In addition, you will see examples of real, production-ready Scala code that illustrate what it’s like to programme in Scala.
Flex and Java Make Software Sexier
William Ward
Introduction to Rich Internet Applications RIA as the subsequent generation of software The Client-Server Model Must Return The RIA Software Development Platform from Adobe
Introduction to developing software with Flex What is Flex? Open Source SDK ActionScript & MXML Languages Components Extensible Markup Language How does one utilise Flex? Compiler Debugging
Introduction to BlazeDS (Java Integration) Installing BlazeDS into a Web Application (WAR File) Remoting (RPC-style object invocations over HTTP) Introduction to BlazeDS (Java Integration). Pub/Sub Messaging ยท Integration of Spring OAuth and REST Web Services (pdf)
Sean Sullivan
Please join us for a discussion on web service programming. OAuth, an open protocol for secure API authorization, and Restlet, a REST web service framework, will be discussed. Furthermore, we will examine the OAuth Java API and demonstrate how to implement OAuth in an Android application.
Your Brain on lambda (x)
Phil Varner
Developers are once again interested in functional programming. Functional concepts are fundamental to languages such as Scala and Clojure, and even object-oriented languages such as Groovy and C# 3.0 include functional concepts. This presentation will discuss whether language is truly important, some functional techniques that enhance the power of a language, how to implement some of these techniques using existing Java syntax and semantics, and the future of functional additions to the Java language.
Clojure
Ship, Howard Lewis (creator of Tapestry & HiveMind)
What do you get when you combine one part Lisp (one of the oldest computer languages), one part Java (so young, yet so widely adopted), a healthy dose of functional programming, and a cutting-edge concurrency layer on top? This is Clojure, which “feels like a future-beamed general-purpose programming language.” With immutable data types and first-class functions, Clojure embraces functional programming. It is completely compatible with Java. Clojure’s concurrency approach consists of asynchonous Agents and Software Transactional Memory. Clojure is a fast, elegant, dynamic, and scalable future-ready language.
Able Simplifies Java Web Development
Patrick Lightweight
Patrick will present his work on the Able project, a new open source initiative. Able is a library and quickstart template that aims to tightly integrate the following modern Java frameworks: Hibernate (persistence), Stripes (web framework), Guice (core container), and DWR (AJAX). Utilizing libraries that support annotations and generics, Able simplifies Java web development and offers integration at multiple levels, such as validation, transaction management, and object lifecycle management.
If you wish to do some preliminary reading, here are some pertinent links:
Using Groovy to Test Java Code Units
Jeffrey Abrams
As you are aware, Groovy is a dynamic scripting language that integrates extremely well with the Java platform and Java technologies. This presentation will cover unit testing as a method for integrating Groovy into your organisation and programming environment. After introducing the language, we will discuss why Groovy can simplify unit testing.
Writing Java Web Applications with GWT (PDF)
Douglas Bullard, Nike
GWT is Google’s Web Toolkit, a framework for developing Java-only rich web applications. While many people have heard of GWT, the vast majority have not investigated its simplicity.
GWT enables the collapse of a technology stack. Without GWT, it is necessary to have knowledge of HTML, JSP, JavaScript, CSS, JSTL, Java, the web framework of your choice, etc. to create a web application with the desired appearance and behaviour. Wouldn’t it be great if you could do everything in Java and only use CSS for formatting the display? GWT enables you to do so. GWT enables you to impress your peers with your JavaScript expertise without being a JavaScript expert. This presentation will serve as an introduction to GWT, demonstrating how to write an entire application in it or augment your existing web applications with GWT widgets. Integration with Seam, interoperability with legacy JavaScript and third-party JavaScript libraries, and code reuse will also be covered as advanced topics.
A live demonstration of coding in GWT will demonstrate how quickly web applications can be developed using this framework.