|
| 1 | +title: Thinking More Openly About Working in The Open |
| 2 | +--- |
| 3 | +categories: |
| 4 | +open-source |
| 5 | +collaboration |
| 6 | +community |
| 7 | +--- |
| 8 | +author: sara |
| 9 | +--- |
| 10 | +pub_date: 2022-12-16 |
| 11 | +--- |
| 12 | +body: |
| 13 | +I began working at Creative Commons (CC) as the Full Stack Engineer this year |
| 14 | +and it’s been amazing to get to work in the open at CC. But as someone who |
| 15 | +has been working in closed, internal source environments for a very long |
| 16 | +time it’s definitely been a learning experience and a perspective shift. |
| 17 | + |
| 18 | +For years I benefited from, observed, and offered up personal work into the |
| 19 | +world of open source, but I was never deeply involved in other projects in |
| 20 | +a big way, nor was I able to contribute anything I did at my professional |
| 21 | +day job back into the open source world (despite the benefit open source |
| 22 | +afforded the work I did every day). It had been a hope of mine, something |
| 23 | +I had advocated for, but had ultimately not worked out. Now at CC I |
| 24 | +finally get to participate in projects that operate in the open, and a |
| 25 | +larger community of contributors around the world. |
| 26 | + |
| 27 | +It's been refreshing and rewarding, but it's also been enlightening. There's |
| 28 | +so much that's different now. Working in the open doesn't just shift the |
| 29 | +terms under which your code is licensed or how many people can contribute, it |
| 30 | +requires a significant shift in both approach and process. |
| 31 | + |
| 32 | +For example, working in the open means that while there may be community members |
| 33 | +eager to contribute they may lack contextual understanding that someone more |
| 34 | +intimately familiar with a project might develop over time and rely upon. To |
| 35 | +support contributions well you need to have a heavily documentation-first |
| 36 | +strategy that affords new contributors key information in understandable and |
| 37 | +clear instructions. |
| 38 | + |
| 39 | +That also means that documenting *issues* isn't just an item on a todo list |
| 40 | +you'll get to later. There's extreme value in writing out detailed information |
| 41 | +both for your future self, but also for any would-be community contributors to |
| 42 | +understand the problem and address it. Setup instructions, contextual |
| 43 | +documentation about the codebase, as well as detailed known issues, roadmaps, |
| 44 | +etc. All of it needs to be documented and written out, which not only |
| 45 | +benefits the community contributors, but also benefits the project as a |
| 46 | +whole. It means key information has to live in the open alongside the code |
| 47 | +it informs. It's truly a win-win all around. |
| 48 | + |
| 49 | +The process also has to shift, you can't just make a list of things you want to |
| 50 | +tackle and get to work, you have to consider how each item can be smoothly |
| 51 | +adopted as granular and iterative Pull Requests that might all be worked on |
| 52 | +by entirely different individuals. The level of care in how the work is |
| 53 | +divided and scoped matters even more in this situation than it would have |
| 54 | +with an internal team. Working in the open doesn't just mean coding in the |
| 55 | +open, it also means planning in the open, and that means having a clearer |
| 56 | +view on the overall roadmap and goals the project hopes to meet. |
| 57 | + |
| 58 | +If you are the steward of a codebase any task list you create or *issues* you |
| 59 | +identify are ultimately not just for you alone. Putting an item on your list |
| 60 | +when you're working alone isn't enough, you've also got to find time to work |
| 61 | +on that item, and work your way through completing it. |
| 62 | + |
| 63 | +In the open source context, working with a community of contributors, creating |
| 64 | +an *issue* is just as important and meaningful as writing code, in many cases |
| 65 | +it might actually be MORE important. Because *issues* are often the way in |
| 66 | +which contributors first offer up help and insight, they're the first contact |
| 67 | +they have with your project. Furthermore, any *issue* you create may end up |
| 68 | +getting completed by one or more people that are not you, which means it |
| 69 | +doesn't just sit on a list till you do it. It's a small, but significant |
| 70 | +shift in how you think about planning and breaking down work on a codebase |
| 71 | +in the open. |
| 72 | + |
| 73 | +It’s certainly new, but incredibly rewarding. Even on days where I might not get |
| 74 | +to submit a Pull Request myself, or squash a bug in a meaningful way, I can still |
| 75 | +feel I offered up meaningful contributions to the community and the codebase |
| 76 | +through better documentation, answering someone’s question, reworking a |
| 77 | +process, or reviewing someone else’s generous contribution. Open Source means |
| 78 | +opening up your definition of what contribution means, and it’s a lot broader |
| 79 | +and more meaningful than I thought. |
0 commit comments