I believe problem solving and implementation is the real juice of competitive programing.
I have seen people starting out by hitting the programing methods first , then practicing problems of specific tags , solving classical problems , solving more and more problems learning new ways …
Not saying that’s wrong, but then this way it becomes like everything else procedure, hard work, read books/articles, practice. Too much rush. Sometimes feels like JEE exams for getting jobs.This was a DP problem , that one data structures , min-flow , max-flow, backtracking… give it a rest. People use OEIS to solve problems??(sad reacts). I feel scared for newcomers. There are many fields to improve on, problem solving should be the prime one.
It feels awesome to first spot a pattern, work it out then find maths behind it. It feels good to get to some result/transformation without using Mobius inversion. Working on a problem for 3-4 hrs then looking into the editorial? i feel its better to leave it unsolved and try after some time( maybe months). Most of the questions( cant say about hard ones) on good CP sites can be solved by one who doesn’t have a clue about graph theory , DP, greedy etc. but has good problem solving and implementation skills.
I think its more fun if you just hit the question , ignore the tags floating around give proper( i am talking days) time to questions, focus on problem solving and have patience. Its necessary to promote the better way.
Not many stick to the ancient ways, but those who do can always find some friends