Hello,
I’ve been learning JavaScript since January this year and according to where I am at in the course, I am now at the ‘intermediate’ level.
Depending on the complexity level, I can complete the guided exercises included in each lesson with relative ease, but when the time comes to tackle a challenge on my own, from scratch, I am completely lost. All of a sudden, everything I just learned and previous becomes fuzzy, confusing and I don’t know where to start. I struggle to even understand the guidelines and I find myself reading them over and over, to try and make some sense of what is being asked.
I look for solutions on this site, on Discord, GitHub, I Google, use MDN, W3C, look for specific tutorials on YouTube, use books, etc, etc, etc…
When I do find solutions, most of them are far too complex for me which frustrates and discourages me even more because all I can think of is how much more ahead of me those other students are, how they get it and I don’t. I read the interactions when someone asks a question and when they’re given solutions, they get it and I still don’t. It really makes me feel as though I may not be cut out for this.
I have until the end of October to complete the entire course with projects on the side and I am very anxious. I struggle so much to get the logic. I often think to myself, as I did with the attached exercise: “Do they really expect me to understand this and come up with a solution?”
I guess the reason I decided to post this is because I am looking for reassurance, encouragement. Is this normal? Is this ok? Can I really feel this much out of my depth today and yet be a proficient developer fast forward X months/ years?
It would be nice to read realistic and positive feedback from anyone who knows exactly how I feel, who’s been there and has overcome.
This is the challenge that prompted my post:
https://www.codecademy.com/paths/full-stack-engineer-career-path/tracks/fscp-22-javascript-syntax-part-iii/modules/wdcp-22-practice-javascript-syntax-classes/articles/fecp-javascript-practice-classes
If it isn’t already obvious, I didn’t come up with the solution! I did study it though, and I understand it for the most part. I just would not have been able to come up with it by myself, most definitely not!
-
AFTER seeing the solution, it took me ages to get my head around the numbers 90, 65, 122, 97. “How on earth did people come up with that?!”, I asked myself. It took a lot of time and digging and I eventually got it through Wikipedia.
-
I don’t understand the following lines:
let charNum = tempString.charCodeAt(i);
encryptString += String.fromCharCode(charNum);
If I do come across as being a lot slower than I should be, then so be it, that would just confirm my current frame of mind. But if anyone has some good words of encouragement, that would spur me on and I would be ever so grateful!
Thank you!
class ShiftCipher {
constructor(shift) {
this.shift = shift;
}
encrypt(plainString) {
let encryptString = '';
const tempString = plainString.toUpperCase();
for (let i = 0; i < tempString.length; i++) {
let charNum = tempString.charCodeAt(i);
if (charNum <= 90 && numChar >= 65) {
charNum += this.shift;
if (charNum > 90) {
charNum += 26;
}
}
encryptString += String.fromCharCode(charNum);
}
return encryptString;
}
decrypt(plainString) {
let decryptString = '';
const tempString = plainString.toUpperCase();
for (let i = 0; i < tempString.length; i++) {
let charNum = tempString.toLowerCase();
if (charNum <= 122 && numChar >= 97) {
charNum -= this.shift;
if (charNum < 97) {
charNum += 26;
}
}
decryptString += String.fromCharCode(charNum);
}
return decryptString;
}
}