¿Cuál debería ser el camino seguido por un novato para convertirse en un programador competitivo?

Siendo yo mismo un programador autodidacta, intentaré responderlo lo mejor que pueda.

Primero proporcionaré los mejores blogs para actualizar el conocimiento en informática:

  • The Geomblog de Suresh Venkatasubramanian: geometría computacional, algoritmos y debates sobre la vida académica.
  • Panqueques 3D de Jeff Erickson Ernie : topología computacional y anuncios de la comunidad.
  • El dominio semántico de Neel Krishnaswami: lenguajes de programación, lógica y lenguajes formales.
  • Pensamientos cuantificados de Joe Fitzsimons: información cuántica y computación, física teórica y construcción de la comunidad.
  • Andrej Bauer’s Matemáticas y Computación : HoTT, lógica, teoría de categorías y filosofía de las matemáticas.
  • Restricciones de András Salamon: complejidad computacional a través del lente de la satisfacción de restricciones.
  • Marzio De Biasi … casi 42 … : complejidad computacional resaltada a través de NP-completitud y rompecabezas.
  • Shtetl-Optimized de Scott Aaronson: complejidad computacional, con un enfoque principal en computación cuántica, filosofía, humor y desarrollo comunitario.
  • La sala de dudas de Lev Reyzin: teoría y práctica del aprendizaje automático y la vida académica.
  • La mano invisible de Turing de Noam Nisan: economía computacional, teoría algorítmica de juegos y desarrollo comunitario.
  • La vanidad de las vanidades de Sariel Har-Peled , todo es vanidad : geometría computacional y comentarios sociales y académicos generales.
  • My Brain is Open de Shiva Kintali: complejidad computacional, combinatoria poliédrica, algoritmos y teoría de grafos.
  • Grupo de teoría, evolución y juegos de Artem Kaznatcheev: teoría de juegos evolutivos y lente algorítmica sobre evolución, aprendizaje y filosofía.
  • Zona de juegos finita de Hsien-Chih Chang: blog bilingüe sobre complejidad computacional, lenguajes formales y matemáticas concretas.
  • Nanoexplicaciones de Aaron Sterling: computación distribuida, quimioinformática y comentarios sociales generales.
  • Complejidad computacional de Lance Fortnow y Bill Gasarch: Complejidad computacional y otras cosas divertidas en matemáticas e informática.
  • Pensamientos de Emanuele Viola: complejidad computacional y comentarios generales – comenzó el verano de 2014.

Para convertirse en un codificador exitoso, debes dominar los temas de informática.

Inotder para ganar experiencia mientras aprende codificación, vaya a la academia de códigos que le brinda experiencia práctica en cosas como la fórmula, etc.

Después de aprender los conceptos de codificación, puedes unirte a Github y hacer un proyecto que te interese.

Siempre que aprenda un tema que puede ser estructuras de datos, algoritmos o Java, no se detenga solo en la parte teórica, intente implementarlo e investigue un poco sobre el tema enseñado por los profesores.

  • En general ensuciarse las manos! apegarse a lo práctico!
  • ¡Sea curioso sobre los temas!
  • ¡Lee importantes blogs de informática!
  • ¡Actualícese siempre sobre herramientas y tecnologías!

Siempre que aprenda un tema que puede ser estructuras de datos, algoritmos o Java, no se detenga solo en la parte teórica, intente implementarlo e investigue un poco sobre el tema impartido por profesores o cursos en línea.

Roma no se construyó en un día, por lo que dominar el código requiere tiempo, práctica y trabajo inteligente

En mi opinión, primero debe repasar todos sus conceptos básicos de C / C ++, si aún no está seguro de eso. Es necesario porque para comprender el nivel avanzado de las cosas en estos idiomas, primero debes ser bueno en lo básico.

Para lo básico, los libros que le sugeriría que lea son ” déjenos C por yaswant karnetkar y C ++ por sumita arora “.

Además, puede verificar mejor esto:

¿Cuáles son los mejores libros de C ++?

Además, puede comenzar a leer libros sobre estructuras de datos y también sobre algoritmos para convertirse en un programador competitivo. Para aclarar, la estructura de datos le enseña acerca de las diferentes estructuras de almacenamiento donde se pueden almacenar los datos. Por otro lado, el algoritmo le enseña cómo escribir códigos eficientes (espacio y tiempo).

Para estos, puede leer la estructura de datos de “Estructuras de datos por yaswant karnetkar” y para el algoritmo puede consultar “Algoritmos de Cormen”.

Después de leer estos libros básicos, debe leer en “www.geeksforgeeks.org”.

Realmente es muy ossom. Es como la biblia para codificadores.

Además, practique problemas en sitios web en línea como hacckerrank, codechef.

Comience a practicar código en sitios como

  1. Concurso de programación, concurso de programación, programación informática en línea
  2. HackerRank
  3. CodeFights

Esto definitivamente hará que su lógica piense fuerte y también ayudará mucho en su carrera de codificación.

Buena suerte !!!!!

Para desarrollar una mente de construcción lógica, uno necesita comenzar a leer los problemas existentes y sus soluciones, algoritmos, etc.

Vea este enlace para algunos de los punteros:

La respuesta de Nihal Ansari a Como programador, ¿cuál es el lenguaje más útil para saber?

More Interesting

¿Hacer un curso sobre Java beneficiará a un graduado mecánico?

Soy un estudiante de informática y quiero abrir un negocio. ¿Qué tengo que hacer?

¿Cómo sería la seguridad laboral para un analista / programador informático con un título en CS?

Cómo estudiar asignaturas de ciencias de la computación mientras persigue ECE en NSIT mediante el sistema de crédito Choice-Based

¿Cuántos lenguajes de programación debo aprender si quiero ser desarrollador de software?

¿Cuál es el conocimiento previo necesario para un estudiante de ingeniería CS justo antes de ingresar a la universidad?

¿Es imposible para mí seguir alguna carrera en el campo STEM?

¿Puede un graduado de informática convertirse en millonario?

¿Cuánto tiempo le toma a un empleado familiarizarse con una base de código en una empresa de tecnología?

¿Cuál tiene un mejor alcance de colocación en el futuro: informática, ingeniería automotriz o ingeniería civil?

¿Cómo debo aprender la codificación para conseguir un trabajo decente?

¿Qué tan ocupados están los estudiantes de informática?

¿Puedo encontrar un trabajo de programación sin un título de CS? ¿Qué nivel de habilidad de programación necesito para conseguir un trabajo?

Quiero estudiar la informática y reiniciar mi carrera de desarrollo de software a los 31 años, ¿qué debo hacer? Quiero cambiar mi carrera de desarrollador frontend a back-end y desarrollo de aprendizaje automático, ¿cómo debo comenzar?

Soy un estudiante de segundo año de ingeniería informática. Quiero que mi currículum sea fuerte y poderoso. ¿Qué debo hacer para eso? ¿Guiarme para agregar muchos?