coursera.org | Free online computer science courses | University style
A Crash Course in Data Science | Advanced Algorithms and Complexity | Advanced Data Structures in Java | Algorithmic Thinking | Algorithmic Toolbox | Algorithms for DNA Sequencing | Algorithms on Graphs and Trees | Algorithms on Strings | Algorithms | Algorithms: Design and Analysis | Analysis of Algorithms | Approximation Algorithms | Artificial Intelligence Planning | Automata | Big Data Science | Big Data and Cloud Computing | Bioconductor for Genomic Data Science | Bioinformatics Algorithms | Bitcoin and Cryptocurrency Technologies | Building a Data Science Team | Building an Information Risk Management Toolkit | Case-Based Introduction to Biostatistics | Cloud Computing Applications | Cloud Computing Concepts | Cloud Networking | Cluster Analysis in Data Mining | Command Line Tools for Genomic Data Science | Communicating Data Science Results | Compilers | Computational Methods for Data Analysis | Computational Neuroscience | Computer Architecture | Computer Networks | Computer Science 101 | Computer Security | Computer Vision: The Fundamentals | Computing for Data Analysis | Core Concepts in Data Analysis | Cryptography | Cybersecurity and Its Ten Domains | Data Analysis | Data Analysis and Statistical Inference | Data Analysis Tools | Data Management and Visualization | Data Science Capstone | Data Science in Real Life | Data Structures | Data Visualization | Developing Data Products | Discrete Inference and Learning in Artificial Vision | Discrete Optimization | Exploratory Data Analysis | Finding Hidden Messages in DNA (Bioinformatics I) | Fog Networks and the Internet of Things | Functional Programming Principles in Scala | General Game Playing | Genome Sequencing (Bioinformatics II) | Genomic Data Science with Galaxy | Getting and Cleaning Data | Graph Analytics for Big Data | Hadoop Platform and Application Framework | Hardware Security | Heterogeneous Parallel Programming | High Performance Scientific Computing | Interfacing with the Arduino | Interfacing with the Raspberry Pi | Internet Emerging Technologies | Internet History Technology and Security | Internet of Things: Communication Technologies | Internet of Things: How did we get here? | Internet of Things: Multimedia Technologies | Introduction to Big Data | Introduction to Big Data Analytics | Introduction to Bioinformatics | Introduction to Data Science | Introduction to Genomic Technologies | Introduction to Natural Language Processing | Introduction to OptoBotics℠ | Introduction to Recommender Systems | Introduction to Software Product Management | Linear and Discrete Optimization | Machine Learning | Machine Learning for Data Analysis | Machine Learning With Big Data | Machine Learning: Classification | Machine Learning: Clustering & Retrieval | Machine Learning: Regression | Managing Data Analysis | Mining Massive Datasets | Modeling Discrete Optimization | Molecular Evolution (Bioinformatics IV) | Natural Language Processing | Natural Language Processing | Networks Illustrated: Principles without Calculus | Networks: Friends | Money | and Bytes | Neural Networks for Machine Learning | Pattern Discovery in Data Mining | Practical Machine Learning | Practical Predictive Analytics: Models and Methods | Principles of Computing | Principles of Reactive Programming | Probabilistic Graphical Models | Process Mining: Data science in Action | Python for Genomic Data Science | Qualitative Research Methods | R Programming | Regression Modeling in Practice | Regression Models | Reproducible Research | Research Data Management and Sharing | Robotic Motion Systems | Scientific Computing | Smartphone Emerging Technologies | Social Network Analysis | Software Defined Networking | Software Security | Statistical Analysis of fMRI Data | Statistical Inference | Statistics for Genomic Data Science | Text Mining and Analytics | Text Retrieval and Search Engines | The Arduino Platform and C Programming | The Data Scientist’s Toolbox | Usable Security | Web Intelligence and Big Data | Wireless Communication Emerging Technologies
edx.org | Free online computer science courses | University style
Algorithms | Analyzing and Visualizing Data with Excel | Analyzing and Visualizing Data with Power BI | Artificial Intelligence | Autonomous Mobile Robots | Autonomous Navigation for Flying Robots | Big Data in Education | Case study: DNA methylation data analysis | Compliance in Office 365®: Data Governance | Computation Structures – Part 2: Computer Architecture | Computational Geometry: GIS, CAD, and Other Applications | Computer Graphics | Computing: Art, Magic, Science | CS For All: Introduction to Computer Science and Python Programming | Data Analysis: Take It to the MAX() | Data Analysis: Visualization and Dashboard Design | Data Analysis: Building Your Own Business Dashboard | Data Analysis for Genomics | Data Analysis for Life Sciences 1: Statistics and R | Data Analysis for Life Sciences 5: Introduction to Bioconductor: Annotation and Analysis of Genomes and Genomic Assays | Data Analysis for Life Sciences 6: High-performance Computing for Reproducible Genomics | Data Analysis for Life Sciences 7: Case Studies in Functional Genomics | Data Science and Machine Learning Essentials | Data Structures and Algorithm Design | Data, Analytics and Learning | Developing International Software | Enabling Technologies for Data Science and Analytics: The Internet of Things | Foundations of Data Analysis | Foundations of Data Analysis - Part 1: Statistics Using R | Foundations of Data Analysis - Part 2: Inferential Statistics | Foundations of Data Structures | How to Code: Systematic Program Design | Implementation of Data Structures | Implementing DHCP in Microsoft Windows Server | Implementing DNS in Microsoft Windows Server | Implementing Microsoft Windows Server Disks and Volumes | Implementing Predictive Analytics with Hadoop in Azure HDInsight | Implementing Real-Time Analysis with Hadoop in Azure HDInsight | Introduction to Applied Biostatistics: Statistics for Medical Research | Introduction to Big Data with Apache Spark | Introduction to Computational Thinking and Data Science | Introduction to Computer Science | Introduction to Computer Science and Programming | Introduction to Computer Science and Programming Using Python | Introduction to Linux | Introduction to Python for Data Science | Introduction to R Programming | Introduction to Real-Time Systems | Introduction to Statistical Methods for Gene Mapping | Introduction to Windows Server | Knowledge Management and Big Data in Business | Learning From Data | Machine Learning for Data Science and Analytics | Microsoft Enterprise Mobility Suite | MyCS: Computer Science for Beginners | Office 365: Managing Identities and Services | Optimizing Microsoft Windows Server Storage | Processing Big Data with Azure HDInsight | Quantitative Biology Workshop | Sabermetrics 101: Introduction to Baseball Analytics | Scalable Machine Learning | Statistical Thinking for Data Science and Analytics | The Beauty and Joy of Computing | Underactuated Robotics
Udacity.com | Free online computer science courses | Self-paced
Advanced Operating Systems | Applied Cryptography | Artificial Intelligence for Robotics | Computability, Complexity & Algorithms | Computer Networking | Configuring Linux Web Servers | Artificial Intelligence for Robotics: Programming a Robotic Car | Data Analysis with R | Data Visualization and D3.js | Deep Learning | Design of Computer Programs | Health Informatics in the Cloud | High Performance Computer Architecture | High Performance Computing | Intro to Algorithms | Intro to Artificial Intelligence | Intro to Computer Science | Intro to Data Analysis | Intro to Data Science | Intro to DevOps | Intro to Hadoop and MapReduce | Intro to Information Security | Intro to Machine Learning | Intro to Theoretical Computer Science | Introduction to Artificial Intelligence | Introduction to Computer Vision | Introduction to Operating Systems | Knowledge-Based AI: Cognitive Systems | Linux Command Line Basics | Machine Learning | Machine Learning 1—Supervised Learning | Machine Learning 2—Unsupervised Learning | Machine Learning for Trading | Model Building and Validation | Real-Time Analytics with Apache Storm | Reinforcement Learning | Software Architecture & Design
alison.com | Digital literacy and IT skills | Free self-paced short courses
Free options for online computer studies
There's a big range of free online computer courses. As well as picking a subject, you can choose a teaching/learning method.
- University-style courses are online versions of the kinds of computer science units you can study at university. They have start and end dates. Providers such as Coursera and edX deliver free computer courses from institutions such as the University of California and University of Washington.
- Self-paced modules are also available through providers such as Udacity. With self-paced courses, you work through material according to your own timetable. Udacity offers computer science courses from unis such as Stanford and the University of Virginia.
- Free short courses are a good option for quickly picking up some practical IT skills. They are self paced and allow you to quickly learn what you need to know. ALISON has a large number of basic computing courses.
You can also earn a degree in computer science fully online. However, degree programs always have tuition fees.