Blogs.sun.com: JavaOne


Já está aberta a disputa para a maior competição universitária de Java do Ceará e uma das maiores do Brasil. O Prêmio Universitário Java estimula alunos de universidades e faculdades do estado a submeterem trabalhos acadêmicos envolvendo tecnologias Java e premia os primeiros colocados com uma viagem, uma vaga de estágio, vouchers de certificação da Sun Microsystems, entre outros prêmios. Veja a lista completa de premiação:


1º colocado:
Uma viagem com tudo pago para uma conferência internacional (JavaOne, Jazoon ou outra de igual relevância) e vaga de estágio garantida na USIX.

2º colocado: Dois livros de Java, um voucher de certificação da Sun Microsystems, uma assinatura de revista impressa e um voucher para assistir ao InfoBrasil 2010.

3º colocado: Um livro de Java, um voucher de certificação da Sun Microsystems, uma assinatura de revista digital e um voucher para assistir ao InfoBrasil 2010.

4º colocado: Uma assinatura de revista digital.

5º colocado: Uma assinatura de revista digital.


Nesta edição do PUJ, foi criada a categoria Mobile, direcionada para trabalhos que utilizam JME (Java Micro Edition). A premiação desta nova categoria será:


1º colocado: Um celular Nokia E62.

2º colocado: Um voucher de certificação da Sun Microsystems.


Os alunos devem apresentar seus trabalhos acompanhados de professores orientadores da instituição de ensino.

O PUJ'09 é organizado pelo CEJUG, patrocinado por empresas locais e conta com apoiadores dentro e fora do estado. Acesse o regulamento da competição para mais detalhes sobre os deadlines e como submeter seus trabalhos.

Não perca esta oportunidade. Participe!

I've gone to many JavaOne conferences at the Moscone Center but today was my first experience of a Oracle OpenWorld. I was very curious and I found the experience very interesting. Although the two conferences are in the same physical space, the two experiences are very different.

I only have an "exhibitor" pass, so I've not been able to attend any of the technical sessions but, with those caveats, below are some observations; feel free to add additional observations as comments to this entry. Also check my Flickr set.

• OOW is significantly larger in attendance. I've heard about 40K-45K; J1 was, at its peak, 20-25K (afair).
• OOW uses not just Moscone North and South, but also West, and they close Howard street.
• The tent is an integral part of the event, used for lunches, drinks and as a lounge.
• The dress code at OOW are suits... and very few body piercings :-)
• Most attendees at OOW seem to use (smart)phones to stay connected (to their admin assistants?).
• The (internet cafe-like) area with stations to check email / browse at OOW is much smaller than at J1
• The expo and keynote areas are reversed between Moscone South and North.
• The Expo at OOW is very busy, with all the big names in SIs, hardware, software, etc.
• No more bean bags at the bottom of the stairs.
• The developer track is 6 blocks away, at the San Francisco Hilton.

Really, the two conferences can't be more different. Also check out some pictures I took.

La gestión de IT constantemente le pide que haga más con menos. Tradicionalmente, la atención se ha centrado en el hardware: retorciendo más productividad de los servidores, la consolidación de sistemas para reducir costos, y así sucesivamente. Pero también hay oportunidades para ahorrar dinero y mejorar la eficiencia permitiendo a la gente hacer más con menos - en particular cuando se trata de la gestión de entornos de escritorio.

Visualizar un entorno virtualizado

En el servidor de la misma manera y sistemas de almacenamiento pueden ser virtualizados para aunar recursos y mejorar las tasas de utilización, los entornos de escritorio puede ser virtualizado para mejorar la productividad del usuario final, manejabilidad y seguridad.
A través de productos de virtualización como el software VirtualBox, un único escritorio puede alojar múltiples sistemas operativos y realizar diferentes tipos de puestos de trabajo. Así, un PC con Windows ya no es sólo un PC - También puede ejecutar el sistema operativo de Macintosh en una ventana, en otra Linux, OpenSolaris, y en otro.

Por otra parte, con VirtualBox el dispositivo de escritorio ya no se limita al número de CPU físicas. Puede ser configurado con CPUs virtuales (hasta 32 CPUs virtuales en un único sistema) o puede aprovechar la potencia de procesamiento de grandes servidores.

Y con VirtualBox el dispositivo de escritorio ya no está sujeto a las amenazas a la seguridad lo mismo que un ordenador, porque los entornos virtuales están aislados del medio natural y pueden ser desechados en cualquier momento. Así, los usuarios pueden sentirse libres para probar un nuevo software o descargar programas en un entorno virtual sin correr el riesgo de contaminación de la máquina anfitriona.

Puedes incluso probar un nuevo sistema operativo, como Windows 7 o la última versión de OpenSolaris, o iniciar una instancia de un sistema operativo heredado, como OS / 2, sin alterar nada o de poner los recursos en riesgo.

Piense en el dispositivo de escritorio como una casa con habitaciones diferentes para propósitos diferentes: una "oficina" donde el trabajo se mantenga separado del material de origen; "habitaciones familiares", donde cada miembro de la familia tiene su propio espacio y pueden hacer / romper cosas a voluntad zonas (ideal para los adolescentes); "segura" donde se pueden hacer transacciones financieras con total seguridad, incluso un "gabinete de limpieza" que limpia los otros espacios en el fondo.

Igualmente importante, a través de la capacidad de gestión de productos como Virtual Desktop Infrastructure (VDI), la administración de los entornos de escritorio virtual puede ser centralizado y racionalizado, ahorrando tiempo y gastos administrativos. Desde equipos de sobremesa son el centro anfitrión, sólo la pantalla, se envía al dispositivo cliente, los datos críticos nunca sale de la red de la empresa y puede ser administrado y respaldado por IT.

Ejemplo: Sun VirtualBox y Sun VDI en JavaOne

Para comprender mejor el real potencial mundial de VirtualBox de Sun y Sun VDI, miremos el ejemplo en cómo Sun gestionó 21.000 escritorios virtuales para los asistentes de la conferencia JavaOne de este año en San Francisco.

Sun instaló cientos de Sun Ray en todas las zonas del Centro Moscone, donde se celebró la conferencia JavaOne.Cada asistente se le dio una tarjeta inteligente, como parte de su registro kit de bienvenida. Para acceder a su casa o escritorios de trabajo de las Sun Rays, todo lo que tenía que hacer era insertar la tarjeta inteligente en el más próximo Sun Ray y elegir el tipo de escritorio virtual que querían: Windows 7, Ubuntu Linux, o de OpenSolaris.

La primera vez que el usuario hizo la elección, y elegió la máquina virtual de escritorio (VM) se ha creado sobre la base de una plantilla de Sun VDI. La configuración de máquina virtual se almacena en una base de datos MySQL, y la imagen de disco virtual fue rápidamente clonado a partir de la plantilla. Luego, Sun VDI eligió un servidor VirtualBox, puso en marcha la nueva máquina virtual en el servidor, y autenticado en el disco virtual. Cuando el usuario retira su tarjeta inteligente, la máquina virtual se suspende después de un corto período de tiempo, liberando recursos para otros usuarios. Re-inserción de la tarjeta inteligente re-lanzado el escritorio virtual creado previamente, y la máquina virtual fue restaurado desde el disco.

Como muchos administradores están obligados a gestionar estos 21.000 escritorios virtuales? Un gran total de dos.


