Forum OpenACS Q&A: Response to Article on ACS x Zope

Collapse
Posted by Michael Feldstein on
Interestingly, I think ACS (in general, including both Classic and Open flavors) has historically had a diametrically opposed approach to Zope's in terms of the priority they place on the needs of the different classes of users. I think ACS has mainly catered to 1 (core developers), 2 (power users), and 5 (end users), in that order. You'd have to say that (historically) the core group has been the one most catered to, since aD built ACS for themselves, primarily, and since the whole focus on tcl and sql is to keep development simple. There is also a gentle slope from being a 2 to becoming a 1. In fact, one of the main purposes aD had for GPLing ACS was to find more 2s, convert them to 1s, and convince them to work for aD And, of course,5 is big because ACS was built to be used by a community (and by aD's clients). Next comes the 3 (content managers) group, although I think that 3 is a bit hard to measure against Zope since we don't yet have a good content management system. ACS users can control the "presentation and the logic" of the site somewhat through the admin pages, but that's not the same as being a "content manager". The 4 group is way down at the bottom of the totem poll, although both aD and OpenACS teams are working on solutions that will at least make life at the bottom a bit more tolerable.

The differences between the ACS and Zope camps around user priorities may help explain why the two groups don't always seem to be speaking the same language. Although I think both sides have been implicitly talking about the group that Chris has labeled 2s and that I have been calling "power users," it may turn out that the OpenACS community has been talking about the needs of an entirely different group of people (with different aspirations) than the Zope community has been talking about, even though we think we're talking about the same people.

Most core ACSers are either 1s who used to be 2s or 2s aspiring to become 1s. I think there's a certain fix-your-own-car or assemble-your-own-PC pride among the core ACS community. The ACS power users lke being able to dig into the guts of the system. It gives them a sense of control.

In the Zope community, on the other hand, the 1s are a very different group from the 2s and, in many cases, never the twain shall meet. They're the OSS Web Toolkit for the Rest of Us; their power users don't necessarily want to know what the guts of the beast look like as long as the damned thing works.

If I'm right, then the issue of the learning curve (which we've talked about quite a bit) changes entirely. Whose learning curve are we talking about and what to they think is at the top of the curve? To a certain degree, different kinds of power users (looking for different kinds of power) go to Zope or to ACS for similar reasons that different kinds of power users choose PCs or Macs (or Linux, or whatever) as their primary platform.

It would also mean that, in order to get a meaningful comparison of tradeoffs, we'd have to lay a whole bunch of tasks to be performed by the different user types side-by-side to get a complete comparison. It may turn out that there's an "elegance" factor in Zope--for one or more of the 5 groups--that we're not seeing because the ACS crowd is more focused on simplicity (and therefore elegance) of an entirely different sort.  That doesn't negate the objective issues, but it does mean we have to be sure we're always comparing...er...apples to apples.

Hope I haven't offended anyone here. These are very rough characterizations, and I'm not yet sure that they're true (or interesting to anyone but me). But I do think we're onto something  here. I think the differences in software engineering aesthetics (AKA "religion") may be a bit broader than we've talked about so far.