A completely free program to learn computer science course by course
- Overview of computer science
- Introduction to programming
- Overview of algorithms and data structures
- Basic computer organization and architecture
Resources:
- Introduction to Python programming language
- Control flow statements
- Data types and structures
- Functions and modules
- Input and output operations
- Debugging and error handling
- Object-oriented programming concepts
Resources:
- Basic data structures (arrays, linked lists, stacks, queues)
- Advanced data structures (trees, graphs, hash tables)
- Algorithm analysis and design
- Searching and sorting algorithms
- Recursion
- Dynamic programming
- Greedy algorithms
- Divide and conquer algorithms
Resources:
- Data Structures and Algorithms Specialization by University of California, San Diego on Coursera
- Introduction to Algorithms by MIT Press
- Overview of computer hardware and software
- Operating systems
- Memory management
- Input/output systems
- Computer networks
- Distributed systems
Resources:
- Computer Architecture by Princeton University on Coursera
- Operating Systems: Three Easy Pieces by Remzi H. Arpaci-Dusseau and Andrea C. Arpaci-Dusseau
- Introduction to databases
- Relational database systems (SQL)
- Database design and normalization
- Querying and manipulating data
- Database administration
Resources:
- Introduction to Databases by Stanford University on Coursera
- SQLBolt (Online interactive SQL tutorials)
- Front-end development (HTML, CSS, JavaScript)
- Back-end development (web frameworks, server-side programming)
- Database integration (SQL, ORM)
- Security and authentication
Resources:
- The Odin Project (Free full-stack web development curriculum)
- FreeCodeCamp (Free web development curriculum)
- Software development life cycle
- Software project management
- Requirements engineering
- Testing and quality assurance
- Software maintenance and evolution
Resources:
- Software Engineering Essentials by University of Colorado Boulder on Coursera
- The Mythical Man-Month by Frederick P. Brooks Jr.
- Overview of artificial intelligence and machine learning
- Supervised learning algorithms (linear regression, logistic regression, decision trees, support vector machines, k-nearest neighbors, naive Bayes) (4-6 weeks)
- Unsupervised learning algorithms (clustering, dimensionality reduction) (4-6 weeks)
- Reinforcement learning
- Neural networks and deep learning (4-6 weeks)
- Natural language processing
- Computer vision
Resources:
- Machine Learning by Andrew Ng on Coursera
- Deep Learning by Yoshua Bengio, Ian Goodfellow, and Aaron Courville
- Graphics pipelines
- Geometric transformations
- 2D and 3D graphics primitives
- Rendering techniques (ray tracing, rasterization)
- Animation and simulation
- Visualization techniques
Resources:
- Computer Graphics by University of Tokyo on edX
- Real-Time Rendering by Tomas Akenine-Möller, Eric Haines, and Naty Hoffman
- Principles of user interface design
- User-centered design processes
- Usability testing and evaluation
- Interaction design
- Information visualization
- Accessibility
Resources:
- Human-Computer Interaction by University of California San Diego on Coursera
- Don't Make Me Think by Steve Krug
- Network security
- Cryptography
- Authentication and access control
- Malware analysis and detection
- Security risk assessment and management
Resources:
- Introduction to Cybersecurity by New York University Tandon School of Engineering on edX
- Security Engineering by Ross J. Anderson
- Version control systems (Git)
- Integrated development environments (IDEs)
- Debugging and profiling tools
- Build automation and continuous integration (Jenkins)
Resources:
- Discrete mathematics
- Linear algebra
- Probability and statistics
- Calculus
- Number theory
Resources:
- Mathematics for Computer Science by Massachusetts Institute of Technology on MIT OpenCourseWare
- Linear Algebra by Gilbert Strang on MIT OpenCourseWare
- Ethical issues in computing
- Social and political implications of computing
- Privacy and security issues
- Intellectual property and copyright
- Global impact of computing
Resources:
- Computing and Society by Harvard University on edX
- The Code: Silicon Valley and the Remaking of America by Margaret O'Mara
Hope this will be beneficial to all of the readers as much as it has been beneficial for me as well. Please keep in mind all the estimated times to finish these courses are based on having a full-time job while studying.