Y el hardware de cuánto de alta potencia se necesita para ejecutar todo? Un solo rack, con cuatro servidores VDI (servidores Sun Fire X4450, cada uno con cuatro CPUs y 64 GB de memoria), cinco servidores VirtualBox (servidores Sun Fire X4450, cada uno con cuatro CPUs, seis núcleos por CPU y 64 GB de memoria). Esta configuración, por cierto, resultó ser excesiva para las necesidades!


Many folks reading this will be familiar with Sun's Virtualbox desktop hypervisor. With an install base of over 16M and more than 1M new downloads each month, this free (for personal use) Open Source Type 2 hypervisor is quickly becoming an attractive alternative to more established closed source offerings. VirtualBox is fast, extremely lightweight, runs on virtually all host operating environments and supports over 30 different guest OSes. The latest 3.0.6 release download for my Intel equipped MacBook Pro was just under 63 MBytes in size, significantly smaller than either Parallels or VMware Fusion.

Perhaps less well known is how Sun has combined VirtualBox with our Virtual Desktop Infrastructure (VDI) and stateless Sun Ray thin-client technologies to offer a highly integrated, low-cost virtual desktop solution. Sun showcased this technology at this year's JavaOne conference in San Francisco by hosting 21,000 virtual machines with the choice of Windows 7, Ubuntu Linux, or OpenSolaris desktop environments. Even more impressive is that Sun managed to support this entire environment with only 2 system administrators.

As enterprises embrace desktop virtualization as a way to improve security, lower administrative costs, decrease hardware footprints and increase server utilization, VirtualBox combined with Sun's VDI and Sun Ray technologies should be on the short list of candidates for those on a limited budget and especially for those interested in creating a Windows Desktop as a Service offering with support for remote clients attaching over the public Internet. VirtualBox's built-in RDP support allows remote RDP clients full access all the way down to each guest Virtual Machine's console. Sun's VDI infrastructure communicates with the client using RDP but talks to the Sun Ray Thin-client using the highly efficient ALP Sun Ray display protocol which greatly improves display performance over WAN distances. Together, these features provide unique advantages both for enterprises and for this emerging desktop service business model.

Un excelente vídeo que se mostró en la inauguración del JavaOne 2009 en San Francisco.

Este video se mostró en la keynote inaugural de la conferencia JavaOne 2009, en Junio en la ciudad de San Francisco, Estados Unidos.

Elaborating on some slides from a JavaOne talk, the Mandelbrot set is defined recursively as the set of values in the complex plane C where the iterations zn+1 = zn2 + c remain bounded, giving rise to a familiar and complex shape.

The Mandelbrot Set

Determining whether a particular point is inside or outside the boundary of the Mandelbrot set can be difficult because of the fractal nature of the curve; however, good approximations are possible. First at a coarse level, if the absolute value of a point is greater than 1, it is definitely not part of the Mandelbrot set so all of the Mandelbrot set is contained within a circle of radius 2 centered at the origin. Second, there are two primary curves within the set:

  • A circle of radius ¼ centered at (-1, 0)

  • A heart-shaped cardiord whose boundary is c = eit/2 - (eit/2)2

The overall area of the Mandelbrot set is a bit over 1.5; the circle has area ≈0.1963, 13.0% of the total, and the cardiord has area ≈1.178, 78.1% of the total. Therefore, together the circle and cardiord contain over 90% of the area of the whole set and it is comparatively easy to determine if a point is inside or outside the union of the circle and the cardiord.

The Mandelbrot Set Approximated

Using generics in Java has some similarities to the Mandelbrot set. Generics can be recursive, such as in the f-bound in the declaration of java.lang.Enum: public abstract class Enum<E extends Enum<E>>..., and it can be trickly to determine if a use of generics is reasonable. Fortunately, another similarity is that there are two primary use-cases for generics that cover the vast majority of sensible scenarios:

  • Generic aggregates, List<T>, Set<T>, etc.

  • Type tokens, Class<T> (or even super type tokens)

Aggregates like subtypes of java.util.Collection are the heart of generics usage and using generic collections is usually straightforward; Effective Java's PECS mnemonic (producer-extends, consumer super) provides guidance for some of the trickier cases. The second most common use of generics is for type tokens, Class<T>, which embody type information both at compile-time and at runtime. For example, type tokens are used to retrieve annotations.

Be wary of other uses of generics in Java. Java's generics have significantly technical differences from templates in C++; Java generics are by design not a Turing-complete meta-language! Attempting to use Java generics to simulate features in another languages, like Haskell's pattern matching, is unlikely to lead to pleasant or idiomatic Java code. In a Java program, using pervasive type parameters to pass along other information throughout a program, such as to address code evolution issues, is also not a pleasant fit. A warning sign in API design is a Java class having more than two type parameters; this likely signals generics are being used in an awkward way.

As I keep referring to some of the items we did for OpenESB at JavaOne, I'll just summarize some of the artifacts.

I was "lucky" enough to get on stage for the technical keynote with Bob Brewin to show how we used Project Fuji (OpenESB v3) to put together the live application "CluedIn" for J1, using the whole Sun middleware stack.

It was quite an experience, and I had several teams (especially WebSpace server and OpenESB teams) put a lot of effort into making this not just a demo, but something that goes live. The way it works at Sun is that you only get to know a few weeks before the show that your proposal is "on" - hence the quotes around "lucky" ;).

The following days I presented a few sessions:

TS-4839 - Enterprise Integration Patterns in Practice

View more documents from aegloff.

This session I did with Bruce Snyder from SpringSource, he showed how Apache Camel can be used, whilst I showed how IFL from Project Fuji can be used. That went pretty well, my only challenge was reading slide cues off of a small private laptop screen in split screen mode, I recommend using the larger J1 monitors.

TS-5341 - Rethinking the ESB: Lessons Learned from Challenging the Limitations and Pitfalls

View more documents from aegloff.

This presentation I did with my colleague Frank Kieviet. The intent is that folks gain some insight into why frameworks choose to do things a certain way, and hopefully to give you some criteria to evaluate and choose frameworks; so we don't expect everyone to go out and implement their own ESB using these lessons. Several of the lessons translate to frameworks in general and not just ESBs, it might be interesting to do one that focuses solely on how to address and overcome some of the concerns levied against ESBs.

BOF-5004 - OSGi and the Enterprise Service Bus: Friend or Foe?

This was an interesting presentation in a discussion format I did with Guillaume Nodet from ServiceMix / Progress Software, Kevin Conner from JBoss and Keith Babo from Red Hat. Unfortunately the audio in that room was really bad and we had a hard time hearing some of the audience questions; on the bright side it turns out that OSGi and ESBs are pretty good friends ;)

Just as I thought I was done with presenting, Arun caught me for a quick "roaming reporter" video blog

Long live JavaOne!

Thank you again to everyone that joined our series of author chats in Second Life during JavaOne 2009. If you missed the sessions, here are some replays and slides as a way to share the learning - these are all posted to Sun's Social Learning Exchange (a fabulous platform for information and knowledge sharing - learn more here!)

The Developer's Edge
by Darryl Gove
June 3, 2009
eBook available via Safari Books Online:  Non-Sun Employees | Sun Employees
Slides and transcript | Replay of slides with audio

