New YouTube how-to video project -- Call for contributors

Greetings all! I’ve started a new pet project to create a collection of 26 videos consisting of coding tips and best practices for working with Open edX plugins. See this introduction video for the salient details of the project.

26 Coding Tips To Make You A Better Open edX Programmer

Please DM me – ideally on the Open edX Slack channel – or email me at if you’re interested in collaborating with me on this. If you’d be interested in contributing video content explaining any of the 26 subjects below then I will a.) do the post production editing for you, and b.) create a really nice bio video segment to introduce you, and c.) publish the final video to this YouTube series: 26 Tips To Make You A Better Open edX Plugin Programmer. There are other ways to contribute as well, in case you’re camera shy but otherwise would like to help.

The coding tips themselves are already published to this Github repo: Open edX Plugin Examples and include the following topics:

  1. Iterating and introspecting structured course content
  2. Creating a custom oauth backend that seamlessly integrates with Open edX third party authentication
  3. Creating custom urls to auto-enroll students in a course
  4. Automatically detecting and adapting to browser OS’ locale setting
  5. Leveraging Open edX’s custom library of Python decorators
  6. Creating custom Open edX Django configuration settings
  7. Adding new custom urls to Open edX LMS and Course Management Studio
  8. Generating log entries to LMS and CMS
  9. Trapping and act on on Open edX’s Django signals
  10. Modifying existing REST api endpoints and how to create entirely new REST api end points using Django RestFramework
  11. Best practices for Django app setup, app self-checks and app configuration
  12. Creating new Django models
  13. Adding your custom Django models to the Django Admin console
  14. Working with Mako templates from inside your plugin
  15. How to integrate with Open edX’s static asset compilation system
  16. Using Django middleware to intercept and redirect LMS and CMS url http requests
  17. Creating custom command-line utilities in Django custom commands
  18. Create run-time feature toggles to enable/disable your custom code using Django Waffle flags
  19. How to detect and consume OS environment variables from your Python code
  20. Bundling multiple plugins in a single pip package
  21. Automatically initializing Django model data during app startup
  22. Adding unit tests to plugin code
  23. Semantic version control of your repository
  24. Leveraging Pre-commit, flake8 and black and keep your source code consistent with that found in Open edX projects
  25. pip configuration, requirements, constraints,, pyproject.toml
  26. Publishing to PyPi

I’m pleased to present Open edX™ Plugin Coding Tip #1 - Iterating Course Content

1 Like

@kcaliff has claimed Coding Tip #2: Creating a custom oauth backend

Thanks for contributing to this project @kcaliff
YouTube - Open edX Plugin Coding Tip #2 - oAuth2 Backend for Wordpress

YouTube - Open edX® Plugin Coding Tip #3 - Python Decorators