How To Move From Beginner To Advanced Programming?

Written By John Sonmez

You're a beginner programmer. You don't know everything that the programming world has to offer but you know some stuff. However, you feel trapped. You feel like you're in place where you want to move from beginner to advanced programming but you don't know how.

This is a place where a lot of programmers get stuck when they try to develop their skills. They feel that they already know some stuff but they don't know everything. And so, they can't get the strategy to move forward. I've been caught in this place for a long time. For years, I felt like I knew some stuff, I wanted to learn more but I was not yet an advanced programmer. Until I learned to learn.

Are you interested in knowing how to move from beginner to advanced programming? Watch this video and find out!

You don't need to read a bajillion books to become an expert — you just need to know what you actually need to know. Check out my course “10 Steps to Learn Anything Quickly”.

Transcript From Video

John Sonmez: Hey, what’s up, John Sonmez from simpleprogrammer.com. I got this question about this sort of dead zone between an absolute beginner and being a sufficient programmer. It says, “Hi John, I’m a junior in high school and I’ve recently decided that I would like to major in computer science in college. Once I decided on this major I also decided to learn how to code. I have been making an effort to learn Java. I have taken a couple of free courses online and I’ve watched about 3 hours worth of introductory lessons. I have rudimentary idea of the language but I cannot yet make a program on my own. I’m somewhere in between an absolute beginner and a sufficient programmer. My question for you is what advice could you give me to help me progress into someone who can make a program and truly understand Java? Most lessons or book I have found are either far too advanced for me or totally for beginners and reiterate things I already know. I need something in the middle. Thank you.”

This is the sort of the dead man’s land where a lot of developers end up and stay for a long time. I stayed in this area for a long time. This is normal. This is the phase that really you determine whether or not you have what it takes to make it and you just have to sort of push through this so I’m going to give you some tips to help you push through it.

There are a couple of things you could do, one of them is to realize that you’re just going to keep on doing and doing and doing until it clicks. This is sort of the point where you’re developing a mastery and right now things feel forced and difficult. When you’re first learning to drive and you’re first getting your driver’s license it was like you were paying attention to the mirror and are you braking too hard, are you hitting the gas too hard, oh I can’t stay in the lane, aagh! It’s frustrating. You’re trying to do all these things and backing up, I got to look at my rear view mirror and what’s going on. You’re frazzled, right? It’s all this conscious process, but eventually what ends up happening is now you drive and you’re eating a Big Mac and you’re smoking a cigarette at the same time and you’re texting. You’re doing all this stuff at the same time and it’s just so easy.

That’s what’s going to happen to some degree. You probably won’t be able to eat a Big Mac and smoke a cigarette and code at the same time, but maybe, maybe with voice dictation, I don’t know, maybe you could do it. The thing is its going to happen. It’s going to click like that. It clicked for me. It clicks for—those of you that are listening give a thumbs up and put a comment below if it clicked for you. If you’re in this dead man zone and you’re a beginner and then it clicked and you became advanced. It’s going to happen.

The way that it’s going to happen is by repetition, by doing a lot. Start writing code, create programs, do as much as you can and then force yourself to expand beyond your comfort zone. Figure out what the edge is and then you want to move outside the edge a little bit.

For you, if you can’t write a full program figure out some simple program that you’re going to create. I always say to copy someone else’s. Copy some program that exists out there and force yourself to go through the painful process of just going through it. It’s going to be hard. You don’t know how to do it now, but just figure it out every step of the way. Figure out, okay, I’m stuck here, I’m going to go beyond. Once you go through that process it’s going to be painful and hard. Then you’re going to do it again it’s going to be a little bit easier and then you’re going to be like, “Oh man, I created 5 apps and if you tell me a program to create I could just do it. I know how to do it.” But you’re going to have to force yourself to go through that learning process.

The other thing I would say is at one point when I was younger I wanted to know about science so I got a subscription to Discover Magazine and I did not understand crap in those articles. Every other word was a mystery to me but I forced myself to read them and I became really good at biology and science just forcing—pretty soon I started understanding them. I did the same thing with MSDN Magazine. When I first started as a software developer I had no clue what half of the stuff in MSDN Magazine was but I forced myself to read every article and then I started to understand. Pretty soon it was like, “Oh whoa, I actually understood this. I got this concept.” That helped it click for me.

Anyway, that’s all you’ve got to do. Just keep pushing through. If you like this video, subscribe to the channel. I’ll talk to you next time. Take care.