Any form of education or training that uses computer technology as an essential part of the teaching process. The term covers a broad range of goals and methodologies, but two features frequently found are that computerized data and programs substitute partly or completely for the human teacher; and that students engage with all or part of the course remotely, for example over the Internet from their homes.