What To Do If Coding Is Hard..?
Tags: beginners, programming, tutorial, productivity
Published: 2022-07-01 03:23:38

Hello, buddies! This article is to the coding learners and to the people who think *" I'm not good at coding.."* No one should think like that since anyone can be good at coding. The problem is they don't know how to be ***Good*** at coding. So, Let's learn what we can do if we're not good at coding..?

## Is coding is Hard? If yes, Why Coding Is Hard?

Is coding hard? Many of the people who learning to code will answer *"Yes."* But Why coding is hard? Then they will say *" I'm not smart enough to do that."*, *"I’m just not cut out for coding"*. But that’s not necessarily true. Coding isn’t hard, it just requires more time and practice than you might expect. 

To be a competent coder, you need to learn how to produce products, not just write code. To be a web developer, you need to be able to make a website, not just write out HTML tags. To be a Game developer, you need to learn how to use at least one Game Engine and a language, not to learn all the Languages used in Game Development. I also thought I won't be able to Develop games without learning to code but If I decided to learn coding first, I might not be here writing technical tutorials.

## Reasons why Coding is hard for many People and How To Challenge Them

### Reason 1 - Learning to Code Is Like Learning a Language

C++, Java, Python, Objective-C – these are just four languages that happen to be among the most popular programming languages in the world. There are hundreds more. And learning a coding language is like learning a foreign language – quite literally. “So where should I begin?” you may ask. Learn with an End Goal in your mind. Maybe you want to build mobile apps or become a Game developer. Or maybe you want to start your own website-building agency or even work for Google. Whatever your end goal is, find which languages you’ll need to learn and start there. Just to start!
 
### Reason 2 - Learning to Code is Time Consuming
Many aspiring developers walk away from a bootcamp or tutorial proclaiming that coding is a world reserved for geniuses and the whole thing is unfair. Actually, most devs who “fail” at coding, do so because they are not prepared to put in the time and research that it takes to learn. Attending a bootcamp is great place to start, but the work does not end there. Unlike other learning programmes, coding isn’t a qualification you can get and walk straight into a job, never to learn any theory again. Coding requires ongoing learning. So in conjunction with a bootcamp, you’ll want to try tutorials, engaging with other devs on github and spending time on basic trial-and-error. And also there are great sources to learn programming freely. Check this [article](https://catalins.tech/20-best-places-to-learn-programming-for-free) by Catalin Pit. Tips to learn Programming Faster is in the end of that article.

### Reason 3 - Confidence Vs Competence

![image.png](https://cdn.hashnode.com/res/hashnode/image/upload/v1619525780575/cIJ4LsZWE.png)
Source - Thinkful.com

Consider the above graph that illustrates a theory by Erik Trautman.  The theory itself is quite involved, but the above graph is a snapshot of his main hypothesis, which is that “your confidence is highly correlated with your happiness and… the point where your confidence and capabilities match is the best proxy for the sweet spot when you’re officially job ready.”

For some, building a career in coding takes months, while for others it takes years. What it comes down to is experience and hardcore grit. As an aspiring developer, you need to be prepared to experience moments of confusion, frustration and general hair-pulling craziness. But on the other side of those feelings, are feelings of satisfaction and the kind of “Eureka” moments that make it all seem worthwhile. Tip  is Start with the basics and put in extra hours – time is your most valuable commodity.

## Tips to learn Coding faster

### 1. Learn by doing. Always play with the code while learning

*Hint: Build a project as you go through the material. A personal project is often the best starting point.*

### 2. Grasp the fundamentals for long-term benefits

As elementary as they may appear at first, programming fundamentals always need to come first: the better you understand them, the easier it is to learn more advanced concepts. Check this great article - [ 5 Basic Concepts of Any Programming Language](https://howtoprogramwithjava.com/programming-101-the-5-basic-concepts-of-any-programming-language/)

### 3. Ask for help. You’ll need it

***Hint: [Stackoverlfow](https://stackoverflow.com/) and [learn programming(Reddit)](https://www.reddit.com/r/learnprogramming/) are gold mines for online programming assistance.***

### 4. Don’t just read the sample code. Tinker with it!

Reading sample code is not enough to understand how it works. To develop a true understanding, you need to actually run the code and tinker with it. With the additions of comments and instructions, sample code is packaged to be by the reader; but in reality, it’s pretty difficult to replicate from scratch. Reading is not the same as understanding, and actually trying to write the code yourself, or at least running it, will facilitate the learning process much more.

### 5. Take breaks when debugging

When debugging, it’s easy to go down the rabbit hole for hours, and there’s no guarantee that you will fix the problem. To avoid this, it’s best to step away from the for a few hours, and return with a fresh perspective. Not only is this a guaranteed way to help solve the problem, but you’ll also save yourself hours of headache. So if help isn’t available – to touch on our previous tip about seeking advice – consider taking a break to clear your mind and return later. In the meantime, **the bug won’t be going anywhere, and you’ll at least restore some needed sanity to improve productivity.**

## Conclusion
So buddies, hope you leant something and I think you won't think 'Coding is hard..' anymore! Don't forget to read these articles about programming.

- [Become a Better Programmer](https://ayushirawat.com/become-a-better-programmer)

- [5 tips to become a better developer](https://blogdolipe.com.br/5-tips-to-become-a-better-developer)

- [Tips for every Programmer](https://movi.hashnode.dev/tips-for-every-programmer-ckfbuxqh505gd2zs1hb55c9p6) 

- [10 Tips For New Self-Taught Developers In Learning To Code](https://adiati.com/10-tips-for-new-self-taught-developers-in-learning-to-code)

And also don't hesitate to share your experience in the comments, I'm looking to read them!. Happy Coding!