When submitting a solution in C++, please select either C++14 (GCC 6-32) or C++17 (GCC 7-32) as your compiler. ×

valvee's blog

By valvee, history, 3 years ago, In English

It seems so often to me that I am going to try my best for a specific work yet after some days that motivation fades away. All my plans that were to be done with utmost discipline are just some notes in the paper which I don’t even look back at after writing. Judging by my daily activities and my own vision towards life, I have finally crowned myself as a loser. This is my way of living for the past few years. Maybe I am good in some field but when it comes to performing I always fail. I always have a self-doubt that I am going to make a mess of it and even if I make myself confident enough to do that work, the result is nothing different. The world is filled with super smart, happy, passionate, confident and positive thinkers and they somehow know what they must do and how to do. And here I am who has always failed in every field and situation. Honestly, I have never given much dedication to my work, but how could I be dedicated when I always fail in the very processes of that work! Most of the time I cheat: and I try to hide that I know nothing, while also displaying to others that I know these things, and this makes me an imposter as well!

I started to competitive programming last year and within a month I realized that this thing is way beyond my capability. I could spend an entire life trying and learning CP, and still won’t be able to solve a medium level question. I have solved some easy level questions over the past year but at the age of 23, I am still solving questions that are meant for 12 years old. Whenever the Code forces homepage loads up, we all see the names of Legendary Grandmasters. Some of them have been coding for more than a decade, seriously their dedication level is fantastic. Kudos to their parents and teachers for bringing up such prodigies. I particularly feel that even if I was raised by the same teachers and parents, I would still be a dumb and playing around in Div3 contests.

This world is seriously too complex for me. I would never be able to compete or work together with people around me. The motivation resides for a very short duration in me. I procrastinate most of the times even after knowing that I could do a little more and its too dangerous for my future to stop again. And yet I repeat this mistake. You know whenever I do a work with high focus and dedication for 2-3 hours, I feel like that I have achieved huge success and then I take a break after doing all the hard work. This break lasts for a week and sometimes even more. When I try to continue the same work after the long break I have to start again from the beginning. That’s why I have stopped growing as a person. In future I would still be on the same place and same situation. Because I am not changing at all. Life is becoming more and more miserable. My friends are getting good jobs and those who don’t, they have their own talents for which they will earn a living. I am so doubtful, I must contribute to my family financially, but how?. Who would employ such a disgrace? It really feels so bad when you are 23 and still living on your dad’s income.

From now on, I have decided that even after being such a failure and also realizing my dark past, still I will continue coding because I have no option left. I will fail a million times but this time I won’t cheat and give up, instead I will try and try. I hope after 5-10 years, I could be a be good coder and be able to compete with confidence. I have to forget that I have a negative and self-doubting brain. Maybe, when I revisit this post years later, I’d be applauding myself for believing in myself and not giving up.

  • Vote: I like it
  • +76
  • Vote: I do not like it

| Write comment?
»
3 years ago, # |
  Vote: I like it +7 Vote: I do not like it

I can understand you brother . because i'm also facing the same difficulties . i always think i'm not good enough and my dream always be a dream no matter how hard i try .
but know what you never know what is written in future . i see this hard time as opportunity to create myself and learn from my previous mistakes .

As Will Smith said in movie "The Pursuit of Happyness"
"You got a dream... You gotta protect it. People can't do somethin' themselves, they wanna tell you you can't do it. If you want somethin', go get it. Period."

»
3 years ago, # |
  Vote: I like it +19 Vote: I do not like it

The only difference between being dead and alive is an alive person can rise in his/her life even if chances are very low but a dead one can never do that. So the best part is you are alive and that is the best you have. Love your life and love yourself cause you are the only one who is going to stand by yourself in every situation. Don't be so rude to yourself. If you don't love CP then it is better to do something which excites you and if you love it then failures don't matter. Don't compare yourself to others. Everyone is running his/her own race. Negativity arises when you start comparing yourself to others. So keep running your race and one day you will reach your destination for sure.

»
3 years ago, # |
Rev. 3   Vote: I like it +1 Vote: I do not like it

Please watch this, it might uplift your mood. I know how you feel. I feel the same way a lot of times. After failing the JEE Advanced, I had to get enrolled in a private engineering college, for which I get taunted everyday by my family. EVERY SINGLE DAY. And sometimes, even I feel, that if I may have studied a bit more, I might be in the IITs with a better life and a better future. The taunts are sometimes so violent that I feel like killing myself sometimes. But, I have realised that I am a great coward, and I am unable to even take an attempt on my life. Right now, competitive programming is the only shining light in the darkness that I am. I have swore to myself, that I'll do my best to become a grandmaster in the next 4 years (3 now).

I too make plans and fail. But the thing is, if you are aiming fo perfection, you will most likely never achieve it in a single day. You have to work at constant improvement, something which a lot of people don't realise. Set a target for yourself, and read the target every single morning. It will remind you what you need to do.

So don't get discouraged by the downvotes. I am sure someone more experienced than me has already been in this situation before, and will be able to guide you better. But I have given my own two cents, and hopefully this may help you someday.

Good luck on continuing your life!

»
3 years ago, # |
  Vote: I like it +3 Vote: I do not like it

Don't lose heart brother.. Try as much as possible and just don't think about other's ratings.. Just compete with yourself.. If your max rating is 'X' then try to surpass it.. Try this way and never take pressure of anything.. that's all :)

»
3 years ago, # |
  Vote: I like it +23 Vote: I do not like it

Competitive Programming is a very niche area. You are overestimating its utility in real world. Codeforces problems are way tricky, difficult, out of syllabus sort of stuff for job interviews.

