Please keep in mind that this page is shared publicly with the external Open edX community and that confidential information (learner data, business plans, etc.) should not be shared in connection with any Hackathon project, whether on this page or in shared Slack channels or elsewhere.
This page is intended to share all ideas for Hackathon projects regardless of whether the ideator will be working on it during the Hackathon or not.
Some ideas from previous hackathons that are up for grabs here: LINK. Note: If you want to work on an idea from this list, please move it to the Confluence page. If you have a new idea, please add it to this Confluence page.
For documentation projects, here are some possible categories of work:
Other resources:
/wiki/spaces/HACK/pages/3022619011 pointers to documentation things that could be helpful
Four kinds of documentation: https://documentation.divio.com/
/wiki/spaces/HACK/pages/3040379463 is a great place to look at for the different kinds of people who use docs and how you might make their life better.
Idea Name | Idea Description | Necessary Skills | Proposer Name | Interested Hackers | Committed Project? (y/n) |
---|---|---|---|---|---|
Zoom timer | a Zoom plugin that tracks the cumulative speaking time of each participant | coding | not yet | ||
Wiki Nudger | Go through the wiki and get a list of all the pages ordered by when they were last updated. Can probably start with https://github.com/nedbat/wikicrawl and make improvements. | coding | No | ||
Build the Docs | There are many repos that are currently failing to build and publish their docs to ReadTheDocs. Fix the issues, but also add a test to CI to detect breaking the docs so we can catch it earlier. | coding | No | ||
Review Docs | Review https://edx.readthedocs.io/projects/edx-developer-docs/en/latest/ which is built from https://github.com/edx/edx-developer-docs . Add links to more docs, update the docs, or add more based on what you believe a developer new to Open edX should know about. | ||||
REST APIs from JS | What REST APIs that are available to people using javscript on course pages, and how do we get to them? For instance, could we pull a list of the other courses someone’s enrolled in? | Django | |||
JS On the Page | What javascript objects and packages are available on the page? For instance, I know there’s an Analytics object because I occasionally pull an ID number from it, but it’s not clear what else is inside it. I know JQuery and Underscore are both available (or were the last I looked), and FontAwesme 4.7. What other javascript packages, fonts, etc. are delivered to the user by default? Is there an object with the course structure? One with the user’s grades? With specific question responses? | Javascript and maybe django for code archaeology | |||
Help Center consolidation | Is there any way to consolidate/merge responses at the edX Help Center? I remember some questions having multiple overlapping responses (and occasionally old out-of-date ones). | Patience | |||
Video Controller | What is the structure of the video controller object? I’ve hooked into it myself in the past via JS, but it was some serious code archaeology, and making this easier would enable more people to build cool tools. | Javascript and maybe django | |||
Make the Hackathon Badge | |||||
Como se dice… i18n? | We will be working to consolidate and organize information relevant to edX’s current language support capabilities. This will become an information oriented reference that will support any potential i18n work in the future and serve as a source for ideas on where edX can go next for i18n. Topics of consideration include, but are not limited to, current language support across our systems, user language preference data, the number of untranslated strings in Transifex. | Access to Transifex | yes | ||
Como se hace… i18n? | We’re looking to understand the technical landscape of translations at edX. We want to consolidate, organize, and improve current technical documentation wherever possible. In a broad sense, we want to understand where we are today and what opportunities to improve translations lie ahead. Topics of consideration include, but are not limited to, how we enable a new language in a service, what translation infrastructure exists for each service, and discovery of new translation tech. | Coding, technical documentation, access to Transifex | |||
Form a Documentation Working Group | Create a charter and operational plan for a working group to continuously improve our documentation. Note: doing this does not mean you are committing to run the working group, or even be a member! | Process thinking, organizational detail. | |||
Monolith Clean-up | Organization in itself is a form of documentation! edx-platform has dozens of Django apps spread across different folders. Some of the apps are redundant, while others are bloated. In this hackathon, I/we would aim to make edx-platform more self-documenting by moving, renaming, refactoring, and documenting apps throughout the monolith. This clean-up would be done with an towards clarifying the boundaries that we want to exist within the monolith, especially boundaries between the Learning (LMS) domain, Authoring (CMS) domain, and supporting domains like Authn. | Python | N | ||
Breaking apart LMS and CMS: Plan of Attack | Context: Splitting the Learning and Authoring functionality of edx-platform into two independent services is a long-held dream (at times, seemingly a pipe dream!). Now, though, with an arsenal of supporting systems like MFE courseware, course overviews, edx-when, and learning_sequences, the possibility of a Great Decoupling is more feasible than ever. Relevant ADR: https://github.com/edx/edx-platform/blob/master/docs/decisions/0005-studio-lms-subdomain-boundaries.rst Potential hackathon goals:
| edx-platform experience, willingness to tolerate an open-ended and high-uncertainty project | N |