Procedural knowledge, or implicit knowledge is different from other kinds of knowledge, such as declarative knowledge, in that it can be directly applied to a task. For instance, the procedural knowledge one uses to solve problems differs from the declarative knowledge one possesses about problem solving because this knowledge is formed by doing.[1]
In some legal systems, such procedural knowledge has been considered the intellectual property of a company, and can be transferred when that company is purchased.
One limitation of procedural knowledge is its job-dependence; thus it tends to be less general than declarative knowledge. For example, a computer expert might have knowledge about a computer algorithm in multiple languages, or in pseudo-code, whereas a Visual Basic programmer might only know about a specific implementation of that algorithm, written in Visual Basic. Thus the 'hands-on' expertise and experience of the Visual Basic programmer might be of commercial value only to Microsoft job-shops, for example.
One advantage of procedural knowledge is that it can involve more senses, such as hands-on experience, practice at solving problems, understanding of the limitations of a specific solution, etc. Thus procedural knowledge can frequently eclipse theory.