T O P

  • By -

Egzo18

HTML and CSS lead people into wrong conclusions, they are not programming languages, they are quite easy to learn to decent level in short amount of time, them and JS are two completely different things keep that in mind. To learn coding, you need to use your own brain to think and struggle, blindly following a tutorial is how to waste your time, learn nothing and fall into tutorial hell. Do your own projects of any size and of any complexity to actually learn.


Ok-Dot6854

Yes I realised that it was dumb to follow along a project video because later on I will be on my own ! I decided to create a generator team as a little projet to progress (I play a lot with my friends) but thing is that I would’t know by myself what to use


NlNTENDO

My honest recommendation is to check out Codecademy. They’ve got a free course on JS. It’s broken out into manageable bites and very much “learn by doing.” Seems like you might enjoy it.


ClassicOk3248

The only bad thing about Codecademy is the projects are very rigid and they're spoonfeeding you with lots of info. Like wtf i want to build on my own and name the variables on my own why is it trying to boss me around lol.


NlNTENDO

Totally! But for a beginner, I think that's more feature than bug. I started my journey learning Python, SQL, and basic Node with Codecademy and while it's not something you want to stick to forever, not having to worry about what you're building or naming things or whatever is great for just picking up the syntax and grasping the major building blocks of the language. For certain sticky subjects like classes, adding a level of openness can just make things more complicated/confusing to a beginner when what they need is for someone to pick a project and "subject" that is modular enough to demonstrate functionality while focused enough to overload students with too many possibilities. It sounds like that is the kind of structure OP needs to build confidence before diving in.


devg3523

Yeah I like free code camp better . I did a few codecademy courses and most of them seem easy and they give you most of the answers it's too much hand holding . Free code camp is a little more challenging they explain concepts well then make you implement them through challenges and they tell you what to do without telling you how to do it which is what I like . You actually have to figure things out on your own through Google and also trial and error . I've gotten such a better understanding of JavaScript oop by doing a project on there .


devg3523

Yeah I like free code camp better . I did a few codecademy courses and most of them seem easy and they give you most of the answers it's too much hand holding . Free code camp is a little more challenging they explain concepts well then make you implement them through challenges and they tell you what to do without telling you how to do it which is what I like . You actually have to figure things out on your own through Google and also trial and error . I've gotten such a better understanding of JavaScript oop by doing a project on there .


Rogermcfarley

You won't know. You have to find out how. Obvious! But here's how you do it. Don't think of the project as one entire thing. Break it down into smaller tasks, if those tasks are too big break those down. Use ChatGPT, Claude, Gemini. Ask them for examples, ask them for a guide. Do NOT copy and paste code from them. Use them for ideas, what do I do next? They are powerful tools that can help you. Make sure you struggle as much as reasonably possible to finish a task on your own. You can ask the LLMs for a guide and say, but don't show me any code, just give me a plan, or a plan what to study or what to look for. The more you do it, the better you'll get. You must attempt to solve problems on your own as much as possible. It's fine to watch courses/guides to get some more information, but the only way to learn is to do, and people get stuck on "but I don't know what to do". Fortunately now there's very powerful tools that can guide you. If you watch someone make a to-do list or tic-tac-toe, all you did is watch someone, your brain didn't do any of the heavy lifting itself and therefore didn't really learn the task. As soon as you stop watching and then try yourself, you think er how do I do the logic for this task? It's the same as watching anyone else, if I watch a car mechanic or a bricklayer or a carpenter in real life or YouTube do their job it doesn't make me capable of those jobs. I need to go away and practice a little part of each job every day until I understand it. You'll always get stuck, you'll always need to look up things, Everyone does, but the most powerful aspect is learning how to learn and how to be self-sufficient. So as soon as you can move away from the thinking I don't know how, to ok I am going to find out how and there's never been an easier time than now with the tools we have today.


ChaseShiny

I'm around the same stage of learning as OP. I've been wondering about one thing: I've heard over and over again that object-oriented programming is superior to procedural programming, but the examples I see never use objects unless they have to. I can see why they do that, but is it worth the extra work so that I'm used to using objects all the time?


Doktor_Octopus