JavaFX: Developing Rich Internet Applications book
by Jim Clarke, James Connors and Eric Bruno
June 3, 2009
JavaFX video played during the session
eBook available via Safari Books Online: Non Sun Employees | Sun Employees

June 4th at 9am PT
Core JavaServer Faces 3/E
by David Mark Geary and Cay Horstmann
Rough Cut access via Safari Books Online: Non Sun Employees | Sun Employees  (early access to the book)

June 4, 2009 at 12pm PT
Real-Time Java Programming: with the Java RTS
by Greg Bollella and Eric J. Bruno
eBook available via Safari Books Online: Non Sun Employees | Sun Employees  (early access to the book)
Slides | Replay with slides and audio

Check our previous blog entries about the author chats with photos and more. Thank you -

Christy Confetti Higgins
Information Services: Digital Libraries & Research
Sun Learning Services

Thank you again to everyone that joined our series of author chats in Second Life during JavaOne 2009. If you missed the sessions, here are some replays and slides as a way to share the learning - these are all posted to Sun's Social Learning Exchange (a fabulous platform for information and knowledge sharing - learn more here!)

The Developer's Edge
by Darryl Gove
June 3, 2009
eBook available via Safari Books Online:  Non-Sun Employees | Sun Employees
Slides and transcript | Replay of slides with audio

JavaFX: Developing Rich Internet Applications book
by Jim Clarke, James Connors and Eric Bruno
June 3, 2009
JavaFX video played during the session
eBook available via Safari Books Online: Non Sun Employees | Sun Employees

June 4th at 9am PT
Core JavaServer Faces 3/E
by David Mark Geary and Cay Horstmann
Rough Cut access via Safari Books Online: Non Sun Employees | Sun Employees  (early access to the book)

June 4, 2009 at 12pm PT
Real-Time Java Programming: with the Java RTS
by Greg Bollella and Eric J. Bruno
eBook available via Safari Books Online: Non Sun Employees | Sun Employees  (early access to the book)
Slides | Replay with slides and audio

Check our previous blog entries about the author chats with photos and more. Thank you -

Christy Confetti Higgins
Information Services: Digital Libraries & Research
Sun Learning Services

Well, it has been a while coming, but I have finally started to put together the wrap-up from the 2009 JavaOne conference.

This year I was fortunate enough to be the host of the show. Many people asked me if it was weird replacing John Gage. To make this perfectly clear, there is NO possible way to "replace" John Gage. John is a force of gravity in the world that is his alone. I just tried to add my own personality into the mix and helped to move the conference along. It was a great honor to have hosted this year.

It is amazing the amount of effort that goes into producing s show of this size. The amount of coordination, review and materials that need to be prepared is staggering. Overall, I believe this year's JavaOne was a resounding success. Consider what we saw at the show: Sony Ericsson, Oracle, Microsoft, eBay, Intel and Verizon all taking a position and expanded role in the Java universe, 300+ sessions, over 70 countries represented, 7000+ attendees, students, CommunityOne, etc. HUGE.

The momentum around the Java universe and connected technologies continues to expand, permeate and allow for innovation to occur. I find it interesting to use the term "universe" when discussing Java as a platform and the reach it has achieved.

*** Segue ***

I am a big fan of the the show "The Big Bang Theory".

One of the coolest things about the show, aside from being hilarious with an amazing cast, is that the science and mathematics used in the show is accurate. Basically, the show introduces physics concepts and theories to the general public in an accessible format. (Stay with me here, there is a point!)

After watching the show for some time I went back and started re-reading some physics and string theory books that I have in my collection. "Parallel Worlds" by Professor Miko Kaku is one of my favorites. He has a very entertaining way about his writing that makes some very heavy concepts palatable for a wide audience. One section of this book was dealing with dark matter; which is the most pervasive yet invisible forms of matter in the universe that, without it, would cause cosmic systems to collapse.

After thinking about it, I realized that Java truly is the "dark matter" of the internet. It is present in more devices than any other language, used my more web services than any of you know, and is invisible to the user even when they are using it. It's commanding presence in the fabric of connected, information technology and platforms is absolute and these same systems would collapse, across the world, if it's presence was removed.

This is not posturing or an overstatement. It is, quite simply, fact.

The pervasiveness of Java was evident in the talks that ranged from Java and Wii controllers, Nintendo DS and PSP, to high school robotics, to navigation systems, medical equipment, mobility, televisions, VR control systems and scalable cloud infrastructures. Java is increasingly interwoven in the digital fabric that we depend on today and in the future.

And much of this innovation has been driven my the enormous and passionate global Java community. I applaud you and thank you for your fiery inspiration, commitment to something bigger than ourselves and to working to make the technology and it's community a tremendous success.

The future for Java technologies has never been brighter. The development of JavaFX, the stated infusion of resources into continuing it's growth and momentum, the affirmation of the technology from the biggest technology companies in the world; there has never been a better time to be a Java programmer than right here, right now.

Now, some media!

Setting up the JavaOne Expo floor

Backstage wizardry!

The world famous Anthony Rogers!

Me and James before the Toy Show.

Opening thoughts for Microsoft Keynote.

Opening to the Toy Show and Darkchat overview.

Another PIE Guy video....hmmmm.......

Gosling and Java. (AWESOME!)

JavaOne Insider - Episode 1

JavaOne Insider - Episode 2

JavaOne Insider - Episode 3

And now....the "Dude, Where's My Pass?" videos where I embarrass myself for the cause of the contest!

Again, it was a fantastic privilege to be the host of this year's conference. I had a ton of fun, enjoyed meeting tons of conference attendees just walking around, and I look forward to seeing you at next year's JavaOne!

(well, not personally but.....)

The JavaOne Rock Stars have been announced!

JavaOne Rock Stars are the top speakers from JavaOne as voted by attendees.

The 2009 class of JavaOne Rock Stars joins a very elite group in the JavaOne Rock Star Hall of Fame.

I know you'll see some familiar names in the list... there also got some rookies!

Congrats to the newly inducted! 

