Jay, thanks for the clarification. I think I understand it a bit better
now, and It all pretty much makes sense. See inline

Also, slightly OT, but what are Configurable and
AbstractConfig#getConfiguredInstance for? I don't see anything using them.

On 2/6/14 11:46 AM, Jay Kreps wrote:
Yea, good point. I'd like to think that reusing existing stuff is always
the right thing to do, but I've been through dependency hell plenty to
know that's not the reality.
I can see where the declarative stuff is useful for auto-generating
documentation, however that's another thing we'd have to build - that is
of course if you haven't built it already ;)

Loading the config eagerly also breaks the ability for config to change
at runtime, which can be appealing for changing things like buffer
sizes, timeouts, etc. I've been using Archaius lately, and it's pretty
awesome. But again, it's more geared towards application development
(like myself).
Internal/user-facing POJO might be nice so we _do_ get compiler warnings
when trying to get non-existent configs.

NEW: Monitor These Apps!
elasticsearch, apache solr, apache hbase, hadoop, redis, casssandra, amazon cloudwatch, mysql, memcached, apache kafka, apache zookeeper, apache storm, ubuntu, centOS, red hat, debian, puppet labs, java, senseiDB