This page and this group are under construction!
...
Name
...
Developer Experience, a.k.a. DevExp
...
Goal
...
Cooperate to improve the experience for developers working on the Open edX platform.
...
Chair(s)
...
Rebecca Graber (Deactivated) Kyle McCormick
...
GitHub Projects
Issue tracking
Technical discussion
...
https://github.com/orgs/openedx/projects/37
...
Forums
Technical discussion
Getting help
...
Category TBD
...
Slack
Logistics
Quick questions
...
Joining via openedx.slack.com
...
...
Joining via twou.slack.com
...
#openedx-wg-developer-experience
...
Meetings
Sprint planning
Demos/sharing
Discussion
...
Bi-weekly
Date & time TBD
Table of Contents |
---|
Charter
We aim to improve the experience for developers working on the Open edX platform by:
identifying what qualities make a developer experience “good” (low on-boarding overhead, easy testing, etc.), with understanding that needs will vary between different members of the community;
identifying the gaps between our current developer experiences and the desired state;
actively improving our current developer processes and tools;
empowering the community to build and maintain tooling extensions that suit their needs; and
where possible, aligning different groups of developers on shared development solutions.
The Working Group will serve as a space for folks who are collaborating on developer experience projects to seek help, share knowledge, discuss ideas, and align their work with one another. We are likely to focus both on high-level questions (“what would the ideal developer experience be?”) and concrete improvements (“what will we do this month to make Tutor/Devstack easier to use?”).
At this time, Working Group itself will not be taking on maintenance responsibilities for any component of the Open edX developer experience.
Current Projects
Development Environment Vision
Lead: Jeremy Bowman (Deactivated)
Tutor Improvement
Lead: Kyle McCormick
Table of Contents |
---|
Charter
It’s become clear that there is an acute need to support new Tutor users and plugin developers. It’s also clear that Tutor maintainers benefit from hearing feedback from people who are using the tool.
Please join our users’ group for sharing help, tips, and feedback on using Tutor and developing Tutor plugins. Bring your questions, and get ready for some live debugging! Expert or newbie, all are welcome.
Agenda and Notes
We meet every other week. Our schedule and video conferencing link is on the Working Group Calendar. The meeting is usually hosted by Kyle McCormick .
You can add topics below ahead of time, or add them during the meeting.
2024-04-22
Present: Kyle McCormick
2024-04-08
Meeting link: https://meet.google.com/rhs-veey-rrp
Present: Chintan Joshi , Danyal Faheem, Dave Ormsbee (Axim) , Dawoud Sheraz , Deimer Morales ,Maksim Sokolski, Maria Grimaldi, Qasim Gulzar , Régis Behmo
Integrate Tutor with IntelliJ IDEA/Pycharm (by Qasim Gulzar@edly)
Recording: https://drive.google.com/file/d/13yNuZktzCOIg6_Hym9_peZmD-RC-CgD_/view
The tutorial instructions will be published soon-ish in a dedicated space.
In the meantime, we can reproduce the instructions with the video recording.
Instructions are still hackish and a little brittle, we can definitely work to improve them.
How to track the eclipse with Tutor (byRégis Behmoif time permits)(it did not)
Notes:
MongoDb 7 upgrade: scheduled for Redwood
utf8mb3 upgrade. We reached the following decisions for Redwood:
upgrade the connection string and the database default charset to utf8mb4 for all platforms
For existing platforms, upgrade the default database charset (with
ALTER DATABASE databasename CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
).For existing platforms, convert tables in a conservative manner, using instructions similar to:
ALTER TABLE tablename CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
. The list of candidate tables is available here.Implementation of these decisions can be followed in this GitHub issue: https://github.com/
...
...
...
...
Ansible-Free Devstack Images
Lead: Jeremy Bowman (Deactivated)
MySQL high memory issue on Arch Linux: https://github.com/
...
...
Convert GitHub dependencies to PyPI dependencies
...
mysql/issues/579#issuecomment-1075119349
It was suggested that Arch users manually create a docker-compose.override.yml file.
We should update the troubleshooting instructions for Arch Linux users. Deimer Morales can you please open a pull request to update the Tutor docs?
2024-03-25
Auto-mounted directories
Can we add mount keywords in our own plugin? → yes, or open a PR to upstream plugin
Do we list the keywords anywhere? example,
platform-plugin-
The exact list is not documented anywhere
MFE mounts
Tried to mount custom mfe – couldn’t do it
used command line mount
did not see the mfe on the port
seems like folder was mounted, but MFE filter wasn’t added to, so the tutor-mfe plugin didn’t know to build/run the mfe
How Zach did it:
...
...
Possible Future Projects
These are things we have discussed, but don’t have anyone actively working on.
Aligning on standard tools and practices for our developer environment(s): OEP-37, OEP-45, Docker, Kubernetes, etc.
Pages
Child pages (Children Display) | ||||
---|---|---|---|---|
|
Membership
Anyone who participates in DevExp WG is considered a member. There are several ways you can participate:
Join our meetings.
Discuss or review issues and PRs related to DevExp.
Take on DevExp issues yourself.
Chat with us on Slack or the Open edX forums.
Active Members
Inactive/Past Members
Thanks for your help!
- …
Let’s talk about MFE image building… why we (usually) don’t need to re-build, and figuring out this Docker build cache madness. (Régis Behmo )
Theoretically, rebuild should only happen if (1) we change an MFE and (2) we’re pushing it to production
Errors when installing node_modules
npm error, socket reset, registry hangup
Docker build cache size needs to be set large enough so that it doesn’t get garbage collected between mfe builds
need to change a config item in $HOME/.docker/daemon.json
If you think you rebuild too often, try upping docker build cache max size
Talked about https://github.com/kdmccormick/tutor/pull/34 - kyle will continue to work on
Production vs dev flow in docs - docs nudge you towards production flow
Remote image building - anyone?
edunext has - they build tutor-nightly images on an ec2 instance
20-30 minutes for uncustomized mfe image
custom multiarch builder - regis builds macos images even though he doesn’t have a mac
Older Notes
Paste old notes here.