Building a kinder, noob-friendly world
Tags: webdev, watercooler
Published: 2020-08-10 16:15:54

Software development is a magical job that also happens to be guarded by monsters that eat you alive at the wrong move. All too often we hear stories of people who have had a bad experience asking for help at platforms like StackOverflow where they are met with people who tell them to <q>read the f*cking manual</q> like it's some type of weird and obscure magic spell that repels these pesky noobs. And while I admire how StackOverflow has made some effort to reduce this by reminding everyone to be polite and nice to everyone, even going as far as reminding you that someone is a beginner, other platforms don't have that type of moderation.

Most beginners ask around for help in developer groups like the ones found on Facebook. To them it is the most accessible. In the Philippines where I come from, Facebook has partnered with Internet service providers to provide free access to your Facebook account. Most beginners from here use it to ask for help. And sadly, developer groups on Facebook are just like StackOverflow&mdash;a mess.

## New devs, change starts with you
I know you've had a few experiences like these, and if you're still a beginner who asks for help (just like the <i>experts</i>, bruh), you can read Eric Steven Raymond's [<cite>How To Ask Questions The Smart Way</cite>][asking-for-help] so you could minimize the pain of asking for help.

Now, someday, in the very near future, you'll be one of the more knowledgeable developers who answer questions on these help platforms and developer groups. It is now your responsibility to <q>not repeat the mistakes of your ancestors</q>. So what you gon' do when you answer questions?

### Read the <del>f*cking</del> manual.
Most beginners don't even know there are manuals or documentations for these technologies, regardless if it's HTML or React or Vue or that new framework their college professors or buddies told them to learn. Most of them come from tutorial sites that don't mention where to get more information. This makes them think that those information resources are the only ones they could rely on for learning the tech. <strong>Be gentle</strong>. Again, remember that you were once in their shoes, and you wouldn't want them to feel the same way you felt before.

<b>Instead of saying</b>: <q>Read the manual</q>
<b>Try this</b>: <q>This question has been asked before. Try looking here: [link]</q> or <q>You can learn this on the official documentation: [link]</q>
<b>Even better</b>: Try explaining the answer to the question, or where things went wrong, and <em>then</em> direct them to a documentation. Some of these documentations are quite technical and would be really hard for a beginner to understand that it won't help even if you direct them to read it.

### <q lang="tl">Google mo, tanga</q>
In the Philippines, another thing you'll most likely hear is <q lang="tl">Google mo, tanga</q> which roughly translates to <q>Google it, dumbass.</q> Not really nice now, no? It is very annoying when some noob gets lazy and instead of searching the web for an answer, they just go straight to the forum to ask questions. And trust me, I've met a lot of beginners who are just lazy like that.

However, drawing from my personal experience, there are just times when beginners just don't know what to search for. I remember when I was starting to learn CSS, I wanted to build a navigation bar. And I didn't know what it was called back then. I was searching for hours, using different terms like <i>link list</i> (because it was a list of links, and the search just led me to the data structure <i>linked list</i>), <i>list of links</i>, and other variations of that. It's a struggle, a big one. Only when I encountered Bootstrap about a month later that I found out it was actually called a navigation bar or a navbar.

Now everytime I see beginners ask questions they can easily find answers to had they just googled first, I think of this story. What if they actually tried long and hard to search, it's just that they didn't know what to search for? It's really helpful to ask ourselves about that.

<b>Instead of saying</b>: <q>You should have searched the web first</q> or <q>Google it</q>
<b>Try this</b>: Suggest a search term they can use for further research (<q>You can search for [search term] on the Web, you'll find lots of resources.</q>)

### Always remember who you used to be
This kind of sounds a little dramatic and cheesy, but always remember who you used to be. You were also <q>dumb</q> (you're a smart person I know, just not in certain areas like we all are). You were also clueless. And you also needed help, just like today. No one is a complete expert in anything. They still need help. We all do. So when in doubt, ask yourself: <q>How would I prefer people answer me if I was this person asking?</q>

I'm currently working on [Antares Programming](https://antaresph.dev/), a project that aims to make Web development accessible to more Filipinos by providing information resources and tutorials in their native language. Part of my research for this project is finding out how to teach programming and also how to give help to those who need it. That is why I wanna build it with beginners' feelings in mind. It's just another little step we're doing. If we can consider the feelings and experiences of our users, why can't we consider the feelings and experiences of our fellow developers?

We may be working with robots and transistors on the daily, but at the end of the day it's a person on the other end of the line we're talking to. We need to work together to build a kinder and noob-friendly world.

[asking-for-help]: http://www.catb.org/~esr/faqs/smart-questions.html