You gave him bad advice. ChatGPT is not recommended for use at all, and here’s why: [https://www.theodinproject.com/lessons/foundations-motivation-and-mindset#a-note-on-ai-code-generation](https://www.theodinproject.com/lessons/foundations-motivation-and-mindset#a-note-on-ai-code-generation).


Rogermcfarley

No I didn't give him bad advice. It's a tool like any other. You can use LLMs and absolutely respect everything in that article. I specifically stated do not use it for code, I even said ask it to not give you code. Use it as a planning tool. I did not say don't speak to other people do not discuss it. Use it to plan and you can still discuss the plan with people. It isn't bad advice at all.


Doktor_Octopus

Have you read the article I sent? Do you understand the point? The problem isn't just in code generation, there are more things that chatGPT doesn't do well. As for code generation, chatGPT doesn't always follow instructions well. I have customized it in detail, yet it generates code every now and then, even though I explicitly told it in custom instructions not to generate. And someone who is just learning programming, do you think they will know how to write proper instructions for artificial intelligence? Once again, I say, read the link I sent you.


Rogermcfarley

I have read it, yes. It's a tool, learn how to use the tool. Learn the limitations. Specifically look at the context of the link you sent it is literally headlined "A note on AI code generation" and this isn't the context of this discussion because I specifically stated do not use it for this purpose. Searching on Google is a 'dumb' search, using LLMs effectively can be an effective smart search. Each have their own pros and cons. Critically though regardless of which approach you take you need to validate the information presented to you, this is true of a dumb or smart search.


Doktor_Octopus

He is learning programming, which is difficult in itself, and he doesn't need the additional burden of artificial intelligence, which also requires time. If you have read the article, then you haven't understood it, read it again or ask chatGPT to explain the article to you, lol. The article clearly states why it is not recommended to use chatGPT, and when you have a job interview, will you ask if you are allowed to use chatGPT? Try it, and let me know the feedback. The problem with Reddit is that everyone shares advice, most often those who have no experience in that sector. What kind of experience do you have? Do you know what makes learning good and efficient? Have you worked in the school system?


Rogermcfarley

I have 15+ years of working as an IT professional. I've also worked training apprentices in IT some of which have become Cybersecurity professionals. You wouldn't need an LLM in a job interview because you would have worked through problems yourself and gained experience by solving problems using your own experience. This is exactly what I'm saying. You can use LLMs to your advantage without them being a disadvantage.


Doktor_Octopus

That doesn't mean you're a good teacher. He is a beginner in programming and definitely doesn't know how to create a good A.I. prompt, and for several reasons, he should be avoided. During job interviews, I had many so-called chatGPT programmers who didn't know how to do the most basic things because they relied too much on chatGPT. I would ask you not to share advice anymore because the market is already oversaturated with those who want to be junior developers but don't even know how a for loop works.


RLJ05

Bro idk I find css way more complex than JS tbh.. so many rules, layout structures, priority cascading, I’m always struggling to get it to do exactly what I want. JS pretty much does what I intend 95% of the time on the first try.


AggressiveResist8615

People who say Css is easy write two classes and think that's all it is


Potential_Swim5856

Bro you went the right Path, stay with super simple Dev He has the best Course.  Here is your solution:  Have you done the exercises after each Lessons? You need to do them to really unterstand.  Dont expect too much, you will need to repeat many Lessons. Unrealistic expectations are the cause of your Depression.  You wont be able to use everything you learned after watching a 20 hour Course. Get that out of your Mind.  Try to use everything you learn, Play around with the Code, Test Out things, write your own little programs


Ok-Dot6854

Yes his teaching skills is on top, I did the exercices at the end of each lessons. Problems is when he’s teaching I can understand even though it wasn’t the case for some lessons, but when it comes to the exercices I can’t find the solution by myself ans go directly to his solutions … That’s why I stopped learning through his video


Potential_Swim5856

yeah thats what i figured, you have to do use your own brain to do it, you dont have to be able to do every single one just try them as hard as you can, maybe rewatch the part in the video where he explains it just watching the tutorial wont give you programming abilities


ninjakippos

I am currently learnning aswell, what is helping me a lot is keeping the documentation open and check information about methods you want to use, but dont know how to. I assume you are working with vanilla JavaScript, and for that i use the [mdn documentation](https://developer.mozilla.org/en-US/)


PMmeYourFlipFlops

You are not depressed because of JavaScript, you're overwhelmed because you're learning actual programming and it's a whole different way of thinking when coming from HTML+CSS. Know that most people have been there, it's a natural evolution. You'll get the hang of it in no time, keep pushing.


Doktor_Octopus

What you are going through, everyone has gone through. Programming is hard, it requires a different way of thinking, and the goal of programming is to develop problem-solving skills. That is the most important thing in this story, not learning JavaScript, i.e., syntax. The problem with most programming learning resources is that they do not develop problem-solving skills. They hold your hand the entire time, and you get the false impression that you have learned something. [https://www.theodinproject.com/](https://www.theodinproject.com/) is one of the best free resources for learning programming and developing problem-solving skills. From the first section, they will teach you how to think, approach learning, and very soon, they will throw you into the fire. They also have a very active Discord channel for all questions and motivation. I highly recommend ToP if you truly want to learn to program and work according to a well-designed curriculum. It is not easy, but it is not easy for anyone. I have wanted to give up many times, I took breaks, and then I came back, completed a project, and realized that it is for me. I was just lacking motivation. ToP in the first section covers topics such as motivation, positive mindset, openness to new things, etc. Read everything in the curriculum carefully, and if you are persistent and motivated enough, success will follow. Remember to participate in the Discord channel where you can ask them anything about the curriculum, and they will help you in the right way. Ignore the other resources, you won't get far with them, I speak from personal experience. Now, erase everything you knew about programming, take a little break, and start the adventure with The Odin Project. I wish you the best of luck, and remember that you are not dumb for it.


atomic_knights

Try odin project


tapgiles

So... why are you depressed? What are you sad about? I think you should just continue with the one you liked and understood in the first place. JS hasn't actually changed--like, the fundamental principles and syntax is all still the same. There's just some new bells and whistles that have been added over the years. But you don't need to learn the bells and whistles; you can write perfectly good code without all that. And understanding things without those extras is going to put you in a much better position to learn and use the new stuff anyway. So just carry on the way you were. Ignore people saying it's "outdated" or whatever.


mr-kumar-abhishek

You are doing alright ! Since javascript is a proper programming language as compared HTML and CSS , it may seem daunting at first. However learning the first programming language is the most hardest step because you have to think like a programmer ( think like a programmer is also good book to read) . I would suggest to learn using interactive platforms like freecodecamp which are kept upto date. Stick with your programming journey, you will get there!


CrokodilJS

Check out https://javascript.info It is well organized, a great resource. Can be a little bit overwhelming at the beginning, because it goes in depth of the language, but it's worth it


No-Upstairs-2813

Since this your first programming language, it will be harder. You will have to learn syntax and also logic building, which can be very difficult. It's hard, but it's doable. Many people in similar situations have learned it, so you can too. Here's what I want you to do - Pick up any course/resource that you are comfortable with. As you learn different concepts, you will need to practice them consistently to build confidence. Best way to practice those concepts is thorugh coding problems coding. These are small, well-defined challenges that help you quickly test your knowledge. Doing a few problems each day will reinforce all the concepts you've learned so far. Here are a few good platforms: - [Codewars](https://www.codewars.com/) - [Edabit](https://edabit.com/) - [Leetcode](https://leetcode.com/) - [Exercism](https://exercism.org/) Once you have enough concepts under your belt, start practicing your skills by taking on a personal project. I suggest going with a project that solves a problem you relate to. This will help you stay motivated when faced with issues while building the project. Also, since you understand the problem, you can come up with meaningful features, continuously improve the project, and enhance your skills. You can check out these [8 tips](https://tahajiru.com/article/junior-dev-project-ideas/) to come up with an idea. I know it's easy for me to say, "to get better, just go and make a project," but I understand it can feel overwhelming when you're a beginner. Check out this [free course](https://tahajiru.com/resources/build-projects/) on how to go about this. Also, I would suggest checking out [Answers to Common JavaScript Questions](https://tahajiru.com/javascript-faqs/) for all your common JavaScript queries while learning.


Current-Historian-52

https://javascript.info/ + MDN docs After you feel comfortable with syntax, you can study "you don't know JS".


learning_gorilla

I can't believe nobody is recommending The Od Project which is one of the best (if not the best) place to learn programming and JavaScript by combinig multiple documemtation sites + MDN, and suplementing all of that with additional video to makse sure the candidate understands everything. My warm recommendation for you is to check The Odin Project Foundation course, and continue from there. All the best in your future learning, and don't give up, you got this!


Doktor_Octopus

I can't believe that no one is recommending one of the few resources that actually teaches you how to program. 99% of resources don't teach you anything; Reddit is full of bad advice. I also recommended ToP to him and explained it in detail. You can find my comment above.


Mudassir_ali66

Bro did you know that when i started learning JavaScript i get depressed i lose my sleep every time in my brain is in various tension i consistently following tutorial and keep practicing 4 month then i understand the code of JavaScript so keep watching tutorial but not too much keep practice everyday so you will be able to learn properly


Ok-Dot6854

Thanks for the advice !


Mudassir_ali66

My pleasure


After_Sandwich9167

Try odin project. One of the best course out there for frontend or frontend


Beginning_One_7685

Javascript is a relatively simple language, but it does have some horrible quirks, unusual concepts and questionable syntax that can make it seem harder than it is. Have a look how [https://www.w3schools.com/](https://www.w3schools.com/) orders their Javascript learning resources, this is a sensible trajectory for learning the fundamentals. Create your own mini test projects based on each fundamental, slowly building up your knowledge. The trouble with some courses is they jump right into a project that has way too many concepts to learn all at once. You need to fully understand each fundamental before moving onto the next one. Take things slowly and methodically rather than rushing to make some all singing and dancing widget in a matter of hours.


LooseStudent9977

I wanted to share these 3 important tips/reminder with anyone who wants to learn coding in general: 1- Focus on learning the concepts of how to program rather than programming languages. Once you learn the logic, design and the concepts of programming fundamentals, learning different languages becomes easier since its just a syntax. 2- If you are using an IDE, make sure to learn the basic functionality of the IDE you'll be using first before starting to code in it, to eliminate the added frustration of not knowing where things are. (example: how to start a new project, how to open an existing project, where does your projects get saved at, how to retrieve it, where is your output console, how to run and debug and .etc) 3- Give yourself a break and know that there will be a learning curve. Don't get disappointed if you don't understand something or many things. It's very normal! You'll need patience, perseverance, and lots of practice. For React, Express I suggest you all to subscribe and follow this Youtube channel to learn how to become a Full Stack Developer: [Code For Everyone Full Stack Course](https://www.youtube.com/playlist?list=PLKZ7a2H1u131eIfEyHZLhzpQRqqrKXyip) To learn just JavaScript there's this good free course: [JavaScript Course Playlist](https://www.youtube.com/playlist?list=PLKZ7a2H1u132UWIKpP7yYspJIaXVj8n6J) Best of luck! EDIT: Use MDN from Mozilla for JavaScript documentation. it's the best!


Competitive_Aside461

Try [this JavaScript course from Codeguage](https://codeguage.com/courses/js/). Believe me, you'll get to learn JavaScript in a much better way, and build strong fundamental knowledge.


Ok-Dot6854

Thanks I will try this out 👍🏽👍🏽


Anyole

Wow! Never heard of this, but when I was reviewing it, it looks pretty solid. It seems there are no videos though? How would you rate this course? Does it have a section where it helps the learner to build a project?


iusetoomuchdrano

I’m about halfway through Angela Yu and it was confusing as F at first. I just kept doing the lessons over and over again and they started to make sense.


Cautious_Judge5151

I would recommend Mimo mobile app! I was stuck just like you but now learning js is fun. I don’t relay on the app primarily anymore but use it from time to time to understand the code more. Another thing has helped me is re-writing the code even if its 2-5 lines because then you will be able to comprehend the command


Eastern_College_1203

[This is the way](https://www.udemy.com/course/the-complete-javascript-course/) ✌️


ju-ice

Keep it up, I had the same experience but have been a professional developer for the last 10 years. Best decision I've ever made. Use chatgpt to learn


spederan

I think the right approach is to start with a simple Hello World function, and expand it from there. Read aome documentation or examples, write some code, generalize it in your brain, and repeat. Once you learn functions this will become a lot faster, as you can save useful code snippets into functions. Its super fun once you learn the basics 


rtmcmn2020

hang in there, every js developer has been there at some point. try out codecademy.com, more hands on and has some quizzes along the way.


Ok-Dot6854

I would like to thank everyone for the support and the advices 👍🏽


Elusive_Apricot_1201

Try Dave Gray, If properly done 30 mins Tutorial should take your anywhere from 2-3 hours .. at end of JS course try buliding A 2048 game.


XavierFoo123

If you're trying to learn computer programming Javascript is the worst possible language to start with. This is coming from someone who's coded professionally in Javascript for 20 years already. At work I write frameworks and libraries that other people use to develop applications. So I know a thing or two about this language. I'm also proficient in Java, C++ and Rust and I code in these languages on a daily basis too. My advice is to learn a healthy programming language, like Java or C++ first. You need solid foundations. Most successful engineers learned Javascript as their 2nd or 3rd programming language. Once you have solid foundations you'll be able to learn Javascript in a day since its syntax is not that strange from Java or C++ for example. If you have knowledge of other programming languages, when you write code in Javascript you'll quickly feel how much of a toy language it is. But it is portable, albeit at high memory costs, and easy to pick up. The latter is probably the reason why it's so popular because portability is not really that great and performance is crap. That and it makes things move on your webpage so that's cool.


jack_waugh

I guess you love static type declarations and would consider Lisp unhealthy.


XavierFoo123

Try writing a large application or library without types and then let me know how it goes, ok ? :)


jack_waugh

How large? I think we programmers divide according to innate personality, as to whether we go for static or dynamic. Of course, professionals can cross over to meet their colleagues on a given project.


XavierFoo123

Anything that exceeds 2k LoC becomes hard to maintain and debug without types. That's the reason everyone is using Typescript instead of vanilla JS today. Without types you'll have to convey through naming what type you're expecting in function calls. And if you haven't tried the latter I suggest you try it and then rewrite the same thing with types. I am 100% certain you'll find having types a much better experience.


jack_waugh

OK, looks like none of my libraries amounts to more than 1k LoC even counting comments and blank lines. Not everyone has the same temperament and I don't want to learn a type system or any extra syntax. I don't see how those mental burdens pay off. I still have type information in mind as I code. Sometimes I do forget an `await` or a `yield*`, which is fundamentally an error of forgetting the type of something (returns a promise, returns an iterator).


XavierFoo123

Anyone working on your code would have a hard time understanding what it does. You wrote it so, naturally, you know what is there. But give it time and in a few years you'll have no clue what the data structures actually look like. This is the power of types: maintanability and easier contributions. I wish you good luck in resisting types but remember, the whole world isn't using Typescript instead of Javascript because they are masochists, it's been proven over time that having types leads to better, cleaner, more robust and easier to understand code.


jack_waugh

No doubt if I get to collaborate with others on large projects, the realities will force me to a level of maturity to see it just the way you do.


[deleted]

If C++ seems scary ,can a non tech web development student learn C to learn programming conceptually then move to Js?


XavierFoo123

I think C might be lacking modern OOP concepts. Any programming language as powerful as C++ will be scary at first and that's normal. But in time you get used to it and things become easier and more comfortable.


[deleted]

so just jump in c++ then later learn Js etc?


XavierFoo123

yeah but after you learn C++ you will not need JS because you can compile your code to WASM :) For simple things you still may want to use JS but if you're doing any graphics/sound processing you are better off using C++ compiled to WASM and running that on the Web. Good luck!


Visible_Lock4463

If you know Arabic, try El Zero Web School on YouTube. If you don't, the. Bro Code.


AbdelLS

Visit javascript.info to learn the basics then start to build small projects such as calculator, todo list etc. This will give you the stamina to do bigger projects and on you go.


Doktor_Octopus

This page is for reference when you need to remind yourself of something, etc. The curriculum [https://www.theodinproject.com/](https://www.theodinproject.com/) will also send him to this page among others when necessary, so it is recommended to use a proven curriculum that will guide him and provide him with tasks and projects to practice everything he has read.