What is really the best way to learn fullstack development professionally?

Individual? Coding bootcamp? College? After almost 3 years of taking the individual route, I am still stuck.

In what way(s) are you stuck? Concretely speaking, where do you feel you’re coming up short?

The ultimate key to learning virtually anything at all is finding out how to relate with what you are learning.

I have been building my skills in programming for the better part of the last three years, and I had a background in it when I was a lot younger too. I often still find myself needing to read up more to achieve the goal at hand. This is normal.

In order to grasp the material you are learning, you must take effective notes. You must find a way for it to stay in your brain, otherwise it will drain out while you sleep.

Try teaching others something you do know how to do to others. You need to do a mix of learning strategies to succeed at this.

I am also curious what you feel is specifically holding you back?

I feel like I cannot create a solid portfolio (applying my skills). I am short on ideas for anything original. The one project I have always wanted to complete is very complex and large, and I keep scrapping it and starting over because I feel it is not professional enough. I am starting to get burnt out starting over.

I suck at design. I feel like my design skills ruin everything. I cannot create decent looking sites worth anything.

I feel like my skills are unprofessional. Both frontend and backend.

I cannot read documentation very well. It is difficult to comprehend.

I know that college isn’t a good option for everyone, but all other things being equal I really do think it’s an unmatched opportunity.

I suck at design too. I prefer having a design file pre made to go off of. My portfolio is filled with projects I learned on Udemy, and I am nowhere near hire-able at this point.

Don’t overwhelm yourself with a huge project. You will never tackle it unless you start with one brick at a time. Seriously, you have an idea? That is wonderful! Build the first part of it then. Don’t worry about the finished project. Just build the part that does a very specific thing.

It’s easy to get burnt out when you compare yourself to others. You need to not do that because you are not doing yourself any favors. You should take a break though if you feel this way.

Don’t forget to take care of yourself, drink plenty of water, get plenty of sleep, eat healthy and exercise regularly.

How far into the freeCodeCamp Curriculum are you?


Do you think this is still the best way (college) if I have been stuck for 3 years?


My issue is learning anything new. Documentation for about anything is difficult to comprehend.

College, boot camps, freeCodeCamp, learning anything at all, it boils down to YOU in the end.

You have to put in the effort to succeed no matter which route you choose. Sometimes, it can help your motivation to learn, having a deadline to complete a task. Having the fear of letting others down. Sometimes having peers to compete against make you a stronger person.

I’ve taught numerous action sports over the years like mountain boarding, skateboarding, and BMX. I even have certificates to teach Cross Country Skiing, Snowboarding, and Mountain Biking. It might seem irrelevant to this post, but the reason I bring it up is because I have a lot of experience seeing others try to do something they never thought that they could.

The ones that were successful were the ones that were not afraid to fall. They were quick to help others in the group to succeed. They put in effort and reaped the rewards.

You are asking a question about whether College is right for you, but only you can answer that question.

I recommend forgetting about how long you have been ‘stuck’. That is called a self-fulfilling prophecy.

1 Like

Documentation is a lot like reading a dictionary. It’s a good idea to skim through it and have an idea of what things do. But you won’t retain most of that information because you are not applying it to anything.

Pick some things out of the documentation and start experimenting with it. I learned a lot about JavaScript by going down the list of all available methods and started using them. I learned that a lot of them were unnecessary and forgot how to use them. I do remember they are available though.

You need to combine multiple avenues of learning to retain knowledge.

  • Watch Videos,
  • Read Books,
  • Ask Questions,
  • Take Notes,
  • Try,
  • Fail,
  • Try Again,
  • Fail Again,
  • Try yet another time,
  • Fail another time.

Repeat this process. You cannot be afraid to fail. You must fail. If you don’t fail you are not learning.

Coming up with ideas that fire you up is probably the most frustrating part of being a creator. It’s easier to be given an assignment and then throw yourself fully into it. Personally, I keep iterating over the few things that have really captured my interest. The more I look into them, the more things open up for me. Something that seems quite limited at first glance can actually be very deep and offer a wealth of opportunities career-wise.

Make something small, keep iterating over it until it kicks ass hard and you could teach the tech you used all day long to anyone. Then, move on to something a little more difficult, and repeat the process.

