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?
@willjw3
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?
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.
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.
I start Chingu tomorrow!
I will review it once I finish
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 )
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.