Skip to content

PyCon India 2023 Devsprints

Ananya Maiti edited this page Oct 2, 2023 · 17 revisions

What is a Devsprint ?

During Devsprints, mentors/contributors of OSS projects guide participants through the end-to-end process of OSS contribution, right from setting up build environments, to developing and testing code, to submitting patches for bugs. If you are stuck, mentors are all available to help you figure out issues and get you back up and running! From past experiences, we’ve seen a lot of people start off contributing to OSS through Devsprints and later go on to become regular contributors to various projects across the web.

PyCon India 2023 Devsprint Projects

LPython: Novel, Fast, Retargetable Python Compiler

LPython is a Python compiler that can compile type-annotated Python code to optimized machine code. LPython offers several backends such as LLVM, C, C++, WASM, Julia and x86. LPython features quick compilation and runtime performance. LPython also offers Just-In-Time (JIT) compilation and seamless interoperability with CPython.

Prerequisites

The following tools would be needed for local development of LPython:

  • conda
  • gcc/g++/clang
  • git
  • Ideally a Linux/Mac Machine

You will be expected to have some understanding of the following:

  • Python
  • Git & GitHub workflow

Project Repository: https://github.com/lcompilers/lpython

Mentor: Ubaid Shaikh

Source: Link

Building Computer Vision Packages

This sprint is designed to bring together passionate developers interested in contributing to our Python-based computer vision package.

The primary goal for this dev sprint is to enhance and expand the functionality of computer vision package that implements hand tracking module. Aim is to:

  • Improve existing algorithms and optimize performance.
  • Add new features and tools to make computer vision tasks more accessible.
  • Fix bugs and enhance the package's stability.
  • Enhance documentation to facilitate easier usage and contribution.

Project Repository: https://github.com/laksh-2193/lkcomputervision

Mentor: Lakshay Kumar

Source: Link

Frappe Framework: Low-code/No-code Full-stack Web Development Framework

Get up and running with contributing to a world-class web development Framework: Frappe Framework

Prerequisites

Basic knowledge of web development with an MVC framework. Frappe Framework is written in Python & JavaScript.

Project Repository: https://github.com/frappe/frappe

Mentor: Core Frappe Team

Source: Link

NetworkX: Complex Network Analysis in Python

NetworkX is a Python package for the creation, manipulation, and study of the structure, dynamics, and functions of complex networks.

Prerequisites

You will be expected to have some understanding of the following:

  • Python
  • Git & GitHub workflow

Project Repository: https://github.com/networkx/networkx

Mentor: Navya Agarwal

Source: Link

SymPy: Python Library for Symbolic Mathematics

SymPy is a Python library for symbolic mathematics. It aims to become a full-featured computer algebra system (CAS) while keeping the code as simple as possible in order to be comprehensible and easily extensible. SymPy is written entirely in Python.

SymPy is a free and open-source Python library, distributed under the BSD license. What sets SymPy apart is its Python-centric design, ensuring compatibility and accessibility for Python developers. It boasts a lightweight footprint, relying exclusively on the pure Python mpmath library for arbitrary floating-point arithmetic. Beyond its standalone capabilities as an interactive tool, SymPy can be seamlessly integrated into various applications and extended with custom functions, enhancing its utility for developers across different domains.

Prerequisites

Before diving into contributing to SymPy, let's ensure you have the necessary prerequisites in place.

  • Proficiency in Python programming.
  • Basic understanding of mathematical concepts.
  • Familiarity with SymPy's codebase (Optional, but beneficial).
  • A development environment set up for SymPy (Refer to SymPy's official documentation for instructions)

Project Repository: https://github.com/sympy/sympy

Mentor: Nikhil Maan

Source: Link

Clone this wiki locally