Online Computer Science Courses: MOOCs for Techies, Programmers and Other CS Enthusiasts

One of the most amazing innovations in online learning over the past few years has been the growth and development of massive open online courses, better known as MOOCs. Generally speaking, MOOCs are college-level courses made available, free of charge, for unlimited participation by any and all students interested in the subject matter. MOOCs are often offered by highly prestigious colleges and universities like Harvard, Stanford and, most predominantly, MIT, and taught by the same professors and instructors that teach them on their famous campuses.

Given the recent appearance of MOOCs in the virtual world, it’s not surprising that one of the most popular academic subjects for MOOC classes is computer science. There are literally dozens of courses available on both the undergraduate and graduate levels across the breadth of computer-related topics. Below you will find the course titles and links to some of the most popular computer science MOOCs.

Computer Engineering

Computer engineering refers to the integration of electronic engineering and the digital world. It is often confused with computer science, but is its own distinct field. Computer engineers are educated to design both software and firmware, and integrate them into new and existing hardware. Computer engineering includes the development of computer-related components of practically every kind including microprocessors, circuit boards, analog sensors, chips, robotics, and many, many others. Degree programs in computer engineering are quite popular on college and university campuses around the world.

Computer engineering is also a popular subject for MOOCs, with a wealth of both introductory and advanced courses offered. Students interested in a career in the computer sciences may find one of the below-listed MOOCs a good place to begin their research into the field.

computer forensics

Are you someone that is fascinated by both computers and the law? If so, you may be interested in a career in computer forensics. Computer forensics is the branch of computer science concerned with the investigation, collection and analysis of digital information to be used as evidence in criminal and civil legal proceedings. Experts in computer forensics are also involved in the development of techniques and equipment for rooting out criminal activity in computer systems and other digital storage media.

The exciting field of computer forensics is a rapidly growing one among students and postsecondary institutions alike. New courses are being developed all the time. Here are a number of the open online courses currently available to prospective computer forensic professionals.

Computer Networking

Computer networking is the area of computer science that is concerned with how digital devices communicate between one another. It incorporates aspects of a number of related fields such as computer engineering, information technology, computer science, data storage and maintenance, programming and telecommunications. Sub-topics that fall under the computer networking heading include local area networks (LAN), wide area networks (WAN), network design, network protocols, home networking, wired and wireless networking, and many others. Computer networking also involves internet-related services like peer-to-peer (P2P) file sharing systems and public web sites.

MOOC courses in computer networking are numerous and provide a substantial glimpse into the field of digital communications. Taking one or more of the courses listed here may help you decide if a future in computer networking is right for you.

Computer Programming

Computer programming, simply put, is the process of writing code and creating software programs that tell computers what to do. More specifically, computer programmers take the designs and work of engineers and software developers and, through the use of any number of computer languages, author the instructions that a computer can follow. Computer programmers also update and expand on existing programs and debug programs by testing and fixing coding errors. They additionally reference code libraries and develop software to automate or simplify their writing tasks.

Computer programming MOOCs are available for several computer languages and provide an excellent introduction to the fundamentals of programming. Other courses are designed for experienced code writers to expand and deepen their programming knowledge.

Cyber Security

You can’t turn on the news today without hearing something about worries over potential or actual security breaches in the government or public computer systems, or the theft of private financial data. Preventing these thefts and breaches is what cyber security is all about. The growing number of cyber attacks has led to a rapidly expanding need for more sophisticated techniques to resist them and for more professionals in the cyber security field.

Anyone interested in a career in the computer sciences would do well to consider the sub-field of cyber security. MOOC courses in cyber security are offered in several related topics including cyber terrorism, cyber espionage and cyber warfare, a number of which are listed below.

Course Title School
Cryptography University of Maryland
Cryptography II Stanford
Cybersecurity and CISSP Kennesaw State University
Hardware Security University of Maryland
Network and Computer Security MIT
Selected Topics in Cryptography MIT
Usable Security University of Maryland

Database Administration

Database administration (also known as DBA) is the area of computer science that focuses on the management of database systems. More specifically, DBA involves the installation, configuration, monitoring and maintenance of data management systems for virtually any type of business or organization. DBA professionals create and develop databases, ensure efficient database access and operation, backup and restore data to prevent the loss of information and secure database systems to keep them from being hacked or stolen. There are two common DBA specialties: system DBA, which concerns the physical and technical aspects of a database; and application DBA, which deals with databases designed for particular applications.

The MOOCs listed below represent a sampling of the free courses available online for students interested in database administration.

Information Security

Information security concerns the protection of information from unauthorized access, use, modification or destruction. In regard to the digital world, the terms “information security” and “cyber security” are often used interchangeably. However, many professionals distinguish the two, using the term “information security” in reference to the protection of personal information and information systems in any realm, while using the term “cyber security” in regard to a larger, more universal information infrastructure. Information security often includes such topics as password protection, antivirus and malware protection, personal privacy and the encoding of data.

Information security is also similar to cyber security in that both career fields are rapidly growing. Anyone interested in the information security profession may want to consider taking one of the several MOOC offerings listed below.

Information Technology

Information technology (commonly referred to as IT) covers a broad range of computer science subjects involving the use of computers and telecommunications equipment to store, transmit and retrieve data of all kinds for individuals, businesses and other organizations. The term encompasses computers and computer networks, as well as other data storage and delivery components including television, telephones, the internet and satellite systems.

By definition, the IT field is one that overlaps with any number of other computer science subject areas. Therefore, anyone seriously thinking about the computer science profession will find IT a good place to start his or her career research. To learn more about information technology, consider enrolling in one of the MOOC classes listed below.

Software Engineering

Software engineering is the computer science discipline related to the application of engineering principles to the creation and development of computer software. Software engineering is closely related to computer programming and the two terms are often used interchangeably. There is a difference, however, in regard to scope. Software engineers focus more on the overall design of software, while programmers focus on turning an engineer’s design into a usable form by writing the code that a computer can understand.

Becoming a software engineering professional requires earning a college degree. Enrolling in one or more MOOC courses is a good way to find out if software engineering is right for you before investing the time and money in a degree program.

Web Development

Web development is a term broadly employed to describe any work involved in the development of a web site for the internet or a private network. As with many other computer science subjects, the boundaries defining one field from another are often blurred and involve a good deal of overlap. This is certainly true regarding the fields of web development and web design. Web design deals more with the overall visual appearance and ease of use of a website while web development focuses more on the inner workings and applicable coding employed. Nevertheless, the terms are often used interchangeably.

The MOOC classes listed below encompass the broader boundaries of the web development field and include courses on web basics as well as more advanced topics.