-
-
Notifications
You must be signed in to change notification settings - Fork 4
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
1 changed file
with
175 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,175 @@ | ||
# Proposal for Python Software Foundation: Makim | ||
|
||
Makim is a Python-based automation tool designed for effortless project | ||
management. It simplifies setup using YAML configuration and supports various | ||
programming languages. With an intuitive CLI powered by Typer, users can specify | ||
interpreters, debug code, and define dependencies seamlessly. | ||
|
||
Catering to DevOps Engineers and Software Developers, Makim streamlines tasks | ||
without redundancy. Its versatile language support makes automation and project | ||
management easy. By minimizing setup complexities, Makim frees users to focus on | ||
coding. Its goal is to enhance work efficiency and streamline workflows. | ||
|
||
Makim supports multiple backends for executing code, enabling the use of various | ||
programming languages within the Makim configuration file, including Python. By | ||
default, Makim employs Xonsh - a shell language and command-line interface that | ||
augments Python 3.6+ by integrating shell primitives from Bash and IPython, thus | ||
offering a robust scripting environment. Compatible with key operating systems | ||
like Linux, macOS, and Windows, Xonsh is tailored to streamline shell commands | ||
and scripting using Python's syntax. It strives to offer a flexible interface to | ||
accommodate users of all skill levels, from novices to experts, facilitating a | ||
broad spectrum of daily computing activities. | ||
|
||
Below are the content for the PSF grant application form. | ||
|
||
## Form | ||
|
||
- Contact | ||
|
||
- Legal First Name\*: Ivan | ||
|
||
- Legal Last Name \*: Ogasawara | ||
|
||
- Nickname: xmnlab | ||
|
||
- Email \*: [email protected] | ||
|
||
- Address (selection) | ||
|
||
- City \*: | ||
|
||
- Country\*: | ||
|
||
- State/Province/Region: | ||
|
||
- Region Other: | ||
|
||
- Postal Code: | ||
|
||
- Postal Code Suffix: | ||
|
||
- Phone Number \*: | ||
|
||
- Organization | ||
|
||
- Organization Name: Makim | ||
|
||
- Organization Email: [email protected] | ||
|
||
- Twitter Handle: @makimdev | ||
|
||
- Website: https://osl-incubator.github.io/makim | ||
|
||
- Grant Type \*: Development work | ||
|
||
- Grant Title \*: Adding new features to Makim: scheduled jobs, matrix | ||
strategies, interactive input, and support for windows. | ||
|
||
- FAQ & Grants Program Info \*: I have read and understand these pages. | ||
|
||
- Date \*: 20/05/2024 | ||
|
||
- Event’s/project’s website \*: https://github.com/osl-incubator/makim | ||
|
||
- Requested Grant Amount (USD) \*: $2,340.00 | ||
|
||
- Grant Amount Breakdown \*: The money will be used for development work, | ||
maintenance, project management and review. | ||
|
||
- Budget \*: | ||
https://docs.google.com/spreadsheets/d/1k0DV6nWafk4YvD73u5hXIKcdBnvJfuZ38QGgQstGDmo/edit?usp=sharing | ||
|
||
- Objective \*: | ||
|
||
The primary objective of this grant proposal is to enhance the Makim project | ||
addressing key areas to improve its functionality, usability, and | ||
compatibility. The proposed enhancements aim to streamline the development | ||
process for Python projects by reducing technical debt and expanding platform | ||
support. The following objectives outline the specific goals to be achieved | ||
through this grant: | ||
|
||
1. **Functional Enhancements and Platform Support**: | ||
|
||
- Enhance the clarity and comprehensiveness of the Makim project | ||
documentation, adding a complete guide for the makim configuration file. | ||
- Introduce a matrix strategy for targets psf-grant-proposal to facilitate | ||
efficient testing and deployment across multiple environments. | ||
- Expand support for Windows platforms by transitioning from sh to native | ||
Windows command execution mechanisms. | ||
- Implement support for interactive arguments, enabling more dynamic and | ||
user-friendly interaction with Makim projects. | ||
- Introduce support for scheduling jobs with cron, enhancing automation | ||
capabilities and workflow management. | ||
|
||
- Beneficiaries \*: | ||
|
||
With the support of this grant, the project will provide opportunities for | ||
skill development and community engagement, particularly for individuals | ||
involved in the project's development and maintenance. The beneficiaries of | ||
this grant include: | ||
|
||
1. **Developer**: | ||
|
||
The developer, Abhijeet, based in India, worked as an intern and remains | ||
committed to advancing the Makim project. Having previously contributed to | ||
Makim, Abhijeet aims to continue his involvement, dedicating approximately | ||
100-110 hours over the 12-week duration to further enhance the project's | ||
development and implementation. | ||
|
||
2. **Project Manager**: | ||
|
||
A dedicated project manager will oversee the coordination, scheduling, and | ||
resource allocation aspects of Makim's development. Their role is pivotal | ||
in ensuring smooth project execution and timely delivery of milestones. He | ||
will dedicate about 15 hours to the project over the duration. | ||
|
||
3. **Senior Developer (Review and Quality Assurance)**: | ||
|
||
The senior developer will focus on reviewing code contributions, ensuring | ||
adherence to project standards, and maintaining code quality. Their | ||
expertise in Python development and quality assurance practices will be | ||
invaluable in upholding Makim's integrity. He will dedicate 20 hours to the | ||
project over the duration. | ||
|
||
4. **Social Media Manager**: Mfonobong Uyah, as the Social Media Manager, will | ||
play a crucial role in enhancing Makim's online presence and community | ||
engagement. He will develop and implement strategies to promote project | ||
updates, engage with followers, and foster a vibrant online community. By | ||
dedicating around 20 hours to the project over the duration, Mfonobong will | ||
ensure consistent communication, highlight key milestones, and drive | ||
interest in Makim through various social media platforms. | ||
|
||
5. **Mentorship and Guidance**: | ||
|
||
Ivan Ogasawara, a key member of the Open Science Labs steering council, | ||
will provide mentorship for the grant. Ivan has experience in community | ||
engagement, project management, and served as chair for the SciPy Latin | ||
America 2016 conference. He is the founder of Open Science Labs, | ||
established in 2015, and has developed several open source Python | ||
libraries, including Makim. His work focuses on supporting open source | ||
projects and facilitating opportunities for new contributors through | ||
programs like the Incubator Program and Internship Program. | ||
|
||
6. **Fiscal Sponsor**: Makim is developed under the Open Science Labs | ||
Incubator Program. Consequently, funding for the Makim project is | ||
administratively managed through the financial manager of Open Science | ||
Labs, "The Global Research and Analyses for Public Health (GRAPH) Network," | ||
legally represented by ASCRES. This arrangement ensures that financial | ||
contributions towards Makim are received and processed in compliance with a | ||
commitment to transparency and ethical practices. ASCRES/The GRAPH Network, | ||
located in Geneva, Switzerland, provides the necessary fiscal oversight, | ||
facilitating the project's ability to receive funds effectively and | ||
efficiently. | ||
|
||
- Regional Support | ||
|
||
The remain funding would be used to maintain the template updated. | ||
|
||
- Link to Code of Conduct \*: https://opensciencelabs.org/about/coc/ | ||
|
||
- Percentage of Python \*: 100% | ||
|
||
- Follow-up activities \*: | ||
|
||
As a follow up activity, we plan to have a blog post about all updates done | ||
via this grant. |