Best computer science resource 2021: Top options

(Image: Shutterstock)

There are many online educational resources that tailor to helping computer science majors and professionals. Many computer science resources are available completely for free. 

You can leverage mobile apps, open online courses, websites, podcasts, and blogs to supplement computer science degree materials. Resources such as blogs and podcasts can also help with continuing education. It pays to keep abreast of industry news and discussion in the fast-moving world of computer technology.

Apps to learn and practice coding

There are dozens of apps — many of them free — that allow mobile phone users to learn to code. These apps have made learning to code more convenient than ever, and, for beginners, easier than ever. Coding apps like those listed below can even help experienced programmers or supplement college courses.

Available on: Android and iOS

Learn: HTML, CSS, JavaScript, Python, Node, React, Java, Swift

Description: Codemurai uses thousands of mini-lessons created by industry leaders to teach all the most popular coding languages, including JavaScript, Python, and HTML, along with over a dozen more. Lessons cover the foundations of web, game, and mobile app development.


View Now at Apple App Store


Google Play Store

Available on: Android and iOS

Learn: Java

Description: Easy Coder is a mobile app for learning Java that utilizes short, interactive lessons, quizzes, and programming challenges to teach fundamental programming concepts. The app’s built-in Java compiler allows learners to instantly test code as they learn.


View Now at Easy Coder

Available on: Android and iOS

Learn: Python, JavaScript, HTML, CSS

Description: Encode is an Android-only app that teaches the major coding languages, consisting of short mini-lessons followed by interactive challenges. The app does not require an internet connection to run, allowing learners to use it virtually anywhere.


View Now at Apple App Store


Google Play Store

Available on: Android and iOS

Learn: JavaScript, Java, Python, React, SQL

Description: Enki is a popular free app for learning how to code, designed for daily use in short sessions. Lessons, practices, and quizzes use spaced repetition algorithms that adapt to learners’ individual needs. Learners can also buy a subscription plan to access certain advanced lessons.


View Now at Enki

Available on: Android, iOS, Desktop

Learn: JavaScript

Description: Grasshopper teaches beginner to intermediate level JavaScript using a game-like structure. The app uses interactive visual puzzles and real-time feedback to supplement short lessons and quizzes and to boost problem-solving skills. Learners can even collect virtual achievements as they develop their skills.


View Now at Grasshopper

Available on: Android and iOS

Learn: HTML, CSS, JavaScript, SQL, C++, Swift, Python

Description: Mimo is an app for teaching beginner-level coding fundamentals through interactive mini-lessons designed for daily use in short blocks. The app’s structure often resembles a game, with various achievements and badges offered for positive reinforcement as learners progress.


View Now at Mimo

Available on: Android and iOS

Learn: HTML, CSS, Bootstrap, JavaScript

Description: Programming Hero teaches coding fundamentals for web, mobile app, and game development using a combination of self-guided mini-projects and game-like design features. While users complete short programming projects, challenges, and exercises, they can design their own game from scratch.


View Now at Programming Hero

Available on: Android and iOS

Learn: Python, Assembly, HTML, C++, JavaScript, CSS, Java

Description: Programming Hub is Google’s Editor’s Choice app for learning coding, and was developed in part by Google experts. The app caters largely to intermediate learners looking to learn multiple coding languages. Completion of the app’s different courses results in an e-certification.


View Now at Programming Hub

Available on: Android and iOS

Learn: HTML5, CSS3, JavaScript, Python, Java, C++, PHP, SQL, Swift

Description: Solo Learn is a free app that offers over 20 courses on coding fundamentals such as Python, JavaScript, and data science. Students can also use the online code playground to test code. Completing courses results in earning a professional certification.


View Now at Sololearn

Online computer science courses

There are currently many providers for online open courses in computer science, some of them from top colleges and universities. Auditing computer science courses for free can arm you with new knowledge at no cost. You can also pay to take online computer science courses to earn a certification or college credit.

Class Central is a search engine for Massive Open Online Courses (MOOCs), free online courses available for anyone to enroll. Through the search engine, students can find free online computer science courses at top schools, along with reviews and other helpful feedback.


View Now at Class Central

Codecademy is an online platform that offers free courses in 12 different coding languages, including JavaScript, Python, and CSS. Learners get free daily practice and interactive lessons with a basic plan. For $19.99 monthly under an annual plan, students can get additional practice and support.


View Now at Codeacademy

Coursera is a popular MOOC provider that works with hundreds of colleges and universities worldwide. Auditing courses through the Coursera platform is free, but earning grades or certificates requires you to pay. A membership to earn professional certificates through Coursera costs $39 monthly.


View Now at Coursera

edX is an MOOC provider created by Harvard and MIT that features fully online mini-degree and certificate programs in a variety of areas, including computer science and coding. Auditing courses is free, but for students in a certificate program, individual courses cost between $50-$300.


View Now at edX

Khan Academy is a nonprofit that offers free online educational materials on a variety of subjects, including computer programming. A typical Khan Academy course consists of a series of short videos accompanied by practice exercises. Educators often use this platform to supplement classroom learning.


View Now at Khan Academy

MIT OpenCourseware is a free online collection of nearly all of MIT’s undergraduate and graduate course materials, including video lectures, textbooks, and web demonstrations. MIT is a preeminent university for computer science, making this archive a goldmine for people interested in programming and coding.


View Now at MIT OpenCourseware

Founded by Stanford instructors, Udacity is a for-profit MOOC platform that offers free courses in computer science and programming, as well as professional certifications and Udacity Nanodegrees. Nanodegrees, abbreviated degree programs in coding and computer programming topics, typically cost $700-$15,000.


View Now at Udacity

