You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@buildr.apache.org by Daniel Spiewak <dj...@gmail.com> on 2010/03/18 17:09:59 UTC

Tentative Outline for Profict Presentation

As promised, here is a tentative outline of the talk I'm going to give at
Profict Spring Camp 2010.  The talk is split into two, 40 minute sessions.
My concept is to spend the first session introducing Buildr and getting
everyone comfortable with its basic syntax and concepts, as well as some of
its more fundamental Java support.  Session two is where I want to dive into
the things which really differentiate Buildr from other tools (bear in mind
that the other two talks at the conference are about Maven 3 and Gradle,
respectively).  Except for the first two points, most of the "talk" is going
to be hands-on demos with some minimally pre-baked projects.  As they say:
"more code, less power point".

As noted in the outline, I don't currently have a slot to talk about
sub-projects, nor do I even mention :war packaging (which I believe is a
sufficiently-common case as to deserve special attention).

Thoughts/suggestions/insults are very welcome!

Daniel

Re: Tentative Outline for Profict Presentation

Posted by Antoine Toulme <an...@lunar-ocean.com>.
Never mind then. Keep it simple.

On Fri, Mar 19, 2010 at 09:25, Daniel Spiewak <dj...@gmail.com> wrote:

> Hmm, if I did a compiler, I'd probably want to actually use the Compiler
> framework, and that requires a bit more explaining.  I guess I could do
> something hacky which gets the job done but doesn't integrate fully with
> Buildr's compiler support...
>
> Daniel
>
> On Fri, Mar 19, 2010 at 10:21 AM, Antoine Toulme <antoine@lunar-ocean.com
> >wrote:
>
> > I just put together a new compiler that is using a different JAVA_HOME to
> > run.
> >
> > It gives you the ability to compile half your projects with a jdk5, half
> > the others with a jdk6 (for example). And it's really small.
> >
> > Think this would help ? I am sure neither Maven nor Ant support that.
> >
> >
> > On Fri, Mar 19, 2010 at 09:16, Daniel Spiewak <dj...@gmail.com>
> wrote:
> >
> >> I'm actually not at a loss for material; quite the opposite!  I would
> >> certainly like to emphasize Buildr's extensibility, since I think that
> is
> >> one of the key features which separates us from other build tools.
> >> Unfortunately, I *also* want to cover a lot of the cool high-level
> >> features like shell support and continuous-compilation.  Maybe I'm just
> too
> >> greedy...
> >>
> >> Coming back to extensibility, I was thinking of the following three
> >> examples (in order):
> >>
> >>    - Documentation generation (ReST => PDF)
> >>    - A :run task
> >>    - JFlex compiler-compiler integration
> >>
> >> The first two are obviously tasks that *everyone* runs into and Maven
> >> handles in particularly clumsy ways.  I picked the third mostly because
> it's
> >> a very non-trivial task which illustrates Buildr's Java integration
> quite
> >> nicely while still remaining surprisingly concise.  Unfortunately, it's
> also
> >> something that very few people ever do, and so I'm a little hesitant.
>  Any
> >> better suggestions here?  Ideally, I'm looking for something which would
> be
> >> nearly impossible in Maven/Ant (definitely requiring a Java extension),
> >> something which showcases Java invocation and still falls into a dozen
> or so
> >> lines.  Maybe I should just recreate one of the core Buildr plugins?
> >>
> >> Daniel
> >>
> >>
> >> On Fri, Mar 19, 2010 at 9:28 AM, Antoine Toulme <
> antoine@lunar-ocean.com>wrote:
> >>
> >>> +1
> >>>
> >>> If you need a few real plugins to demonstrate, I can probably give a
> hand
> >>> there.
> >>>
> >>> Thanks,
> >>>
> >>> Antoine
> >>>
> >>> On Fri, Mar 19, 2010 at 08:04, Alex Boisvert <alex.boisvert@gmail.com
> >>> >wrote:
> >>>
> >>> > Hi Daniel,
> >>> >
> >>> > I like your outline;  it sounds like a presentation I'd like to
> attend
> >>> > myself.  Here's my (textile) outline for a 55-minute talk.    I shift
> >>> from
> >>> > slide-presentation mode to hands-on coding (with as much cheating as
> >>> > possible to save time) about mid-way, then come back to slides
> towards
> >>> the
> >>> > end.   It's not fully ironed out yet but should give you a good idea
> of
> >>> how
> >>> > I go about it.  I think the hardest part is picking which subjects to
> >>> cover
> >>> > from the wide array of interesting Buildr features.
> >>> >
> >>> > alex
> >>> >
> >>> > h1. About Me (1 min / 1 slide)
> >>> >
> >>> > h1. How it all started (4 minutes / 3 slides)
> >>> >
> >>> > h1. What is Apache Buildr? (2 minutes / 1 slide)
> >>> >
> >>> > h1. Project Stats and History (2 minutes / 1 slide)
> >>> >
> >>> > h1. Architecture (3 minutes / 1 diagram)
> >>> >
> >>> > h1. Tasks and Dependencies (5 minutes / 3 slides)
> >>> >
> >>> > h1. Artifacts and Repositories (3 minutes / 1 slide)
> >>> >
> >>> > h1. Project layout (2 minutes / 2 slides)
> >>> >
> >>> > h1. Example: Basic Java Project (3 minutes)
> >>> >
> >>> > h1. Example: Hierarchical Projects (2 minutes)
> >>> >
> >>> > h1. Example: Using XMLBeans Ant Task (5 minutes)
> >>> >
> >>> > h1. Example: Generating SQL DDL schemas for several databases (3
> >>> minutes)
> >>> >
> >>> > h1. Example: Invoking Java class through RJB/JRuby (2 minutes)
> >>> >
> >>> > h1. Example: Multi-lingual Java, Groovy, Scala project (4 minutes)
> >>> >
> >>> > h1. Handling Dependencies (5 minutes / 3 slides)
> >>> >
> >>> > * Transitive dependencies
> >>> > * Whitelisting vs blacklisting
> >>> > * Apache Ivy support
> >>> > * Example
> >>> >
> >>> > h1. More Stuff (2 minutes)
> >>> >
> >>> > * Briefly talk about profiles, build spec/tests, nailgun support
> >>> >
> >>> > h1. Plugins (2 minutes)
> >>> >
> >>> > * Overview table of available plugins, packaging options, testing
> >>> > frameworks, and IDE support
> >>> >
> >>> > h1. Roadmap (2 minutes)
> >>> >
> >>> >
> >>> > On Thu, Mar 18, 2010 at 1:14 PM, Daniel Spiewak <djspiewak@gmail.com
> >
> >>> > wrote:
> >>> >
> >>> > > Here's a revised outline.  I finished the time estimates and
> realized
> >>> I
> >>> > was
> >>> > > more than an hour over-budget.  :-)  I still need to cut some
> things,
> >>> but
> >>> > > this is much more focused than the old one:
> >>> > >
> >>> > > 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.
> >>> > >
> >>> > > Session One
> >>> > > ===========
> >>> > >
> >>> > > I intend to make the do one super-point (**What is Apache Buildr**)
> >>> 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| 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)
> >>> > >
> >>> > > * |25m| First steps
> >>> > >
> >>> > >  * |5m| Setting up the project
> >>> > >   * |10m| Adding dependencies (introduce ``artifacts``)
> >>> > >
> >>> > >    * |5m| Direct (commons-cli)
> >>> > >    * |5m| Transitive (wicket)
> >>> > >
> >>> > >  * |5m| Packaging
> >>> > >
> >>> > >    * ``:jar``
> >>> > >    * ``:war``
> >>> > >
> >>> > >  * |2m| Javadoc (using the ``doc``) task
> >>> > >  * |3m| IDE Metadata
> >>> > >
> >>> > > * |10m| Transition from Ant
> >>> > >
> >>> > >  * Demonstrate custom directory structure
> >>> > >
> >>> > > * |5m| Transition from Maven
> >>> > >
> >>> > >  * *Almost* drop-in replacement
> >>> > >
> >>> > >
> >>> > > Session Two
> >>> > > ===========
> >>> > >
> >>> > > * |10m| Testing
> >>> > >
> >>> > >  * |5m| JUnit
> >>> > >  * |3m| TestNG
> >>> > >  * |2m| Cobertura
> >>> > >
> >>> > > * |5m| Continuous compilation
> >>> > > * |7m| Interactive Shell
> >>> > >
> >>> > >  * IRB
> >>> > >  * Clojure REPL
> >>> > >  * Scala
> >>> > >  * JRebel
> >>> > >
> >>> > >    * Demo with ``cc`` (just because it's cool)
> >>> > >
> >>> > > * |15m| Scala/Groovy support
> >>> > >
> >>> > >  * |5m| Zero-step configuration
> >>> > >  * |3m| Joint compilation
> >>> > >  * |5m| Testing (Specs + ScalaCheck)
> >>> > >
> >>> > > * |15m| Custom tasks
> >>> > >
> >>> > >  * |10m| Generating documentation (ReST => PDF)
> >>> > >  * |5m| A ``run`` task
> >>> > >
> >>> > >    * ``local_task``
> >>> > >
> >>> > > * |5m| Conclusion
> >>> > >
> >>> >
> >>>
> >>
> >>
> >
>

Re: Tentative Outline for Profict Presentation

Posted by Daniel Spiewak <dj...@gmail.com>.
Hmm, if I did a compiler, I'd probably want to actually use the Compiler
framework, and that requires a bit more explaining.  I guess I could do
something hacky which gets the job done but doesn't integrate fully with
Buildr's compiler support...

Daniel

On Fri, Mar 19, 2010 at 10:21 AM, Antoine Toulme <an...@lunar-ocean.com>wrote:

> I just put together a new compiler that is using a different JAVA_HOME to
> run.
>
> It gives you the ability to compile half your projects with a jdk5, half
> the others with a jdk6 (for example). And it's really small.
>
> Think this would help ? I am sure neither Maven nor Ant support that.
>
>
> On Fri, Mar 19, 2010 at 09:16, Daniel Spiewak <dj...@gmail.com> wrote:
>
>> I'm actually not at a loss for material; quite the opposite!  I would
>> certainly like to emphasize Buildr's extensibility, since I think that is
>> one of the key features which separates us from other build tools.
>> Unfortunately, I *also* want to cover a lot of the cool high-level
>> features like shell support and continuous-compilation.  Maybe I'm just too
>> greedy...
>>
>> Coming back to extensibility, I was thinking of the following three
>> examples (in order):
>>
>>    - Documentation generation (ReST => PDF)
>>    - A :run task
>>    - JFlex compiler-compiler integration
>>
>> The first two are obviously tasks that *everyone* runs into and Maven
>> handles in particularly clumsy ways.  I picked the third mostly because it's
>> a very non-trivial task which illustrates Buildr's Java integration quite
>> nicely while still remaining surprisingly concise.  Unfortunately, it's also
>> something that very few people ever do, and so I'm a little hesitant.  Any
>> better suggestions here?  Ideally, I'm looking for something which would be
>> nearly impossible in Maven/Ant (definitely requiring a Java extension),
>> something which showcases Java invocation and still falls into a dozen or so
>> lines.  Maybe I should just recreate one of the core Buildr plugins?
>>
>> Daniel
>>
>>
>> On Fri, Mar 19, 2010 at 9:28 AM, Antoine Toulme <an...@lunar-ocean.com>wrote:
>>
>>> +1
>>>
>>> If you need a few real plugins to demonstrate, I can probably give a hand
>>> there.
>>>
>>> Thanks,
>>>
>>> Antoine
>>>
>>> On Fri, Mar 19, 2010 at 08:04, Alex Boisvert <alex.boisvert@gmail.com
>>> >wrote:
>>>
>>> > Hi Daniel,
>>> >
>>> > I like your outline;  it sounds like a presentation I'd like to attend
>>> > myself.  Here's my (textile) outline for a 55-minute talk.    I shift
>>> from
>>> > slide-presentation mode to hands-on coding (with as much cheating as
>>> > possible to save time) about mid-way, then come back to slides towards
>>> the
>>> > end.   It's not fully ironed out yet but should give you a good idea of
>>> how
>>> > I go about it.  I think the hardest part is picking which subjects to
>>> cover
>>> > from the wide array of interesting Buildr features.
>>> >
>>> > alex
>>> >
>>> > h1. About Me (1 min / 1 slide)
>>> >
>>> > h1. How it all started (4 minutes / 3 slides)
>>> >
>>> > h1. What is Apache Buildr? (2 minutes / 1 slide)
>>> >
>>> > h1. Project Stats and History (2 minutes / 1 slide)
>>> >
>>> > h1. Architecture (3 minutes / 1 diagram)
>>> >
>>> > h1. Tasks and Dependencies (5 minutes / 3 slides)
>>> >
>>> > h1. Artifacts and Repositories (3 minutes / 1 slide)
>>> >
>>> > h1. Project layout (2 minutes / 2 slides)
>>> >
>>> > h1. Example: Basic Java Project (3 minutes)
>>> >
>>> > h1. Example: Hierarchical Projects (2 minutes)
>>> >
>>> > h1. Example: Using XMLBeans Ant Task (5 minutes)
>>> >
>>> > h1. Example: Generating SQL DDL schemas for several databases (3
>>> minutes)
>>> >
>>> > h1. Example: Invoking Java class through RJB/JRuby (2 minutes)
>>> >
>>> > h1. Example: Multi-lingual Java, Groovy, Scala project (4 minutes)
>>> >
>>> > h1. Handling Dependencies (5 minutes / 3 slides)
>>> >
>>> > * Transitive dependencies
>>> > * Whitelisting vs blacklisting
>>> > * Apache Ivy support
>>> > * Example
>>> >
>>> > h1. More Stuff (2 minutes)
>>> >
>>> > * Briefly talk about profiles, build spec/tests, nailgun support
>>> >
>>> > h1. Plugins (2 minutes)
>>> >
>>> > * Overview table of available plugins, packaging options, testing
>>> > frameworks, and IDE support
>>> >
>>> > h1. Roadmap (2 minutes)
>>> >
>>> >
>>> > On Thu, Mar 18, 2010 at 1:14 PM, Daniel Spiewak <dj...@gmail.com>
>>> > wrote:
>>> >
>>> > > Here's a revised outline.  I finished the time estimates and realized
>>> I
>>> > was
>>> > > more than an hour over-budget.  :-)  I still need to cut some things,
>>> but
>>> > > this is much more focused than the old one:
>>> > >
>>> > > 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.
>>> > >
>>> > > Session One
>>> > > ===========
>>> > >
>>> > > I intend to make the do one super-point (**What is Apache Buildr**)
>>> 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| 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)
>>> > >
>>> > > * |25m| First steps
>>> > >
>>> > >  * |5m| Setting up the project
>>> > >   * |10m| Adding dependencies (introduce ``artifacts``)
>>> > >
>>> > >    * |5m| Direct (commons-cli)
>>> > >    * |5m| Transitive (wicket)
>>> > >
>>> > >  * |5m| Packaging
>>> > >
>>> > >    * ``:jar``
>>> > >    * ``:war``
>>> > >
>>> > >  * |2m| Javadoc (using the ``doc``) task
>>> > >  * |3m| IDE Metadata
>>> > >
>>> > > * |10m| Transition from Ant
>>> > >
>>> > >  * Demonstrate custom directory structure
>>> > >
>>> > > * |5m| Transition from Maven
>>> > >
>>> > >  * *Almost* drop-in replacement
>>> > >
>>> > >
>>> > > Session Two
>>> > > ===========
>>> > >
>>> > > * |10m| Testing
>>> > >
>>> > >  * |5m| JUnit
>>> > >  * |3m| TestNG
>>> > >  * |2m| Cobertura
>>> > >
>>> > > * |5m| Continuous compilation
>>> > > * |7m| Interactive Shell
>>> > >
>>> > >  * IRB
>>> > >  * Clojure REPL
>>> > >  * Scala
>>> > >  * JRebel
>>> > >
>>> > >    * Demo with ``cc`` (just because it's cool)
>>> > >
>>> > > * |15m| Scala/Groovy support
>>> > >
>>> > >  * |5m| Zero-step configuration
>>> > >  * |3m| Joint compilation
>>> > >  * |5m| Testing (Specs + ScalaCheck)
>>> > >
>>> > > * |15m| Custom tasks
>>> > >
>>> > >  * |10m| Generating documentation (ReST => PDF)
>>> > >  * |5m| A ``run`` task
>>> > >
>>> > >    * ``local_task``
>>> > >
>>> > > * |5m| Conclusion
>>> > >
>>> >
>>>
>>
>>
>

Re: Tentative Outline for Profict Presentation

Posted by Antoine Toulme <an...@lunar-ocean.com>.
I just put together a new compiler that is using a different JAVA_HOME to
run.

It gives you the ability to compile half your projects with a jdk5, half the
others with a jdk6 (for example). And it's really small.

Think this would help ? I am sure neither Maven nor Ant support that.

On Fri, Mar 19, 2010 at 09:16, Daniel Spiewak <dj...@gmail.com> wrote:

> I'm actually not at a loss for material; quite the opposite!  I would
> certainly like to emphasize Buildr's extensibility, since I think that is
> one of the key features which separates us from other build tools.
> Unfortunately, I *also* want to cover a lot of the cool high-level
> features like shell support and continuous-compilation.  Maybe I'm just too
> greedy...
>
> Coming back to extensibility, I was thinking of the following three
> examples (in order):
>
>    - Documentation generation (ReST => PDF)
>    - A :run task
>    - JFlex compiler-compiler integration
>
> The first two are obviously tasks that *everyone* runs into and Maven
> handles in particularly clumsy ways.  I picked the third mostly because it's
> a very non-trivial task which illustrates Buildr's Java integration quite
> nicely while still remaining surprisingly concise.  Unfortunately, it's also
> something that very few people ever do, and so I'm a little hesitant.  Any
> better suggestions here?  Ideally, I'm looking for something which would be
> nearly impossible in Maven/Ant (definitely requiring a Java extension),
> something which showcases Java invocation and still falls into a dozen or so
> lines.  Maybe I should just recreate one of the core Buildr plugins?
>
> Daniel
>
>
> On Fri, Mar 19, 2010 at 9:28 AM, Antoine Toulme <an...@lunar-ocean.com>wrote:
>
>> +1
>>
>> If you need a few real plugins to demonstrate, I can probably give a hand
>> there.
>>
>> Thanks,
>>
>> Antoine
>>
>> On Fri, Mar 19, 2010 at 08:04, Alex Boisvert <alex.boisvert@gmail.com
>> >wrote:
>>
>> > Hi Daniel,
>> >
>> > I like your outline;  it sounds like a presentation I'd like to attend
>> > myself.  Here's my (textile) outline for a 55-minute talk.    I shift
>> from
>> > slide-presentation mode to hands-on coding (with as much cheating as
>> > possible to save time) about mid-way, then come back to slides towards
>> the
>> > end.   It's not fully ironed out yet but should give you a good idea of
>> how
>> > I go about it.  I think the hardest part is picking which subjects to
>> cover
>> > from the wide array of interesting Buildr features.
>> >
>> > alex
>> >
>> > h1. About Me (1 min / 1 slide)
>> >
>> > h1. How it all started (4 minutes / 3 slides)
>> >
>> > h1. What is Apache Buildr? (2 minutes / 1 slide)
>> >
>> > h1. Project Stats and History (2 minutes / 1 slide)
>> >
>> > h1. Architecture (3 minutes / 1 diagram)
>> >
>> > h1. Tasks and Dependencies (5 minutes / 3 slides)
>> >
>> > h1. Artifacts and Repositories (3 minutes / 1 slide)
>> >
>> > h1. Project layout (2 minutes / 2 slides)
>> >
>> > h1. Example: Basic Java Project (3 minutes)
>> >
>> > h1. Example: Hierarchical Projects (2 minutes)
>> >
>> > h1. Example: Using XMLBeans Ant Task (5 minutes)
>> >
>> > h1. Example: Generating SQL DDL schemas for several databases (3
>> minutes)
>> >
>> > h1. Example: Invoking Java class through RJB/JRuby (2 minutes)
>> >
>> > h1. Example: Multi-lingual Java, Groovy, Scala project (4 minutes)
>> >
>> > h1. Handling Dependencies (5 minutes / 3 slides)
>> >
>> > * Transitive dependencies
>> > * Whitelisting vs blacklisting
>> > * Apache Ivy support
>> > * Example
>> >
>> > h1. More Stuff (2 minutes)
>> >
>> > * Briefly talk about profiles, build spec/tests, nailgun support
>> >
>> > h1. Plugins (2 minutes)
>> >
>> > * Overview table of available plugins, packaging options, testing
>> > frameworks, and IDE support
>> >
>> > h1. Roadmap (2 minutes)
>> >
>> >
>> > On Thu, Mar 18, 2010 at 1:14 PM, Daniel Spiewak <dj...@gmail.com>
>> > wrote:
>> >
>> > > Here's a revised outline.  I finished the time estimates and realized
>> I
>> > was
>> > > more than an hour over-budget.  :-)  I still need to cut some things,
>> but
>> > > this is much more focused than the old one:
>> > >
>> > > 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.
>> > >
>> > > Session One
>> > > ===========
>> > >
>> > > I intend to make the do one super-point (**What is Apache Buildr**)
>> 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| 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)
>> > >
>> > > * |25m| First steps
>> > >
>> > >  * |5m| Setting up the project
>> > >   * |10m| Adding dependencies (introduce ``artifacts``)
>> > >
>> > >    * |5m| Direct (commons-cli)
>> > >    * |5m| Transitive (wicket)
>> > >
>> > >  * |5m| Packaging
>> > >
>> > >    * ``:jar``
>> > >    * ``:war``
>> > >
>> > >  * |2m| Javadoc (using the ``doc``) task
>> > >  * |3m| IDE Metadata
>> > >
>> > > * |10m| Transition from Ant
>> > >
>> > >  * Demonstrate custom directory structure
>> > >
>> > > * |5m| Transition from Maven
>> > >
>> > >  * *Almost* drop-in replacement
>> > >
>> > >
>> > > Session Two
>> > > ===========
>> > >
>> > > * |10m| Testing
>> > >
>> > >  * |5m| JUnit
>> > >  * |3m| TestNG
>> > >  * |2m| Cobertura
>> > >
>> > > * |5m| Continuous compilation
>> > > * |7m| Interactive Shell
>> > >
>> > >  * IRB
>> > >  * Clojure REPL
>> > >  * Scala
>> > >  * JRebel
>> > >
>> > >    * Demo with ``cc`` (just because it's cool)
>> > >
>> > > * |15m| Scala/Groovy support
>> > >
>> > >  * |5m| Zero-step configuration
>> > >  * |3m| Joint compilation
>> > >  * |5m| Testing (Specs + ScalaCheck)
>> > >
>> > > * |15m| Custom tasks
>> > >
>> > >  * |10m| Generating documentation (ReST => PDF)
>> > >  * |5m| A ``run`` task
>> > >
>> > >    * ``local_task``
>> > >
>> > > * |5m| Conclusion
>> > >
>> >
>>
>
>

Re: Tentative Outline for Profict Presentation

Posted by Daniel Spiewak <dj...@gmail.com>.
I'm actually not at a loss for material; quite the opposite!  I would
certainly like to emphasize Buildr's extensibility, since I think that is
one of the key features which separates us from other build tools.
Unfortunately, I *also* want to cover a lot of the cool high-level features
like shell support and continuous-compilation.  Maybe I'm just too greedy...

Coming back to extensibility, I was thinking of the following three examples
(in order):

   - Documentation generation (ReST => PDF)
   - A :run task
   - JFlex compiler-compiler integration

The first two are obviously tasks that *everyone* runs into and Maven
handles in particularly clumsy ways.  I picked the third mostly because it's
a very non-trivial task which illustrates Buildr's Java integration quite
nicely while still remaining surprisingly concise.  Unfortunately, it's also
something that very few people ever do, and so I'm a little hesitant.  Any
better suggestions here?  Ideally, I'm looking for something which would be
nearly impossible in Maven/Ant (definitely requiring a Java extension),
something which showcases Java invocation and still falls into a dozen or so
lines.  Maybe I should just recreate one of the core Buildr plugins?

Daniel

On Fri, Mar 19, 2010 at 9:28 AM, Antoine Toulme <an...@lunar-ocean.com>wrote:

> +1
>
> If you need a few real plugins to demonstrate, I can probably give a hand
> there.
>
> Thanks,
>
> Antoine
>
> On Fri, Mar 19, 2010 at 08:04, Alex Boisvert <alex.boisvert@gmail.com
> >wrote:
>
> > Hi Daniel,
> >
> > I like your outline;  it sounds like a presentation I'd like to attend
> > myself.  Here's my (textile) outline for a 55-minute talk.    I shift
> from
> > slide-presentation mode to hands-on coding (with as much cheating as
> > possible to save time) about mid-way, then come back to slides towards
> the
> > end.   It's not fully ironed out yet but should give you a good idea of
> how
> > I go about it.  I think the hardest part is picking which subjects to
> cover
> > from the wide array of interesting Buildr features.
> >
> > alex
> >
> > h1. About Me (1 min / 1 slide)
> >
> > h1. How it all started (4 minutes / 3 slides)
> >
> > h1. What is Apache Buildr? (2 minutes / 1 slide)
> >
> > h1. Project Stats and History (2 minutes / 1 slide)
> >
> > h1. Architecture (3 minutes / 1 diagram)
> >
> > h1. Tasks and Dependencies (5 minutes / 3 slides)
> >
> > h1. Artifacts and Repositories (3 minutes / 1 slide)
> >
> > h1. Project layout (2 minutes / 2 slides)
> >
> > h1. Example: Basic Java Project (3 minutes)
> >
> > h1. Example: Hierarchical Projects (2 minutes)
> >
> > h1. Example: Using XMLBeans Ant Task (5 minutes)
> >
> > h1. Example: Generating SQL DDL schemas for several databases (3 minutes)
> >
> > h1. Example: Invoking Java class through RJB/JRuby (2 minutes)
> >
> > h1. Example: Multi-lingual Java, Groovy, Scala project (4 minutes)
> >
> > h1. Handling Dependencies (5 minutes / 3 slides)
> >
> > * Transitive dependencies
> > * Whitelisting vs blacklisting
> > * Apache Ivy support
> > * Example
> >
> > h1. More Stuff (2 minutes)
> >
> > * Briefly talk about profiles, build spec/tests, nailgun support
> >
> > h1. Plugins (2 minutes)
> >
> > * Overview table of available plugins, packaging options, testing
> > frameworks, and IDE support
> >
> > h1. Roadmap (2 minutes)
> >
> >
> > On Thu, Mar 18, 2010 at 1:14 PM, Daniel Spiewak <dj...@gmail.com>
> > wrote:
> >
> > > Here's a revised outline.  I finished the time estimates and realized I
> > was
> > > more than an hour over-budget.  :-)  I still need to cut some things,
> but
> > > this is much more focused than the old one:
> > >
> > > 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.
> > >
> > > Session One
> > > ===========
> > >
> > > I intend to make the do one super-point (**What is Apache Buildr**)
> 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| 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)
> > >
> > > * |25m| First steps
> > >
> > >  * |5m| Setting up the project
> > >   * |10m| Adding dependencies (introduce ``artifacts``)
> > >
> > >    * |5m| Direct (commons-cli)
> > >    * |5m| Transitive (wicket)
> > >
> > >  * |5m| Packaging
> > >
> > >    * ``:jar``
> > >    * ``:war``
> > >
> > >  * |2m| Javadoc (using the ``doc``) task
> > >  * |3m| IDE Metadata
> > >
> > > * |10m| Transition from Ant
> > >
> > >  * Demonstrate custom directory structure
> > >
> > > * |5m| Transition from Maven
> > >
> > >  * *Almost* drop-in replacement
> > >
> > >
> > > Session Two
> > > ===========
> > >
> > > * |10m| Testing
> > >
> > >  * |5m| JUnit
> > >  * |3m| TestNG
> > >  * |2m| Cobertura
> > >
> > > * |5m| Continuous compilation
> > > * |7m| Interactive Shell
> > >
> > >  * IRB
> > >  * Clojure REPL
> > >  * Scala
> > >  * JRebel
> > >
> > >    * Demo with ``cc`` (just because it's cool)
> > >
> > > * |15m| Scala/Groovy support
> > >
> > >  * |5m| Zero-step configuration
> > >  * |3m| Joint compilation
> > >  * |5m| Testing (Specs + ScalaCheck)
> > >
> > > * |15m| Custom tasks
> > >
> > >  * |10m| Generating documentation (ReST => PDF)
> > >  * |5m| A ``run`` task
> > >
> > >    * ``local_task``
> > >
> > > * |5m| Conclusion
> > >
> >
>

Re: Tentative Outline for Profict Presentation

Posted by Antoine Toulme <an...@lunar-ocean.com>.
+1

If you need a few real plugins to demonstrate, I can probably give a hand
there.

Thanks,

Antoine

On Fri, Mar 19, 2010 at 08:04, Alex Boisvert <al...@gmail.com>wrote:

> Hi Daniel,
>
> I like your outline;  it sounds like a presentation I'd like to attend
> myself.  Here's my (textile) outline for a 55-minute talk.    I shift from
> slide-presentation mode to hands-on coding (with as much cheating as
> possible to save time) about mid-way, then come back to slides towards the
> end.   It's not fully ironed out yet but should give you a good idea of how
> I go about it.  I think the hardest part is picking which subjects to cover
> from the wide array of interesting Buildr features.
>
> alex
>
> h1. About Me (1 min / 1 slide)
>
> h1. How it all started (4 minutes / 3 slides)
>
> h1. What is Apache Buildr? (2 minutes / 1 slide)
>
> h1. Project Stats and History (2 minutes / 1 slide)
>
> h1. Architecture (3 minutes / 1 diagram)
>
> h1. Tasks and Dependencies (5 minutes / 3 slides)
>
> h1. Artifacts and Repositories (3 minutes / 1 slide)
>
> h1. Project layout (2 minutes / 2 slides)
>
> h1. Example: Basic Java Project (3 minutes)
>
> h1. Example: Hierarchical Projects (2 minutes)
>
> h1. Example: Using XMLBeans Ant Task (5 minutes)
>
> h1. Example: Generating SQL DDL schemas for several databases (3 minutes)
>
> h1. Example: Invoking Java class through RJB/JRuby (2 minutes)
>
> h1. Example: Multi-lingual Java, Groovy, Scala project (4 minutes)
>
> h1. Handling Dependencies (5 minutes / 3 slides)
>
> * Transitive dependencies
> * Whitelisting vs blacklisting
> * Apache Ivy support
> * Example
>
> h1. More Stuff (2 minutes)
>
> * Briefly talk about profiles, build spec/tests, nailgun support
>
> h1. Plugins (2 minutes)
>
> * Overview table of available plugins, packaging options, testing
> frameworks, and IDE support
>
> h1. Roadmap (2 minutes)
>
>
> On Thu, Mar 18, 2010 at 1:14 PM, Daniel Spiewak <dj...@gmail.com>
> wrote:
>
> > Here's a revised outline.  I finished the time estimates and realized I
> was
> > more than an hour over-budget.  :-)  I still need to cut some things, but
> > this is much more focused than the old one:
> >
> > 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.
> >
> > Session One
> > ===========
> >
> > I intend to make the do one super-point (**What is Apache Buildr**) 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| 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)
> >
> > * |25m| First steps
> >
> >  * |5m| Setting up the project
> >   * |10m| Adding dependencies (introduce ``artifacts``)
> >
> >    * |5m| Direct (commons-cli)
> >    * |5m| Transitive (wicket)
> >
> >  * |5m| Packaging
> >
> >    * ``:jar``
> >    * ``:war``
> >
> >  * |2m| Javadoc (using the ``doc``) task
> >  * |3m| IDE Metadata
> >
> > * |10m| Transition from Ant
> >
> >  * Demonstrate custom directory structure
> >
> > * |5m| Transition from Maven
> >
> >  * *Almost* drop-in replacement
> >
> >
> > Session Two
> > ===========
> >
> > * |10m| Testing
> >
> >  * |5m| JUnit
> >  * |3m| TestNG
> >  * |2m| Cobertura
> >
> > * |5m| Continuous compilation
> > * |7m| Interactive Shell
> >
> >  * IRB
> >  * Clojure REPL
> >  * Scala
> >  * JRebel
> >
> >    * Demo with ``cc`` (just because it's cool)
> >
> > * |15m| Scala/Groovy support
> >
> >  * |5m| Zero-step configuration
> >  * |3m| Joint compilation
> >  * |5m| Testing (Specs + ScalaCheck)
> >
> > * |15m| Custom tasks
> >
> >  * |10m| Generating documentation (ReST => PDF)
> >  * |5m| A ``run`` task
> >
> >    * ``local_task``
> >
> > * |5m| Conclusion
> >
>

Re: Tentative Outline for Profict Presentation

Posted by Alex Boisvert <al...@gmail.com>.
Hi Daniel,

I like your outline;  it sounds like a presentation I'd like to attend
myself.  Here's my (textile) outline for a 55-minute talk.    I shift from
slide-presentation mode to hands-on coding (with as much cheating as
possible to save time) about mid-way, then come back to slides towards the
end.   It's not fully ironed out yet but should give you a good idea of how
I go about it.  I think the hardest part is picking which subjects to cover
from the wide array of interesting Buildr features.

alex

h1. About Me (1 min / 1 slide)

h1. How it all started (4 minutes / 3 slides)

h1. What is Apache Buildr? (2 minutes / 1 slide)

h1. Project Stats and History (2 minutes / 1 slide)

h1. Architecture (3 minutes / 1 diagram)

h1. Tasks and Dependencies (5 minutes / 3 slides)

h1. Artifacts and Repositories (3 minutes / 1 slide)

h1. Project layout (2 minutes / 2 slides)

h1. Example: Basic Java Project (3 minutes)

h1. Example: Hierarchical Projects (2 minutes)

h1. Example: Using XMLBeans Ant Task (5 minutes)

h1. Example: Generating SQL DDL schemas for several databases (3 minutes)

h1. Example: Invoking Java class through RJB/JRuby (2 minutes)

h1. Example: Multi-lingual Java, Groovy, Scala project (4 minutes)

h1. Handling Dependencies (5 minutes / 3 slides)

* Transitive dependencies
* Whitelisting vs blacklisting
* Apache Ivy support
* Example

h1. More Stuff (2 minutes)

* Briefly talk about profiles, build spec/tests, nailgun support

h1. Plugins (2 minutes)

* Overview table of available plugins, packaging options, testing
frameworks, and IDE support

h1. Roadmap (2 minutes)


On Thu, Mar 18, 2010 at 1:14 PM, Daniel Spiewak <dj...@gmail.com> wrote:

> Here's a revised outline.  I finished the time estimates and realized I was
> more than an hour over-budget.  :-)  I still need to cut some things, but
> this is much more focused than the old one:
>
> 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.
>
> Session One
> ===========
>
> I intend to make the do one super-point (**What is Apache Buildr**) 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| 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)
>
> * |25m| First steps
>
>  * |5m| Setting up the project
>   * |10m| Adding dependencies (introduce ``artifacts``)
>
>    * |5m| Direct (commons-cli)
>    * |5m| Transitive (wicket)
>
>  * |5m| Packaging
>
>    * ``:jar``
>    * ``:war``
>
>  * |2m| Javadoc (using the ``doc``) task
>  * |3m| IDE Metadata
>
> * |10m| Transition from Ant
>
>  * Demonstrate custom directory structure
>
> * |5m| Transition from Maven
>
>  * *Almost* drop-in replacement
>
>
> Session Two
> ===========
>
> * |10m| Testing
>
>  * |5m| JUnit
>  * |3m| TestNG
>  * |2m| Cobertura
>
> * |5m| Continuous compilation
> * |7m| Interactive Shell
>
>  * IRB
>  * Clojure REPL
>  * Scala
>  * JRebel
>
>    * Demo with ``cc`` (just because it's cool)
>
> * |15m| Scala/Groovy support
>
>  * |5m| Zero-step configuration
>  * |3m| Joint compilation
>  * |5m| Testing (Specs + ScalaCheck)
>
> * |15m| Custom tasks
>
>  * |10m| Generating documentation (ReST => PDF)
>  * |5m| A ``run`` task
>
>    * ``local_task``
>
> * |5m| Conclusion
>

Re: Tentative Outline for Profict Presentation

Posted by Daniel Spiewak <dj...@gmail.com>.
> i would like to see the pdf.
>

Wish granted!  http://dl.dropbox.com/u/1679797/profict-2009-outline.pdf  I
have attached the very latest revision of the text-form outline below.


> maybee there is some audio or even video material available after your
> talk?
>

I've talked to the Profict guys about that.  They may be recording the
presentation, but I don't think it's settled yet.  I suppose at the very
least I could just turn on QuickTime screencast recording, but that would
hardly be ideal...

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.


Session One
===========

I intend to make the do one super-point (**What is Apache Buildr**) 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| 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)

