Online computer programming degrees are available from a number of universities at various levels, most often as graduate certificates or master's degrees. For these graduate-level programs, students should have an undergraduate degree that includes foundational computer science courses. Lectures, discussion and assignments are all handled online, but master's degree students may need to go to the campus or a testing center to take proctored exams. Field-specific software and hardware may also be required. Credits earned through a graduate certificate program may transfer to master's degree requirements.
Both certificate and master's degree programs are focused on advanced aspects of computer programming, such as programming languages, computer security and databases. Master's degree programs typically take a more in-depth look at these issues.
Graduate Certificate in Computer Programming
Distance learning certificate programs in computer programming often emphasize Java, an object-oriented programming language. Students hand-code, test and debug their programming assignments. Often, the curriculum of an online program is identical to its on-campus counterpart.
Most universities expect students to have strong backgrounds in math or engineering. Most computer programming certificate programs occur at the graduate level and, therefore, require that applicants hold bachelor's degrees. A PC or Mac with a recent operating system plus adequate hard drive space, memory and processing power is required to run test code. Lectures are delivered via Adobe Flash or compressed video, and students must have the appropriate software, such as Flash, QuickTime, VideoLan or Windows Media Player, to play back the lectures.
Most certificate programs can be completed entirely online. Students should be aware that universities check students' programming code very carefully for plagiarism.
Coursework in computer science and programming revolves around topics like security, languages, operating systems, databases and networking. Many universities allow students to transfer online certificate course credits into graduate degree programs.
Students learn how malicious software can compromise code. Malware, exploits, data integrity and networking safety protocols are some of the topics covered.
Database management involves the storage and retrieval of data, including how it is encoded and how users may access it through querying. Students learn database languages and relational database models.
These courses cover common operating systems, such as Windows, Mac and Linux, and how to program for them. Topics include file systems, virtual memory, security and task scheduling.
This course covers the basics of how to design software. Students learn how to create programs with object-oriented programming languages, such as Java, and how to analyze and debug their code.
Master of Science in Computer Programming
An online master's degree program in computer programming contains in-depth coursework in areas like networking, security, algorithms, operating systems and database management. Instead of being given online, midterms and final exams are often proctored and occur at locations convenient to the student. Classes are scheduled in a synchronous manner, so that students may participate in online discussion with their professors and each other, either via Web chat or message boards.
Students are expected to have bachelor's degrees in computer-related fields; otherwise, they may have to take prerequisite courses before being formally admitted to the program. Course credit earned through graduate certificate programs may be transferrable into master's degree programs.
Technical requirements include a computer with a recent operating system, such as Windows XP, Windows Vista, Windows 7 or Mac OS 10 and higher. An office suite, such as Microsoft Office or OpenOffice, may also be required. Many universities offer student discounts on the Microsoft Office suite. Most online programs suggest that students use high-speed Internet access instead of dial-up, especially if lectures are being delivered via video.
Computer programming courses cover topics like 3D modeling, algorithms, artificial intelligence, networking and parallel computing. Many programs offer thesis and non-thesis tracks.
A course in artificial intelligence (AI) covers programming languages like Prolog and Lisp. Students also conduct research in the area of robotics and consider the ethical implications of AI.
A class in 3D modeling focuses on commonly used software and algorithms used to render 3D objects and transfer 2D models to 3D models. Students also learn about animation modeling and rendering.
This class usually involves a large-scale design project which may be completed individually or in a group, depending on the particular program. Coursework emphasizes problem analysis, program design, coding and debugging. Students test and debug their code with an emphasis on sound testing techniques and reliable results.
Many graduates go on to become programmers or software engineers who write, modify, debug and compile code. An engineer may create an entirely new system, while a programmer may make modifications to one that has already been developed.
Demand for computer programmers was predicted by the U.S. Bureau of Labor Statistics (BLS) to be slower than average, with an 8% decline in employment expected during 2014-2024 time period. Job openings for software developers were predicted to increase at the faster-than-average rate of 17% during the same period. In 2015, computer programmers earned a median annual salary of $79,530. Software developers who work with systems software earned a median annual salary of $105,570, while software developers working with applications earned a median of $98,260 in 2015, according to the BLS.
Continuing Education Information
Students who earn online graduate certificates and master's degrees in computer programming often take certification exams from vendors such as CompTIA and Microsoft. Programmers typically have to learn new programming languages throughout their careers because current languages often become obsolete as new languages are developed.
Computer programming programs are available online at the graduate certificate and master's degree levels. These programs provide instruction in areas such as computer security, database management, operating systems, artificial intelligence, software engineering and 3-D modeling.