Session ID Session Title Honored Speakers Topic
TS-3890 Energy, CO2 Savings with Java Platform, Enterprise Edition and More: Project GreenFire Adam Bien
adam-bien.com
Core Technology: Embedded / Real-Time / Java Card
TS-5427 Inside Out: A Modern Virtual Machine Revealed Antonios Printezis
Sun Microsystems, Inc. Brian Goetz
Sun Microsystems, Inc.
John Coomes
Sun Microsystems, Inc.
Core Technology: Java SE and Desktop
TS-5588 Creating Compelling User Experiences Ben Galbraith
Mozilla
Dion Almaer
Ajaxian, Inc.
Services: Web 2.0, Next Generation Web, and Cloud Services Platform
TS-5587 Ajax Versus JavaFX Technology Ben Galbraith
Mozilla
Dion Almaer
Ajaxian, Inc.
Services: Web 2.0, Next Generation Web, and Cloud Services Platform
TS-4945 FIRST (For Inspiration & Recognition of Science and Technology): FRC-FIRST Robotic Competition Brad Miller
WPI
Eric Arseneau
Sun Microsystems, Inc.
Core Technology: Embedded / Real-Time / Java Card
TS-5496 This Is Not Your Father's Von Neumann Machine; How Modern Architecture Impacts Your Java Apps Brian Goetz
Sun Microsystems, Inc.
Cliff Click
Azul Systems
Core Technology: Java SE and Desktop
TS-5427 Inside Out: A Modern Virtual Machine Revealed Brian Goetz
Sun Microsystems, Inc.
Core Technology: Java SE and Desktop
TS-4333 Programming Music for Fun and Productivity: JFugue and Log4JFugue Brian Tarbox
Wabi Sabi Software
David Koelle
Charles River Analytics Inc
Core Technology: Java SE and Desktop
TS-4466 Move Your Users: Animation Principles for Great User Experiences Chet Haase
Adobe
Romain Guy
Google
Core Technology: Java SE and Desktop
TS-5045 Conversations and Page Flows on the JavaServer Faces Platform Dan Allen
Red Hat, Inc.
Core Technology: Java EE
TS-5333 JavaServer Faces 2.0 Technology: Implementing AJAX-Infused Web Applications David Geary
Clarity Training, Inc.
Rich Media Applications and Interactive Content
TS-4696 JDBC? We Don’t Need No Stinkin' JDBC: How LinkedIn Scaled with memcached, SOA, and a Bit of SQL David Raccah
LinkedIn Corporation
Dhananjay Ragade
LinkedIn Corporation
Core Technology: Java EE
TS-5098 RIA Teacher Gradebook Managing Millions of Students with Swing and Web Services: How It Was Done Deane Richan
Pearson
Core Technology: Java SE and Desktop
TS-4403 Creating Games with the Open-Source Multithreaded Game Engine (MTGame) Deron Johnson
Sun Microsystems, Inc.
Doug Twilleager
Sun Microsystems, Inc.
Rich Media Applications and Interactive Content
TS-4062 Building Enterprise Java Technology-Based Web Apps with Google Open-Source Technology Dhanji Prasanna
Google
Core Technology: Java EE
TS-5036 Using REST and WS-* in the Cloud Doug Tidwell
IBM
Services: SOA Platform and Middleware Services
TS-4701 Web 2.0 Phone Home: Rapid Development of Telecom-Enabled Web Applications Gregory Bond
AT&T Labs Research
Thomas Smith
AT&T Labs Research
Services: Web 2.0, Next Generation Web, and Cloud Services Platform
TS-4506 Migrating Your Java™ Platform, Micro Edition Midlets to JavaFX™ Mobile Technology Hinkmond Wong
Sun Microsystems, Inc.
Mobility
TS-5136 Nereus-V: Massively Parallel Computing of, by, and for the Community Ian Preston
Oxford University
Rhys Newman
Oxford University
Services: Web 2.0, Next Generation Web, and Cloud Services Platform
TS-5577 Introduction to the JavaFX Technology-Based API (Graphics and Animation) Jasper Potts
Sun Microsystems, Inc.
Rich Bair
Sun Microsystems, Inc.
Rich Media Applications and Interactive Content
TS-4374 XSS-Proofing Your Java EE, JavaServer Pages, and JavaServer Faces Applications Jeff Williams
Aspect Security
Core Technology: Java EE
TS-5186 Return of the Puzzlers: Schlock and Awe Joshua Bloch
Google, Inc.
Neal Gafter
Microsoft
Core Technology: Java SE and Desktop
TS-5217 Effective Java: Still Effective After All These Years Joshua Bloch
Google, Inc.
Core Technology: Java SE and Desktop
TS-3789 Getting Started with WidgetFX: Open-Source Widget Desktop Platform with JavaFX Technology Joshua Marinacci
Sun Microsystems, Inc.
Stephen Chin
Inovis
Rich Media Applications and Interactive Content
TS-4694 Debugging Your Production JVM Machine Ken Sipe
Perficient
Core Technology: Java SE and Desktop
TS-4143 Flamingo: Bringing the Ribbon Component to Swing Kirill Grouchnikov
Amdocs
Core Technology: Java SE and Desktop
TS-4875 Developing RESTful Web Services with the Java API for RESTful Web Services (JAX-RS) Marc Hadley
Sun Microsytems, Inc.
Paul Sandoz
Sun Microsytems, Inc.
Core Technology: Java EE
TS-3798 Preventing Bugs with Pluggable Type Checking Michael Ernst
U. of Washington
Core Technology: Java SE and Desktop
TS-5389 Mylyn: Redefining the "I" of the IDE Mik Kersten
Tasktop Technologies
Core Technology: Java SE and Desktop
TS-4955 Comparing Groovy and JRuby Neal Ford
ThoughtWorks, Inc.
Core Technology: Java SE and Desktop
TS-4961 "Design Patterns" for Dynamic Languages on the JVM Machine Neal Ford
ThoughtWorks, Inc.
Core Technology: Java SE and Desktop
TS-4964 Unit Testing That Sucks Less: Small Things Make a Big Difference Neal Ford
ThoughtWorks, Inc.
Core Technology: Java SE and Desktop
TS-4407 Best Practices for Large-Scale Web Sites: Lessons from eBay Randy Shoup
eBay
Core Technology: Java EE
TS-4164 Clojure: Dynamic Functional Programming for the JVM Machine Rich Hickey
Clojure
Core Technology: Java SE and Desktop
TS-5173 Resource-Oriented Architecture (ROA) and REST Scott Davis
Davisworld Consulting, Inc.
Services: SOA Platform and Middleware Services
TS-5335 Defective Java Code: Mistakes that Matter William Pugh
Univ. of Maryland
Core Technology: Java SE and Desktop

In addition to being hot shot techno celebs, you're now OFFICIALLY Rock Stars. :-)

CONGRATS!!

Mary

As heard at JavaOne this year, classpath is dead, being killed by the modularity features in JDK 7, JSR 294 and Project Jigsaw.

Today the full logical classpath available to an application or used in javac is actually a twisty little maze of concatenated sub-paths, starting with the bootclasspath, followed by the extension directories, and finally the classpath setting itself. The endorsed standards override mechanism is used to selectively update various components logically included on the bootclasspath as part of the JDK, either components for standards that evolve outside of the JCP, like Corba, or standalone JSRs also shipped with the JDK, like JAX-WS. The extension mechanism can be used to support technologies not shipped with the JDK, such as an independent JSR or even a site-wide library.

The table below shows the different command line options to java and javac that can be used to configure the sub-paths. These options have evolved over time. The bootclasspath and extension directories were added in JDK 1.2, the ability to prepend to the bootclasspath was added in JDK 1.3, endorsed standards were added in JDK 1.4, JDK 5 harmonized the path options on the java and javac command lines, and JDK 6 allowed classpath wildcards, but only for the strict classpath component and not for bootclasspath or the Class-Path Jar manifest attribute. Check the documentation for the JDK release in question for matching configuration information.

There is certainly plenty of opportunity for modularity in JDK 7 to simplify the configuration options needed to resolve dependencies!

Path Setting in java and javac
bootclasspath/p: Endorsed standards bootclasspath[/a:] Extension Directories classpath
java options -Xbootclasspath/p: -Djava.endorsed.dirs= -Xbootclasspath:
-Xbootclasspath:/a
-Djava.ext.dirs= -cp
-classpath
$CLASSPATH
javac options -Xbootclasspath/p: -Djava.endorsed.dirs= -bootclasspath
-Xbootclasspath:
-Xbootclasspath:/a
-extdirs
-Djava.ext.dirs=
-cp
-classpath
$CLASSPATH
Classloaders
bootstrap
extension
application

