You are absolutely correct.
However, Element Category Access provides access to an entire Element Category. If you categorize in a manner similar to name-spacing (which many do), you can't lock down individual components of the same code. Of course, like anything else... how it is used will determine its usefulness.
An aside, changing Element ACLs via the front-end seems to me that it would introduce a bunch of security holes.
I haven't been able to break down the code into individual parts without writing a ton of support snippets. The code to merge all child files into one run-able file is exactly 45 lines (and that it with very liberal comments). Under Snippets, I was not able to do this reliably. I got to approx. 9 individual backend snippets (and I'm estimating...) and 350 lines of code before I quit.
I generally feel that resource groups are much more flexible than ACLs. A lot of time and energy was put into the resource and template parsers and it seems to me that is where the best optimizations in ModX occur.
So, for me, the big deal was for debugging (searchability) and security. I wanted a front-end editor that supported features similar to intellisense for your own code and some great tooltips over the individual parts. And, as I said, I'm an Object Oriented Programmer, so there are other neat perks that I
must have.
So, really, this whole thing was about my ability to code and debug super fast. Since I teach other programmers, I needed them to be able to do the same thing. I just finished the bulk of the front-end editor last night, so when I do the screencast for that, we'll see how it turned out.
Thanks so much for the active comments, by the way! They help a lot! I feel, at this point, that I must say: "I'm not knocking ModX or its capabilities at all." I chose ModX over Drupal and the others specifically because of its philosophy on how it contains, manages and parses Elements and Resources. It's cleaner, faster and easier to develop in by a long shot. And there are no complicated libraries to learn. Most important, it encourages its developers to do the same thing. Think concisely, code precisely, and reap the rewards. I'm trying to accomplish the same thing, but add to the environment in my own way. I feel like this accomplishes this while adding even more to the incredible flexibility of the platform as a whole.
[ed. note: fuzzicallogic last edited this post 11 years, 9 months ago.]