If you are looking for jobs, Codeforces is a bad place to practice on. Go to leetcode etc.

  • »
    »
    3 years ago, # ^ |
      Vote: I like it +20 Vote: I do not like it

    Codeforces tops are not only prodigies, they have spent like HUGE amount of time on competitive programming. If you spend your one year on programming (may not be competitive programming, general development, engineering related stuff that can get you job), you will be really good.

    Real world programming involves lesser maths and algo knowledge (if that's your concern).

    Don't self pity. Dont lose hope. Work hard consistently. Best wishes!

  • »
    »
    3 years ago, # ^ |
      Vote: I like it +4 Vote: I do not like it

    Praveen, you are right leetcode is a better place for me because I am desperate for a job. I have started practicing there as well, but I can't leave Codeforces just because its more tricky and difficult for me. At the end of day, all I wish to do is to increase my problem solving skills.

»
3 years ago, # |
  Vote: I like it +3 Vote: I do not like it

If you feel helpless, try breaking up your problems into smaller and smaller problems while keeping the long term plans at a distance. First you must walk, only then you can run . This is not easy but you have to be patient. I am in a similar situation

  • »
    »
    3 years ago, # ^ |
      Vote: I like it +3 Vote: I do not like it

    after all this is what divide and conquer really means...

»
3 years ago, # |
Rev. 3   Vote: I like it +10 Vote: I do not like it

I started cp at the age of 23 with little to no math skills, I'm 25 now and still learning high school math along with many other things. Going past Div2B seemed impossible to me in the beginning and yet I somehow managed to peak expert in 10 months with lots of practice. I feel like there's a steep learning curve, especially if you're coming in without a good enough math background. I personally do cp to improve my problem-solving skills, it changes the way you think. It gives you a framework to think about situations, real-world or not, and come to useful conclusions. I stopped practicing a while ago since I'm learning lots of other stuff atm, I plan to revisit cp later. Another reason for the steep learning curve is, I think, the quality of explanations. I feel like it's not simple enough for the beginner. There are quite a few leaps in logic that are made in the explanations, in the hope that the reader will be able to fill in those gaps themselves, and I feel like a lot of beginners spend a lot of time figuring out how to fill those gaps, and most of that time could've been saved if the explainations were "simpler" ("Man, I could've saved X minutes if only the tutorial had mentioned Y" moments). It also depends on what you mean by "simple", simple for someone could be complicated for someone else, now explaining everything right down to first principles would be unproductive. I'm going to try something in the future that I think will help solve this issue to a great extent.

"The world is filled with super smart, happy, passionate, confident and positive thinkers and they somehow know what they must do and how to do"

No, it's not. I'm pretty confident most people aren't even making a living doing the stuff that they're passionate about. I doubt whether most people have even figured out what they're passionate about. The cp community is a very very very very small minority, it is expected that there would be lots of smart people here, at least very smart in solving algorithmic problems, it doesn't reflect what goes on in the rest of the world.

"It really feels so bad when you are 23 and still living on your dad’s income"

I'm 25 and I live off of my mom atm, I don't think it's a bad thing unless you have no plans for making money and your family is struggling financially. I'm currently learning a lot of skills that would hopefully make me financially independent. I strongly feel the following two videos will be useful to you.

Joe Rogan Experience #1309 — Naval Ravikant

How to get rich — Naval ravikant

Watch in that order.

  • »
    »
    3 years ago, # ^ |
      Vote: I like it +4 Vote: I do not like it
    1. I think practicing CF at a below 1200 rating is meaningless, unless you are talking about division 3 rounds. The reason is because problems at these basic ratings are meant for speed solving, which mean they include 1 trivial observation, and then the problem is over. This is terrible for practice because then essentially you're solving a bunch of trivia questions, that have no central theme whatsoever.

    2. The world is filled with average people. It sounds hard to accept, but logically it makes sense. After-all, that is the definition of average.

    3. I don't see why you're telling somebody to watch vapid motivational videos. If you want motivation, find it in yourself.

    • »
      »
      »
      3 years ago, # ^ |
        Vote: I like it 0 Vote: I do not like it

      Are points 1 and 2 directed at me? because I never said anything about practicing below 1200, also I agree that most people are average.

      And for point 3, they're not really motivational videos, the first video is to set up an impression of the speaker, and the second video is him giving a bunch of principles on how to make money and explaining why those principles make sense. Naval Ravikant is a pretty damn credible dude in the tech/business world, you should check him out. The writer of this blog doesn't have to take those videos seriously, it's just a suggestion. When I read the part of the blog about making money, this video is what came to my mind.

»
3 years ago, # |
  Vote: I like it +2 Vote: I do not like it

Failure isn't a bad thing, but it seems like regular procrastination is a sign that you're not passionate towards what you're trying to achieve. You must think about your sole interest, and set your goals accordingly. Your dreams are your life, you can best live your life, if you'll live your dreams. Those can't be achieved in one day, you have to make several attempts (mostly failures) for it. Start with a very simple goal, and then make it harder (relative to your progress).

I can relate your situation, bro :)

»
3 years ago, # |
  Vote: I like it +1 Vote: I do not like it

Don't loose hope its not because you are not improving, its because it takes more time for the results to show up, make sure the negativity effects your head the least , this is also a characteristic that we learn from CP , as you can see from my graph it took me more than 10 months to get out of grey region , so keep practicing keep enjoying problems :)

»
3 years ago, # |
  Vote: I like it 0 Vote: I do not like it

You might have tried this, but why not solve problems which are easier for you and once comfortable then go to the next rating?

  • »
    »
    3 years ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    solving problems that are at your level wont help. solving problems 1 step above your level will help very much.

»
3 years ago, # |
  Vote: I like it +6 Vote: I do not like it

After being +13 years in CP community, I am still a beginner, lol. But I love solving problems. There is no such thing as failure when you learn how to solve a new problem that you could not have done before.