I was really determined and my goal was to be able to build stuff by now, but life and mainly my weak discipline (mental state) lead me to stop for a while. At times I was spending 3 hours on one problem.
I was halfway through the Intermediate Algorithm Scripting section. In your opinion what’s the best way to get back and stay back?
You can look into that.
I feel like that is pretty normal for a lot of people.
Solving algorithms takes some time getting used.
Then you can also start back up with the intermediate section and come to the forum with your questions on the challenges.
You can also come to the forum and share your pseudocode for some of these challenges to see if your logic of the problem is correct.
You could start gradually. Begin with a 1 hour session , and increment the time gradually. Also, you can focus on the new content learned rather than the time it took. Learning is not a racing competition.
Finally, when you need to take breaks, try to diminish the lapse. You could take small breaks of one week every month for example. Remember, health is first.
Hope this helps.
Yeah the problem is when I was struggling for a few weeks back to back along other non coding situations in my day, I eventually hit a point where I procrastinated and it led to a long break. My brain only has so much bandwidth to give in a day
I’ll do this moving forward and go back to past sections as a refresher if needed. I wonder if it’s like riding a bike where you’ll never forget things or if I may have forgotten. I guess starting with a project is a good way to know.
I’ll try the week break vs day break, perhaps a day isn’t enough sometimes!
This goes for learning anything - not just coding - but, focus on something that interests you. If you stopped halfway through because you found algorithms difficult or boring… do something else, learn about css or html, see something cool on a webpage? try and replicate it, or something similar. If you’re not interested and engaged you won’t learn effectively.
It’s not your discipline that’s the problem, if it is enjoyable you’ll want to do it. Don’t take it too seriously and sit for long periods, be curious and learn what interests you. Try to build a habit of just coding for 10 minutes a day or whatever works for you, then it just becomes part of what you do and you don’t have to rely on something as fickle as discipline.
Your future starts today, you can either focus on your goal and learn a bit more and get a bit better or spend your time on other things, it is up to you, and you get to make that choice each day. Learning to code is a marathon, not a sprint. You always feel like a beginner at times (at least I do), but it does get easier.
Thank you. At the time I was posting questions on the forum and the consensus was to struggle through it no matter what and become better, because if not I won’t be able to do the projects.
I think you have a point because it was taking me an extremely long period of time to just do 1 problem in intermediate algorithm. Even if that’s what coding is about, I’d rather spend 5 hours doing what I care about (ie building a website as I don’t even want to work as an engineer, I just want to build websites in react to test startup ideas).
My goal is to build website using js and I’m not there yet so I don’t know for sure but I’ll probably need api etc. Do you think it’s ok for me to skip certain sections or still work through all sections?
Then just do that. I built startup websites even without truly understanding all the nitty gritty of it. You learn as you go. It’s what people call Just-In-Time learning and if you’re not planning to become an engineer, you don’t have to torture yourself through all the basics / theory. I started that way, and then now I’m at the point where I want to do this as an engineer, so I’m learning the basics and filling in all my knowledge holes.
You might get to where I am one day, at which you’ll be better equipped to do all the intermediate algorithms because you already have a strong basis with building websites. But if not, then you’re still good. Ditch the algorithms and theory, just go straight to building websites.
I started with Meteor JS because it allowed me to build websites without digging too deep into devops and deployment. I still did API calls and DB but all the nitty gritty deployment was handled by Meteor. So you can look into that if you just want to build websites. The other things will come as you build more and more complex sites.
Yes, I posted questions for each problem I needed help with and each had about 20-40 comments. I remember at times I spent up to a whole day working through them. I had finished half of the final js section before stopping.
It is true that you will likely have a lot trouble with the projects without completing the course work, but then is your end goal finishing the Algorithms course? or getting better at web development?
It is useful to know algorithms, but there is so much to learn in webdev - you’re much better off learning about something else, rather than not learning about algorithms (because you lose interest and motivation). And like nikkiczx said, you can always go back to it when you want to fill in gaps in your knowledge.
For your website, you may need an api, or you might not… either way start with something very basic and then iterate and improve on it.
True, Seems to be a strong consensus as I’ve asked this question of whether algorithms are needed or not to build a website from many engineers (reddit, in-person, forums). To be clear, I don’t mean I just want to build super basic landing pages (if I did I’d just use Webflow). But even if you had assumed that, I think you guys are right in that once I have a project in front of me that I care about and I come across something I don’t know how to build, I’ll be able to learn the missing pieces as I’m applying it to my passion.
I wonder how many people have given up coding due to such a roadblock. Sadly it’s probably a double-digit percentage.
I don’t understand this point. Algorithms, especially in the context of freeCodeCamp algorithms challenges, is just shorthand for ‘practice solving common patterns seen in real world problems’. If you want to code more than very basic projects, you will encounter these patterns.
Working on projects that interest you will help your motivation, but you will still need to handle the logic to solve various problem patterns eventually.
i think best way to start after a long hiatus in the middle of learninh course is to get some revision of what you learned. Yes, this can take time and can feel teddius and even boring, but in the end its always paying back, because you remember things you’ve forgetten, you notice things you did not in the beginning and things in general start to click and make more sense. Revisiting is important practice of learning andhelps you solidify what you have elarned(or what you havent).
I dont think projects is yet the right path for you and anyway, you are very close to the section projects themselves. Once you’ve established that section content, those section projects will give you the chance to use your new skills and the good thing is, there is good source to assist you in completing those projects and they are aimed mainly for the skills acquired.
I cant tell about motivation source, or how to stay focused as i myself struggle on that department. For me, what interferes and often distracts me are other activities i like to spend my free time on and if you can reduce those and not let them become entertaining to you, thats good.
…rather than not learning about algorithms (because you lose interest and motivation)
No argument there. My point is not that algorithms are less important that other areas of web development, I am simply stating that it is better to do something rather than nothing. If trying to wade through the algorithms section is going to result in am93 giving up on programming entirely, it would be better for him to focus on something else and circle back to it once he is more interested or familiar with the topic.
Here’s the link:
I recommend you look at your coding priorities and ask yourself: What do I want to do with code and what should I learn to achieve that goal.
It’s not about completing a course for a certificate. It’s about you and what you want to accomplish with your code.
If you feel confused with Text try videos, if you feel confused with videos try text or interactive or any which way to give yourself the advantage instead of just lamenting of “I can’t do it” because you can do it. Find your way of learning and reviewing and see these algorithms as practice not as a final test.