My current project goal is building a control module for a reciprocating motion actuator salvaged from a Sonicare electric toothbrush. As a side quest to that goal, I've decided to pick up learning KiCad again. I played with KiCad 4 around six years ago, but without practice I have forgotten almost everything so I thought I would start at the beginning with KiCad's "Getting Started in KiCad" guide.

Towards the top of that guide is a "Feedback" section where everyone is invited to help make the project better. Fairly common for free open source projects, but here something caught my eye: a tiny typo of "sumbit" instead of "submit". Well, they did say they welcome feedback, let me see if I can bring this typo to someone's attention. I followed the link to instructions on how to "Report an Issue"

Most of the instructions regarding filing an issue concern the software, focused as it was on version/build number and software libraries in play. That wouldn't strictly apply to reporting a typo, but towards the bottom is a link "I have a docs.kicad.org issue" and I followed that to the kicad-doc-website repository on GitLab. Poking around the directory tree, I couldn't find any of the documentation information. That was because it was the documentation web site infrastructure (Jekyll scripts, etc) and not the documentation itself. What I'm looking for is the "I have a documentation issue" link to a sibling repository kicad-doc.

Poking around the kicad-doc directory tree was more fruitful. I found getting_started_in_kicad.adoc containing the text for that page. My first objective was to see if the problem has already been fixed. I see the typo in the main branch, so the problem is still there. And since I had the source in hand, I copy/pasted it into Microsoft Word to see if the spell checker can find anything else. It highlighted a few debatable differences in convention (Word wanted "mouse wheel" versus the existing "mousewheel") and some domain-specific terminology ("opamp".) I decided they were out of scope for my first run. It did find one other clear problem: a typo "subsitution" which is "substitution" but missing the first "t".

With these two problems in hand, I will now file an issue. First I had to create a GitLab account, which had been on my to-do list anyway. As part of the sign-up process, GitLab forced me to create a repository pre-populated with a guide to GitLab-specific features as well as general git functionality. This is great to onboard someone new to git-powered source control, but it got in my way today. It took a few minutes before I broke out of the enforced tutorial so I can get back to kicad-doc and file issue #864: Misspellings in "Getting Started" Guide.

Once that was done, I figured I might as well try fixing the problem myself. Trying to edit the original source file resulted in a permission denied error, as expected. But it did launch an automated process to handle small single-file edits. It forked the repository into one I could edit, and then immediately package my edits into a merge request. ("Merge request" is GitLab's slightly different name for GitHub's "Pull Request" feature.) I thought this automation handling what would otherwise have been a manual multi-step process was pretty cool! After making my two edits, I put #864 in my description so merge request #909 was automatically attached to my issue #864.

At the same time I was building my GitLab merge request, one of the KiCad documentation maintainers (Graham Keeth) saw my issue #864 and fixed it immediately in the main branch, making my MR#909 superfluous. Graham was apologetic about my wasted effort but I was not offended. I wanted to learn the ropes of contributing to KiCad with reporting an issue, the merge request was a stretch goal. I received advice that I could have mentioned I'll be working on a merge request when opening the issue. I'll keep that in mind if I find something else in the future. I got feedback my issue was good, so there's that.

For today, I have the satisfaction of seeing these typo fixes back-ported to the 7.0 documentation branch, and is now live on KiCad site. The Getting Started in KiCad page no longer has typos "sumbit" or "subsitution" and that's my first tiny little contribution to KiCad. Now onward to actually reading and learning from that page.