* |25m| First steps

  * |5m| Setting up the project
  * |10m| Adding dependencies (introduce ``artifacts``)

    * |5m| Direct (commons-cli)
    * |5m| Transitive (wicket)

  * |5m| Packaging

    * ``:jar``
    * ``:war``

  * |2m| Javadoc (using the ``doc``) task
  * |3m| IDE Metadata

* |10m| Transition from Ant

  * Demonstrate custom directory structure

* |5m| Transition from Maven

  * *Almost* drop-in replacement


Session Two
===========

* |10m| Testing

  * |5m| JUnit
  * |3m| TestNG
  * |2m| Cobertura

* |5m| Continuous compilation
* |7m| Interactive Shell

  * IRB
  * Clojure REPL
  * Scala
  * JRebel

    * Demo with ``cc`` (just because it's cool)

* |15m| Scala/Groovy support

  * |5m| Zero-step configuration
  * |3m| Joint compilation
  * |5m| Testing (Specs + ScalaCheck)

* |20m| Custom tasks

  * |10m| Generating documentation (ReST => PDF)
  * |5m| A ``run`` task

    * ``local_task``

  * |5m| JFlex

* |5m| Conclusion

Re: Tentative Outline for Profict Presentation

Posted by Peter Schröder <ps...@blau.de>.
hi daniel,

i would like to see the pdf. 

maybee there is some audio or even video material available after your talk?

kind regards,
peter

Am 18.03.2010 um 21:14 schrieb Daniel Spiewak:

> Here's a revised outline.  I finished the time estimates and realized I was
> more than an hour over-budget.  :-)  I still need to cut some things, but
> this is much more focused than the old one:
> 
> 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.
> 
> Session One
> ===========
> 
> I intend to make the do one super-point (**What is Apache Buildr**) 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| 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)
> 
> * |25m| First steps
> 
>  * |5m| Setting up the project
>  * |10m| Adding dependencies (introduce ``artifacts``)
> 
>    * |5m| Direct (commons-cli)
>    * |5m| Transitive (wicket)
> 
>  * |5m| Packaging
> 
>    * ``:jar``
>    * ``:war``
> 
>  * |2m| Javadoc (using the ``doc``) task
>  * |3m| IDE Metadata
> 
> * |10m| Transition from Ant
> 
>  * Demonstrate custom directory structure
> 
> * |5m| Transition from Maven
> 
>  * *Almost* drop-in replacement
> 
> 
> Session Two
> ===========
> 
> * |10m| Testing
> 
>  * |5m| JUnit
>  * |3m| TestNG
>  * |2m| Cobertura
> 
> * |5m| Continuous compilation
> * |7m| Interactive Shell
> 
>  * IRB
>  * Clojure REPL
>  * Scala
>  * JRebel
> 
>    * Demo with ``cc`` (just because it's cool)
> 
> * |15m| Scala/Groovy support
> 
>  * |5m| Zero-step configuration
>  * |3m| Joint compilation
>  * |5m| Testing (Specs + ScalaCheck)
> 
> * |15m| Custom tasks
> 
>  * |10m| Generating documentation (ReST => PDF)
>  * |5m| A ``run`` task
> 
>    * ``local_task``
> 
> * |5m| Conclusion


Re: Tentative Outline for Profict Presentation

Posted by Daniel Spiewak <dj...@gmail.com>.
Here's a revised outline.  I finished the time estimates and realized I was
more than an hour over-budget.  :-)  I still need to cut some things, but
this is much more focused than the old one:

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.