Udemy is a MOOC provider that primarily tailors to nontraditional students. The platform features both free and paid courses as well as certificates in computer science and programming. Most paid courses on Udemy cost $20-$200, though the site routinely offers discounts and coupons to members via email.


View Now at Udemy

Computer science networking, forums, and inspiration

You can build your coding skills and knowledge of computer science concepts by immersing yourself in online communities for networking and inspiration. These resources can help you find answers to tough questions and helpful feedback in a pinch. You can also find computer science job opportunities and internships through networking sites and online communities.

CodePen is an online web development community for testing and sharing user-created code snippets. The ability to gain live feedback on your code-writing from a community of all skill levels makes this an essential resource for people learning to code.


View Now at CodePen

Coderwall is a collaborative learning platform for software developers. Beginners can find abundant programming tips, knowledge, and tools on Coderwall in a variety of topics, including JavaScript, iOS, and front-end development. The site also features a regularly updated job postings section.


View Now at Coderwall

GitHub is an online platform for collaborative software projects. Developers use GitHub to edit software together while keeping track of each others’ changes. Beginning developers can expect to encounter this site early on, because it is a popular and useful platform for collaborative work.


View Now at GitHub

LinkedIn is a social media site for professional networking. People use LinkedIn to manage their professional image, share their credentials, and apply for jobs. If you are a beginning level developer or student, a LinkedIn profile is a great platform for giving your portfolio visibility.


View Now at LinkedIn

Stack Overflow is a question and answer site for computer programming. Site members can join teams, earn points for helpful posts, and edit questions and answers. Many coders use Stack Overflow as a knowledge base or way to get quick, direct answers to questions.


View Now at Stack Overflow

Computer science podcasts

Computer science podcasts can offer a ton of interesting computer science-related discussion and information to people who prefer or need auditory processing over reading. Because you can listen to podcasts on the go, they offer convenience. A good podcast also offers the entertainment value of overhearing a conversation between interesting people.

Available on: Apple, Spotify, Google Play

CodeNewbie is an educational podcast series on topics in computer programming hosted by developer Saron Yitbarek. The weekly series spotlights helpful tips for beginning level coders, with each episode featuring an interview/conversation with a different STEM professional on a given topic.


View Now at CodeNewbie

Available on: Apple, podtail, Listen Notes

The Computer Science podcast was established by Oxford University to give everyday listeners access to talks on topics in computer science such as computational linguistics, quantum computing, and software engineering from Professor Nick Trefethen. The series typically puts out a new episode every few months.


View Now at Oxford University

Available on: Apple, podtail, Listen Notes

The Mike Tech Show is a podcast hosted by developer Mike Smith about software development and information technology. The show focuses mainly on productivity tips for tech professionals, with Smith occasionally telling tech-related stories from his own professional experiences and emails from listeners.


View Now at Mike Tech Show

Available on: Apple, Google Play, Spotify

Podnutz Pro is a tech culture podcast on business IT tips and support, hosted by Jeff Halash and a revolving door of other tech professionals. The podcast is part of the Podnutz network of podcasts for professional tips on tech topics.


View Now at Podnutz Pro

Available on: Apple, Spotify, Google Play

Spark is a Canadian tech radio show hosted by broadcaster Nora Young since 2007. The show, now available as a podcast, touches on issues in tech culture. Recent guests have included Louisa Ha, who spoke with Young about YouTube’s role as a cultural artifact.


View Now at CBC

Blogs on the computer science industry

Blogs on technology, computer science, and programming can provide you with helpful tips, inspiration, and answers to tough questions. Keep in mind that there are blogs for nearly every interest. If it is your passion or degree concentration, there is likely a blog for it.

BetterProgramming is a blog for better programming tips published through Medium. Multiple contributors publish articles to the site daily, with an audience of beginner-to-intermediate coders in mind. While most posts focus on technical issues, others discuss general lifestyle habits or have a humorous slant.


View Now at BetterProgramming

CodeWall is a blog for web development and programming based in the UK. Multiple contributors update the blog on a monthly basis. The blog’s “Contributors” header organizes posts by programming language for easier navigation for beginners.


View Now at CodeWall

Started in 2009, the Codrops blog focuses primarily on front-end web development and web design. The feed updates multiple times weekly with posts from various contributors, which are usually either articles or tutorials on web development and design techniques.


View Now at Codrops

Embedded in Academia is a blog on computer programming and science run by Professor of Computer Science John Regehr. The blog, usually updated monthly, tends to focus on resolving specific software issues, but also touches on interdisciplinary academic topics.


View Now at Embedded in Academia

Google AI Blog is the frequently updated news feed for Google AI, the artificial intelligence division of Google. Contributors — various software engineers in Google’s employ — also use blog posts to discuss contemporary issues and theory in robotics and AI.


View Now at Google AI Blog

Active since 1899, MIT Technology Review is a media company devoted to the latest news and discussion on new technology. The Review publishes a print magazine and a blog. Blog post topics encompass biotechnology, computer science, and artificial intelligence, among many others.


View Now at MIT Technology Review

O’Reilly Radar is the news/blog division of O’Reilly Media, a tech education company founded by Silicon Valley entrepreneur Tim O’Reilly. The blog’s content tends to focus around business and tech-related issues, trends, and cultural commentary.


View Now at O’Reilly Radar

Treehouse, an online coding education resource, regularly updates a blog on course materials, programming languages, and cultural competency issues in tech. Blog posts are organized into six categories for easy navigation: Business Resources, Career Advice, Community, Engineering People Podcast, Learn, and Treehouse News.


View Now at Treehouse

In conclusion

Online computer science resources such as apps, courses, podcasts, and blogs can provide you with news, helpful tips, and even a community. It never hurts to access every resource at your fingertips, especially those available for free. However, remember that it is easier to stay passionate about computer science when you know how to balance it out and make time for yourself.