Never mind then. Keep it simple. On Fri, Mar 19, 2010 at 09:25, Daniel Spiewak <[email protected]> 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 <[email protected] > >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 <[email protected]> > 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 < > [email protected]>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 <[email protected] > >>> >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 <[email protected] > > > >>> > 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 > >>> > > > >>> > > >>> > >> > >> > > >
