Hi (I’m ranting) , I’m new here … I been learning to code for like 7 or 8 month and to be quit honest I have no former experience or anything , My background education is basically from 3rd word country and i was unemployed since I don’t know 2016 , I did some jumping from restaurant , cafes … your typical “trying to survival and figure it out” , I decide last year to quit my job go back to my parent house and spent the rest of my time just coding … HTML / CSS / java script … now the problem honestly is I feel so dumb and i feel that i just waste my time i try to spend like 4h minimum , sometimes I go 8 hours hell I skip meals and food because of frustration and discouragement literally swearing I would kill myself if I don’t fix this problem , been always hard on myself…i went over 5 courses FCC is one them and to this day I just can’t seems to code … I’m trying to build my first project …I can do basic stuff (very basic stuff) but when it comes to complex problem i just copy past code and edit to my needs in the web , I try to understand (most of the time I just “get it” superficial understanding …) but most of the time i just copy past and edit … I’m aiming toward front-end I know it will take time but i just feel like i well never learn it’s like when i try to understand there’s this huge brick wall inside my brain …I been genuinely thinking to quit all together …
hi, truth be said i’m also a beginner and i have been doing this since March last year. it is not easy (“if it were everyone could be doing it”). Don’t give up and when you create your first project , no matter how simple it is be proud of what you have done
You are not alone. Coding is hard. Everyone has banged their head against the wall trying to get their code to work.
As for copy/pasting code, whenever you have a problem, it’s fine to find ways others have solved it, and use their methods to solve your own problem. What I do is to ask myself if I’d be able to explain this solution to someone else. If I can’t, I know I have to learn more about what’s going on.
Keep plugging away, and good luck to you.
Hello @RichardCaq, welcome to the freeCodeCamp fourms! Sorry to hear you feel like quitting
Every single person that has started something for the first time, wont have former experience. Everyone struggles starting out. How “quickly” they get going beyond that is more up to other external factors than just magically knowing the stuff.
I do not suggest getting into the habit of denying basic needs because “things aren’t working”. Simply put, if your doing complex stuff, things wont work and you will need to debug them. Such processes are usually not good for you, and being able to “walk away” to clear your mind is a good habit to have. Something as simple as dropping what your doing, going to eat a snack and just relax your brain can help you come back and figure out a solution.
So there’s good and bad in this. The bad is that yea it sounds like your just getting the “superficial” idea of what your doing. The good is that you realize your doing this.
One of the first steps to learning, and improving, is realizing where you can learn and what you can improve with. How you go about doing that is a little harder, but at least being aware of your own shortcomings is a great first step.
So it sounds like you have a good grasps on what your doing wrong, and good grasp on what your focusing on learning, and a good grasp on your current skill levels.
So now, the question is what steps are you taking to improve on those shortcomings? Something as simple as “be better/smarter” isn’t really a plan. Where-as setting some rules/guidelines to follow, such as “never copy-paste any code ever”, or “re-implement any piece of code I want to copy from scratch and understand each one” are both good.
If your spending a lot of time “grinding” away against what your learning, it is a sign you do have the drive to continue doing it some more. Yea it might suck, but hey it can always suck. Who says you can’t spend 8 hours 1 day dealing with a bug even after years of experience? However, focusing your efforts to improve your learning method, rather than just generically “trying to learn” might help your overall process and goal. If you understand you “don’t seem to get it”, then it might be time to re-analyze how your currently learning, and what you can do to improve the current methods your taking.
Some go look for “another course” to take that will magically make them learn more effectively, other’s just give up because “they aren’t cut out for this”, and a few find flaws in their own learning structure and approach and improve enough to continue marching along. That’s the thing with teaching yourself something, you are in-charge of your own learning structure as much as you are learning the topic itself. If your a “bad teacher”, then your learning will suffer. Improve how you “teach yourself” and things may get easier. It seems you have the grit and grind to keep it up, and you’ve made it this far!
Good luck, keep learning, keep building!
Here here friend!
I just started coding about a month or so ago, I understand.
I’ve gotten html done a bit, still working on which tags represent which statements sometimes but hey, researching is part of it. I use about 5 different reference sites and 2 forums to ask questions and for help.
Dont be discouraged, if your frustrated on a project, take a break. Take time to research what you are trying to accomplish and apply what you learn.
I make little local pages that contain certain strings of code that I have a difficult time remembering how to manipulate or use and save it with an easy-to-remember file name. That way if I’m confused or lost, I can refer to it and see all the possible outcomes from a single source.
And when in doubt, lean on someone. Ask for help. Share your code and be open to suggestions.
Hi @RichardCaq !
Welcome to the forum!
I started learning in June and have no prior computer science background.
My background is in music.
You shouldn’t feel dumb.
There are plenty of times where I will spend hours working on something only to discover the problem was an easy fix.
I feel like all beginners can relate to this.
This stuff is still all new and will be for a while.
It will probably take years for this stuff to really make sense on a deeper level.
I have been there as well.
There have been plenty of times where I thought to myself
“Maybe I am actually cut out for this”
and then other times I will think to myself
“Who am I kidding? I should just stick with something I am good at like music”
My suggestion is to just take it day by day and focus on the small wins.
When you are struggling with a problem, walk away from it and take a breather.
Then come back refreshed and try again.
@RichardCaq I understand your pain.
Self teaching is hard and can often be stressful, particularly if you quit your job to do so. On top of figuring out the correct learning techniques, you also need to manage your time and your attention-focus.
It takes time to figure out how to self teach effectively. I’ve seem some people eventually get it, but others never seem to. I nonetheless believe everyone can become good at self teaching. You just need to be persistent and patient, and it’ll eventually click for you.
But if you really don’t have the time to learn how to self teach while learning to code, perhaps consider enrolling in formal coding courses which really do work better for some people.
Managing attention-focus is a challenge for most people I know, including myself. Some people can overcome this themselves (e.g. self-regulated time schedule), others require external help (e.g. school curriculum). Try to find out what work best for you. Don’t overchallenge yourself, and don’t feel shameful if you need external help.
Finally, know that everyone can burn out. If you reckon this is what’s happening, take a break - even an extended one if necessary; use the time to reflect on your achievements and mistakes, re-evaluation your choices and plan your next move; or, simply relax and don’t think about anything heavy.
(It look like you may be a victim of tutorial hell. Plenty people are and there are much great advice out there.)
I am also new, but I have certainly been in somewhat of a similar situation. I’ve found that it can be challenging to try new things, and sometimes it can feel like you are “behind” compared to your peers or those around you. One thing that I like to think about to help me get out of this mindset is that I don’t want to “race to the grave”. Instead, I choose to live life, focus more on myself than what my peers are doing and to break down whatever task is at hand into smaller chunks.
As an example, I recently decided to try to get a tech job of some sort, ideally a developer job of some sort (though I have a long way to go). Once I decided this, I looked up 5-10 jobs that I was interested in, wrote out the skills that are required for each position and then listed out possible projects to complete that require the skills identified previously to complete. I highly recommend keeping track of your progress with a personal portfolio website if you aren’t already try building one for free on Github- they even have a walk through to help you learn github!.
When you have your nose to the stone so to speak, it can be challenging to see how far you have come. Keeping track of your progress using a personal portfolio such as the website above can be a really helpful tool. There are also lots of great challenges out there to help motivate you, and to help you engage in a community - such as the 100 days of code challenge.
Lastly, imposter syndrome is common in even great and well-educated professionals. Try to be easier on yourself, the world is hard enough as it is. One thing that helps me is to literally stand in front of a mirror and tell yourself what it is that you want to be eg. “I am determined, intelligent, and compitent! ” even if you don’t quite believe it .
Best of luck on your journey!
This is a late answer(and a long one).
I don’t even know whether it’ll reach or you already moved on with this post. But If it even helps you a little bit that’d be a relief.
As a preface, I’m not aware of your personal life, family or financial situations, life experiences and such so I can only provide my opinion based on what you written in your post.
So as I understand,
- You are currently unemployed
- Tried few jobs but decided to quit because it was unsatisfactory
- Decided on a career in coding/ developer jobs
- Despite all your tries You are unable create something of your own/to produce your own solutions to problems/build something from scratch
- Disappointed in your progress and depressed about your current situation
Now to answer,
First take a small break to relax (I’m not joking) and rethink your situation.
From your words, your mind is currently exhausted from all the work you put in and not being able to get a positive outcome.
You need a fresh mind to start something.
For that you need to calm your mind.
Know the root of your frustration.
It might not be because of you weren’t able to make your own code/website/solution to a problem but because of the 'set expectation or imposition or standard you put on yourself.
You decided to get a career in development.
Because you’re unemployed probably you were putting so much expectation on the thought that once you learned these courses, you can get a job faster and solve all your problems.
The root of your problem is that YOU ARE IN NEED OF A JOB.
Your frustrations and all the depressing thoughts won’t go away until you reach there.
- What Keeps Stopping you from getting results.
You said you tried 5 courses (I don’t know which ones you took),
The reason you cant make your own code is,
you AREN’T LEARNING instead you’re JUST READING THROUGH materials.
Don’t get disappointed. You’re not alone. Everyone does it time-to-time, ‘EVERYONE’.
but when you do, make sure to realise it. and correct it by going through it again and make sure you understand it this time and say you properly LEARNED it.
- Need for Getting Results
Becoming a web developer sounds cool and all but isn’t easy.(what do I know? I’m merely a beginner myself. I’m also getting frustrated by getting no productive results from my learning time-to-time)
You might need to work harder to get to that point. to call yourself a developer.
Think of it this way,
When you face an interview, the employers will ask :
(1) Are you able to make clean code?
(2) Can you make a good looking website
(3) Do you have experience coding in this and that
(4) Do you have all the required skills for this job and confident to make your own project by the given time?
They expect a ‘Yes’ or similar answer to the above questions.
If you want to say yes, then you need to have all those skills, and able to produce your own and present it to your employer/client.
Every employer want an employee that can contribute to the success of their company. a valuable asset they can be proud of having by their side, who is able to fulfil the given task.
As long as you fulfil those criteria, YOU WILL GET A JOB.
It might not be the specific company you chose (well, may not be right away) but you WILL GET IT.
Everyone has their own way of learning things, their own ups-and-down, getting frustrated, doubting themselves, their self-worth, their choices,
All said and done, what’s more important is ‘Your DECISION’
what you want to do from here on out.
You need a job, One that can earn you an income. a profession.
choose it. find possible options. think it through if you can do it.
I’d like to refer the answer @GourdLord gave to your post.
Look up jobs you’re interested and find out what skills they require. then LEARN those skills. If its different from coding so be it, you can keep the coding as a hobby.
But you need to DECIDE. to see it through. not to give up half way. Everything depends upon that choice of yours.
whether people scoff at you, judge you, it doesn’t matter cause you know what you decided and what to do with it and how to do it.
Once you do it, all those insults you received will become an attribute to your success. FOCUS ON THAT IMAGE and keep going towards it.
so if your choice is to look another career, you can stop reading here. and think about your options from here on out.
If you still haven’t given up on becoming a developer despite your unsuccessful attempts so far, want to keep coding and become a developer no matter what, keep reading…
- Become a Developer, and get a developer job.
Be as it a Web programmer, Web designer, UI designer, UX designer, Digital Marketing, Front-end,Back-end or even Full-Stack Developer. or any other role.
Libraries or frameworks or good at using API’s, server side scripting languages, such and such.
YOU NEED TO BECOME GOOD AT THOSE SKILLS.
To get good, you need practice. and it takes time. and have patience until you reach there.
Unless you are a Prodigy who get every concept right off the bat, understand things on the go and comes up with solutions (I don’t think you fall in that category from how you described yourself in your post. sorry no offence),
then you can only get good at what you’re doing BY PRACTICE and TIME,
like the most of us here. Yep, you’re not alone, if any of us have accomplished even a little bit, that’s only because by keeping at it. Yet most of us are still far from becoming a developer. but we’re still going. IT’LL TAKE SOME TIME, BUT IT’LL HAPPEN.
How soon? well that depends on your work and METHODS of learning.
- How to Get Results?
If you’re not getting any good at what you’re learning, not able to make a code from scratch, like I said above, is BECAUSE YOU’RE ONLY READING THROUGH IT, and NOT LEARNING FROM THE MATERIALS.
You need a change in approach.
As some among my teachers said long ago “Understand the problem first, if you want to understand the solution”.
If you’re doing a coding challenge, read the instructions, what they want you to do. what feature or type of code or attribute they want you to put in your code
Or even simply,
what you want your end results to look like.
focus on that and FIND ANSWERS. find how to make your code to create an output like that. what features, tags, properties, functions you need to include to make that happen.
You said you mostly copy paste things.
AREN’T YOU OVERLOOKING THINGS?
or failed to notice your own skills.
HOW DID YOU KNOW WHICH CODE TO COPY?
even if you googled it and it showed you matching answers, how were you able to understand, if I copy that and put it there, I’ll get this and that result.
So YOU KNEW IT, or HAD A LITTLE GRASP OF THAT KNOWLEDGE deep down inside of you.
but you took the easy way out and copy pasted and called it task accomplished.
Don’t become ashamed,
EVERYONE COPY SOMETHING OR ANOTHER IN THEIR LIFE. “EVERYONE”. some copy other people’s lifestyle, some copy their accent, speech style, other’s way of doing things or deeds,
in a developer’s sense people copy other’s code style and try to replicate, its not a good practice but if you badly need answers or out of options, then do so. but only to learn. not to paste the same code somewhere else.
COPY, BUT ONLY TO LEARN FROM IT. otherwise that’ll only be a copy of others and there’ll be NOTHING OF YOUR’S in it.
Now If you’re still reading, cool off , take a break, have some food, have a proper few hours of sleep and start again.
Every system gets boatloads of tasks sometimes and while it unable to handle, it crashes. Do a Reboot. Some errors will be automatically fixed, others you might need to run some troubleshooting. but once they’re done, its ready - fresh as new to again going for it.
(quoted by… well I made that up. go figure. anyway back to the matter)
- Getting an understanding of Concepts
Every teachers or instructors, authors have their own way of explaining things.
You get mostly plagued by this in your school days. most students develop a habit of fear or hate towards a specific subject (Eg; MATHS,HISTORY,SOCIAL STUDIES, etc. to name a few) because they don’t understand it. or hard to process the explanation.
as the saying goes “Fear is something you don’t understand” once you understand it you lose that fear and able to approach it again casually.
(1) so get an understanding on the concepts or features you learn. possibly from various sources.
You already said you took 5 courses, are you sure you weren’t learning the same style of explanations all those 5 times?
try different ways of explaining from different people. You need to search around first. but be patient. Also refrain, from purchasing courses, right off the bat, you might find the same thing for free. google it,
stack overflow has answers to program related questions, other related websites also provide creative and different solutions.
READ ALL THE COMMENTS GIVEN AS ANSWERS. Everyone has their own way of explaining.
and YouTube has full of tutorial videos you can see it in real time a problem being solved. But don’t copy, LEARN how they do it. (You can create your own based on it if you like, but it should something you can call your work). If they don’t explain it, keep it as a reference and find a similar one which they explain it.
(2) When getting a code sample, solution or answers from others,
ASK QUESTIONS or SEARCH FOR IT YOURSELF, about that solutoin.
‘WHY’ - was it written that way
‘HOW’ - does writing/including/presenting it that way solves the problem
‘EXPERIMENT’ - yourself with the code. create a code file of your own, similar to the code,change values and properties, include other similar properties and see how they affect or change the outcome displayed.
One of the Benefits Web Developers get to enjoy is that they can preview their code right off, some other languages for programming out there doesn’t let you do that until you finish the full structure or syntax.
(3) ‘TAKE BREAKS OFTEN’
sure, programmers or people spending in front of a screen most of the time are ‘just sitting around’ in other people’s eyes.
but if what you’re doing is something that involves you to think a lot, brainstorm, form ideas, imagine how it works, will it turn out the way it expected? then it’ll be an exhausting work on your brain.
now whether people disagree or not I remember once reading, a large percent of oxygen we intake is actually used by the brain rather than other organs or body cells.
so working with your brain also tires you out.
keep your mind healthy (and your body as well).
also when taking breaks, if possible try to do something productive, even watching or reading motivational things which boost you to keep going with your tasks.
(4) Learn to Ignore Some things
Ignore those judging eyes, scoffs and ridiculing behind your back.
Once you Decided strongly, to accomplish your goals, work hardly(and smartly) for it and get a job, then only thing you need to pay attention is reaching to that end.
If you need to convince someone do that convincing to yourself and your loved ones or family(though everyone have different family backgrounds so choose the second part wisely)
(5) (**Not a productive Advise, but kind of works for some people)
Keep a Two-Personality Lifestyle.
I’m not familiar with your lifestyle. some people are blessed with supportive family members, friends, loved ones and people around them.
some others might not be that fortunate. getting abused, judged by others, ridiculed, having to spend chores or low wage jobs to meet daily needs or get an earning and so on.
If you can relate to the second category, things may have been tough for you. deciding on a differnt career while arguing over your choices or others questioning it may be even so.
a suggested solution would be,
If you want to sulk about something, deal with problems in your life, think of future plans or something, do so. don’t think about coding at that time.
But when you sit in front of your screen and start to code, think of coding, learning, possibilities,future,every positives and motivational things (but seriously don’t forget to code). don’t bring your life into your thoughts when you code.
When you want to sulk about life sulk. Don’t think about code,
When you start coding,You’re a coder. Don’t think about your life.
‘Think of the Task at Hand’.
(again I made that up.)
- REACH OUT
There’re lots of developer communities around the internet, you are part of freecodecamp as well. use it too. ask for help when you’re stuck.
If your trouble is related to some other topic choose appropriate place to ask it as well. But always keep in mind Dont’ Expect an answer (not trying to be rude).
Instead SEARCH FOR IT YOURSELF. look around. you might find people with similar issues and their solution. see if it works for you.
That way even if you post something and no one replied (may not be intentional, everyone has their own things to deal with and sometimes there are things you need to figure out yourself).
That way you won’t get disappointed. but if you GET a feedback it kind of brings a joy.
Expect nothing and if you get a little, Even that ‘little’ feels enough.
( …I don’t know, may be somebody might’ve quoted it, just a thought top of my head)
This was a long answer. Took me some time to type all this. Not sure whether you’ll even read it. Do Your Best.
if (you did read the answer=true): if (you read until end=true) print ("THANK YOU FOR YOUR TIME.") elif (answer helped you in any way=true): print("THAT'S A RELIEF.") elif (answer didn't help you at all=true): print("MY APOLOGIES FOR WASTING YOUR TIME.") else: print("answer section end. Have a nice day to other community members who stumbled upon this post") input("Press CLOSE TAB ICON on your browser window to close the answer tab...")
In addition to a what the others have said, here is a smaller technical point to help you maintain your focus and not give up on programming:
The key is to give yourselfbreaks from the thing that is stressing you, but give yourself a break in a productive way:
when you find yourself getting frustrated at some code or exercise or lesson, rather than giving up on studying all together for that day focus on something else.
For example,I have just started learning python, and there is a lot to work to do and a lot of material to cover. As a beginner, sometimes after hours of concentrating on a bug in my code i can’t fix i get really frustrated and sometimes I am tempted to give up on working that day.
What i started doing recently is to switch learning gear when something like that happens: rather that giving up on work for that day altogether, i just close my python project, leave it for a bit so that I can return to it with a fresh mind and go and learn something seemingly unrelated to it but still related to programming.
So in my case for example, when I take a break, I go and take notes on FCC 's lecture on networking and FCC’s lecture on how to use git and github. These lectures are less programming oriented and more definition and “here’s how this thing works” oriented, as most of the stuff (especially in the lesson on how to use git) is more about you learning a set of instructions on how to use git as opposed to how to learn a programming language. So much less nerve wrecking but still very useful.
To me doing this is not a waste of time because i know that even if I don’t need this information now, It will be of great help when I eventually become more experienced in python . I mean, to use the socket library, it is a good idea to know how networks work , and obviously sooner or late one should create a github account if one intends to continue programming and get a job with the skill. Heck this is useful even if you just want to download some code or useful scripts onto your machine for whatever reason. So learning how to use git will; definitely turn out to be useful.
So the idea is that after s[pending some time focusing on something else (that is not necessarily a programming language) you will not feel so bad about yourself because you still did something productive that day and put in a considerate numbers of hours of study to learn something that will be incredibly valuable to you. And most mportantly you gave yourself some rest from a frustrating task while doing that!
You seem burn out my friend. Take a break 2 to
coding is simple but not easy.
I would not describe coding as simple.
If you correctly(!) perceive a problem to be complex, why would you demand of yourself that you can resolve it with half a year of coding experience? There are some very smart people out there but most of us need a lot more time to tackle such things.
You sound tired. I have the impression you are punishing yourself because things are not going the way you think they should. Maybe you’re anxious but maybe you’re impatient. I don’t know. Either way, Learning to code is hard and it takes time. You don’t learn this in a year.
If you are out of work and living with your parents, maybe you should talk to them and explain this will take longer than a few months. Maybe you could get a part time job so that you are bringing in some money if that is possible and make clear agreements with your parents on how you plan to shape your future. If you want to make money fast, coding might not be the quickest way. That doesn’t mean learning to code is not worth it, but you have to take at least three years and probably more to really get somewhere.
I remember my first project, it was a nightmare . I could not ask an intelligent question and I felt too ashamed to just say, I don’t know what to do now. I’m stuck here. Which is what I should have done, it would have saved me months of frustration.
I think you’ll feel better if you complete a project. To that you may need to ask us for help. Don’t do what I did. Just bring it to the forum. Besides FCC you will find other courses and platforms but personally I think Freecodecamp is an excellent start.
You don’t know what you don’t know yet, like you’re piecing a huge puzzle together without a picture to guide you. If so, at some point in the future you will start to see a vague outline, then a fuzzy picture will appear and slowly but surely it will clear up.
Would it be useful to make a list of what you have learned ? It might be nice to look at it and add new items each time you learn something new. You will be surprised how long that list will become. You can also show it to others so that they can see you are learning.
I’ve edited this post three times now, what you wrote really got to me.
In time you will see that there’s more than one possible coding path out there. There are many fields to specialize in and once you see that, it will be useful to write down your own personal path/goal and what steps to take to get there. You can also ask advice on that on the forum so that you will have a clear goal and steps in mind and fulfill your dreams and get that job.
me too, I’m not that code anything yet, but I’m still trying even though it’s really hard
so yeah if you really don’t want to do it I guess you don’t have to, but I think you should still go on as you don’t have a job and take a break.
Not many people can code so be proud and don’t miss meals.
I never thought the web would last this long. I thought we’d be back to gopher or the next big thing. The only reason I got into this is because my boss bought online business software so I volunteered to change the MS Frontpage survey form to Infusionsoft and make it look good. No internet at home so it was libraries or wardriving. I’d checkout stacks of outdated CSS books, but I made sure that they explained why I should do it the way the described and I always applied it to a project ( the company site and Infusionsoft). It was very frustrating. I’d reread a chapter many times then type it in and watch it fail. Looking back it was good experience.
I recommend everyone apply the challenge you just finished to a site of your own making. Don’t wait to get to the projects.
I can totally relate. Coding can be especially brutal because of the extreme learning curve. I come from a traditional arts background and unlike learning to draw a picture, with code, there is no “wow I created a stick figure drawing let me refine this” type of thing. With code, if you don’t know what your doing, the code just breaks and won’t work entirely, which is super frustrating. There is no in between so its hard to see your results. At least with other skills, you can easily have a reference point.
Keep a journal so you can tangibly see the things you are learning.
For me personally, its easy to loose track of time. meaning I can be learning something for 2 or 3 weeks and it can feel like ive been working on it for months. Keeping a journal also helps with that.
I totally feel your pain. Code is really hard because its so cerebral. All in the head. and because of that, its hard to get a hold of. Im actually really surprised I havent smashed my computer by now
Hope this helps. best of luck friend.
You should watch this video. He gave the best advised about how to properly learn web development. https://youtu.be/HfqZHcev-og
Everyone runs into roadblocks on their path to whatever goals they are trying to achieve. Stick it out if you can!
It seems like there has been plenty of advice given. I have one thing to add not sure if has been mentioned. Have you only been using FreeCodeCamp as your source of learning? If so it might be worth trying other sources of education on this topic. It could be the way the material is being delivered to you just doesn’t work for you, or maybe you are a different type of learner, meaning you work better with personal instruction then say reading a text book. Also if you have been doing this solely on your own, maybe try reaching out to user groups other forums etc to connect with people and see if they can shed some light on this to make it click!
Lastly if you have been so focused on learning this, take a bit of a break, then come back and try stuff out, it will be surprising how much you will have retained.
Hello, first of all did you ever wonder why it took 3 to 4 years to get a degree in computer science or software engineer even with that when you graduate you still called a junior!!
Stay with me in university you got a person who will simplify the hardest parts and even with that he will answer your questions this is real humain tutor but it will get exponentially hard alone because you are exposed to tricky hidden details here and there and you need some person to explain you why.
My first advice with the help of freecodecamp get a tutor or be in some bootcamp with peers to encourage you to learn, learning alone is the hardest form of learning you can get unmotivated very easily!
The best way to have computational thinking in my opnion is to start with sql queries! Yes you heard that database query manipulation is the best way to make your brain agile as much as you can with natural language and executing in front of you, you will get the best of understanding and thinking abstractly without getting that weird for loop or subtracting and manipulate strings or arrays
Sql will give a tolerance to learn because you will get instant results but with algorithms you are exposed to many hidden complex layers and hard to maintain and correct your code but with sql query maybe that single lined query is easy to read and maintain
Secondly pick up a magazine or journal or any educational book and try to reproduce the design in html and CSS just take your time and redsign what you see in computer first if you want you can get easy on yourself and use ‘what you see is what you get’ and read carefully the code and then slowly when you feel comfortable just make your own design with code editor.
Just take your time and slowly you will get it.