Comience con algunas cosas básicas que quizás ya conozca (esto hará que su vida sea menos agitada en ese momento)
- Comience a usar Linux OS (principalmente usamos ubuntu) y cómo instalarlo, con arranque dual y todo. Ensuciarse las manos. Cambiar de ventana será un poco difícil, pero merece la pena
- Aprenda los comandos de Unix que son útiles todo el tiempo.
- Aprenda Bash, cómo trazar gráficos (gnuplot), awk, sed, python, java, php, html y muchos otros. No necesita dominarlos, pero al menos tiene algunos conocimientos básicos.
- LATEX (realmente importante) necesitará hacer sus informes de proyecto y otras cosas usando látex ya que produce documentos de alta calidad. Hay muchas más ventajas de usarlo.
- Usando editor como sublime, Eclipse o cualquier cosa.
- Revise sus habilidades de codificación C ++ implementando los conceptos básicos como listas enlazadas, árboles, gráficos y todo. Aprende gdb.
- Control de versiones como git o svn y cómo funcionan.
- La programación competitiva elige cualquier tema que te guste, mira videos, intenta resolver algunos problemas básicos y pasa a los difíciles (Codechef, Hackerrank son buenos sitios para empezar).