Session One
===========

I intend to make the do one super-point (**What is Apache Buildr**) 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| 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)

* |25m| First steps

  * |5m| Setting up the project
  * |10m| Adding dependencies (introduce ``artifacts``)

    * |5m| Direct (commons-cli)
    * |5m| Transitive (wicket)

  * |5m| Packaging

    * ``:jar``
    * ``:war``

  * |2m| Javadoc (using the ``doc``) task
  * |3m| IDE Metadata

* |10m| Transition from Ant

  * Demonstrate custom directory structure

* |5m| Transition from Maven

  * *Almost* drop-in replacement


Session Two
===========

* |10m| Testing

  * |5m| JUnit
  * |3m| TestNG
  * |2m| Cobertura

* |5m| Continuous compilation
* |7m| Interactive Shell

  * IRB
  * Clojure REPL
  * Scala
  * JRebel

    * Demo with ``cc`` (just because it's cool)

* |15m| Scala/Groovy support

  * |5m| Zero-step configuration
  * |3m| Joint compilation
  * |5m| Testing (Specs + ScalaCheck)

* |15m| Custom tasks

  * |10m| Generating documentation (ReST => PDF)
  * |5m| A ``run`` task

    * ``local_task``

* |5m| Conclusion

Re: Tentative Outline for Profict Presentation

Posted by Daniel Spiewak <dj...@gmail.com>.
>
> 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**)

Re: Tentative Outline for Profict Presentation

Posted by Antoine Toulme <an...@lunar-ocean.com>.
Hey Daniel, can you attach the outline please ?

Oh, maybe it got stripped out by the mailing server. Can you upload it
somewhere ?

Thanks,

Antoine

On Thu, Mar 18, 2010 at 09:09, Daniel Spiewak <dj...@gmail.com> wrote:

> As promised, here is a tentative outline of the talk I'm going to give at
> Profict Spring Camp 2010.  The talk is split into two, 40 minute sessions.
> My concept is to spend the first session introducing Buildr and getting
> everyone comfortable with its basic syntax and concepts, as well as some of
> its more fundamental Java support.  Session two is where I want to dive into
> the things which really differentiate Buildr from other tools (bear in mind
> that the other two talks at the conference are about Maven 3 and Gradle,
> respectively).  Except for the first two points, most of the "talk" is going
> to be hands-on demos with some minimally pre-baked projects.  As they say:
> "more code, less power point".
>
> As noted in the outline, I don't currently have a slot to talk about
> sub-projects, nor do I even mention :war packaging (which I believe is a
> sufficiently-common case as to deserve special attention).
>
> Thoughts/suggestions/insults are very welcome!
>
> Daniel
>