DEV Community

vivekdhir77
vivekdhir77

Posted on • Edited on

I Just learnt Python, which open source project can I start to contribute?

I would like to start with open source contribution, will you please suggest me which projects I can work on? and if the things which I learnt are not sufficient to get started, please suggest me what should I learn more.

Answering this would help beginners like me a lot.

I learnt python from YouTube and I covered the following concepts:-

Your First Python Program
How Python Code Gets Executed
How Long It Takes To Learn Python
Variables
Receiving Input
Python Cheat Sheet
Type Conversion
Strings
Formatted Strings
String Methods
Arithmetic Operations
Operator Precedence
Math Functions
If Statements
Logical Operators
Comparison Operators
Weight Converter Program
While Loops
Building a Guessing Game
Building the Car Game
For Loops
Nested Loops
Lists
2D Lists
My Complete Python Course
List Methods
Tuples
Unpacking
Dictionaries
Emoji Converter
Functions
Parameters
Keyword Arguments
Return Statement
Creating a Reusable Function
Exceptions
Comments
Classes
Constructors
Inheritance
Modules
Packages
Generating Random Values
Working with Directories
Pypi and Pip

Thank you.

Top comments (6)

Collapse
 
michaelcurrin profile image
Michael Currin

Hi. I am glad you are interested in contributing to the Python community.

Its useful to learnt the concepts but make sure you can put them together to make an application. This app is great for giving you ideas like a calculator, a web scraping, a game, a CMS, a todo app etc.

play.google.com/store/apps/details...

While you are working on projects for yourself, you will hopefully use libraries like for web requests there is requests and for working with tables of data and stats there is pandas and for games there is pygame i think it is called. Start using a library for your own needs so you understand how it works, where it is confusing, maybe you'll find a usecase and then you'll build a feature to support that.
With that understanding you can find requests etc. on GitHub and find some open issues. For a start you can pick ones that are marked as beginner-friendly. There will probably be a ton of open Pull Requests - you can help other contributors by reviewing their work and asking them to make improvements to their work before it is merged.
You might also just look around the online docs of a library and find any typos or bad formatting or parts that are badly explained and then you can contribute a change to improve that. It doesnt require so much knowledge and debugging skills in Python as you are editing text, maybe in markdown. And then you'll get a conversation going with the owners of the repo through and issue or pull request to get your change in. I did that for the Jekyll docs and I got plenty of support from the team to help me fix up my new page to make it clearer and follow their style guide. You'll also build a relationship as they next time you make a code contribution they might recognize your name.

I don't know if its still going but Hacktoberfest happened this month on dev.to and there will be plenty of recent posts on how to find projects to contribute to. Find the right Hacktoberfest or opensource or contributing tag on dev.to and you'll hopefully find some python projects there.

Also just searching for "popular python libraries" on Google will give you some more names of packages that many people use and that you might use. Find something that matters to you like building a website or a scraper or a game and then you'll feel inspired to make the library better. If you pick a library you've never used and will never use then you'll feel a lack of understanding and drive to contribute.

Be patient with yourself and the community and keep searching to find what you are looking for. You'll get there with time

Collapse
 
vivekdhir77 profile image
vivekdhir77

This information is very helpful. Thank you, Mike!

Collapse
 
funbeedev profile image
Fum

Hi there,
I'm the maintainer of this open source repository on GitHub:

GitHub logo inspirezonetech / TeachMePythonLikeIm5

A collection of super beginner friendly tutorials and challenges to teach the python programming language.

TeachMePythonLikeIm5

GitHub top language GitHub contributors GitHub issues GitHub Workflow Status

You are welcome to contribute to this repo. See the CONTRIBUTING.md for more info

TeachMePythonLikeIm5

About this repo

A collection of super beginner friendly tutorials and challenges to teach the python programming language Each file contains:

  • A tutorial explaining a concept in python
  • A challenge or set of challenges to complete

List of available tutorials












































































































Tutorial Link
Getting started
Your first python program hello-world.py
Commenting commenting.py
Variables
How variables work creating-variables.py
Booleans booleans.py
Integers integers.py
Floats floats.py
Strings strings.py
Operators
How operators work arithmetic.py
Assigning assigning.py
Comparison comparison.py
Lists
How to alter a list alterning-lists.py
How to declare a list declaring-lists.py
How to index a list indexing-lists.py
Conditions
How to make conditions if-else.py
Loops
How for-loop works for-loops.py
How while-loop works while-loops.py
How to break in a loop using-break.py
How to continue in a loop using-continue.py
Functions
How to declare and call functions using-functions.py
Common-built-in functions
How enumerate works enumerate.py
โ€ฆ




It's to encourage people to submit tutorials and challenges on a concept in Python. It's really beginner friendly and a great way to share what you're learning!

I also made a post here on dev.to looking for contributors.

Collapse
 
bhupesh profile image
Bhupesh Varshney ๐Ÿ‘พ

Vivek you have learned enough to dive in OSS. Remember that you don't need to know everything beforehand to contribute.
If you are interested checkout defe, some issues are beginner-friendly

GitHub logo Bhupesh-V / defe

devfeed is a Tech feed Aggregator for Developers & Tech Enthusiasts

defe logo

A Tech feed Aggregator for Developers

Read Stories which matter
Twitter URL

build GitHub release (latest by date) Website PyPI GitHub PyPI Downloads lgtm alerts Codacy Badge Language grade: Python Gitter

Built with โค๏ธŽ by Bhupesh Varshney
Twitter Follow
The story behind defe

โœจ Features

  • PWA
  • Share Stories
  • Minimal UI
  • Command Line Interface
  • Feeds from more than 100 sources categorized in
    • ๐Ÿ“ฐ News
    • ๐ŸŽ™๏ธ Podcasts
    • ๐Ÿ“ง Newsletters ... And Much More

๐ŸŒˆ Demo

WebApp

CLI

๐Ÿ“ฆ Package

You can use the defe package to build bots ๐Ÿค–

from defe import defe
import pprint
f = defe.feed()
pprint.pprint(f.news(3))
pprint.pprint(f.feeders("newsletters"))
Enter fullscreen mode Exit fullscreen mode

See Dcoumetation for more.

๐Ÿ”ฎ Installation

Install defe CLI using pip from PyPI

pip install defe
Enter fullscreen mode Exit fullscreen mode

Development

  1. Clone the repository
git clone https://github.com/Bhupesh-V/defe.git
Enter fullscreen mode Exit fullscreen mode
  1. Create virtual environment
python3 -m venv venv
Enter fullscreen mode Exit fullscreen mode
  1. Activate virtual environment

    Linux/MacOS

    source venv/bin/activate
    Enter fullscreen mode Exit fullscreen mode

    Windows

    .\venv\Scripts\activate
    Enter fullscreen mode Exit fullscreen mode
  2. Install Dependencies

pip install -r requirements.txt
Enter fullscreen mode Exit fullscreen mode
  1. Lint the project with
black --check --diff .
Enter fullscreen mode Exit fullscreen mode
  1. Run theโ€ฆ
Collapse
 
vivekdhir77 profile image
vivekdhir77

Bhupesh, I guess this is so much advanced to understand for me

Collapse
 
usman3600 profile image
usman3600

have you master the basics