Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Open roadmaps for your open communities. Not a ...

Open roadmaps for your open communities. Not a success story, but you may have one

As open source projects and communities grow, it becomes difficult to understand what’s going on inside. A public and up-to-date roadmap can encourage new contributors to join the project and guide the efforts of existing contributors, and also give confidence to adopters about the direction and sustainability of the projects. Is it easy to create a public roadmap? Probably. Is it easy to maintain it? Not exactly. Did we fail with it? Yes. Can you learn from those mistakes? Also yes.

Oleg will share the experiences of public roadmaps in the projects he has contributed to: Jenkins, WireMock, Gradle, Keptn, OpenFeature, CDF, etc. He'll share the reasons and principles that have guided creation of *open* roadmaps, the challenges encountered, the techniques and technologies that could be used in your projects. We’ll talk about maintaining roadmaps, mistakes we made there and how we addressed them. In particular, Oleg will describe building a roadmap with help of GitHub Projects and modern features offered by the GitHub ecosystem. That could be the easiest way for new projects and communities, and can be also useful for established projects.

Oleg Nenashev

April 11, 2024
Tweet

More Decks by Oleg Nenashev

Other Decks in Technology

Transcript

  1. / Open Roadmaps for YOUR Open Communities Oleg Nenashev, Gradle

    @oleg_nenashev 1 * Not a success story, but you may have one
  2. / > whoami @oleg_nenashev oleg-nenashev Dr. Nenashev / Mr. Jenkins

    Developer tools hacker Community builder & DevRel consultant #RussiansAgainstPutin #StandWithUkraine Credits: The first version of the talk was done together with Mark Waite for cdCon 2021. Thanks to CloudBees for sponsoring time for the roadmap work in Jenkins
  3. / 5 > whoami Oleg Nenashev “I am a beaver

    who builds and maintains the communities”
  4. 7

  5. / Growth challenges • Isolated sub-communities • Lack of transparency

    • Perceived lack of focus • Perceived or real vendor lock-in 8
  6. / Growth challenges • Isolated sub-communities • Lack of transparency

    • Perceived lack of focus • Perceived or real vendor lock-in • Hard to get enough contributors behind big initiatives • Hard to join initiatives 9
  7. / Growth challenges • Isolated sub-communities • Lack of transparency

    • Perceived lack of focus • Perceived or real vendor lock-in • Hard to get enough contributors behind big initiatives • Hard to join initiatives • Not enough company contributors 10
  8. / Stories where Our Roadmap helped • Contributor Onboarding Flow

    • Google Summer of Code and self-funded internships • Many Particular features • Some publicity 14
  9. / … and where it did not • Attracting company

    contributors • Advocacy and Outreach efforts • Community marketing • The roadmap itself • … anything else in longer term 15
  10. / Challenges we experienced 1. Bus factor 2. Inconsistencies 3.

    Stalled progress 4. Roadmap bloat 5. Off-roadmap initiatives 16 Source: impactplus.com/blog/7-cant-miss-ways-to-overcome-any-creative-roadblock
  11. /

  12. / What is roadmap? en.wikipedia.org/wiki/Technology_roadmap A technology roadmap is a

    flexible planning technique to support strategic and long-range planning, by matching short-term and long-term goals with specific technology solutions Keywords: • flexible planning • support strategic and long-range planning • matching short-term and long-term goals 20
  13. / Defining target audience • End users • End user

    companies • Community Contributors • Downstream projects/communities • Vendors github.com/jenkinsci/jep/tree/master/jep/14 26
  14. / Setting guiding principles • Community-driven • Open and transparent

    process • Open data • No commitment on delivery github.com/jenkinsci/jep/tree/master/jep/14 27
  15. / Setting timeline • Dates/quarters are good for consumers •

    It’s rarely good for a community-driven project • NEVER commit on dates 28
  16. / + All Community Initiatives • Developer tools and services

    • Contributor onboarding and outreach programs • Open Governance • Community Events • Outreach Programs 30
  17. /

  18. / Challenges we experienced 1. Bus factor 2. Inconsistencies 3.

    Stalled progress 4. Roadmap bloat 5. Off-roadmap initiatives 32 Source: impactplus.com/blog/7-cant-miss-ways-to-overcome-any-creative-roadblock
  19. / Bus factor It is not enough to have one

    champion of the roadmap “It’s me, hi, I’m the problem, it’s me”.gif 33 Source: https://www.youtube.com/watch?v=IHZBMjnF6-4
  20. / Challenge: Roadmap Inconsistencies Solution(s) • Regular roadmap reviews •

    Regular status reviews at SIG meetings • Issue tracker as a source of truth 34
  21. / Challenge: Stalled progress Solution(s) • More publicity • SIGs

    leading initiatives • Outreach programs to facilitate roadmap • Ask for help • Removing things is okay Image source: https://eu.freep.com/story/news/local/michigan/wayne/2019/02/22/hamtramck-pothole -car-stuck/2948865002/ 35
  22. / Challenge: Roadmap Bloat Solution(s) • Categories • Filters •

    Policy on number of items per category Image source: https://www.thrillist.com/cars/nation/the-worst-interstate-systems-in-america-washingt on-dc-new-orleans-houston 36
  23. / Challenge: Off-roadmap initiatives Solution(s) • Embrace initiatives • Include

    to the roadmap when possible • Invite initiatives to join SIGs and sub-projects Source: https://www.amazon.com/Russian-Truck-Offroad-Jeep-Simulator/ dp/B08VDLP9M9 38
  24. / What could one do in 2023? • K.I.S.S. •

    Bring the roadmap right into the issue tracker • Make issues the roadmap content • Avoid duplication • Avoid -as-code, use WYSIWIG Source: knowyourmeme.com/photos/ 2401265-wholesome-memes 39
  25. / Default solution for GitHub ecosystem • Solves many issues

    by direct integration with GitHub • Good UX for small projects • Publicly visible w/o GitHub auth • GitHub Automation Capabilities 42 Projects
  26. / Limitations of GitHub Projects • Bad UX beyond 5

    columns • No Mobile mode • Gets cluttered by labels & Co • GitHub QL does not support complex expressions GitHub Projects 2.0+ 44
  27. / Limitations of GitHub Projects • Tied to a single

    organization, no support for multiple orgs • No support for migrating repositories between orgs • “Roadmap View” is tied to dates and not advised for open source • [Even more lock-in]? GitHub Projects 2.0+ 45
  28. /

  29. / • Roadmaps coordinate effort • Roadmaps share vision •

    Roadmaps != schedules What we learned 48
  30. / Takeaways • Public roadmap may help • Keep it

    simple • Ensure sustainability of your community… and the roadmap • Consider your social coding platform by default 49
  31. / Credits • All Jenkins contributors • Mark Waite, CloudBees

    ◦ For the original version we did together at cdCon 2021 • OpenMoji project ◦ https://openmoji.org/ • Online comics, all of them
  32. /

  33. / Jenkins Roadmap. Our Timeline • Feb, 2020 - Contributor

    Summit @ FOSDEM ◦ Initial discussions • Mar, 2020 - Jenkins Enhancement Proposal (JEP-14) ◦ https://github.com/jenkinsci/jep/tree/master/jep/14 • Apr, 2020 - Initial preview ◦ https://www.jenkins.io/project/roadmap/ • Apr - Jun 2020 - Roadmap reviews ◦ Mailing list discussions ◦ SIG meetings and planning • Jul, 2020 - Public announcement 55
  34. / > whoami @MarkEWaite MarkEWaite • Manager, CloudBees • Jenkins

    Core maintainer • Jenkins Documentation Officer • Git plugin maintainer 56
  35. / Who is Mr. Jenkins? • Automation server/framework • Open-source

    • More than 1900 plugins • Big community • 4,000+ contributors per year • A part of the Continuous Delivery Foundation (CDF) 58 www.jenkins.io
  36. / Jenkins community • Open governance • Jenkins is contributor-driven

    • Open to any individual and company • Maintainers have full freedom 60
  37. / Jenkins community consolidation • 2011 - Open Governance, Governance

    Meetings • 2015 - Teams, Jenkins Officers, sub-projects • 2016 - First Contributor Summit • 2017 - Jenkins Enhancement Proposals • 2018 - Special interest groups (SIGs) • 2019 - Governance Board elections, CDF Membership • 2020 - Graduation at CDF 61
  38. / Public Roadmap jenkins.io/project/roadmap Published on July 15, 2020 Revised

    periodically Target audience: • Jenkins users • Contributors • Adopters and vendors 62 RELEASED PREVIEW CURRENT NEAR-TERM FUTURE
  39. / Example: User Experience and User Interface UI/UX Revamp: Look

    & Feel, Themes, Accessibility User documentation and guidelines www.jenkins.io/sigs/ux 63
  40. / … and Cloud Platforms Kubernetes, Kubernetes, Kubernetes, … Pluggable

    Storage Jenkinsfile Runner – Portable Pipeline engine Support for more Pipeline engines, esp. Tekton 64
  41. / Roadmap Contents Key initiatives in all areas • Features

    • Distributions and packaging • Documentation • Developer tools • Infrastructure and services • Community, Governance Grouping by use-cases Initiative Horizons jenkins.io/project/roadmap 67 RELEASED PREVIEW CURRENT NEAR-TERM FUTURE