Democratizing Development
What are some best practices that make access to contributing easy?
OSHWA Summit 2020
https://www.youtube.com/watch?v=M9AU4CoI2c8&list=PLN2I5IwhHQ4pmaknussTtkO30SNJdlG4o&index=7
G's Review
User:Groques's review:
Offers a good introduction of how the maturation of free and open-source software development led to increased democratization of the field.
Mentions a few key areas of best-practices in software development for open-source hardware to follow to become equally democratized:
- Accessibility
- Test
- Automation
The OSE Workbench Platform exemplifies many of these industry standard best-practices in the above key-areas.
For example:
- Accessibility
- Provide great libraries - OSE Workbench Platform will include the OSE Workbench Core library with common functionality to all workbenches
- Seamless build systems - OSE Workbench Platform leverages Docker and containerization technology to create reproducible builds and distributed local development environments for workbench development
- Write thoughtful error messages - OSE Workbench Platform includes a
osewb
CLI with thoughtful error messages that tell users what went wrong, and commands to execute in order to fix the problem. The OSE Workbench Core library also prints great warning messages in FreeCAD's Report view when unexpected scenarios occur for troubleshooting and debugging. - OSE Workbench Platform generates new workbenches with out-of-the-box support for modern-looking and mobile-friendly documentation sites, in addition to its own documention site
- Test
- OSE Workbench Platform generates new workbenches with out-of-the-box support for unit tests and continuous integration via Travis CI.
- OSE Workbench Platform also provides support for generating coverage reports to aid in finding holes and gaps in current test coverage
- Automation
- OSE Workbench Platform provides the
osewb
CLI to automate common and repetitive tasks OSE workbench developers perform - OSE Workbench Platform provides an
osewb init
command to generate new workbenches automatically - OSE Workbench Platform plans to provide a
osewb make
command to initialize code for common patterns- This will be similar to Laravel's, the leading PHP Web Development framework, php artisan make command.
- OSE Workbench Platform provides the