I have long wanted to study computer science, right from the basics. This is a log of the steps I've taken, majorly following some popular self-learning curriculums. Most of these are from Teach Yourself CS.

Start date: 3 April 2020

## # Progress

Course | Score |
---|---|

Computer Organisation - Nand2Tetris |
98.30% |

DS & Algorithms |
Ongoing |

→ Divide and Conquer, Sorting and Searching, and Randomized Algorithms | 93.70% |

→ Graph Search, Shortest Paths, and Data Structures | 97.00% |

→ Greedy Algorithms, Minimum Spanning Trees, and Dynamic Programming | 95.00% |

→ Shortest Paths Revisited, NP-Complete Problems and What To Do About Them | Ongoing |

Intro to Mathematics for CS |
Ongoing |

→ Mathematical Thinking in Computer Science | 97.57% |

→ Combinatorics and Probability | 99.62% |

→ Introduction to Graph Theory | Ongoing |

Parallel, Concurrent & Distributed Programming in Java |
Ongoing |

→ Parallel Programming in Java | 95.50% |

Compilers |
Ongoing |

Doing these courses are opening up new fields for me and I am able to relate these concepts to the work I do on a daily basis. At times, these also improve the way I think and design a solution.