At JavaOne I attended an interesting session around a new service called Zembly. It is a developer service build on the Sun Cloud and as a beta is available free to developers. They described Zembly as:

  • A browser based, social IDE
  • REST service mashup platform
  • Massively scalable app hosting cloud

Or put another way Development as a Service and Platform as a Service. The development tools themselves are delivered entirely within the browser (I think using AJAX and HTML but they did talk about using JavaFX in the future) and provide click and include access to a large number of REST based web services that are available today on the next. The tools support a number of scripting languages (PHP, Python, JavaScript and Ruby). From the demonstration it looked pretty easy to quickly mash up some quite compelling web applications and then deploy them to the cloud. This means as a developer you can experiment with new web services (development and deployment) without the need to make any investment over and above the laptop and browser that you have today to access the net. At the moment (at least while the service is in beta) it is free to use.

By deploying to the cloud you can start your deployment as small as you want and scale as quickly or as slowly as you want. If your service does not take off you can just turn it off and try another one. This seems to me like the perfect way to stimulate the next wave of web based innovation.


Another presentation from JavaOne:

Source

All the JavaOne Hands-on Labs from this year are published at the Sun Developer Network. These "tutorials" will allow to get your hands dirty with the latest greatest technologies. However you'll miss the best part and that's the explanation of the speakers and help of proctors at J1. I almost missed the opportunity to advertise the NetBeans RPC HOL ;)

All Hands On Labs (including our NetBeans RCP Lab - 5540_netbeansrcp) from JavaOne 2009 are available at
http://developers.sun.com/learning/javaoneonline/j1labs2009.jsp?track=1&yr=2009 for public access. There are available all exercises, also there are solutions and guides how to use the exercises.

Enjoy it and try it at home.

The 2009 JavaOne conference may be over, but the learning doesn't have to be. Share with peers and friends what you learned from the technical sessions you attended while at the Conference or from the PDF presentations hosted at JavaOne Online. Learn more about the blogging contest.

JavaOne 2009

Highlight of the General Session

  • Read the details about the official wrap-up report here and the video replay
  • Larry Ellison on “What will happen to Java?” after the acquisition
    • Accelerate Oracle's investments in Java
    • Oracle middleware strategy is 100% Java
    • All Oracle apps above the DB is all Java
    • Also mentioned about JavaFX as well as OpenOffice API's
    • Don't expect a lot of changes for Java except expanded investments and more enthusiasms from Oracle
    • Hinted potential Java based devices like netbook etc. from the new company
  • Other keynotes by Sony/Ericsson, IBM, Microsoft (who came in peace)
  • James Gosling's Toy Show

