Looking for project ideas

Ticket

Hello @team!

One of the ways we’ve been trying to drum up work is by applying to grants. However, a lot of the grants we’ve been coming across of late are outside of the realm of what we’d normally do-- but that doesn’t mean they’re something we’re incapable of doing.

To give an example of what I mean, funds like the sovereign tech fund or NLNet’s funding themes are often pointed at topics more general than what the Open edX platform serves-- aiming for infrastructure or base library code. Some other grants we’ve applied to have also rejected our applications on the grounds that there are ‘enough funding sources’ in the Open edX community without their grants’ help. Fair enough.

But I happen to know that many of you have experience or insight beyond the platform. And I’m sure many of us would be happy to work on something a bit different. So I’m opening this forum post to ask:

Can we think of some cool projects, especially projects like these or like these, where we might be able to chip in, given grant funding? This forum post is to discuss potential opportunities here.

One more thing: Any team member that wants a dedicated ticket to think this through, let me know. I’ll create one for you.

5 Likes

The Aspects project could be a good source of general FLOSS contributions, since it relies heavily on so many big, 3rd party open source tools:

It’s worth talking to Chelsea and Brian about this, see what’s on their dream list.

7 Likes

Some ideas:

  1. Implement Time Tracking for Plane (high priority!) and/or other missing features blocking our migration
  2. Currently, there is no standard way to provide types for Django classes using Python type annotations. It’s only possible in mypy using the third party django-stubs library and mypy plugin. This means for example that Pyright currently doesn’t support django which is a shame because a lot of people say that Pyright is a much nicer type checker than mypy. The goal of this project would be to propose a PEP similar to PEP-681 which allows Django’s types to be expressed using “native” python type annotations. See here for some details.
    • contribute more type hints and dataclass_transform annotations to django core
    • propose a PEP that allows us to express the remaining missing types
    • implement a POC in the Pyright and Django codebases
  3. Work on creating better test suite(s) for python typing so that behavior can be more standardized between mypy, pyright, Basedmypy, and basedpyright.
  4. Implement more features in Listaflow
  5. Integrate passkey support into Django, Mattermost, Plane, and/or Open edX
  6. Implement High Availability for Meilisearch (far outside our area of expertise though :( )
6 Likes

Some ideas:

  1. Instrumentation and metrics exporter for Open edX — Someone was already looking for it.
  2. Kubernetes operators based edX instance orchestration in Kubernetes clusters — if implemented well, it could actually replace or simplify many of our processes, though I’m not entirely sure how it should work.
  3. Open edX editor plugins — extending the WYSIWYG editor with custom buttons/actions.
  4. Package registry for Open edX, like https://registry.terraform.io/ or https://artifacthub.io/, providing structured and enforced documentation, proper installation, configuration options, download, and usage statistics — it could help to standardize the instructions and centralize the available packages.
  5. Webhooks implementation for Open edX — notify 3rd party APIs using webhooks.
  6. Contribute to Elemo — Shameless self-advertising to contribute to my open-source Jira alternative (that OpenCraft could use instead of Jira and Google Docs). The backend is mostly done, it is mainly front-end work that is required.
2 Likes

I didn’t have time to look into it in detail, but I just saw this:

Screenshot 2024-09-11 at 09.53.13