Everyone Struggles


The theme for week 3 of the Outreachy internship was Everyone Struggles, and fittingly, I struggled a lot while writing this post. I almost had it done then my WordPress tab crashed and come to find out my clicking “save draft” every minute had not actually saved anything, so this is actually my second take for writing this post. When you’re writing something, make sure it’s actually saving when you hit the save button.

Struggling

As I’m writing this post, I’m looking out of my window at a couple cardinal fledglings biting a chain link fence, rocks, and everything in sight as they struggle to figure out what is and isn’t food, all with one of the parent cardinals picking up seeds and feeding them. These fluffy descendants of dinosaurs are struggling as we all do during life, and they happen to be incredibly cute while doing it.
A very fluffy light brown sleeping cardinal fledgling.

image, see caption

One of the fledglings fell asleep as I was writing this.

This cycle of struggling is inevitable. People struggle at many different moments of their lives, and for many different reasons. In the open source world these struggles range from issues with WordPress not saving, to the plethora of new vocabulary terms that seem to be getting longer by the day, and everything in between.

Vocabulary

Communication is key to any sort of relationship, whether that be personal or professional, and in the Open Source and technology world this communication is helped by a wide range of terms, acronyms, and names for things, some which are self-explanatory, others quite esoteric. When coming across a new term it’s totally natural to not have any clue what is going on, but it’s not too hard to figure it out, so here’s the process I use when I stumble across a new vocabulary term:

My Process

  1. What context am I finding this word or acronym in? What clues to its meaning can I glean from it? Sometimes the context can give a really good starting point for figuring out what a word or phrase is, for example if you stumble across an unfamiliar term in a code base, does that repository have a readme or some other explanation? Are there comments in the code around it? This gives a good starting place for the next step:

  2. When context isn’t enough, search! I generally do DuckDuckGo searches with the unknown word or acronym along with the context I found it in, for example not too long ago I came across BBB in the GNOME project’s Rocket Chat webapp, so I knew from the context (it was the flavor text when hovering over a call button) that it had something to do with GNOME and video/audio calls, so I searched for “BBB GNOME” and a few variations in DuckDuckGo and Google, which didn’t give me meaningful results on account of BBB also standing for Better Business Bureau, which led me to:

Ask!

  1. Ask! When a search does not succeed, ask away! Asking questions can be daunting, especially in the tech field and some communities don’t have the greatest histories with accepting newcomers asking questions, but from a few months of frequenting the GNOME Matrix’s Newcomers channel and talking to my mentor I can confidently say that GNOME does really well on this front. For example, I didn’t know what BBB stood for, and a lot of searching didn’t get me any closer to figuring it out, but it came up in conversation one day with my mentor and now I know it’s GNOME’s video service called Big Blue Button.

As for the Newcomers matrix channel, the regulars who are in there are generally able to answer people’s questions, and when they can’t they often have a good idea of where to point the person asking so they might find an answer. GNOME also has a great newcomer’s guide which has a button to join the newcomers matrix room. (https://wiki.gnome.org/Newcomers)

To help your question get answered, make sure you give people enough detail to figure out what you’re trying to do! Sometimes a simple question about a term has wildly different answers depending on the context of what is being done, so it’s important to have enough detail (but probably not a massive wall of text, break it up so people can read it) so that people helping you can know from what angle to help.

Conclusion

All-in-all everyone struggles, and vocabulary terms in this field are numerous and the list is getting longer by the day, but as you get acquainted with projects, read documentation, examples, and ask questions, what seems like an impossible task will become easier and more possible by the day, so don’t give up!