Highlight of the Technical General Session

  • It's worth to watch the following Technical General Session video to see the technical overview and current state of the Java platform.
    • JavaFX: Revolutionary, augmented GUI, ease of development, graphics, etc.
    • Project Kenai where you can host your open source projects and code, as well as find and collaborate with developers of like mind
    • Project Zembly is a browser-based development environment that consumes RESTful services
    • Netbeans 6.7 available with improved Kenai integration and other developer productivity enhancements
    • Java SE 7: Current is Milestone 3, Milestone 6 in Oct '09, Milestone 8 in Feb '10 – Release Candidate
      • JDK 7 (modularity, Project Jigsaw, JSR-294, no more classpath, aggregator, module files, multi-lingual JVM, the Da Vinci Machine Project: JSR-292 (InvokeDynamic) new byte code, Project Coin: small language changes, the Diamond <> operator, concurrency and collection updates, JSR-203 (Additional new I/O API's), Socket Direct Protocol, Stream Control Protocol, JSR-308 (Type Annotations)
      • Hotspot performance, Parallel Classloaders, Compressed 64-bit pointers, G1 Collector (very low pause, high probabilistic, more tunable than CMS) (I mentioned that many of these performance features are also available now with JDK 6 Update 14)
      • Client side improvements: XRender 2D pipeline, Swing Date Picker, Updated Unicode 5.1 support, etc.
    • Java EE 6: 09/09 release, more powerful, flexible, ease of development, profiles and pruning, extensible
      • Web tier improvements: JAX-RS 1.1 RESTful Web Services, JSF 2.0, Servlet 3.0, JSP 2.2, EL 1.1, etc.
      • EJB tier: EJB 3.1, “Lite” standalone version, JSR-303 Bean validation, packaging in WAR
      • Glassfish v3, NB 6.7, Eclipse
    • Java Store launched: Connecting Developers to Consumers (bytecode upload, verification by Sun, published warehouse, URL for user feedback, developer updates)

Hands-On Lab

  • Great way to learn the new Java technologies
  • A brief lecture about the topic and technologies covered
  • Specific set of scenarios
  • Exercises with actual code and test results
  • Some are BYOL (use your own laptop) and some are machine provided
  • See below for the topics and more detail information about the labs and the materials for download.
Lukas Hasik, Sun Microsystems, Inc.; Jiri Rechtacek, Sun Microsystems, Inc.
Session ID
(click here for the lab abstract)
Session Title
(click here to download the lab content)
Speakers and Company
LAB-5538
The Real-Time Java Platform Programming Challenge: Taming Timing Troubles David Holmes, Sun Microsystems, Inc.; Frederic Parain, Sun Microsystems, Inc.
LAB-6245BYOL
Making a Java Swing, JavaScript, and JavaFX Technology Smoothie Inyoung Cho, Sun Microsystems, Inc.; Cindy Church, Sun Microsystems, Inc.
LAB-5562
Project Snowman: Developing a 3-D Multiplayer Game, Using Project Darkstar Owen Kellett, Sun Microsystems, Inc.; Daniel Templeton, Sun Microsystems, Inc.
LAB-6264BYOL
Implementing Enterprise Integration Patterns with GlassFish ESB and OpenESB v3 Louis Polycarpou, Sun Microsystems; Mike Somekh, Sun Microsystems
LAB-5557
Build a RESTful Client-Server Rich Internet Application with JavaFX Technology and Jersey (JSR 310) David Delabassee, Sun Microsystems, Inc.; Sebastien Stormacq, Sun Microsystems, Inc.
LAB-4449BYOL
Semantic Web Programming Matthew Fisher, Progeny Systems; John Hebeler, BBN Technologies
LAB-5542
Jersey: Building RESTful Web Services on the Java Platform Srinivas Bhimisetty , Sun Microsystems Inc.; Martin Matula, Sun Microsystems Inc
LAB-5531BYOL
Build and Host Your Killer Facebook App with zembly Paul Anderson, Anderson Software Group, Inc.; Gail Anderson, Anderson Software Group, Inc.
LAB-6770
JavaFX Technology in Your Back Pocket: Developing Content with JavaFX Mobile Technology Angela Caicedo, Sun Microsystems, Inc.; Mauricio Leal, Sun
LAB-5529BYOL
Project Fortress Programming Lab, or "You Too Can Write Concurrent Programs with Minimal Effort" David Chase, Sun Microsystems, Inc.; Christine Flood, Sun Microsystems
LAB-5546
Developing Composite SIP Applications with Custom Application Routers Jagadesh Munta, Sun Microsystems, Inc.; Sudhir Prabhu, Sun Microsystems India Pvt Ltd
LAB-5564BYOL
PetClinic in the Clouds: Scaling a Classic Enterprise Application Michal Bachorik, Sun Microsystems, Inc.; Shay Hassidim, GigaSpaces; Daniel Templeton, Sun Microsystems, Inc.
LAB-5572
Building OSGi Plug-Ins for the GlassFish v3 Application Server Administration Console Anissa Lam, Sun Microsystems, Inc.; Ken Paulsen, Sun Microsystems, Inc.
LAB-5556BYOL
Complex Event Processing Using Java Technology Bing Lu, Sun Microsystems, Inc.; Sang Shin, Sun Microsystems, Inc.
LAB-6771
Building RIA Dojo and JavaFX Pet Catalog Clients for MySQL backed RESTful Web Services Carol McDonald, Sun Microsystems, Inc.; Sridhar Reddy, Java Consultant
LAB-5539BYOL
Touch Your Application! Building Slick, Touch-Enabled UIs for Java Platform, Micro Edition Karol Harezlak, Sun Microsystems; Lukas Hasik, Sun Microsystems, Inc.; Brad Schmidt, Sun Microsystems, Inc.
LAB-5558
Developing Revolutionary Web Applications, Using Ajax Push or Comet Justin Bolter, Sun Microsystems, Inc.; Doris Chen, Sun Microsystems, Inc.; Carol McDonald, Sun Microsystems, Inc.
LAB-5502BYOL
Your First Mobile Game Andrew Korostelev, Sun Microsystems, Inc.; Ivan Sidorkin, Sun Microsystems
LAB-5960
Storing Data in the Cloud
(Not Available for Download)
Craig Hubbard, Sun Microsystems, Inc.; Chris Kutler, Sun Microsystems, Inc.; Craig McClanahan, Sun Microsystems, Inc.
LAB-5532BYOL
Breathe in JavaFX Technology Fabiola Gallegos Rios, Sun Microsystems, Inc.; Michal Skvor, Sun Microsystems, Inc.
LAB-5573
Leveraging JavaScript Toolkits for End-to-End Connectivity in Web Applications Troy Giunipero, Sun Microsystems Inc.; Geertjan Wielenga, Sun Microsystems, Inc.
LAB-5557BYOL
Build a RESTful Client-Server Rich Internet Application with JavaFX Technology and Jersey (JSR 310) David Delabassee, Sun Microsystems, Inc.; Sebastien Stormacq, Sun Microsystems, Inc.
LAB-6727
Web Application Security with OpenSSO: From Simple Log-In to Single Sign-On to Federation Pat Patterson, Sun Microsystems, Inc.; Baby Sunil, Sun Microsystems, Inc.; Himanshu Vijay, Sun Microsystems, Inc.
LAB-5533BYOL
Java Technology Strikes Back on the Client Side: Easier Development and Deployment Jason Huang, Sun Microsystems, Inc.; Joey Shen, Sun Microsystems, Inc.
LAB-5540
Save Time <97> Build Desktop Applications Quickly with the NetBeans Platform
LAB-5532
Breathe in JavaFX Technology Fabiola Gallegos Rios, Sun Microsystems, Inc.; Michal Skvor, Sun Microsystems, Inc.
LAB-5569
ODFDOM: Changing ODF Documents, Using the New Open-Source Multitiered API Steffen Grund, Sun Microsystems, Inc.; Svante Schubert, Sun Microsystems Inc.
LAB-6808BYOL
Working with PDF and Java Technology Chet Haase, Adobe; Duane Nickull, Adobe Systems
LAB-5503
Combine Btrace and DTrace to Diagnose Complex Java Technology-Based Application Problems Peter Karlsson, Sun Microsystems, Inc.; Sang Shin, Sun Microsystems, Inc.
LAB-5564BYOL
PetClinic in the Clouds: Scaling a Classic Enterprise Application Michal Bachorik, Sun Microsystems, Inc.; Shay Hassidim, GigaSpaces; Daniel Templeton, Sun Microsystems, Inc.

Thanks for reading!

At the JavaOne show last month in San Francisco,  I had the pleasure of meeting some of Sun's very talented Campus Ambassadors - student interns who promote Sun's open source software on university campuses around the world. 

I was sincerely impressed by each and every Campus Ambassador I met.  Not only do these students have their regular academic activities to focus on  - but they also are adept at using Sun software and lead OSUM clubs on-campus and in their communities.

And, as you might expect, they are very proficient in just about every cool new communications tool you can think of - tweeting, flickering, and blogging (oh my!) about their experiences along the way. 

For most of the Ambassadors who traveled to San Francisco it was their first time in the United States - and their enthusiasm and energy was infectious.   Check out this trip report from Angad Singh, one of the Campus Ambassadors from India, for a sense of what the whole experience was like for he and his fellow Ambassador friends from India, Korea, Brazil, and Chile.

Overall, Sun welcomed nearly 1000 students to the both the JavaOne and CommunityOne events this year.  Check out the complete line-up of student videos and stories HERE

Thanks to all the talented Campus Ambassadors I met who shared their global experiences, passion for learning, social media savvy, and laughter with me.  I have no doubt you will go on to do great things!

Hyejin and Laura At JavaOne

Here's a pic of me and Hyejin Park
Sun Campus Ambassador from Korea.


One of the cool things I discovered at JavaOne this year was a framework for building rich internet applications (RIAs) called Vaadin. Besides being a very nice tool, they also had the good idea of giving away printed copies of their free book at the booth. Since my laptop battery time is limited, having a hard copy to read gave me plenty of time to learn about it between sessions, while waiting to meet people, while sitting at the bar, etc.

Vaadin is a web application framework that lets you write Java code to create your web pages. No JSP, no HTML (unless you want to), no XML, etc., and only one jar file needed for the framework. Somewhere in my reading or while talking to one of the Vaddin people, I came across the one exception to the "no xml" statement: Vaadin is still a Java EE application, so of course there is still a web.xml file needed to deploy an application. My first thought was, "We can fix that, right?" So for no particular reason, here is how to create a rich internet application with no XML files at all using Vaadin and Servlet 3.0 inside GlassFish v3 Preview.

To get rid of the web.xml file, use the @WebServlet annotation on your servlet class. Vaddin is open-source, so of course you could add it to the class and rebuild it. But let's do the proper thing and subclass the servlet. I've put it in the same package as the parent in case it's looking for any resources relative to the package. Here is the entire class:

package com.vaadin.terminal.gwt.server;

import javax.servlet.annotation.WebInitParam;
import javax.servlet.annotation.WebServlet;

@SuppressWarnings("serial")
@WebServlet(
    name = "Noxml Application",
    initParams = {
        @WebInitParam(name = "application",
            value = "com.example.noxml.NoxmlApplication")
        },
    urlPatterns = { "/*" }
)
public class EE6ApplicationServlet extends ApplicationServlet {
    // nothing here
}

Pretty simple stuff. Thank you Servlet 3.0. Now, to give you a sense of what Vaadin is like and to show that this really works, here is the application I wrote. It simply adds a couple blocks of text to the web page and a button. Clicking the button switches the text between the two lines (called "labels" in Vaadin). Here is the entire class:

package com.example.noxml;

import com.vaadin.Application;
import com.vaadin.ui.*;
import com.vaadin.ui.Button.ClickEvent;

@SuppressWarnings("serial")
public class NoxmlApplication extends Application {	
    /*
     * A very simple application with two labels and a button.
     * To keep this short, I've added an anonymous listener
     * for the button that calls my very exciting swap method.
     */
    @Override
    public void init() {
        // create components
        Window mainWindow = new Window("Noxml Application");
        final Label label1 = new Label("Hello RIA.");
        final Label label2 = new Label("Goodbye XML.");
        Button button = new Button("Very Exciting Button",
            new Button.ClickListener() {
                public void buttonClick(ClickEvent event) {
                    swapText(label1, label2);
                }
            });

        // add 'em
        mainWindow.addComponent(label1);
        mainWindow.addComponent(button);
        mainWindow.addComponent(label2);

        // add window to the application
        setMainWindow(mainWindow);
    }

    // where is my tuple unpacking?
    private void swapText(Label l1, Label l2) {
        Object temp = l1.getValue(); // a string in this case
        l1.setValue(l2.getValue());
        l2.setValue(temp);
    }
}

That's all there is to it. My entire web application contains only three classes (one is the anonymous inner class in NoxmlApplication), a single jar file in the lib directory, and no xml files. It's not much to look at since I kept it simple, but all of the Ajax requests/responses are taken care of for me and I just wrote a little Java code. Speaking of not much to look at, here is a very exciting screen cast of the web application in action.

I've included the Vaadin links above. If you'd like to try out GlassFish v3 and the great developer features of Java EE 6, here are some instructions on setting up the application server with NetBeans and with Eclipse (the latter only shows v3 Prelude, but you can use a v3 server as well). For more on creating a servlet using the 2.0 annotations, see Arun's blog. Have fun.

Una entrevista hecha por Felipe Cerda a Todd Fast, arquitecto y director de la tecnología  Zembly.

Todd explica que es Zembly:


 Les dejo el link de OSUM donde se encuentran webinars de Zembly.


Even though it has officially been a month since JavaOne 2009, their is still a lot of buzz surrounding the event and the student experience.

Avinash Joshi, a Sun Campus Ambassador at Amrita Vishwa Vidyapeetham, Kerala, attended JavaOne and recently blogged about his time at the conference.  He said: "What a learning experience...! Learning never stops." 

That definitely seemed to be the case as developers young and old came to share and learn at JavaOne. Hopefully the tradition of JavaOne will continue next year -- with the same generous offer of free entrance to students!

You can check out all the details of Avinash's time at JavaOne as well as his nearly a dozen links to photos, videos, and more.

And, just to make your day, here is a short 2-minute clip that gives a glimpse into the student experience at JavaOne:

); }" s_getdomindex="function () { return eval(instance.CallFunction("<invoke name=\""+name+"\" returntype=\"javascript\">" + __flash__argumentsToXML(arguments,0) + "</invoke>";)); }" s_gettrackclickmap="function () { return eval(instance.CallFunction("<invoke name=\""+name+"\" returntype=\"javascript\">" + __flash__argumentsToXML(arguments,0) + "</invoke>";)); }" s_getaccount="function () { return eval(instance.CallFunction("<invoke name=\""+name+"\" returntype=\"javascript\">" + __flash__argumentsToXML(arguments,0) + "</invoke>";)); }" s_getpagename="function () { return eval(instance.CallFunction("<invoke name=\""+name+"\" returntype=\"javascript\">" + __flash__argumentsToXML(arguments,0) + "</invoke>";)); }" s_getpageurl="function () { return eval(instance.CallFunction("<invoke name=\""+name+"\" returntype=\"javascript\">" + __flash__argumentsToXML(arguments,0) + "</invoke>";)); }" s_getmovieid="function () { return eval(instance.CallFunction("<invoke name=\""+name+"\" returntype=\"javascript\">" + __flash__argumentsToXML(arguments,0) + "</invoke>";)); }" s_getversion="function () { return eval(instance.CallFunction("<invoke name=\""+name+"\" returntype=\"javascript\">" + __flash__argumentsToXML(arguments,0) + "</invoke>";)); }" s_getcharset="function () { return eval(instance.CallFunction("<invoke name=\""+name+"\" returntype=\"javascript\">" + __flash__argumentsToXML(arguments,0) + "</invoke>";)); }" s_getswfurl="function () { return eval(instance.CallFunction("<invoke name=\""+name+"\" returntype=\"javascript\">" + __flash__argumentsToXML(arguments,0) + "</invoke>";)); }">

