I’m a newbie and finding it increasingly hard to do this.I was learning HTML & CSS for a while, but i kept hearing “Those aren’t languages. Learn a real language if you want to be considered a programmer”. Before i went into this i had been reading blogs and posts saying patience is key. That it’d be tough, but with enough patience, you could do it. But i wasn’t expecting it to feel this overwhelming this early. I mean, i just started learning the syntax properly on Monday of this week and already i feel worthless as crap. Like if i can’t grasp it this early, i never will. I expected hurdles. I expected frustration. But my goodness, i didn’t think i’d be wanting to kill myself this early.
It’s brand new. You don’t have any context yet for what you’re learning. You don’t have a lot of previous knowledge to build on yet.
I would not worry about not grasping the syntax immediately. Just take a break if you need it. I did that plenty of times learning JS from python.
I don’t believe patience is the right word. I believe the right word is grit.
You need patience to watch paint dry. You need patience to deal with a child throwing a tantrum. You need patience when the person in front of you is driving way to slow. Patience is where you wait for a better outcome.
You need grit to deal with unknown syntax and learning a bunch of concepts at once while feeling like you have 0 idea of WTF is going on. You need grit to stick with it after spending several hours debugging your code only to find it was a typo. You need grit to take a leap of faith every time you hit “run”, even though your damn well sure it wont work this time, but you still hit that button anyways.
Patience rewards with in-action over-time, grit rewards effort over time.
Lets get this straight there is tons upon tons to learn, and learning this stuff is hard, but anyone can do it. I usually say becoming a programming requires only 3 things, time, grit and an internet connection. How much time and grit it takes depends on the person, but you must give some to get anywhere.
The fact your struggling means one key thing: “your learning something worth learning”. You could be struggling on day one, and you could be struggling on day five thousand, the same “time and grit” still apply. There wont be a day when your 100% a god with 0 problems, unless you aren’t learning anything at all.
Take a step back, maybe multiple steps back until you can focus learning 1 or 2 things. If your really just starting out, you will need to take some “leaps of faith” here and there, while you flesh out your knowledge. Stay curious, research anything you don’t understand and see where it takes you. Something as simple as:
could be dissected, jumped into, researched, understood, and broken down a multitude of ways just for the sake of understanding. Should you do this right now? Probably not, because you should be focusing on the basics, not the inner-workings of this “logging function”.
Finally, I say stick with it if your serious, the only way you “lose” is you give up.
PS. I’ve been programming for a number of years, and I still find myself dealing with moments of “WTF is going on”, types, syntax errors, and other “newbie” problems every now and then. There’s also still moments where “ending things” seem like a good path to take (don’t do it), but that only makes solving the problems so much sweeter, and building things so much more rewarding.