Don’t think about yourself and what you do/make as professional or not; talk to others who do what you do (or want to do), keep (or start) doing those things and keep talking to those people until you feel you can hold your own, both in the conversations and the developing. If some of them are developers you respect, coming to feel like you can hold your own will give you the confidence you need.

Web tech is changing so fast right now, brick & mortar institutions that teach it are behind the trends usually. However, a boot camp could teach you valuable things like git workflows and team-building skills. They’re not cheap, though. One alternative is Chingu. Sign up and request to be teamed up with someone/others well-versed in the tech you’re interested in working with. You’ll definitely learn git workflows and project management along with developing your skills as a team player in a developer role.

Seriously, give Chingu a try if you haven’t before.

1 Like

I start Chingu tomorrow!

I will review it once I finish :slight_smile:

1 Like

Enjoy, and good luck!

If you think you can program, try a game called 7 billion humans. Don’t let the name fool you! You may learn that you know nothing! But it’s better to know you don’t know anything than to think you know something. In other words: try to apply your knowledge in an unusual setting.

If you think you don’t know how to program, try 7 billion humans. You may find out you do know how to program, to your surprise!

Other than that I can recommend not relying on either way but to follow all of them, to a reasonable extent.

Boot camps try to squeeze insane amount of info into your brain in a limited amount of time. It may work if you already know most of it, or if you’re susceptible to this sort of influence.

College degree is awesome in many ways except for actually getting a job (it helps indirectly, just don’t expect a dev job simply because you have a piece of paper). And it is also very expensive.

Self learning helps when you have a decent starting base and want to learn more about a topic. Like, learning fundamentals or digging deeper into a topic. But if you don’t have a good base, you may get lost in abundance of info.

Various online courses may give you a decent base, if you pass 15-20 of them (simply to get a better idea of how it all works, plus done practice). I’d say it may take a couple of years of part time coding to get to a junior level (I’ve been there, having a degree, 15 completed courses, actual commercial experience as a programmer, unable to get a developer job, all it takes is a bit of luck and truckloads of effort to prove you’re worth something, having code on github helps move past this point, same as ability to sell yourself, but not into slavery :slight_smile: )

Also, make sure you practice a lot. The more you code, the better your skills become. As long as you try to improve, obviously. Just smashing keys or repeating the same action over and over will not help you improve. Dig into what you’re doing, figure out what works and why, what doesn’t work and why, how it can be improved. Rinse and repeat.

They say programming is a profession where you have to constantly improve. This is true for, probably, any profession, but only as long as “mediocre” is not good enough for you. It sure isn’t enough for me!

Oh, and don’t forget to relax after working.

Good luck and have fun!

Ps: took me 1.5 years to get a “real” web development job even having 10 years of freelance programming, 4 years corporate programming experience, some side gigs, knowledge of several languages. Problem was not with my skills, but attitude (be humble, not shy or silent, but confident).


“All paths lead to the same destination”. Each of us learn differently and in a different way. Fullstack will take some time, dedicate yourself to frontend or Backend first. I suggest Backend as it’s a bit more difficult and also very much in demand. Now for the hardest part, dedicate yourself to writing code 3-6 hours a day or more. Code as much as you can as often as you can. Don’t focus on languages, focus on concepts and reasoning. Why is the code written this way, how many ways can I approach the same problem. Do this and I guarantee you won’t suck. Programming is a skill and like any skill it needs practice and dedication.

Sounds like you’re suffering from Imposter Syndrome: the feeling that, no matter how advanced your skills, you are no good at it. I suggest you take stock of what you do know - which I’m sure is a lot - and try to find some sort of entry-level development job. As my music teacher always told me, there is nothing that will sort you out faster than playing a gig.

Keep at it dude. And, by the way, if you are looking to improve your design skills, check out this Udemy course on the web design process. It really did a lot for me.

Going to focus on the “professional” part rather than the raw knowledge, since the latter’s been well covered. Like most technologies (and anything else), experience is still the best teacher. The best way to learn professional development is to do it in a professional setting. If that’s not available, practice, practice, practice. Most professional development these days is divided into one or two week “sprints”. Try to break up your tasks into small units you can complete in one sprint. Not everything manages to fit into a single sprint, so “slippage” is a normal thing, but if slippage starts dominating, you either have tasks that are too big or sprints with too many tasks.

One of the hardest professional skills a programmer has to develop is time estimation – I know because I’m terrible at it. Get good at that, and you’ll have a competitive edge.