Problem Solving

When I was blocked on a simple problem

My example starts with the FizzBuzz function challenge. When writing the function to replace the 'numberParameter' with "Fizz" when divisible by 3, "Buzz" when divisible by 5, and "FizzBuzz" when divisible by 15, I got all the green ticks. But I was trying to figure out the last 'else' that returns the 'numberParameter' if it is not divisible by 3, 5, or 15, it wasn't working! Everything was perfect, right? Wrong. I had written the last else as "else (numberParameter % 3 !== 0 && numberParameter % 5 !== 0) { return (numberParameter); }". I eventually reached out to the Tech Questions channel and discovered that I had over-completated the else statement. I could have simply written "return (numberParameter);" and achieved the same thing. This is how I should have done it in the first place, and what gave me the green tick in the end.

When I elegantly solved a problem

A time when I elegantly solved a problem would have been when facing the 'find an average' in the gradebook exercise. When I am facing a new problem, like writing a function that returns the average of a given array of numbers, I sometimes need clarification on what is being asked of me. For this, I slapped the question into ChatGPT so it could paraphrase the exercise for me. AI has been a tremendous help in figuring out how things work, like asking questions about how syntax works and what different things mean. When I am really stuck on something, I'll ask it to print a function that does something similar to what I am trying to do, then I'll ask questions on each segment of the function to figure out each section's role in making the function work, so I can reach a place where I am confident in writing one myself that I can understand. When used correctly, AI can be a really good teacher. Some additional questions I like to ask are, "Can you explain this step by step," and if I don't understand one of them, "Can you ellaberate on step 3," for example.

My confidence using problem-solving techniques/processes

  1. Pseudocode
  2. Pseudocode has been helpful in breaking down larger problems and challenges into single step ones. I am confident in Pseudocode and use it a lot when writing out code like functions, or stuff I don't quite understand yet.

  3. Trying Something
  4. I have been using 'Trying Something' since before I even knew it was a written about technique. I use this nearly all the time and it has worked on multiple occasions. I would say I am confident in the use of 'Trying Something'.

  5. Rubber Ducky Method
  6. I frequently use the Rubber Ducky Method in tandem with the other techniques on this list. Verbalizing my thought process has been very helpful throughout the course, and I have even used this technique in school when studying mathmatics. I typically don't actually grab an inatimate object, but more so imagine someone is looking over my shoulder or something. I consider myself as confident in this method.

  7. Reading Error Messages
  8. Error messages have been either extremely helpful, or absolutely useless. Sometimes it will show that I have missed a bracket or comma, other times it will just say error. When I dont understand the error message, I take to StackOverflow, as someone has always seen the same message before you and posted about it. I am somewhat confident in reading error messages.

  9. Console.logging
  10. This is one that I am nervous to say I don't use it as much as I should. I struggle with knowing where and when to use it, and what to put inside of the parentheses. I can comfortably say I am inconfident with console.logging.

  11. Googling
  12. Gooogling is one of my strongsuits for sure. Googling is not only effective in solving problems in code, but nearly anything in real life, too. I have been googling (primarially StackOverflow) since the start of this course, as a EDA graduate showed me StackOverflow right before foundations. I am confidfent with googling.

  13. Asking Your Peers for Help
  14. I have to admit, I don't do this enouph. Sometimes I get scared that my question is silly or it will waste other peoples time. I know this fear is irrational, and I have been getting over it recently, especially as the challenges get harder with JS.

  15. Asking Coaches for Help
  16. The same problem I have with asking peeers, goes with the coaches too. I am a lot better at asking coaches though, and asking stuff in the tech questions channel as of recently, especially when I received great help when asking about the FizzBuzz challenge. I am more confident with asking coaches, and plan to get better at it.

  17. Improving Your Process With Reflection
  18. When I evaluate and reflect on a process that I use, I am quick to know wether or not something is working for me or not. Reflecting comes naturally to me, so I consider myself confident with improving my processes with reflection.

A time I were reluctant to ask for help. What made me reluctant to do so? What might I try differently next time?

One example of this situation would be when I had no idea where to start with the FizzBuzz function. I wanted to ask "Where would I start when writing a function that checks if a number is divisible by 3 and 5?" I was reluctant to ask as I thought that maybe I was expected to know this already, maybe my question was to simple and was silly. Maybe the facilitators will think I am not cut out for the course. I eventually asked the question and received some great help which led me to complete the challenge, which then made me realize that all those questions I was asking myself were all very irrational, and that thats one of the things the facilitators are here for. Next time, after tryimg my best, I will try not to hesitate to ask for help.

Back to Index