I was tired of rejections. I was tired of having hope again and again. I’m siting infront of laptop and just using all of my brainpower to kind of power through reasoning it is hard its exhausting it’s a big huge wave of knowledge thrown at me it’s hard to understand everything. I dont think this is what I want to do but this moment of struggle is really where I think I can learn alot. “A lot of value in struggle” I want to embrace this struggle, I just want to dive into this struggle and swim through it. Maybe that this is reason I always get stressed out and leave the things half done. I know I’m Panic writing all this, everything feels so fast. So here are the few tips for my future self, if you ever are facing the same situation, ever in doubt, read these few points and be clear.. be calm.

  1. Always, always err on the side of being more understandable - while taking notes, while writing code (ALWAYS) Being clever «< Being understandable When you have problems later then you can go back and change it to be clever, but for the most part you always want to be clear.

  2. It’s not always about being FUCKING SMART, sometimes just having a different attitude helps.

  3. Keep an eye on pseudo procrastination, stop watching “how to do something videos”. Cleaning room, maintaining notes and watching science YouTube videos are pseudo procrastination.

  4. Long Todo doesn’t work! Do many short lists. Write 5 things. Do them. Then write another short list.

  5. You need to learn to observe what’s going on in your mind almost like a third-person observer. The goal is to have moments of clarity where you’re able to see “that’s what’s going on in my mind right now”

  6. If you ever get stuck (defined as making zero progress for 30-40minutes) ask help shamelessly.

  7. There is no such a thing as Perfect.

  8. Internalizing that mood follows motion. I can’t sit around waiting to feel right before starting/doing something. You will never feel right. It’s the doing of the thing that makes you feel right. Just start shit. That’s the battle.

  9. Test on the examples from the problem statement. Then make a few other small tests, solve them manually and check that your program outputs the correct answer. Generate a big input and launch your program to check that it works fast enough and doesn’t consume too much memory. Test for corner cases: smallest allowed values and largest allowed values of all input parameters, equal numbers in the input, very long strings, etc. Then make a stress test. After all these tests passed, submit the solution.