i am working through the javascript section and nearly at the end but I can’t help feel like they should explain what’s happening in simpler terms. I assume a lot of people who are new to coding, like me, use FCC but to just expect people to know ‘nesting for loops’ etc seems odd to me. Maybe i’m just a lot further behind with my knowledge than I think. I use the examples provided to work out the answer and have got quite far but don’t know the reason for using them or how they relate to real life.
I had to read the Javascript for Kids book just to get more of an understanding where all of these things are being used.
Anyway, sorry for the rant. I think i’m in one of those moments where I feel like I will never be able to understand it enough to get a job.
4 Likes
No, you’re right. It’s just that the problem is, writing pedagogical stuff that manages to do what you (and everybody else) wants is very, very hard. Definitely, all descriptions, and the pacing of the paths can be improved; that’ll always be the case.
The bit where you’re going ‘how does this relate to real life’? Not possible to replicate that properly in a teaching environment. It used to drive me nuts when I was first learning - why does it never explain properly how you use this stuff in real life? Turns out a. you need to grind through this stuff before you inderstand how it all clicks together, there isn’t a shortcut, and b. if you’re frontend, most of the stuff you actually code looks like the introduction to JS bit & the little jQuery section near the start.
From spending a lot of time in the chatroom trying to help people, there are obvious bottlenecks - people get stuck for days, weeks on these:
- The escape sequences in strings challenge.
- Stand in line (
push, shift, mutability
)
- Record collection, bloody hell (
accessing objects given a realistic situation
)
- Falsey bouncer (
NaN
)
- Destroyer (
arguments
)
But the chat rooms and forum are the key part: you will never be able to get the same level of understanding just reading things, you will always hit issues, and the.single most valuable thing is access to somewhere you can just ask about it.
I tried to use an early version of the book Eloquent JavaScript when I was learning JS; it’s beautifully written, explains everything, goes through the concepts well, plus I learn well from books. I hated it, just gave up, it’s too slow. That was a really good teaching resource, with a built in code editor/tester, bit like FCC. It’s so hard to get the right balance from just one thing
3 Likes
The challenges helps build basic programming knowledge. You have to take little pieces of code combined together to create a solution.
I have a C# example, but you should get the basic idea.
It makes use of Arrays, If Statements, For Loops and Nested For Loops.
The important lines are 10 to 19.
The purpose is to check if an User possesses a specific role.
The method GetUserRolesByUsernameArray() returns an array containing RoleIDs and Role Names from a database.
You pass in an array of Roles you check against an array of Roles obtained from a database.
It returns TRUE or FALSE.
1. public bool IsUserInRole(string username, string[] roles)
2. {
3. if (string.IsNullOrEmpty(username) || roles == null)
4. {
5. return false;
6. }
7.
8. string[] userRoles = GetUserRolesByUsernameArray(username);
9.
10. for (int o = 0; o < userRoles.Count(); o++)
11. {
12. for (int i = 0; i < roles.Count(); i++)
13. {
14. if (userRoles.ElementAt(o) == roles.ElementAt(i))
15. {
16. return true;
17. }
18. }
19. }
20.
21. return false;
22. }
JavaScript Resources
javascript tutorials
The best free JavaScript resources
THE VERY BEST BOOKS ON JAVASCRIPT
(the world’s coolest, most ubiquitous, & most important programming language)
http://mynichecomputing.org/bestJSbooks.htm
“You Don’t Know JS” (book series)
“You Don’t Know JS” (book series) GitHub
1 Like
sorry, but im not with you here.
fcc is not a capture-all-knowledge place. its a route. they link to other places with knowledge. quincy does it even in the weekly-mail. Why should fcc have to be a place that explains more? we could name a 1000 other topics where fcc could be a stepstone. and if we fill’em all, we’ll never need another website than fcc. hoeray. but i dont think that was ever the goal.
there are tons of info on basic nested loops. codecademy, yt, eloquent js, srs, its endless. I swear, that i can find a 1000 places on the internet that each spend more then a 1000 words, just on nested loops. and another 1000 that spend a 1000 words on working with objects, and so on.
now you got ur rant back.
now go do some tutorials. coding is easy. right?
2 Likes
Great answer, thanks for taking the time to write it.
I think you have a valid concern but ultimately, no, I don’t think FCC should get bogged down in theory during what is effectively an introduction to JavaScript.
Free Code Camp is a journey more than a lecture. The curriculum introduces you to ideas and tries to get you, as quickly as possible, to a place where you have hands on code. That way you learn by experience, which is the best teacher.
They do realize that people are going to get stuck. That’s why they’ve encouraged the growth of this great community, so people can talk to each other and learn from each other.
Quincy also provides links to a lot of other free resources online, for those who want to go a littler deeper down the rabbit hole.
In all, I find FCC to be the best one-stop site for learning to code that has yet been created. At least the best I’ve seen, and I’ve seen quite a few. I’m sure it will continue to improve over time, but it already has everything a determined person needs to learn.
Please don’t take any of this in a discouraging way. I’m not trying to imply that your frustration is invalid or that you don’t have reason to feel frustrated, if that is what you are feeling. Rather, I’m just trying to reassure you that you WILL learn to code if you stick with the program and lean on this community. We’ll get you there, brother, just keep hitting your head against that wall until it (the wall) breaks.
We’re here to help if you have any questions.
6 Likes
I’m still going to continue doing it because i am enjoying it and am finding it useful.
It just seemed to me that people would understand things a little more if there was a brief introduction as to how these things are used.
When I first started learning to code, everyone said you have to know Javascript for websites. That’s great but what does it do. When I started my research all I could find was that it makes your site interactive and animated. Again, that was great but then when I looked into it, even on Codecademy, all it said was arrays are important - this is how we do them, booleans are important - this is how we do them etc. But there was nowhere for a beginner to see why an array or boolean is important, or how JS can make the site more appealing. What helped me the most was a video on Lynda that showed what happens to a website when JS is disabled.
I am not for minute trying to put down FCC, I am investing a lot of time in it - it is fantastic and has a great community, I just came across a few problems that with a bit of where it would be used could help me a little more.
Awesome, glad you’re sticking around. It will all make more sense once you start building the projects. Trust me, by the time you finish the tic-tac-toe and Simon projects, you’ll have JavaScript wrapped around your finger.
1 Like
What ive come to notice about FCC is that they are the best free coding website imo. That being said, FCC tends not to hold your hands as much as the other sites does. FCC wants you to study the information while you’re doing the tutorials using peers and other outside sources like the google and youtube. I actually like that they do that because its giving you multiple ways to retain the information but thats just me.
4 Likes
The problem with explaining ‘why arrays are useful’:
“Arrays are useful because you can store and manipulate data as an ordered list.”
Oh, wait. That’s literally just a definition…
But here on FCC, the projects force you to show yourself why the data-types are useful, by teaching them to you then setting you loose on fairly complex projects.
Try to compute the winning moves in Tic-Tac-Toe without an array. Try to complete the Simon challenge without storing the moves in an array. Try to do the Recipe Box without writing each ingredient to an array.
The different data-types are each the backbone of specific operations, without which complex applications would not be possible.
I believe FreeCodeCamp is more geared towards mid-range developers. That is, people who have already dabble with introductory courses like codecademy, and want to move on to learning enough to make a career out of it.
2 Likes