DukeAz első félév zárásaként, egyébként pedig a Sun 17 éves Kapás utcai jelenlétének lezárásaként is megtartottuk a nyári szabadságok előtti utolsó JavaCafénkat. A helyszín a régi volt, az időpont és a téma egy kicsit szokatlan, ennek ellenére a közel 60 résztvevő hasznos és talán felejthetetlen rendezvényen vehetett részt.

A meghirdetett téma az idei JavaOne konferenciáról szóló élménybeszámoló volt Momó és Géza tolmácsolásában, de a Sun költözése ürügyén egy nagy halom marketing ajándék és néhány SunRay vékonykliens is kisorsolásra került.

A konkrét tartalomba most nem mennék bele, hiszen leginkább élmények megosztása volt a cél, az említett szakmai anyagokat pedig sokkal teljesebben el lehet érni a rendezvény honlapjáról. A lényeg, hogy a levetített videók teljes terjedelemben (sok egyéb videóval együtt) a konferencia honlapjáról, az elhangzott prezentációk diái és a hands-on labok a fejlesztői oldalról letölthetőek.

Géza élménybeszámolója alatt elég sokat foglalkozott a közelmúltban jelentősen megújult JavaFX-el. A JavaCafén is bemutatott JavaFX példák elérhetők a JavaFX weboldaláról illetve itt jegyzem meg, hogy a sokak által kedvelt és méltán népszerű Java with Passions oldal folyamatosan egészül ki (illetve frissül) a JavaFX tanfolyamokkal is. Aki most ismerkedik a technológiával, annak mindenképpen hasznos lehet végiglapozni a site-on elérhető ingyenes tanfolyamokat.

Végül, de nem utolsósorban: Ősszel is lesz JavaCafé (legalábbis ha rajtunk múlik), de már biztos hogy nem a Kapás utcában. A pontos helyszínről és időpontról majd tájékoztatunk benneteket!



If you missed this year's JavaOne conference or want to get details of sessions you attended, you can review the slides from technical sessions on the JavaOne Online site.

Voici les présentations faites à la troisième édition de l'Aquarium Paris :
Versions PDF.
• Les mêmes sur slideshare.net

Merci à tous les participants et en particulier à Jacky de Cap Gemini pour son retour sur GlassFish et son déplacement de Lille.
Pour ceux déçus par l'absence d'une présentation dédiée à JavaFX, je vous invite à vous rendre au ParisJUG ce 7 Juillet ou il en sera question en détails.

Attending JavaOne 2009 Conference at San Francisco was a wonderful, learning experience. As a part of Sun Microsystems's Campus Ambassador Program, they nominated five CA's from all over the world who would get an opportunity to attend the JavaOne 2009 Conference, fully sponsored by them. Let me now share my JavaOne 2009 experiences with you all.

