>
> Hey Daniel, can you attach the outline please ?
>
> Oh, maybe it got stripped out by the mailing server. Can you upload it
> somewhere ?
>
My apologies. I forgot that Apache mailing-lists don't allow attachments.
I've included the text-form outline below. If y'all would like, I can
upload the PDF somewhere as well (note: time annotations are a work in
progress).
Daniel
=======================================
Profict Spring Camp 2009 Buildr Outline
=======================================
One thing I'm not covering here is sub-projects. I'd like to, but they
don't
seem to fit anywhere. I also don't cover ``:war`` packaging or Jetty
support,
which I should really touch on.
Session One
===========
I intend to make the do two super-points (**What is Apache Buildr** and
**Mini-History**) using "traditional" slides, but everything else will be
very
hands-on.
* |5m| What is Apache Buildr?
* Maven 2 as it should have been
* Clean, declarative internal DSL
* Dead-easy customization
* Minimal kernel; *everything* is an extension
* Custom tasks
* Custom build structure
* Speed (you don't realize how *slow* Maven 2 is until you've tried
Buildr)
* |5m| Mini-History
* Why another build system?
* Rake is a good start, but not a good end
* Maven 2 is bloated, confusing and clumsy
* Assaf scratched his own itch
* |5m| Installing Buildr
* ``gem install buildr`` (we'll be using MRI for the hands-on)
* New in 1.4: All-in-One Buildr (untar and go)
* First steps
* |5m| Setting up the project
* Adding dependencies
* Direct (commons-cli)
* Transitive (wicket)
* Packaging
* Javadoc (using the ``doc``) task
* IDE Metadata
* Transition from Ant
* Demonstrate custom directory structure
* Transition from Maven
* *Almost* drop-in replacement
* Testing
* JUnit
* TestNG
* Cobertura
Session Two
===========
* Continuous compilation
* Interactive Shell
* IRB
* Clojure REPL
* Scala
* JRebel
* Demo with ``cc`` (just because it's cool)
* Scala/Groovy support
* Zero-step configuration
* Joint compilation
* Documentation support
* Test frameworks
* Specs + ScalaCheck
* ScalaTest
* Custom tasks
* Generating documentation (ReST => PDF)
* A ``run`` task
* ``local_task``
* JFlex
* "Proper" extensions
* Onward
* Clojure support
* Conclusion
.. |5m| replace:: (**5m**)