DEV Community

Cover image for Things I Wish I Knew Before Becoming a Web Developer
Karl Esi
Karl Esi

Posted on

Things I Wish I Knew Before Becoming a Web Developer

The thing that most people will tell you is that you need to memorize all of these details. You need to understand async functions, call stacks. All these things before you start writing code.

But the problem with these kind of learning, is that, if you try to learn everything before you apply any of it, you will just end up forgetting all of it and then when it is time to actually use it, you are basically just in square one.

One philosophy that I use that I used to learn, and this is like my really big thing is "You should try before you think you can do it."

And to really drip this in for you, let me explain to you by talking about riding a bike.

You wouldn't try learning to ride a bike by watching someone else ride a bike. By reading about riding a bike.

You would learn to ride a bike by actually riding a bike. Right?

And by first riding really badly, falling a bunch of times. You would eventually get better through trial and error.

This is the uncomfortable process of learning. That we all have to go through.

All the best programmers go through to actually learn programming skills as well.

If you try to give your brain information without context, it is not going to understand that it is important. It is not going to make it stick for you in your brain.

This is why when you learn a bunch of stuff, you end up forgetting it after because you don't do the work of actually trying to apply it.

Basically, what Science says about learning is that, the harder your brain has to work, the more effective your learning is.

And when your brain is working the absolute hardest, even you are trying to extract the information out of your brain. You should just pick up a bunch of projects, that you don't know how to build yet, and start building them and figure out the steps along the way. The 2 Hour Web Developer helps you with that.

So, at this stage, what we are going to be doing is putting in as many reps as possible. When it comes to just coding a lot of JavaScript. Because, the more you code, the more you learn.

Learning Excessive Languages

You are always learning new programming languages or frameworks.

I think all of us have fallen victims to this. Whether it is the hype of a certain technology, or you just decide one day that you want to master something completely new just for the challenge of it.

It is really a vain pursuit. Why? Well I'm all for you being a constant learner. That is a good thing you actually have to do in this industry. You have to always be learning.

But the question is, "What are you learning?"

It is much more beneficial to be learning and mastering the concepts of programming and how things are really working than learning many different languages.

Which to be honest, each one is just a new syntax. It is just the new language. Why do that.

If you really understand the concepts that underline programming, a loop can be looked up in any language. A switch statement can be looked up in any language.

It is all just syntax!

So, if you are asked to build a feature in a new language or frameworks, something that you haven't used before, you should be able to:

  1. Read a quick overview of that technology and how it works.
  2. Be able to build that feature based on programming concepts or pseudo code even and then transforming it into whatever syntax that language speaks.

Also, and I did an article on this one recently. I will share a link. But if you are going to learn a new language for the sake of doing so, pick a lower level language like C or Rust or even Go or C#, if you are coming from Python or something high level like that.

And once you have put in the work of learning the deeper concepts that those languages force you to understand, you can really jump in anywhere.

Start putting the right things in

Now, we live in a time in society where there is so much great information. Whether it is a podcast, whether it is inspirational interviews, whether it is books or the lives of some of the people we looked at earlier.

Every single day or at least every single week, you want to take your compass needle and start remagnetizing it in a positive direction by exposing yourself to the kind of information that supports your potential, and your greatness on where you want to go.

Now, there is no excuse for not being able to do that now in a society where it is so available. But, if you are not choosing to do that, by default, you are going to be hooked into somebody else's agenda.

And if you don't start filming as the star of the movie in your life, by default you are going to end up as a film extra in somebody else's.

This is not going to be easy

Throughout this entire process, 6 months, 1 year, 2 years. However long it takes to do this, you are going to want to give up multiple times throughout the process if not every single day.

You are going to consistently doubt yourself

You will think, "I'm not good enough." "Why is it hard for me to just understand HTML and CSS?"

Or, "I know HTML and CSS. I was able to grasp that. Why is JavaScript, my first programming language that I have ever learnt so freaking difficult."

First of all, it is supposed to be difficult. If it is not difficult, then why would we be paid so much money?

We are paid this well for a reason.

Why does it even matter if you write good code like a Senior Programmer?

Well, first of all, it lets other people understand our code.

You have probably found yourself in a codebase before. You read it and you are just like, "I don't understand what the hell is going on around here."

And the temptation is just to like jump in and rewrite everything.

But, being able to write code where people can really easily read it is something that other developers on your team will really appreciate.

And that is what often is the difference between them looking at you as a junior developer and a senior programmer.

Happy Coding!
Karl

Top comments (1)

Collapse
 
shwethareddy_bandarapu_17 profile image
Shwethareddy Bandarapu

Great article! DevOps is the cornerstone of modern software development, seamlessly integrating teams and processes to deliver quality products at scale. Your insights on GitHub are spot on and truly highlight the importance of collaboration and automation in today's tech landscape. Looking forward to more valuable content like this.click here for more information