Skip to content

A collection of curated resources for learning Computer Science subjects and skills, that I garnered throughout my tenure as a CSE student. Contributions, and report of broken links are welcome.

Notifications You must be signed in to change notification settings

siddeshas07/CSE-resources

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 

Repository files navigation

CSE-resources

A collection of curated resources for learning Computer Science subjects and skills, that I garnered throughout my tenure as a CSE student. Contributions to this list, and reports of broken links or other errors, are welcome.

Semester Subjects

The following are resources for most of the subjects I took / am still taking as a CS undergrad in univ. The resources are mainly courses, and additionally some extra useful tools while taking those courses.

Algorithm Analysis and Design

  1. Introduction to Algorithms (MIT OCW)
  2. Design and Analysis of Algorithms (MIT OCW)
  3. Algorithms: Design and Analysis (Stanford Lagunita)
  4. Design And Analysis of Algorithms (NPTEL)

Automata Theory

  1. Computer Science - Theory of Computation (NPTEL)
  2. TOC (Ravindrababu Ravula)
  3. Automata Theory (Stanford Lagunita)

Compilers

  1. Compilers (Stanford Lagunita)
  2. Compilers: Theory and Practise (Udacity)

Computer Networks

  1. Computer Networks (Tanenbaum, Wetherall)
  2. Introduction to Computer Networking (Stanford Lagunita)
  3. Computer Networks (Ravindrababu Ravula)
  4. Simulate your network compnenets: Cisco Packet Tracer

Computer Organization and Architecutre

  1. Computer Organization (Bilkent University)
  2. High Performance Computer Architecutre (Udacity)
  3. Computer Architecture and Organization (NPTEL)

Database Management Systems

  1. Database Systems Concepts (Udacity)
  2. Database Mini-Courses (Stanford Lagunita) ‐ a set of smaller self-paced "mini-courses", which can be assembled in a variety of ways to learn about different aspects of databases.
  3. Intro to SQL: Querying and managing data (Khan Academy)
  4. Practise SQL queries: SQL Fiddle

Discrete Mathematics

  1. Mathematics for Computer Science (MIT OCW)
  2. Discrete Mathematics (NPTEL)

Operating Systems

  1. Introduction to Operating Systems (Udacity)
  2. Set of slides, virtual OS, and other OS-related resources: www.os-book.com
  3. Operating Systems (Ravindrababu Ravula)

Software Engineering

  1. Software Development Process
  2. Create UML diagrams: Visual Paradigm

Developer Skills

I have referred to mostly the following resources while trying to gather skills as a CS developer.

Android App Developement

  1. Developing Android Apps (Udacity)

Web Development

Front-End

  1. Intro to HTML/CSS: Making webpages (Khan Academy)
  2. Intro to JS: Drawing & Animation (Khan Academy)
  3. HTML/JS: Making webpages interactive (Khan Academy)
  4. HTML/JS: Making webpages interactive with jQuery (Khan Academy)
  5. Responsive Web Design Fundamentals (Udacity)
  6. Bootstrap 4.1

Back-End

  1. Django Tutorail (The Net Ninja)

Databases

  1. Intro to SQL: Querying and managing data (Khan Academy)
  2. Practise SQL queries: SQL Fiddle

Web-Development Projects

  1. Free Code Camp

Useful software. Brackets, Visual Studio Code, Git Bash

Data Science and Data Analytics

Machine Learning

  1. Machine Learning (Coursera)
  2. Machine Learning (Udacity | Georgia Tech)
  3. Intro to Machine Learninig (Udacity)
  4. Machine Learning in R (edX | Harvard University)

Deep Learning

  1. Deep Learning Specialization (Coursera). In five courses, you will learn the foundations of Deep Learning, understand how to build neural networks, and learn how to lead successful machine learning projects.
  2. Deep Learning (Udacity)

Data Science

  1. Data Scince (HarvardX). The program covers concepts such as probability, inference, regression, and machine learning and helps you develop an essential skill set that includes R programming, data wrangling with dplyr, data visualization with ggplot2, file organization with Unix/Linux, version control with git and GitHub, and reproducible document preparation with RStudio.

Developer Tools

  1. How to Use Git and GitHub (Udacity)
  2. Wrting READMEs (Udacity)
  3. Linux Command Line (thenewboston)

Programming Languages

Going bottom-up, this list shows resources to learn programming from a comparitively lower level, like C, to a high level lanaguage like Python.

Assembly

  1. Programming Paradigms (Stanford Engineering)
  2. Microprocessors and Microcontrollers (NPTEL)

C

  1. Problem solving through Programming in C (NPTEL)
  2. Programming Paradigms (Stanford Engineering) (requires an exposure in C++)
  3. Tutorials Point

C++

  1. C++ for Programmers (Udacity)
  2. Programming Paradigms (Stanford Engineering)
  3. Programming Abstractions (Accelerated) (Stanfored Engineering)
  4. Tutorials Point
  5. Code with harry youtube channel (https://www.youtube.com/channel/UCeVMnSShP_Iviwkknt83cww)

Java

  1. Intro to Java Programming (Udacity)
  2. Programming Methodology (Stanford Engineering)
  3. Tutorials Point

JavaScript

  1. Intro to JS: Drawing & Animation (Khan Academy)
  2. HTML/JS: Making webpages interactive (Khan Academy)
  3. Intro to JavaScript (Udacity)
  4. Advanced JS: Games & Visualizations (Khan Academy)
  5. Advanced JS: Natural Simulations (Khan Academy)
  6. Code with harry youtube channel (https://www.youtube.com/channel/UCeVMnSShP_Iviwkknt83cww)

Python

  1. CS50X (HarvardX)
  2. Intro to Computer Science (Udacity)
  3. Introduction to Python for Data Science (edX | Microsoft)
  4. Code with harry youtube channel (https://www.youtube.com/channel/UCeVMnSShP_Iviwkknt83cww)

R

  1. Data Science: R Basics (HarvardX)
  2. Data Visualization in R (HarvardX)

Useful YouTube Channels

Here, I list some of the YouTube channels I have used to learn and be updated on CSE contents (in no particular order).

Disclaimer

Please note that I am not promoting any website, channel, or software here. These are only the resources I have used / am still using for my curriculum / developer activities.

About

A collection of curated resources for learning Computer Science subjects and skills, that I garnered throughout my tenure as a CSE student. Contributions, and report of broken links are welcome.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published