Let me start with the day when we reached San Francisco. Three of us – Ashwin Bhat from Mangalore, Angad from Delhi (Both of them are Tech Leads) and I – landed at San Francisco on Sunday, the May 31 afternoon, It was one of the "most awaited moments" of my life. When I reached the hotel lobby (Hotel Nikko, where we were put up), Gary was there to receive us. He had told us that we would meet-up for dinner at 6 p.m. Besides me, other three CAs, Tom, Hyejin, Felipe had also checked in at the hotel around the same time. After the dinner, he told Tom, Hyejin, Felipe and Me that all four of us would be on stage with David Douglas during his Keynote session the next day! Wow! This news was thrilling…. To be in front of 3000 audience (delegates) was unimaginable!

On June 1st (Day-1), we were ready with our "two sentences" that we were supposed to answer to David on the Stage. In the course of his Keynote Address, David invited all four of us (CAs) to the Stage. After welcoming me to JavaOne, David asked, "What OSUM looks like in India". That was simple. I answered, "As Campus Ambassadors, we have set up OSUM Clubs in various Universities in India, where we conduct Tech Demos, Contests for the Student Communities. It’s all about promoting Free and OpenSource Softwares to the Students. For more details, please visit osum.sun.com"

It was truly amazing to be on the Stage - not as speakers but to be rewarded :). I was extremely delighted when I looked back on the Stage…. Our University name was up on the big screen! Amrita Vishwa Vidyapeetham declared its presence, on the world-map!!

JavaOne was a huge convention. It was Java, Java and Java, all the way. Everywhere there was Java in some or the other form. The Pavilion opened up at around 3 p.m. When I went in, there were a number of stalls/lounge put up by different companies, individuals, or anyone who use Java in some or other form. I was given the responsibility of manning the "OSUM Lounge" - a stall/lounge for students to come in and learn or join the OSUM Community. The entry to JavaOne Conference was free for the students so we had many coming in! It was nice to meet a lot of students and exchange the thoughts. At the OSUM Lounge, we had a "Scavenger Hunt" where we gave out small cards to the students with a list of "must attend" technical session, lectures beneficial to students. To verify they attend the session, a person from the stall would stand in front of the hall for stamping. And at the end of the day, if a student has a minimum of 4 stamps, they are entitled for the Raffle where "IPod Touch" or "SunSpot" were given out! This helped students participate efficiently in the JavaOne event by providing the schedules ahead of time. Fun while you learn….!

Apart from OSUM Lounge, we had the OpenSolaris Install Lounge, Sun Cloud, Zembly, Intel, Sony, BlackBerry, JavaFX and many other stalls. There was also an interesting stall titled "Create Your Custom T-Shirt". When you give a caption like, for example, "Java + Community = Powerful", you will have this printed on your Java T-Shirt. It was fun!

The 2009 JavaOne Conference opened on Tuesday (June 2, 2009) morning with the Sun General Session. Hosted by the Sun Microsystems CEO Jonathan Schwartz, the session ended with an appearance by Sun Chairman and Co-founder Scott McNealy, who introduced surprise guest Larry Ellison, Co-founder and CEO of Oracle Corporation. Oracle's acquisition of Sun Microsystems, announced in April, is expected to be finalized in the next few months.

Schwartz opened the 14th JavaOne conference with a trip down the memory lane. It was fabulous. My day went in interviewing people - for JavaOne Minutes, asking them about their experience at JavaOne and running around in the Pavilion grabbing my "GOODIES". I got loads of them. I also had an opportunity of talking at an Exclusive JavaOne Radio Coverage with Lin Lee, Vice President Global Communities, which was streamed online.

My next best moment at the Sun Party was when I got a rare opportunity of standing with James Gosling, the Founder of Java for a photograph. It was great; I am going to preserve this photograph life-long! A real memoir, of course!!

The next day, I went on attending the sessions, manning the OSUM Lounge, running around and so on. The best part of the day was when we CAs were called for a video shooting as part of The Global Communities Teams Success Stories, which works directly with Influencer Worldwide who shape how billions of people use and will be impacted by technology. After that, we had a dinner party with Lin Lee and some more Sun Employees who help with the Student Communities around the world. Here, Gary surprised us (Tom, Hyejin, Felipe and me) by presenting a very nice glass cube memento to each one of us. It was really awesome with our name and "Campus Ambassador Program - Outstanding Results Award" carved on that. Thank you Sun!

Thursday was usual - attending sessions. In the second half, Gary took us all - Angad, Ashwin, Kevin, Felipe, Tom, Hyejin, David Botterill and me - on a San Francisco tour. It was again a great one. Thanks a bunch Gary!

On the last day, James Gosling's annual whirlwind Toy Show at the JavaOne conference displayed not only technical excellence and innovation, but also excellence in generating technology that serves humanity. He gave out the "Duke's Choice Award" - The award for the most innovative concept / idea done using Java. The event was well attended, and the audience was enthusiastic as ever.

What a learning experience….! Learning never stops. In all, it was a great opportunity that I got from Sun. Sun Microsystems is an amazing Organization. I am so much influenced by the people and the technology @ Sun that it’s hard to leave them all. I just cant complete without thanking (in no particular order) - Lin Lee, Gary Serda, Ganesh, Vijaya Santosh, Ajay, Rajesh, Kumar Abhishek, David (who was with us all the time entertaining us), Pratibha (Travel Desk), and Veena Damodaran (sorry if I have missed someone). I am greatly indebted to my College for creating this opportunity for me and for the support. In particular, I want to thank my professor, mentor, guide and friend Vipin Pavithran Sir who was the source for me to reach up to this level. He inspired me; ignited my thoughts and took me to the right direction. Finally, thanks to my parents, for their encouragement and support in my endeavors. Thank you everyone.

Here are some Links:

Photos
1. http://avinashjoshi.co.in/my-image-gallery/javaone-2009/
2. http://avinashjoshi.co.in/my-image-gallery/photos-of-me/
3. http://avinashjoshi.co.in/my-image-gallery/at-san-francisco/

Video on my blog
http://avinashjoshi.co.in/2009/06/03/me-on-the-stage-during-the-j1-openning-session/

Welcome to CommunityOne, General Session, June 1, 2009
http://link.brightcove.com/services/player/bcpid22207469001?bclid=24767779001&bctid=24939845001

Exclusive JavaOne Radio Coverage with Lin Lee (Vice President, Global Communities, Sun  Microsystems)
http://www.blogtalkradio.com/JavaOne/2009/06/02/Sun-at-Java-One-Live-Jun-2-2009-511PM

Video shooting as a part of The Global Communities teams success stories
http://www.sun.com/aboutsun/globalcommunities/vid_gallery.xml
http://www.sun.com/aboutsun/globalcommunities/

All Connected Students Media
http://slx.sun.com/media/6245

Watch Welcome to CommunityOne, General Session, June 1, 2009
http://developers.sun.com/events/communityone/2009/west/video_replays.jsp
http://developers.sun.com/events/communityone/2009/west/

Here's a quick video showing student participation at JavaOne - I've said this before and I'll say this again - where was all of this when I was a student:

Here's another quick video with Nicole Yankelovich talking about Project Wonderland, it's a good introduction to Project Wonderland, and for students, some words about virtual worlds as a day job:

And if you are interested in Project Wonderland, there's a lot of recent activity there, you might also want to check out:

 

Here's a quick 2 minute clip showing student participation at JavaOne:

Here's another quick one with Nicole Yankelovich talking about Project Wonderland: