Dear marine critters,
Those last weeks, I've learned a lot about how to solve problems using humain techniques (they don't have tentacles to help them after all). I've also been through a few Javascript katas to put to use this new language I learnt last week.
How I solved a simple problem
During one of the katas, I worked on creating a simple gradebook for a few students. The goal was to be able to easily add new notes and get an average for each students. I knew what to do but the code I used to add new scores wasn't working. I looked for a solution without luck, trying something different, digging in the aethernet, ... Nothing. Until the answer came to me in the most unexpected way (like a certain ring to a certain hobbit): in the middle of the night. I had a few sleeps last week when I would wake up in the middle of the night and, in that half-sleep state, my brain would be processing lines of javascript after lines of javascript. It's during one of those phases that the solution came to me: I needed to use brackets instead of dots! (which is what the curriculum warned us about at the very beginning of the katas, did I realise on the next morning). Luckily, I retained the solution in my mind throughout my sleep and was able to apply it with success the following day.
Overall, I really enjoyed solving those katas. It was really stimulating to run into problems and build different ways to approach them.
Problem solving techniques
Throughout the different katas, I used a large array of techniques, it is now time to reflect on them.
- Pseudocode
- Trying something
- Rubber ducky method
- Reading error messages
- Console.logging
- Googling
- Asking your peers for help
- Asking coaches for help
- Improving your process with reflection
I used this technique several times, to step back and look at my problem from a general point of view before breaking it down into smaller steps. I noticed tho that I tended to use it at the start of my work but wasn't reviewing it as I went through the problem and had to take different steps that the ones planned at the beginning. I want to improve on that.
All the time!
Not so much this time around but I use it a lot at work so I'll make use of it soon enough.
Great to find where the errors are located! Once I'm more familiar with the error messages, they will alo bring a valuable input.
A. Lot. It was my best friend to understand what my functions were doing to my data and which parts weren't working as planned.
once again, a lot. Especially to find methods that I hadn't encountered before and understand how they worked.
I didn't use that technique but I'm eager to see the 5 weeks cohort catching up so we can takle problems together.
When I was still stucked after using the previous techniques.
I tried to be aware of the way I solved problems. I also commented my code, to add explanations and remind myself to review solutions that I felt I didn't grasped fully.