A method of facilitating a skill learning process or improving performance of a task, comprising: determining a brainwave pattern reflecting neuronal activity of a skilled subject while engaged in a respective skill or task; processing the determined brainwave pattern with at least one automated processor; and subjecting a subject training in the respective skill or task to brain entrainment by a stimulus selected from the group consisting of one or more of a sensory excitation, a peripheral excitation, a transcranial excitation, and a deep brain stimulation, dependent on the processed temporal pattern extracted from brainwaves reflecting neuronal activity of the skilled subject.