SI estas interesado en mejorar en programacion hay algunos temas que puedes practicar para que puedas ver algunos avances.
El primero es identificar tus carencias en los Fundamentos. Muchos programadores obvian porciones de codigo que no entienden, o esperan solo escribir codigo sin entender gran parte de lo que escriben. Usando aplicaciones de notas o una hoja de papel cuando leas codigo, identifica que porciones no entiendas, para que luego investigues esos temas
LO siguiente tambien es saber como representar abstraccciones, esto en codigo hace referencia a las estructuras de datos. es decir como organizamos los datos para accederlos eficientemente. Hay varias estructuras de datos como Linked Lists, Stacks, Queues, Hash Tables, Trees, Heaps y aunque no necesitas conocerlas todas, puedes ir practicandolas para ir conociendo mas de como ciertos programs las usan
y finalmente los algoritmos, principalmente debes estudiar los tiem and space complexity que te ayudaran a medir la eficiencia de distintas porciones de codigo que escribas. Y si quieres practicar esto siempre tienes sitios como letcode, codewars, hackerrank y asi.
Aunque esto solo es una parte asi que intenta llevarloa a la practica creando aplicaciones de ejemplo