Developer Experience in Open Source Lorna Mitchell, Redocly @redocly ~ @lornajane ~ @lornajane@indieweb.social

Developer Experience Developer experience is about people getting things done in a confident and efficient way. @redocly ~ @lornajane ~ @lornajane@indieweb.social

Open Source Lifecycle From user to contributor. From contributor to maintainer. @redocly ~ @lornajane ~ @lornajane@indieweb.social

The art of README @redocly ~ @lornajane ~ @lornajane@indieweb.social

README structure 1.Project purpose 2.Installation 3.Basic usage 4.Further resources @redocly ~ @lornajane ~ @lornajane@indieweb.social

Documentation Documentation is a multiplier. •Use Docs-as-Code •Publishing is optional •Getting started •Platform-specific info •Advanced usage @redocly ~ @lornajane ~ @lornajane@indieweb.social

Metadata Topic tags help project discovery. Introduce your project briefly. Key project measurements. @redocly ~ @lornajane ~ @lornajane@indieweb.social

Issues •A well-maintained issue list is a warm welcome. •Respond, and close as appropriate. •List all known issues, and any workarounds. •Use the help-wanted and good-first-issue tags. @redocly ~ @lornajane ~ @lornajane@indieweb.social

Code of Conduct A code of conduct sets out expectations for all participants. GitHub prompts with a selection of CoC templates. @redocly ~ @lornajane ~ @lornajane@indieweb.social

Contributing file Everything a new user needs to contribute. •Branching strategy •Commit naming requirements •How to run tests •Coding standards, linting •How to set up local tools •Docs process @redocly ~ @lornajane ~ @lornajane@indieweb.social

Pull request reviews Transferrable skill from other code projects. •Be clear and constructive •Be prepared to add one more commit •Be consistent •Be responsive Does this feature improve things for the project audience/purpose? @redocly ~ @lornajane ~ @lornajane@indieweb.social

Tools and automation Let the machines do the work @redocly ~ @lornajane ~ @lornajane@indieweb.social

What to automate A non-exhaustive list of suggestions: •tests •linting (all file formats) •formatting/coding standards •build or compile •spell and link checking Include anything you can include. @redocly ~ @lornajane ~ @lornajane@indieweb.social

Local tools Provide developer information in CONTRIBUTING.md. Local tools shorten feedback cycle and improve developer experience. @redocly ~ @lornajane ~ @lornajane@indieweb.social

Outreach Your project is more than the code. Build and enable the ecosystem: •write about the project •feature cool projects using your project •check stackoverflow questions •speak at a meetup @redocly ~ @lornajane ~ @lornajane@indieweb.social

Developer Experience in Open Source @redocly ~ @lornajane ~ @lornajane@indieweb.social