Speaking from personal experience, and having been confused by this duplication<br>in the past, the problems as I see them are:<br><br>a. More than one way of doing things. This means that there is duplication <br>between the hook_something() and hook_nodeapi('something').
<br><br>b. This duplication causes confusion to many developers (myself included).<br><br>I will leave others to comment on the details codewise, but here are the options, <br>in order of (my) preference:<br><br>1. Restricting node hooks to one way of doing things (hook_nodeapi). This means
<br>deprecating all hook_something() for node operations. This way there is no confusion.<br><br>2. Eliminating all the hook_something() that are duplicated by hook_nodeapi('something')<br>and do not suffer the drawbacks listed above. This may mean leaving the node_load()
<br>hook, and maybe others, and that is fine by me. Less confusion.<br><br>2a. Same as 2, but eliminate the nodeapi('something') that has an indispensible hook_something()<br>equivalent. This way we are back to one way of doing things.
<br><br>3. If the present scheme MUST stay as it is, then I don't know if documentation improvement will <br>be enough to overcome the drawbacks.<br><br>Other ideas?<br>