Saturday, January 26, 2008

2008-01-26 Saturday

Today I am presenting at Seattle Code Camp V3.0 in Redmond, at 1:45-3pm (Introduction to Drools).


5pm update
Well the presentation is done.

I would say that 75% of it went well, 25% was a bit rough.

Let me explain...

About two weeks ago I decided that offering to do a presentation on Drools at the Seattle Code Camp V3.0 (a free event, by the way) - would be a low-risk, potentially high-return on effort invested, and an overall good opportunity to accomplish a few things:

  • Help communicate the incredible potential use of the Open Source Drools Rule Engine to other developers

  • Practice my speaking and presentation skills;

  • Force myself to learn a new (and interesting) technology;

  • Practice my research and rapid-learning skills;

  • Stretch me out of my comfort zone;

  • Add to my value as a consultant;

  • Help me master a technology that I think will be useful for a current client engagement;

  • Give back to my local developer community;

  • Add some new professional networking contacts;

  • Create a new asset for my consulting practice (82 page slide-deck);

  • Add another professional speaking engagement to my resume.


  • On the plus side, I believe that I accomplished all of those objectives.

    Now, what about that 25% that went rough?

    Climbing the mountain of learning a new technical skill is going to involve spending time working through a lot of coding examples...and my compressed timeframe for developing expertise with Drools simply ran the clock out on available time. There were some very good questions asked by the attendees - and some of those questions have helped me identify gaps in my knowledge which I can now work on backfilling.

    A 320 GB external USB hard drive was given away as the main door prize to one lucky attendee.

    At the end of the presentation, I'm fairly certain everyone learned something new about Drools that they didn't know before - and that's what it was all about anyway.

    You can download my presentation here

    3 comments:

    woolfel said...

    I saw your presentation on drools blog and thought I drop a note. I also left a comment on mark's blog entry. On slide 52-53 of the presentation, it makes statements that could be misinterpreted and could lead users to think RETE scales linearly with respect to ruleset size. I hope that wasn't your intent, since that is completely wrong.

    What affects scalability is the RETE topology. The number of rules often do not have any affect on performance. It depends on the actual rule and how many nodes it potentially involves. I have several dozen entries on my blog explaining it in detail.

    I've had debates with many people in the past about this common misunderstanding. I've seen JRule and Blaze consultants with 3-5 years of experience make these incorrect claims and give RETE a bad name.

    If you want an invite to my blog and learn exactly what affects RETE performance, send me an email woolfel AT gmail DOT com. In case you're wondering, I'm the author of Jamocha and I contributed code to drools which was ported by mark to drools 3.

    Kelvin Meeks said...

    Thanks for your help in clarifying my understanding of the performance impact of ruleset size.

    I believe the most recent update of the presentation may have renumbered the slides you referenced (perhaps slide 58-60 are now the ones you meant?)

    Certainly I am still learning about Drools, so I appreciate your feedback.

    Kelvin

    Kelvin Meeks said...

    I've posted the following on the Drools blog - and also sent via email to Mark Proctor:

    Mark,

    Just a clarification on your blog post:
    http://blog.athico.com/2008/01/drools-success-stories-seattle-code.html

    I was quoting the Drools blog:
    http://blog.athico.com/search?q=success+stories

    not my success story :)

    My experience giving the presentation was helpful in teaching me humility - there is so much that I still have to learn about Drools - and the need to develop a deeper understanding of the core, examples, etc.