My Second Week Contributing to Debian: Merged Code, Real Feedback, and Learning to Trust the Process
说明与用途
作者在DebConf项目中成功提交并合并了两项贡献:一项是约鲁巴语翻译,另一项是功能代码更改,过程中学会了适应静态站点生成的限制并在编码前进行设计讨论。
问题
The author needed to understand how to contribute effectively to a large, long‑running open‑source project and to produce code that meets the project's architectural constraints.
结果
Two merge requests were merged, the author gained practical knowledge of static site generation constraints, and learned the importance of design discussion before coding.
工作流
- 1. Submit translation MR for Yoruba certificates.
- 2. Submit code MR to enable certificate validation without JavaScript.
- 3. Receive mentor feedback with list of required changes.
- 4. Study feedback to understand static site generation constraints.
- 5. Refactor view to BuildableDetailView and adjust URL patterns.
- 6. Implement 404 handling for invalid certificates.
- 7. Wrap user‑facing text in translation marks.
- 8. Debug stale code loading by reinstalling package in editable mode.
- 9. Test valid attendee, valid speaker, and invalid key cases locally.
- 10. Propose design discussion for public attendee list feature.
- 11. Await maintainer approval before coding.
证据
I had submitted a merge request to make the certificate validation page work without JavaScript. When the mentor merged it, he left a comment saying it looked good, and mentioned he'd open a follow‑up issue to improve how the page looks
The main points were: My validation view needed to be a BuildableDetailView, not a plain view. The reason was something I had never considered: the DebConf websites get exported to static HTML after the conference
At one point, the validation page kept throwing errors no matter what I changed. I'd fix something, reload, and get the same failure. After a lot of digging, I discovered the real problem: the application was loading an old, installed copy of the code from the virtual environment instead of the source files I was actually editing.
- 记录日期: 2026-10-27T01:11:29.704Z