Boa tarde Pedro. Olha, não se compare com o ritmo de aprendizado dos seus amigos. Se eles conseguiram e você não, não se compare a eles, isso vai te fazer um mal danado (como já está fazendo). Cada um tem o seu tempo para aprender. Como você está vendo, no mundo da programação é isso mesmo, bugs e mais bugs vão surgindo e nosso desafio é arrumar todos eles. Acho que essa é a parte mais legal de ser um dev. As vezes é MUITO cansativo. Quando você chegar em um nível de exaustão, pare um pouco, levanta, toma uma água, respira, pensa na vida, enfim, tenta relaxar a mente e quando se sentir renovado, volte e tente descobrir o que deu errado na sua aplicação. Se você discordar e achar que funciona bem mesmo se estiver com a mente exausta, tudo bem, isso vai de cada um. Comigo funciona muito bem. Eu tento relaxar de alguma forma e quanto eu volto, minha mente funciona muito melhor e consigo resolver o que deu de errado bem rapidinho (as vezes). Um exemplo, eu estava estudando JS e eu não estava conseguindo pensar em uma solução para um código que eu estava desenvolvendo. Eu fiquei o dia inteiro tentando. Eu fiquei tão exausto, tão estressado por não ter saído do lugar, que acabei ficando 2 dias sem codar (foi em um final de semana, fiquei sábado e domingo de bobeira). Na segunda, quando eu voltei a codar, consegui chegar a uma solução em menos de 1h.

Enfim, você é capaz, é muito capaz, tenha certeza disso. Programação é algo que quanto mais você praticar, mais você vai aprender (dãaa). Pratique até que o que era difícil p você, fique moleza. Encare tudo como um desafio e uma forma de crescer. Olhe para trás e veja o quanto você já evoluiu. Coisas que você não tinha ideia de como fazer, agr você consegue. Valorize o conhecimento que já tem, e continue se esforçando. Não desista nunca, pode ter certeza que com dedicação, você vai ser recompensado!