One in every four students now take at least one class online, and during the fall 2014 term, 5.8 million college students were taking some of their classes — if not all of them — through distance learning. To keep up with increasing demand for online options, more and more schools are offering a variety of courses that can be completed remotely, allowing you more flexibility in learning. Looking to enroll in an online college? Browse our featured online programs below and request information from an online college today. Ready to enroll in an online college or explore distance learning opportunities tailored to your goals?

Since 2008, Academic Earth has worked diligently to compile an ever-growing collection of free online college courses from some of the most respected universities.
Introduction to Computer Science and Programming. Introduction to Algorithms. Programming Optimization: Techniques, examples and discussion. In the old days, it was pretty easy to understand that writing your programs in assembly would tend to yield higher performing results than writing in higher level languages.

Compilers had solved the problem of "optimization" in too general and simplistic a way, and had no hope of competing with the sly human assembly coder. These days the story is slightly different. Compilers have gotten better and the CPUs have gotten harder to optimize for. Inside some research organizations the general consensus is that compilers could do at least as well as humans in almost all cases.

During a presentation I gave to some folks at AT&T Bell labs (a former employer) I explained that I was going to implement a certain piece of software in assembly language, which raised eyebrows. But have compilers really gotten so good that humans cannot compete? Here's an off the cuff post from Anthony Tribelli on rec.games.programmer: For more, see Randall Hyde's Great Debate page.
Programming Challenges Audio. At its best, computer science is an exciting blend of programming, mathematics, and problem solving.

This course will introduce an interesting variety of subjects in programming, algorithms, and discrete mathematics though puzzles and problems which have appeared in the International ACM Programming Contest and similar venues. These audio lectures are derived from my course Programming Challenges taught at Stony Brook and based on the book Programming Challenges: The Programming Contest Training Manual by Steven S. Skiena and Miguel A. Revilla, Springer-Verlag, New York, 2003. Lecture notes and audio for the 2003 version of the course: