Neats Vs. Scruffies
Neat and scruffy are labels for two different types of artificial intelligence research. Neats consider that solutions should be elegant, clear and provably correct. Scruffies believe that intelligence is too complicated (or computationally intractable) to be solved with the sorts of homogeneous system such neat requirements usually mandate.
Much success in AI came from combining neat and scruffy approaches. For example, there are many cognitive models matching human psychological data built in Soar and ACT-R. Both of these systems have formal representations and execution systems, but the rules put into the systems to create the models are generated ad hoc.
Read more about Neats Vs. Scruffies: History, Typical Methodologies, Relation To Philosophy and Human Intelligence, Well-known Neats and Scruffies