-
Notifications
You must be signed in to change notification settings - Fork 55
Description
It's no secret that a large portion of FRC teams don't use CI, or even code formatting. Some do, but most don't. We have docs for CI and formatting but most teams don't read and implement them (the articles being under "Advanced GradleRIO" probably scares them off). If we want to encourage good software engineering practices, we should make adding CI and code formatting as easy as possible. Similarly to how "Enable Desktop Support" is a single checkbox today that enables sim support, the project creator (and importer?) should have an "Enable Code Formatting" checkbox that will create a build.gradle file with spotless added (but with checks possibly softened to a warning instead of an error), and an "Enable CI" checkbox that adds a GitHub Actions workflow that does runs a basic build (bonus points if it also checks formatting if that's enabled). By making this option more visible, teams might make the decision to enable these options more often or learn more, setting them on a path to follow more industry-standard practices.
We could expand this to have many checkboxes, but we'd need to think more about what options are the most important because too many is bad. Formatting and CI in my opinion are a good start.