Aside from the whole Duplo issue, what specific problems have you seen with !CATEGORY statements in official files? I did a quick scan, and most of the files that I looked at that used !CATEGORY were good (like 2038 "Signpost Ornamented" with a !CATEGORY of Roadsign). I will admit that I'm unsure why the Belville Bathtub is a "Container".
Note: I agree that Duplo parts shouldn't be lumped with the other parts. My personal opinion there is that they should all have multi-word categories, with "Duplo" being the first word. Having said that, you could hack that in programatically, by looking for "Duplo" in the part description. It's not clean, but it solves the problem, and unless there are a bunch of other hacks needed to make things work, it might not be a bad idea.
I also agree that lumping the patterned parts in makes building more difficult. I could see either creating categories for these (like "Patterned Brick") or doing programatically recognizing "Pattern" in the part description, just like my suggestion for "Duplo". Of course, now I've already suggested this for two separate part description keywords, and there could be others, which would rapidly get messy. On the other hand, if it's just these two, it's still not too bad, and you could even make it user-configurable ("Separate Duplo and patterned elements into their own categories").
Note: I agree that Duplo parts shouldn't be lumped with the other parts. My personal opinion there is that they should all have multi-word categories, with "Duplo" being the first word. Having said that, you could hack that in programatically, by looking for "Duplo" in the part description. It's not clean, but it solves the problem, and unless there are a bunch of other hacks needed to make things work, it might not be a bad idea.
I also agree that lumping the patterned parts in makes building more difficult. I could see either creating categories for these (like "Patterned Brick") or doing programatically recognizing "Pattern" in the part description, just like my suggestion for "Duplo". Of course, now I've already suggested this for two separate part description keywords, and there could be others, which would rapidly get messy. On the other hand, if it's just these two, it's still not too bad, and you could even make it user-configurable ("Separate Duplo and patterned elements into their own categories").