On 5 Mar 2009, at 21:38, Christopher Lenz wrote:
> I think that, at least for the time being, it's best if CouchApp
> remained a separate project, in the sense that nothing in CouchDB
> should know about the CouchApp side. I certainly agree that CouchApp-
> style applications are pretty exciting (albeit in a very alpha-
> geekish way), but I also think there will continue to be a large
> percentage of CouchDB users (myself included) who use CouchDB in a
> more traditional way, as a storage backend sitting behind a regular
> web-based application, with a web server sitting between the user
> and the database. In my opinion we should go out of our way to avoid
> the impression that CouchApps are the preferred/endorsed way to use
> CouchDB.
+1
> In that vein, I'm not in favor of the CouchApp links on the Futon
> start page. I've generally tried to keep Futon extremely neutral to
> the specific ways people may use CouchDB, and the CouchApp links
> smell too much like an official endorsement of one particular method
> to me. Plus, the "Applications" column must be rather confusing for
> any CouchDB users who haven't played with the CouchApp concept yet
> ("Hum, how do I get my PHP scripts in there?" [not that anyone
> should be writing PHP scripts in the first place]).
Hey, no fair! :)
> Ideally, we'd have some way in Futon for extensions to register
> their own pages that show up in the sidebar navigation (that might
> be as simple as a config section, if we didn't have that pesky admin
> auth prompt for reading config values ;) ). If we had that, I think
> there should be a CouchApp plugin that registered an "Applications"
> page that could do some discovery on demand.
That's in line with what I've had in mind with the "Futon Future"
thread.
> Actually, I'd go even further, and suggest that the "show" and
> "list" features should be part of that CouchApp plugin, and not
> actually included with CouchDB itself. You really only need those
> features when you're developing CouchApp-style applications. Moving
> them into a corresponding plugin would help keep CouchDB itself lean
> and clean.
show and list are useful in the non-couchapp case. a list gives you
RSS/Atom feeds on views (say blog posts or events) for free. a show
would help you to mangle your data for other systems that e.g. like to
consume XML. I like that this can be done without a middleware layer.
I'm +1 on modularizing additional features on the Erlang level, but
show & list I'd consider core CouchDB and -1 on making them optional.
> Moving those into a plugin should be almost trivial on the Erlang
> level AFAICT. The problem is the Javascript "query server", which by
> now is full of stuff I personally don't use⦠some of them just for
> tests, some for "external", some for "show"/"list". I think we'll
> need to figure out a good way to split up good ole main.js (and
> maybe even couchjs) so that CouchDB only includes the commonly used
> parts, but extensions can add whatever they may need. The current
> approach of one "query_server" (which has long been misnomer) per
> language implementing all the hooks is going to break down pretty
> fast. Maybe, we should have [view_servers], [validation_servers],
> [render_servers], and so on, instead. Only with proper names.
>
> And for the record, I still think "show" and "list" are not good
> names for what they do :) But then again, if they'd get moved out
> into an external CouchApp plugin, I wouldn't have to care (as long
> as I don't become a CouchApp aficionado, that is).
+1 on making main.js less cluttered. The ripping apart of
couch_tests.js was well and needed and I feel the same for main.js
Cheers
Jan
--
|