Fundamentals Part 5 JavaScript exercises SO HARD!


#1

Hello all!

Okay, so I’m basically just after a little affirmation here…

I’m working through the curriculum, and is just now reaching the end of Web Development 101 - Fundamentals Part 5. Up until now I think the learning curve has been pretty constant, and although I’ve had a little trouble keeping up now and then, at all times the solutions have been just around the corner, so I haven’t felt downright lost. But the Javascript exercises at the end of Fundamentals part 5 (palindromes, snakeCase, caesar, fibonacci, pigLatin) are just SO HARD!

I struggled with the palindromes exercise for hours yesterday until finally resorting to looking at the solution in the Github rep. Usually when I’ve looked at solutions up until now, I’ve been like: “Oh right, I could (almost) have told myself that”, but the solutions for these exercises just make me feel more confused. Like, for instance could someone tell me what string.replace(/[^A-Za-z]/g, “”) does? Even though I’ve been googling endlessly, I still don’t understand the [^A-Za-z] expression.

I just wanted to hear if I’m the only one struggling particularly hard with these exercises?


#2

Hi @iamlowlikeyou

It is really hard finding the balance between being too easy and too hard so maybe there are some adjustments that can be made to that course to make the transition to fundamentals 5 easier. It’s something we’ll review.

One option for you is to come to our chatroom. We are on gitter but in the process of moving to discord which you can join here https://discord.gg/vMFKDBw. Here you can talk through the problem with some other learners and get pointers rather than looking up the answer. There’s nothing wrong with reaching out for some guidance and can stop frustration setting in.

In regards to your query regaring regular expressions it usually helps to mess around with them. I use http://rubular.com/ which although is aimed at Ruby regex does apply to most languages anyway. At the bottom of the screen is a guide which does cover your specific question. It might help to throw in some words and then write regular expressions to see what matches. The rubular site does the // part of regex for you so you only need to write what would go inside those such as [a-zA-Z].

Let me know if you have any further queries.


#3

Thank you for your reply @CouchofTomato!

Okay, I googled the “^” and found some stuff on bitwise operators, but I just couldn’t get it to make sense in this context. But that’s because “^” has an entirely different meaning inside a regular expression then, right?

The thing is I didn’t even know it was a regular expression, so I had no chance of searching for the right thing :blush: Maybe it’s just me that’s missed something though.


#4

Yeah that rubular site I linked does show what ^ does with regular expressions.

I’ll take all your feedback into account when course changes are discussed next.


#5

@CouchofTomato thanks, I appreciate it!

Perhaps the exercises wouldn’t be too hard if some subtle pointers were given. E.g. for the palindromes exercise you could add a “tip: look up regular expressions”, etc.