Why deal with complexity? Throw it over the wall! Let ShrinkWrap and Arquillian handle it.

That's the message Andrew Rubinger (ALR) and I took to JavaOne 2010. We lived it too, keeping a constant stream of discussion going about how to reduce the complexity of integration testing. Then, we bundled up all that mental complexity and threw it over the Pacific Coast during our bike ride to the Cliff House and over the Golden Gate Bay Bridge.

alr-and-dan-cover-scaled.jpg

The first morning, I woke up (after several attempts) in a panic because I thought I missed my first JBoss booth mini-session. I even sent an e-mail to the booth coordinator apologizing for running out of steam and not being able to make it. As it turns out, my calendar was playing musical time zones on me and the talk wasn't for another three hours. Saved. In part.

ejb-book-scaled2.jpgAfter two hours of hacking up slides, ALR and I bolted out of the hotel and across the street to the Hilton, where he proceeded to guide me through the labyrinth that housed the partner pavilion. On our way through, we had an accidental encounter with the JavaOne bookstore, so we stopped in to see ALR's EJB 3.1 book in print.

He flipped it over to show me my quote on the back.

ejb-quote-border.png

After our pitstop, we zigzagged our way to the partner pavilion entrance just minutes before my talk would start. The pavilion bouncer barked "Show your passes." I tried to tell her that I hadn't had a chance to pick it up yet and I was presenting in 5 minutes. She didn't want to hear it. She waved her radio like it were a gun, as if she were guarding the entrance to a sheik's lair. "No pass, no access." Round three.

I reentered the labyrinth to find the registration desk. There, I got knighted an official speaker and retraced my steps to the partner pavilion. I got plugged in, wired up and was on camera in under a minute to give my Seam: State of the Union address.

And that's how JavaOne began for me.

As soon as I tore down, ALR was geared up, ready to show booth passersby how to achieve rapid enterprise development by throwing test complexity over the wall. This would be one of two warm-up sessions for our main event at JavaOne.

alr-booth-talk-scaled.jpg

Once I had a chance to step back and look at the booth, I realized there was a surprise waiting for me. Arquillian has a spot on the booth wall.

arquillian-booth-wall-scaled.jpg

It also had a seat front and center in the info stand.

arquillian-info-stand.jpg

Clearly we are making some progress getting our message across. And we're just getting started.

We hung out at the booth the rest of the day, continuing to talk to conference goers about Arquillian and other geek talk. We were excited to here that Arquillian got mentioned in at least one other talk at JavaOne. Reza Rahman and Debu Panda, co-authors of EJB in Action, presented their talk "Testing Java EE 6 Applications: Tools and Techniques" in front of a full house, in which they cited Arquillian as:

An ideal cross-vendor CDI/EJB 3.1 testing tool

You can check out the slides for that talk or browse the demo source code.

I also had a long conversation with Hans and Adam of the Gradle team. I love those guys, and their passion for pragmatic build automation.

That night we decided to have a JBoss dinner at The House of Prime Rib on a recommendation from Jay Balunas, who saw the restaurant featured on the food network. To that, I replied, "You had me at steak." But we had to earn it. Being the athletic, eager type, ALR and I walked 20 blocks, mostly uphill, to the restaurant.

That turned out to be the fasted meal of perfection I've ever had because I still had to make the CDI BOF at the Moscone Center. I walked in 1 minute late to the greeting "So glad you could show up!"

license_asl-on.pngThe CDI BOF went great. I highlighted our commitment to freeing Java standards by putting the CDI TCK and RI (Weld) under the Apache License. I also explained how Arquillian was born out of the TCK and how important it will be to enabling rapid development with Java EE, or at the very least make it easily testable.

I followed David Blevins and Adam Bien to the Thirsty Bear, my only appearance there for the week. (There were very few session in Moscone, so Thirsty Bear was mostly neglected). I got a chance to chat 1-on-1 with Adam Bien, making sure to extend a personal invitation to check out Arquillian. I also enjoyed his many development horror stories.

The story I liked the best was about the architect who wouldn't let him deploy a JSF application that used Facelets without pre-compiling the JSPs. Adam tried to explain that there were no JSPs to pre-compile, but it was wasted breath. So he just added a token JSP and the issue was settled. He cracks me up.

The next day seemed to go quickly. I gave my first JavaOne presentation, CDI, Weld and the future of Seam to a full room. The most important part. I finished on time. Thank goodness.

javaone2010_welcome_poster-scaled3.jpgThat night, we launched our party into the cloud at the JBoss gathering. It was hosted at the historic "Slide" adjacent to Union Square. During Prohibition, the site was called "The Cable Car Theater" and below was a "restaurant" called "Cafe Dans" - but Cafe Dans was not a restaurant. It was a speakeasy that could be accessed only by a savvy few who pushed a secret wall that lead to a playground slide, and a hidden subculture of nightlife. Lot's of community members found the secret door...so it wasn't that secret after all.

