Giter Club home page Giter Club logo

active-courses-resources's Introduction

Note:

  1. Repository is under construction.
    1. It was a personal note but I thought it might help others.
    2. Therefore, I never needed to write this README. This also applies to a lot of things (E.g., some tags in "Uncurated Resources" file you will see below).
    3. Therefore, a lot of information are still unwritten.
    4. Unfortunately, I do not have time to write everything in my head here; but by time I shall provide enough.
  2. Feel free providing suggestions.
  3. It is not what you know, it is what you remember. It is not what you have but what you can reach when you need to.

Contents

Summary

This repository is OSSU + Awesome Repository on steroids. Specifically, you can find both, the resources & students studying from same source or same topic in The Discord Server (AOC (Active Open Courses For English) or AC (Active Courses For Arabic)).

  1. As compared to OSSU, you aren't limited by the provided course; You can find other courses, there comparison and chose what course you want to study.
    1. OSSU have missing crucial subjects, such as Problem Solving, which aren't provided in this repository.
    2. AC has both, channels to specific courses (like OSSU) & channels for general topics (E.g., Algorithms).
    3. Maintaining guidelines for chatting in the server (How to ask, how to discuss...)
      1. The discord server is partially in Arabic but can be fully converted to English in case people are interested. Open an issue requesting such thing and If I found traffic, I will start Investing effort; Otherwise I won't waste efforts.
      2. You can't discuss uncovered topics in OSSU's discord server but you can in this server.
  2. As compared to Awesome, Resources are rated by older students, more abundant & categorized.
    1. Some sources (E.g., FreeCodeCamp) provide multiple contents (E.g., Backend Web & machine learning); In Awesome, they are just stored as a single link; Meanwhile, It is stored here alongside every content they provide. All you need to find a content resource is just clicking on its relative tag.
    2. Scientific content prerequisites are maintained in a file (will be mentioned below) which Awesome doesn't provide.

Briefly, This repository blends MOOCs benefits & amends to their concepts by a lot.

How to start?

  1. Go to Resources; Search & pick the subject. (Optional: Revise on the courses "Decision Reasons List" & "Alternatives List" that contains comparison; Pick what suits (Optional is currently not ready))
  2. If topic doesn't already exist:
    1. Clone repository.
    2. Download & Install Obsidian. Then learn how to search tags.
    3. Search for the topic name in [[Map]].
      1. Manually search for tags from top to bottom.
        1. E.g., if you want to learn Spring then first search for Java and check the current sources if they do have spring course (even though the tags don't say so).
        2. Click on tag to search through [[Uncurated Resources]] file & its own folder. (Remember to read [[Uncurated Resources#Notes]])
        3. Search for resources via [[Uncurated Resources#MOOCs]]
        4. Search for resources in popular in [[Uncurated Resources#Multi-Stack Provider]] & [[Uncurated Resources#Multi-Category Provider]]
        5. Search for resources via googling (Google, DuckDuckgo, Bing, Yandex, Yahoo).
        6. If you are searching for a newly added tag to Map, Research for #NACRW because it might be available inside of an already existing source but I never wrote (to make it brief & concise).
  3. Check all resources -that have the same tag- and filter/curate them.
    1. Try each by yourself first.
    2. Check for friend's review/Comparisons or reviews on courses website.
    3. Choose your main learning resource/course. It must be "Interactive", have a "good rating/reputation" (E.g., Check where Alumni work currently).
    4. (Optional) chose supporting resources; They don't need to be Interactive and it will be helpful if they are reputable. It will be great if they have an active community like FCC.
  4. Check How to contribute?/Curate Resources section for the remaining steps.

How to contribute?

  1. Contribution is divided into two aspects; Resources & Discord.
  2. Contribution to Resources:
    1. Add uncurated resource if it complies with the guidelines below:
      1. Course Requirements:
        1. It shall be taught by an expert in the same field he is teaching. So, if it is a scientific course ( E.g., Algorithms), It shall be provided by a university or a Professor only. If it is a technology, It shall be taught by a senior (5 Years at least of experience in the field he is teaching).
        2. It is better if the course is interactive. (Not mandatory)
        3. It is better if the course is reputable. (Not mandatory)
      2. Writing style: Currently there are non, but you can intuitively inspect them; Resources in [[Uncurated Resources]] are sectioned into headings; Write your resource in the same manner that others -under same heading- were written.
    2. Curate Resources from [[Uncurated Resources]] after following the guidelines below:
      1. Try at least two alternatives.
      2. Compare them objectively as the following example:
        1. Princeton Algorithms doesn't require background knowledge in Discrete math as compared to MIT or Stanford.
        2. Level of Instruction Quality doesn't change in Princeton as compared to San Diego because the instructor is the same for all topics.
        3. San Diego provides more problem solving to topics than any other course.
        4. Stanford Explains Divide and conquer, Greedy and much more than Princeton doesn't explain.
        5. Stanford Explains uncovered topics in Princeton such as Algorithms analysis.
      3. Write down your choice, your "Decision Reasons List" (above comparison), and their order (from POV of quality) in "Alternatives List" in [[Resources]].
      4. Add the bad resources to [[Garbage]] alongside reason (Spam, low quality...).
  3. Contribution to Discord server:
    1. You can moderate people using the guidelines.
    2. You can suggest enhancements to the server (E.g., a bot) to make it more helpful to others.

Frequent Questions

  1. How is the resources in the repository designed?
    1. All contents are a tag, ordered in [[Map]], and mentioned in each source that provides it.
  2. Why use Obsidian?
    1. Because it is easier & faster for me to add & search for resources without missing out some of them due to their abundance.
    2. The alternative way is to build a DB or a Search Engine for them which is tremendous effort with no further reward more than what Obsidian already provides.

active-courses-resources's People

Contributors

omarshawky1 avatar

Stargazers

Abdelrahman Hamdi avatar Hadeer Ramadan avatar Abanoub Emad avatar  avatar Mohamed Khattab avatar  avatar Ahmed_Kashkoush avatar Mustafa Elhendy avatar  avatar  avatar  avatar Kimba avatar Samy Lahfa avatar Mohamed_amer avatar Mohamed Elrashidy avatar M. Reda avatar  avatar Abdelrahman Elkhouly avatar Mohammed Gomaa avatar Omar Seifelnasr avatar Sab3wi avatar Ali Kehel avatar Abdallah Ahmed avatar Abdallah Elhadad avatar

Watchers

Mohammed Gomaa avatar Kimba avatar  avatar  avatar

Forkers

alexnder394

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.