Я учусь в вузе. Сейчас занимаюсь по базам данных и перешел к способу хранения древовидной структуры в реляционной БД. Научился делать все классические запросы.
Однако, решено было усложнить задачу, наложением некоторых дополнительных условий, и нашел подходящее задание для этого.
После этого, я сдвинулся с решения задачи, возможно, на 20 - 30%, хотя прошло уже больше месяца.
И меня особо смущает то, что я долго сижу над этим заданием, хотя сколько бы времени я не потратил, как будто бы горох об стену, либо прогресс минимален (справедливости ради, я не сижу ежедневно над этим, потому что помимо этого, я занимаюсь и по другим предметам).
И отсюда у меня вопрос, что вы обычно делаете в ситуациях, когда ну ничего не получается и чувствуете, как будто застряли/топчетесь на одном месте? Особенно было бы интересно услышать ответ от опытных программистов, которым нельзя так долго сидеть над одним таском, а сдавать заказчику что-то ведь нужно.
Все просто, ты взял задачу себе не по уровню, по этому и нет прогресса. Браться надо за то что для тебя выполнимо в данный момент и так шаг за шагом расти по не многу.
Если долго бьешься головой, а дверь не открывается - возможно, это не дверь.
Иногда требуется вернуться на предыдущий шаг и проанализировать, а почему ты стал решать задачу именно таким образом, который привел тебя в тупик.
Может оказаться, что ты долбишься в стену рядом с дверью.
Просто выбрось то, что ведет прямиком в тупик, и решай задачу другими методами.
Лично я просто пытаюсь решить дальше.
Тут нет четкого ответа. Когда вот так застреваешь, решение приходит само собой, внезапно. Надо просто делать больше попыток, подходить с другой стороны и т.д.
Дополнительно: задачу ты не показал, но вопрос - а она точно решаема? Учитывая, что ты еще учишься, то мог понапридумывать на литкодовский хард уровень. Такое не каждый решит. Порой надо просто найти решение, а не придумывать самому
Сначала нужно почно понять на чем конкретно застрял. Дальше я гуглить, запросы пиши на английском. Если Ничего не гуглиться можно спросить о проблеме на сайтах типа тостера или SO, да не быстро, и не факт что ответят. В идеале именть человека - ментора который может подсказать, задачть направление.
И да бывают задачи которые не решаемы или их сложно решить тебе так как не хватает знаний в опеределенной области.
Беру листок бумаги и примерно накидываю реализацию, пытаюсь логически понять что мне делать, если ступорюсь где-то, то лезу в гугл или пишу вопрос на стэковерфлоу). А вообще это нормально, все приходит с опытом, щас учусь верстать по сетке БС, и тоже ловлю много вопросов. Иногда просто полезно выйти на улицу и подышать воздухом, отвлечься и ответ сам приходит в голову.