Coding? Languages? Which to Pick?
Tags: programming, beginners, python, help
Published: 2023-11-18 15:48:58

_As a developer, we all have this burning question within us once in our lives:_

**Out of so many programming languages, which one do we learn and master first?**

In this series of articles, we at The Nebula Devs will analyze the top ten coding languages. We will be going through their purpose, evaluating them based on their merits and drawbacks using facts and our personal experiences with them.

Most importantly, the best programming language for you will always be related to your purpose. Is it because you have a passion for creating games? Or do you want to become a professional website developer? Maybe you have an interest in machine learning and A.I and would like to pursue it?

The possibilities are endless and so it is critical to choose the best language to suit your own personal needs.


**Python?** 
Starting with the most popular language, we have Python. It is the go-to answer when new programmers ask the question. And for good reason too. Python has countless uses in this technological era, this includes:

* A.I Development
* Back-end of a Website
* Data Analysis and Visualization

And many more. Even I learnt Python when first starting out!

One benefit of learning Python is that it is easy to pick up. Since the key words are all readable in English, new coders will be accustomed to the language quickly. For example when talking about displaying something in the terminal, we would use the key word "print" which mirrors its real life counterpart.

Another benefit is its popularity. This means that there will be lots of community support surrounding the language which allows you to get help more easily. This also comes with many useful modules that others have coded before. Additionally there are many job prospects if you do choose to master this language.

Last but not least, the final benefit is that Python is multi-paradigm. This means that it can be coded in many different ways. If you want Object Oriented Programming, Python has classes. Functional Programming? Python has functions. We could even go imperative or procedural if that is your cup of tea. This allows it to be a jack of all trades, which can be adjusted to fit your needs.

Of course, there are also flaws in this language. One of them includes how it's dynamically typed. This means that variables with the same name can be easily altered. For example let say you wrote:

```
x = 2
x = 3
```
The second line will override the first line thus the variable x is now 3, causing many unintended side effects when trying to scale your project.

Another problem is its slow speed. If you have seen any coding memes on the Internet, you will know that Python is the snail of the coding world. Due to how it compiles the whole code written instead of interpreting the code when it runs, its speed will be one of its biggest drawbacks.

Lastly, Python is messy. When coding python, it is imperative to have indentation to signal which code is which other codes. For example in the following code, the statement a=2 is inside the while statement while the a=3 is outside of it.

```
while True: 
  a = 2

a = 3
```

In this simple example, it doesn't look that messy but when you have code like this:

```
def addition():
  ans = 2
  for i in range(5): 
    anns +=1
    if ans != 6: 
      # Imagine there's more code.
```

Yeah, the code above may be nonsense but this is just an example of how messy it will look when mishandled. So as a coder, you must ensure that the code is organized else you'll have a headache looking at it again.

In my personal experience, Python is my favorite coding language by far. It's easy and relevant to my field of study in data analysis and thus, I use it on a day to day basis.

If you enjoyed reading so far, do consider joining us at The Nebula Devs. We are a passionate community of aspiring developers and graphic designers. Joining us would allow you to have a friendly environment where you can nurture, learn and grow. We will also have several paid services such as web development and discord bot development.

Click [here](https://discord.com/invite/uM4fD3bzQu) to join our discord!

**Conclusion:**
If you enjoy the versatility, popularity and the low skill floor that Python provides, you should definitely consider Python as your first language. Yes, there are some drawbacks like how it has a messy syntax with its nesting and how slow it is but those are minor in comparison to its benefits.

Of course, it always comes back to your purpose. If you have interest in Python’s Machine Learning capabilities or its ability to visualize data clearly, I highly recommend picking this as your first language!