CCK is Dangerously Sexy in Drupal 5.0
CCK no longer neuters nodes. To clear the record, CCK is drupal's most kick ass contributed module, and I recommend it in just about any situation and enviroment.
My reasoning for this 180 degree reversal in opinion are firstly two new modules included in cck:
content_copy.module -- this module allows you to import/export CCK node types from installation to installation. Using drupal_macro() (found in the devel.module), or drupal_execute(), one could theoretically automate these imports in .install file. I know its possible, but I haven'yet completely worked out some details... (namely, that CCK node tables don't appear to exist at the moment drupal_execute, or macro is executed). maybe I'm just an idiot... I don't know....
I'll write up the solution as soon as I have time to solve it.
fieldgroup.module -- this module allows you to organize your node form fields arbitraily into fieldsets, with controls for weight, and labels included. I couldn't ask for more.
Secondly, some changes in drupal 5 have made CCK an unbelievably powerful tool for developers. In drupal 5, CCK can add fields to any node type -- does your blog post need a special image field? CCK+ imagefield can do it in 3 minutes (including installation times, assuming you know how to use a shell...)
Thirdly, CCK appears to be the future of drupal, so better join the CCK crew now, before its to late.
Finally, in drupal 5, CCK can interact with node hooks.
Soon, I hope to leave work with enough energy to write a tutorial on CCK and node hooks, but for now, I can only give you the clue:
In hook_node_info() declare your node types, and set 'module' to whatever module you are developing. Add your fields using CCK, and your module's view, validate, submit, prepare, form, insert, update hooks will all have your cck node data available.
Now, back to the salt mines for me....