Don’t Learn in a Vacuum: How Dev Communities Help Coding Newbies
Tags: beginners, python, learning, community
Published: 2023-04-14 14:17:16

I’m fairly new to coding. I started last year with HTML and CSS, and right now I’m learning Python. So yeah, definitely a newbie.

I have also been working in tech for more than a decade. Most of my friends are devs! And because I have so many ties to the tech world, I’ve been a member of various online dev communities for a while.

And I think that this is where I have a huge advantage over pretty much every other person who is also learning to code but _doesn’t_ have that ecosystem that I have.

## We don’t learn well in a vacuum
Like many other species of the animal world, humans learn from each other. We learn by watching each other do things or through explaining things to each other.

Sure, some of that can be done very well through bootcamps and interactive online courses. Some people also learn well from videos or books ([not me, though](https://engage-education.com/blog/learning-styles-kinaesthetic-learner-characteristics/#:~:text=A%20kinaesthetic%20learner%20is%20someone,to%20retain%20and%20recall%20information)). I found I can get quite far with those resources, plugging away in my virtual learning environment, using the hints, googling when I get stuck. But sometimes, I hit that point where things become nebulous… fuzzy.

You know, those questions that aren’t a clear question. The things your course materials seem to gloss over, and where googling won’t get you anywhere because you don’t even know _how_ to google for it. Heck, I don’t even think ChatGPT could help with this, to be honest.

Those questions that usual start with…

## “This is probably a silly question”
I came across one of those today. While I was doing some exercises from the [Codecademy Python](https://www.codecademy.com/catalog/language/python) course, I came up with the following solution to a problem they had posed:

```python
def over_budget(budget, food_bill, electricity_bill, internet_bill, rent):
  if budget < food_bill + electricity_bill + internet_bill + rent:
    return True
  else:
    return False
```

My code ran and passed. All good. Someone else would have rejoiced and moved on. But I scrolled down and noticed a slight difference in the solution Codecademy provided for this exercise. Their solution was the following:

```python
def over_budget(budget, food_bill, electricity_bill, internet_bill, rent):
  if (budget < food_bill + electricity_bill + internet_bill + rent):
    return True
  else:
    return False
```

You might not even have noticed the difference (and you probably lead a more peaceful life than I do). But because I am a professional nitpicker — I’m a tech content specialist so I do a lot of copy ~nitpicking~ editing —, I couldn’t move past those _two tiny litte parentheses_ in the `if` statement.

Those `()` just niggled at me. Were they necessary? Was I missing something vital here? The clause in this function wasn’t complicated enough to warrant the `()`, I thought, but maybe I was overlooking something? Would the missing `()` bite me in the `(‿|‿)` half a year down the road?

Luckily, I have access to some great communities, so I took to [Virtual Coffee](https://virtualcoffee.io)’s _#help-and-pairing_ channel on Slack.

## Avoiding ingraining bad habits = peace of mind
I posted the two code snippets and said:

> It’s a minor question but I like to understand these little things as I know these are the things that’ll come bite me in the ass later lol

And within literal moments, one of our more experienced Python people was there to help me out and confirm my suspicion that the parentheses were, indeed, not needed in this case. With more complicated clauses, they might become handy but they definitely weren’t necessary for this particular example.

And you know what? That little bit of information, knowing that I wasn’t overlooking anything, brought me such peace! It sounds kind of ridiculous, but these are the incredibly helpful things that allow me to learn to code without worrying that I am learning bad habits.

## A community is more than the sum of its parts
Without the access that the Virtual Coffee community gives me to developers of all kinds of levels, skill sets, and experiences, I would not have found this peace of mind so quickly.

Sure, I could have asked some friends who are devs. I do have friends who are well-versed in Python. I could have asked on Twitter or Mastodon. But the easy access to the cumulated knowledge of countless different coding languages is what’s so amazing about online dev communities.

Today, it was a Python question. But tomorrow it might be something entirely different. And I will still be able to rely on the _same_ community for help. That’s kind of awesome, if you ask me.

So whether you are a newbie coder or already more experiences, I cannot recommend joining a dev community enough. You’ll come for the coding help and stay for the social hijinks and overall support. Virtual Coffee is the right community for me, but there are plenty of others out there that you can try.

And just remember, at the end of the day, there really are no silly questions, so ask away!

**Tell me about your favourite dev communities in the comments!**