Everybody Struggles (I Probably Struggle A Bit More)
I have been delaying writing this Outreachy blog for over two weeks now. Aagghh! I kept thinking I’ll write it up when I have the perfect struggle story to share, when I am in the perfect mood to write. But that doesn’t happen.
Waiting for ‘the inspiration’ to write is the best way to make sure that you never write at all.
Better done than perfect!
The theme for this blog (as suggested by the Outreachy folks) is ‘an open source vocabulary term’ that I once didn’t know and eventually learnt.
You see, when you are a newbie in open source, you’ll often find terms and abbreviations that you’d think makes perfect sense to everybody except yourself. I recall the days when I had first began exploring GitHub and had no idea what it was all about.
I used to see ‘LGTM’ often written in the comments of a Pull Request. I thought that’s just the rule of open source; people make PRs and other people write ‘LGTM’ below it.
So I tried to fit in.
I would go to random repositories on GitHub and look for open PRs and write ‘LGTM’ in the comments. You see, dear reader, it wouldn’t have been a problem if I had kept my ‘LGTMs’ to Pull Requests. But I didn’t. I started writing ‘LGTM’ below issues too.
It just seemed so fucking cool. Well, it wasn’t cool, as I realized later.
A friend of mine from college fortunately happened to notice my ‘LGTM’ rampage and policed me quite well. Below is what my friend taught me;
‘LGTM’ stands for ‘Looks Good To Me’. You use this abbreviation usually after you review someone else’s PR and agree with the changes they have made.
I realized the instinct to ‘google’ the stuff I wasn’t sure about didn’t come naturally to me. I was okay with not knowing as long as things worked out fine despite the lack of knowledge.
I suppose that’s why some companies, during their interview processes, try to gauge your ‘googling’ skills. They’d ask questions like — “what would you do if you were stuck while writing a piece of code?”, “what do you do if you don’t understand a term in the documentation?”
Nobody knows everything. Software companies are not looking for someone who knows everything. They are looking for someone who knows some and is willing to learn(via googling mostly) what they know not.
You see, in open source, more than anything else, it is important that we train ourselves to google the stuff that confuses or intimidates us.
Sometimes one comes across terms that are specific to a particular open source community. For example the conda-forge community uses ‘CFEP’.
If you google this one, you would find several full forms but none of them are meant when ‘CFEP’ is used by the conda-forge community.
CFEP (in the conda-forge ecosystem) means Conda-Forge Enhancement Proposal.
Such terms that are unique to a community are often described in the documentation of the community project, usually under the ‘glossary’ heading.
Open source is a wonderful place to learn and belong to a community. If you are starting out; congratulations, you’re in for an exciting journey of growth and knowledge. Just remember to google stuff you don’t know!
Ah, I suppose now that I stopped thinking about writing a ‘perfect’ blogpost, I wrote a decent enough piece. LGTM!