Adding one more house rule, which we don't like to do normally:
Spellcraft as a skill is abolished. Appropriate knowledge skills take it's place. So for a wizard learning a new spell, knowledge arcana (same DC). For determining what spell an opponent is casting, use the skill tied to that class (so to determine what a cleric or oracle is doing, use knowledge (religion), for a wizard or sorcerer, knowledge (arcana). For druids, knowledge (nature), etc. If you don't have the correct skill, you don't have a chance to do it.
To identify an item, do the same thing. You make a single knowledge check role, and apply each bonus. If the correct knowledge check is high enough, you recognize the item. For items that don't require a spell as a component, any applicable spell will do.
Example: A ring of invisibility. The DC to recognize this is 15+ minimum caster level (3) = 18. Invisibility is an arcane spell, so the appropriate knowledge is arcana. No other knowledge check will get you the result.
Bob the Cleric has only knowledge (religion). Bob cannot identify the ring.
Spedge the Wizard has knowledge (arcana). If his check is an 18 or higher, he identifies the ring.
Dave the bard has both skills. He rolls a single die roll, and adds that roll to each of his knowledge skills *separately*, and if the *appropriate* check is high enough, he knows it is a ring of invisibility. If his roll fails but is at least a 15, he knows that it is arcane.
The advantage of this from the PCs point of view is that it frees up a skill point for a caster. From the DM's point of view, it forces the party to broaden their skill base. It also removes a redundancy from the game.
Note: This gives wizards, sorcerers, and bards a significant advantage over other spell casters, as they have access to the identify spell, which nobody else gets (except for a domain, IIRC). A qualifier added to the spell would be that when identify is cast, the knowledge it is being added to has to be named at the time of the casting...And since an untrained knowledge skill check maxes out at 10, it's useless if the caster hasn't got at least one rank in the appropriate skill (except for bards, who can use knowledge skills untrained.)
This would *imply* that identify be added to the spell lists of other casting classes as a 2nd level spell instead of a 1st level spell, but this is still under discussion.