This repository consists of free online courses you can take which are equivalent to a bachelor's degree in Karachi.
Hello World,
The Open Bachelors in Computer Science curriculum is a compilation of all the courses a standard computer science bachelor's program offers in Karachi. All the courses added in this repo are completely free of cost(till now). Some may require an outlook account to access the paid content/tools for free or for a limited time (2-4 months).This list also includes non-cs courses too i.e pakistan studies,communication skills,Islamic Studies etc.
The main reason behind creating this repository is to provide an extra option for students who are not satisfied with their university's course content, course is not offered in their university or for students who are just looking for a different source to clarify their concepts.All the courses added below have high ratings from websites like class-central,reviews.com,mooc-list etc.There are no restrictions,you can take the entire courses or only the topics you require.Some of the courses given below may appear in different years but the content will mostly be the same.
The BS Computer Science program provides understanding of the fundamental and advanced concepts of Computer Science. The aim is to prepare graduates who can analyze, design and develop effective software systems.A standard BS(CS) program is of 140 credit hours. With courses divided in 4 different categories Computing Courses, Computer Science Courses, General Education Courses, University Elective Courses. Divided in 4 years with Electives and a Final Project.
- Should have completed High School education.If not you'll have to spend some months on Khanacademy.
- Should be fluent in english.Almost all of the courses are in English.
- Should have a good internet connection for high-quality videos(for videos with code walkthroughs).
- Should have minimum of 4GB ram, 80GB free space, 1.6 GHz or faster processor(dual-core)
Introduction To Computing
Introduction To Programming
-
For Python
-
For C programming
-
For All Programming Languages
Applied Physics
Calculus I
- Essence of calculus | 3Blue1Brown Youtube
- Calculus 1 | PatrickJMT Youtube
- Single Variable Calculus | MIT
English Language
Object Oriented Programming
-
For Python
-
For Java
-
OO Design Patterns
Basic Electronics
-
Basic Electronics | NPTEL
-
Circuit Theory | VU
Discreate Mathematics
Pakistan Studies
Communication Skills
- Business English Communication Skills | University of Washington IELP
- Communication Techniques | Stanford Graduate School of Business Youtube
Multivariable Calculus
- Multivariable Calculus | KhanAcademy
- Multivariable Calculus | PatrickJMT Youtube
- Multivariable Calculus | MIT
- Multivariable Calculus | Coursera
Probability and Statistics
- Statistics and probability | Khanacademy
- Probability - The Science of Uncertainty and Data | MIT
- PROBABILITY & STATISTICS 1 | Michel van Biezen Youtube
- PROBABILITY & STATISTICS 2 | Michel van Biezen Youtube
Data Structure and Algorithms
-
For C++, Java, and Python
-
For C++
-
For Python
-
For Java
Computer Organization and Assembly Language
- Computer Architecture | Princeton University
- High Performance Computer Architecture | Georgia Institute of Technology
Professional Practices
Database Systems
Differential Equations
- Differential Equations | Khanacademy
- Differential Equations | PatrickJMT Youtube
- Ordinary Differential Equation in Hindi | Bhagwan Singh Vishwakarma Youtube
Theory Of Automata/Computation
- Theory of Computation or Automata Theory | Gate Lectures by Ravindrababu Ravula Youtube
- Automata Theory | Stanford Online Lagunita
Data Communication and Networking
- Introduction to Computer Networking | Stanford Online Lagunita
- The Bits and Bytes of Computer Networking | Google
- Free Cisco Video Training 2018 | NetworKing Youtube
Technical Writing & Presentation Skills
- English for Career Development | University of Pennsylvania
- Business English: Making Presentations | University Of Washington
Operating Systems
- Introduction to Operating Systems | Georgia Institute of Technology
- Operating Systems | David Black-Schaffer, KNOWLEDGE GATE, Gate Lectures by Ravindrababu Ravula Youtube
Software Engineering
- Software Engineering: Introduction | University of British Columbia
- Software Engineering in Hindi | Easy Engineering Classes Youtube
Compiler Construction
Design and Analysis of Algorithms
Linear Algebra
Numerical Methods
- Numerical Methods in Hindi | Bhagwan Singh Vishwakarma
- Numerical Methods: Finite difference approach | NPTEL Youtube
Artificial Intelligence
- Artificial Intelligence | MIT
- Intro to Artificial Intelligence | MIT
- Artificial Intelligence (AI) | Columbia University
Machine Learning
Human Computer Interaction
Distributed/Cloud Computing
Cryptography
pass
๐
pass
๐
pass
๐