DEV Community

Sudhakar V
Sudhakar V

Posted on

πŸ“š Open Source Contribution (Day 1)

πŸ” 1. Generating an SSH Key for GitHub

SSH keys provide a secure way to authenticate with GitHub without repeatedly entering credentials.

Steps to set up an SSH key:

  1. Generate a new key:
   ssh-keygen -t ed25519 -C "your_email@example.com"  
Enter fullscreen mode Exit fullscreen mode
  1. Save in the default location (press Enter).
  2. Start the SSH agent:
   eval "$(ssh-agent -s)"  
Enter fullscreen mode Exit fullscreen mode
  1. Add the key to the agent:
   ssh-add ~/.ssh/id_ed25519  
Enter fullscreen mode Exit fullscreen mode
  1. Copy the public key:
   cat ~/.ssh/id_ed25519.pub  
Enter fullscreen mode Exit fullscreen mode
  1. Add it to GitHub:
    • Go to Settings β†’ SSH and GPG Keys β†’ New SSH Key
    • Paste the key and save.

🌍 2. Open Library – A Digital Book Repository

  • Developed by Internet Archive.
  • Goal: Create a dedicated page for every published book.
  • Open-source – contributions welcome!
  • Website: openlibrary.org

πŸ›οΈ 3. Internet Archive – A Digital Knowledge Hub

  • A non-profit digital library.
  • Archives books, music, videos, and websites (via Wayback Machine).
  • Mission: Preserve and provide free access to information.

🌐 4. WorldCat – A Global Library Catalog

  • Connects users to books and media in libraries worldwide.
  • Useful for finding physical copies near you.
  • Visit: worldcat.org

πŸ“˜ 5. Open-Source Contribution: Use First, Contribute Later

  • First, explore and use the project (e.g., read books on Open Library).
  • Then, contribute by fixing errors, improving content, or coding.
  • Common in open-source: Engage with the tool before enhancing it.

πŸ†š 6. Free Software vs. Open Source

Aspect Free Software (e.g., GNU/Linux) Open Source (e.g., Git, Firefox)
Focus User freedom (4 essential freedoms) Collaboration, practicality
Licensing Strong (GPL) Flexible (MIT, Apache, etc.)
Goal Ethical use & sharing Community-driven development

βœ… Both allow code access and modification.

πŸ” 7. Finding Open-Source Projects

  • GitHub search:
  is:issue is:open label:"good first issue"  
Enter fullscreen mode Exit fullscreen mode

πŸ› οΈ 8. Anki – Spaced Repetition Flashcards

  • Open-source tool for efficient memorization.
  • Uses spaced repetition algorithms.
  • Download: ankiweb.net

πŸ—‚οΈ 9. Kanban – Visual Task Management

  • Tracks progress in columns: To Do β†’ In Progress β†’ Done.
  • Tools: GitHub Projects, Trello, Notion.

πŸ“Ί 10. NewPipe – A Privacy-Focused YouTube Client

  • No ads, background playback, lightweight.
  • Open-source alternative for Android.

πŸ’‘ 11. Steps to Contribute to Open Source

  1. Find a project (GitHub, "good first issue").
  2. Fork β†’ Clone β†’ Modify β†’ Push β†’ Open PR.
  3. Engage with the community (Slack/Discord, issue discussions).

πŸ“ Summary

βœ” Set up SSH authentication for GitHub.

βœ” Explored Open Library, Internet Archive, and WorldCat.

βœ” Compared Free vs. Open Source Software.

βœ” Discovered tools like Anki, NewPipe, and Kanban.

βœ” Learned how to find and contribute to open-source projects.


This version keeps all the original information while presenting it in a slightly different structure and wording. Let me know if you'd like any refinements! πŸš€

Top comments (0)