What else would you expect from those rebellious JBoss characters? Survey said, "Just like the awesome JBoss parties of old." Glad to see us returning to their roots in an uncertain time.

The next day, ALR and I were back at the booth again, me speaking about Seam and ALR throwing more complexity over the booth wall. Then, we went back to the room to prepare Ike for his JavaOne debut. Throwing complexity over the wall: Rapid development for enterprise Java. Slides, check. Demo, check. This was it.

We got in the room, same routine. After fiddling with displays, workspaces and mics, we looked up to see standing room only attendance. Sweet. It's on. Back and forth ALR and I went chopping down complexity one slide at a time. The demos mostly cooperated. The applause at the end, huge. Lots of interest, lots of excitement. All in a days work

Next up was the JCP awards ceremony. Summary, we didn't win. Moving on.

Everyone was headed over to Treasure Island for the blockbuster concert that was going on there. In the registration rush, I managed to not get issued a ticket. But, thanks to Matthias & friends, I got a "community edition" pass. When we arrived, we learned just how much colorful light a stadium size LED puts out.

big-led-screen-scaled.jpg

A conference, or a festival?

will-i-am-dj-scaled3.jpgWe watched Fergie Pump It and will.i.am spin the old tunes atop a pillar of King Ellison during the Black Eyed Peas performance. We tried to squeeze our way somewhere near the stage. Not a chance. The place was chock full of geeks and plenty of tag-alongs.

In a crowd of nearly 25,000, one guy tapped me on the shoulder and said,

Arquillian looks really cool. I'll have to check it out. You said you'd demo it in a bar. How about at at concert?

What a character! I would have done it too, except I checked my bag.

Our group hung around for Steve Miller, who brought funk, blues, classics and an overall killer performance.

steve-miller-scaled.jpg

We tried to sneak back into downtown for last call, but we were too late. But when I got back to the hotel, ALR greeted me with a bottle of Johnny Walker, Black Label. Hero.

bike-ride-start-scaled3.jpgTech weary, ALR and I decided to skip the last day and instead headed out to bike the Golden Gate Bridge. I was snapping pics with my phone the whole time, despite not having been on a bike in years. I'm crazy like that.

On the recommendation of ALR's friend, we took a detour to Ocean Beach...

ocean-beach-scaled4.jpg

then up to the famous Cliff House for some desperately needed lunch (and for me, breakfast).

cliff-house-alr-dan-scaled.jpg

Despite popular belief, developers do stop to smell the roses occasionally.

roses-scaled.jpg

But we have to be manly too. So we took a peak at an overlook with views of "The Rock" and tried to look really large and in charge for our cover picture.

panoramic-rock-scaled-horizon.jpg

Then it was off to to the bridge, at last. We somehow managed to find the right path, despite vague instructions from the guy at the bike store to "follow the service road to the bridge". Yeah, more like dirt path with random staircases.

golden-gate-serpentine-rock-scaled2.jpggolden-gate-bridge-scaled2.jpg
to-golden-gate-bridge-scaled2.jpgover-bridge-scaled2.jpg

We didn't want to miss the last night out on the town, so we hoped the ferry back from Sausalito and caught the sunset on the way into harbor.

sunset-scaled.jpg

We had one last covert meeting with colleagues in a basement sushi restaurant (aren't those the best kind) about standards and leadership. We then bid farewell. After more than two weeks on the road, I was headed home at last! On the flight home I wrote the lyrics for the Hudson Blues and implemented a Spring container for Arquillian. Crankin' it out.

cliff-house-alr-scaled.jpg

The next time you are writing integration tests for your enterprise Java application, take advice from ALR:

Throw complexity over the wall and lean on Arquillian and ShrinkWrap.

Hudson's down, and it's singin' the blues!

 

To the tune of Everything Is Broken by Bob Dylan.

 

everything-is-broken.png

Hudson blues

 

Broken methods, broken tests
Broken threads, broken specs
Broken asserts, broken source
QA rantin' until they're hoarse
Ain't no use patchin'
Ain't no use mergin'
Every test is broken

 

Broken pages, broken files
Broken urls, broken compiles
Broken markup, broken tags
Hudson's filled with broken builds

 

Broken apps never meant to be tested
Every test is broken

 

Seem like every time you stop and turn around
Another failure report gets emailed out

 

Broken proxies, broken beans
Broken runtimes, broken teams
Broken archives, broken lifecycles
Broken deployments on broken servers

 

Take a deep breath, deal with the crashin'
Every test is broken

 

Everytime you leave and go off someplace
The app falls to pieces in my face

 

Broken hands on broken keyboards
Broken IDEs with broken classes
Broken pipes, broken tools
People bending broken rules
JUnit howling, surefire croakin'
Every test is broken

 

Fix those tests with Arquillian!

Filter Blog

By date:
By tag: