I was Paul Gonsalves

Posted by Nick Sieger Sat, 10 Apr 2010 16:40:00 GMT

I was Paul Gonsalves in the shower this morning. Most people sing in the shower, but when I get going I play air sax. For a fleeting moment I felt like I was blowing with the Ellington band at Newport in 1956. The way obscure things flow in and out of consciousness is a weird thing.

If you haven’t checked out the 1956 Ellington at Newport live recording of Diminuendo and Crescendo in Blue, you really should. I hadn’t heard the recording for years until my lovely wife put it on a great jazz mix playlist that we listened to on the road last weekend. The recording is completely infectious; my foot was tapping within a few moments of the start of the song. The Newport concert is infamous in Jazz lore -- Gonsalves blew 27 choruses and put the crowd into a frenzy. The great thing about the recording, even though it’s a little bit scratchy, is that you can hear and feel the energy of the crowd coming through. Although it’s probably a bit hyperbolic, some Jazz writers claim that Gonsalves single-handedly revived Ellington’s career that day.

Why was my mind in that state at that moment? I wish I knew. The mystery of heightened awareness that is flow is an elusive quality. At lunch at RubyNation yesterday a discussion arose of just how rare it is to attain that awareness. Glenn Vanderburg described how only a few times in his double-digit year career as a conference speaker has he felt like he has had that hyper-aware state, where he was receiving feedback from the crowd during a talk and able to adjust mid-stream and feel completely on. The difference of timing and how that affects an audience’s response is striking. The difference between being on and having a joke or a point fall flat is incredibly sensitive, as any performance artist will tell you. Just to think about it gives me a newfound respect for stand-up comedians, where timing is so crucial.

I myself haven’t quite felt that heightened state while delivering a conference talk, but I have felt it while playing jazz. Still, it has happened only once or twice in my life. If you’ve felt that flow, you know rare it is and how you absolutely cannot manufacture it at will. The feeling is such a high that I suspect it leaves artists, performers, and creative types feeling unfulfilled and half-desperately searching for it for the rest of their careers.

I’m not very well read in this area, but I’d like to learn more. Any suggestions for reading material?

I tend to stew on these things for a while but fail to put together a coherent, digestible conclusion, I thought I’d at least write something up, get it out there, and start a conversation. When have you felt that flow, and have you noticed how you get into it?

Other tangential thoughts swirling around in my head:

  • Is flow related to a search for perfection? Instead, should we coach ourselves to cope with life’s imperfections? Dave Thomas gave his “Ruby sucks” talk last night at RubyNation and eloquently made the point that Ruby is not perfect, and that’s what makes it great. I’ve struggled with not settling for less than perfect and it ends up usually being more detrimental to my production than anything else.
  • Why Americans Don’t Like Jazz. Have we lost an appreciation for things we can’t put to words?

Tags ,  | no comments

Warbler 1.0

Posted by Nick Sieger Tue, 06 Apr 2010 17:11:17 GMT

It’s past due time to “carry the 1” over and roll over to a 1.0 version of Warbler. This time around, the changes in the codebase are significant enough that I hope you’ll find many past usability issues resolved.

Assemble in-place

The biggest change is that Warbler now creates a war file in place, without an intermediate copy-to-assemble step. Warbler does this using the rubyzip gem, or alternatively using a small Java extension when run under JRuby 1.5 or greater. This should reduce processing and confusion due to the extra copy, which can sometimes get out of sync. The downside is that Warbler cannot be used easily for exploded directory development, though you can always create the war file and unpack it to a staging area.

Simpler extension

Warbler also underwent an internal refactoring that should make extending it much easier. Here’s how you add Warbler tasks to your Rakefile:

require 'warbler'
Warbler::Task.new

In versions prior to 1.0, if there were deploy steps that created new files that didn’t exist at the time the Rakefile was loaded (such as what the asset:packager:build_all task does in the asset_packager plugin), it was tricky to get Warbler to recognize them. No longer -- now the expected Rake configuration should do the trick.

require 'warbler'
Warbler::Task.new
task :war => "asset:packager:build_all"

Bundler support

Another exciting development in the Ruby development world is Bundler, and Warbler 1.0 supports packaging your bundled gems with it. Warbler even creates a .bundle/environment.rb file inside the war file that loads the gems from relative paths to where Warbler puts the gems in the war file.

More configuration

There are a number of new configuration options, so check out the new configuration and see if any are useful to you.

  • config.gem_home allows you to control the path inside the war file where Warbler will pack your application’s gems. For use with older versions of Bundler or other custom gem vendoring schemes.
  • config.webinf_files is a file list that can contain multiple files, XML or otherwise. If the files named in this list have .erb extensions, they will be expanded in the same manner as web.xml.

Rails 3 support

JRuby-Rack, the servlet adapter component bundled by Warbler, also received a version bump, and there are no longer any Java libraries included in the Warbler gem, so the two components can be versioned independently. With the release of both Warbler 1.0 and JRuby-Rack 0.9.7, Rails 3 applications can be warbled and deployed seamlessly, often without any additional configuration.

Please continue to send feedback to the JRuby mailing list or the Warbler bug tracker. Enjoy!

Tags ,  | 2 comments