Tengo 16 años. Comencé a programar hace aproximadamente un año cuando estaba a punto de comenzar la escuela secundaria. Voy a seguir una carrera en programación, y estoy haciendo todo lo posible para aprender tanto como pueda. Cuando comencé, aprendí los conceptos básicos de C ++ de un libro y comencé a aprender cosas por mí mismo a partir de ahí. Hoy en día tengo mucha más experiencia que hace un año. Sabía que tenía que estudiar solo porque la escuela secundaria (probablemente) no me enseñaría nada valioso sobre programación, y quiero estar preparado.
La pregunta aquí es: ¿qué tan importante es estudiar la programación por uno mismo?
learning
self-improvement
Bugster
fuente
fuente
Respuestas:
Es critico. No creo haber conocido a un buen programador que no haya sido autodidacta en algún nivel. Como gerente de contratación en una gran empresa, puedo decir que un candidato que describe proyectos personales y un deseo de aprender superará a uno con un grado impresionante cada vez. (Aunque es mejor tener ambos).
Esto es lo que pasa con la universidad: los cursos de Ciencias de la Computación enseñan teoría, no tecnología. Le enseñarán la diferencia entre una tabla hash y un árbol B, y los conceptos básicos de cómo funciona un sistema operativo. Generalmente no le enseñarán lenguajes de computadora, sistemas operativos u otras tecnologías más allá de un nivel superficial.
Recuerdo en las brumas del tiempo cuando tomé mi primera clase de estructuras de datos y obtuvimos un pequeño manual para este nuevo lenguaje llamado "C ++" que habían decidido comenzar a aprender. Tuvimos dos semanas para recogerlo lo suficiente como para escribir código. Esa fue una buena lección en sí misma. Así será tu carrera.
Es probable que tu escuela no te enseñe lo que necesitas para conseguir un buen trabajo. Las escuelas a menudo siguen lo que está de moda en la industria por muchos años. Entonces conseguirás un trabajo. Cualquier compañía a la que vaya seguramente no gastará ningún esfuerzo particular en capacitarlo. Las malas compañías son demasiado baratas y, francamente, las buenas compañías solo contratarán a personas lo suficientemente inteligentes como para recogerlas a medida que avanzan.
Me gradué de la universidad en 1987. Fui a trabajar como programador en C con experiencia en programas de DOS, NetBIOS y "Terminar y permanecer residente". En los años posteriores, he tenido poco o ningún entrenamiento real. Mire los anuncios de trabajo ... ¡no hay mucha necesidad de esas habilidades! La única razón por la que puedo trabajar hoy es porque he pasado los años intermedios aprendiendo constantemente. Para tener éxito como ingeniero, debes tener el hábito de aprender. Demonios, iría más allá de eso: tienes que amar el aprendizaje. Debes ser el tipo de persona que juega con WebGL o Android o iOS porque se ve divertido. Si eres ese tipo de persona y mantienes el hábito de aprender, llegarás lejos en la industria.
fuente
La autoaprendizaje es muy importante. No puede confiar en una educación formal para enseñarle todo lo que necesita saber sobre su campo. Sin embargo, dicho esto, una educación formal también es muy importante si desea ingresar a ese campo profesional bien preparado y bien equipado.
Estoy en camino a la universidad y he pasado los últimos cuatro años enseñándome a mí mismo en desarrollo de software, como resultado ahora trabajo para una empresa grande y conocida que mantiene aplicaciones empresariales. No requiere mucho talento, pero sí mucho trabajo y motivación. Creo que la literatura y la práctica son tu mejor apuesta cuando se trata de aprender. También es importante elegir un campo específico, ya que, aunque puede transportar idiomas y lógica en todos los campos, solo puede llegar a ser realmente "excelente" si se tiene suficiente práctica y comprensión en un campo específico.
fuente
Aprender solo es muy importante. Tener la disciplina para investigar y reunir los conocimientos necesarios para realizar una tarea lo colocará muy por delante de muchos otros que dependen de la capacitación formal para realizar la misma tarea. Esto se aplica a cualquier industria, no solo a la industria del software.
No me malinterpreten, recibir alguna capacitación o educación formal es útil, pero su propia motivación para mejorar sus habilidades lo ayudará a convertirse en un mejor desarrollador de software. Siempre hay algo que aprender: nuevas plataformas o lenguajes de programación para experimentar, metodologías de desarrollo para implementar, herramientas y algoritmos para usar, la lista continúa. No todo se le presentará a través de una capacitación formal, por lo que depende de usted aprender sobre otros temas e ideas que le puedan interesar y que lo ayuden a lo largo de su carrera en la programación.
fuente
En programación, la autodidacta es lo que harás todos los días. Tendrás que aprender muchas cosas, no solo lenguajes de computadora y herramientas que siguen cambiando. Tendrá que aprender el código que escribieron otras personas y también deberá corregirlo con un mínimo de instrucción y supervisión. Es raro en algunas organizaciones recibir capacitación real más de 1 vez al año (¡si es que lo hace!). Asegúrese de que puede hacer (y disfrutar) esto, de lo contrario, considere una carrera diferente cuando aún es joven.
fuente
La autoinstrucción es una habilidad indispensable para un programador. Demasiados no lo hacen. Si eres bueno, usarás esta habilidad para el resto de tu carrera.
fuente
El autoaprendizaje es muy importante porque no siempre tendrá oportunidades de capacitación formal. Cuando comience a buscar un proyecto, una pasantía o un trabajo, encuentre uno que tenga desarrolladores senior sólidos que realmente puedan enseñarle algo. Estar en un entorno que hace las cosas bien puede ser la ruta rápida al código de calidad.
fuente
Puedo decirle que he trabajado en varios lugares donde ni siquiera considerarían a alguien que no tuviera sus propios proyectos fuera del trabajo. Muestra amor por la programación más allá de simplemente presentarse a un trabajo y cobrar un cheque. Voy a arriesgarme aquí y decir esto: todos los programadores que no aman programar apestan en su trabajo. Peor aún, no tienen nada que agregar a ningún equipo al que puedan unirse.
Tomaría un desarrollador junior inexperto que ama tanto lo que hace que juega con el código en su tiempo libre sobre tres desarrolladores de nivel medio que solo están siguiendo las mociones: ese desarrollador junior será genial algún día, y los demás lo harán. Nunca seas mejor de lo que son.
Si no estás aprendiendo cosas nuevas, simplemente estás sentado olvidando lo que sabes.
fuente
El talento está sobrevalorado.
Se necesitan al menos 10 años de práctica antes de que uno pueda llegar a ser excelente en un área determinada. Por eso es importante comenzar temprano.
El hecho de que comenzaste en una etapa temprana de tu vida haciendo algo que pareces que te gusta ya te pone por delante de la manada. Entonces, a menos que tenga dudas sobre el área en la que trabajará, no se detenga ... ¡nunca se detenga!
Considero que el autoaprendizaje es una de las mejores habilidades de cualquier desarrollador y el segundo es un título universitario. Un buen título universitario es importante solo porque agrega tanta calidad a su conocimiento que probablemente no podría obtener por sí mismo. Ciertamente hay excepciones a esta regla, pero eso es todo lo que son; excepciones
Además, cuanta más experiencia acumule temprano, mejor disfrutará de la universidad y mejor absorberá los nuevos conceptos que se le presenten. Al principio, lo encontrará todo tan fácil e inútil, pero muy rápidamente se sentirá desafiado y ansioso por aprender más.
Después de salir de la universidad, nunca dejes de aprender, ya que será una de tus mejores características. Recomiendo leer 'El talento está sobrevalorado'. Puedes echar un vistazo a este artículo rápido sobre ese libro:
http://www.devlounge.net/strategy/the-talent-myth
fuente
En comparación con casi cualquier otro campo que se me ocurre, la programación es básicamente todo acerca de la auto-educación. La educación formal en ciencias de la computación / ingeniería de software es útil, pero no es realmente donde aprende a codificar.
Lo que realmente debe hacer es comenzar a trabajar en proyectos: cree algo que quiera que exista. Y luego únete a un proyecto de código abierto para trabajar en algo que quieres ser aún mejor. El aprendizaje viene gratis entonces ...
fuente
Necesita aprender cosas nuevas usted mismo: vaya a donde lo lleve su curiosidad.
Obtenga también una educación formal: el 90% de lo que se le enseña en una educación formal no se utilizará en el lugar de trabajo. Pero el 10% que se usa será algo extraño y oscuro que pensaste en ese momento nunca sería de ninguna utilidad.
Sin la educación formal, sufre el problema mejor descrito como "no sabe lo que no sabe". La educación formal le brinda una amplia cobertura de muchas cosas con el pleno conocimiento de que nadie saldrá y lo usará todo. Debido a que lo que usará es algo que no sabrá hasta que lo necesite, se trata de estar preparado para que sepa dónde buscar.
Lo que se basa en el autoaprendizaje / curiosidad es lo que te convierte en una persona mucho más informada y completa. Sin mencionar más valioso para un empleador.
Nota al margen: He pasado toda mi carrera, desde que comencé la programación a los 15 años (sheesh, más de 25 años ... más cerca de 30 años) descubriendo que, aparte de mi educación universitaria, la mayoría de los cursos de capacitación (ya sabes ... aprende BLAH en 3 días a tiempo completo) son bastante inútiles. En general, son superficiales y, en lo que respecta al tan esperado mantra de "mantener sus habilidades", no es muy útil para alguien que necesita entrar en detalles técnicos profundos. Comprar libros, usar Internet, profundizar en las matemáticas / física / arquitectura / lo que sea que me haya hecho útil y valioso. En una etapa, yo era una de las aproximadamente 10 personas en el mundo con experiencia específica en un tema en particular; todo ese conocimiento se obtuvo mediante la autoaprendizaje y el aprendizaje en el trabajo.
El único momento para dejar de aprender es cuando tienes 6 pies debajo de una caja de pino.
fuente
Hay una buena parábola al respecto:
Por lo tanto, debe estudiar todo el tiempo para mantener su hacha afilada .
fuente
Es crucial, de lo contrario te quedarás atrás
Aprendo todos los días, en el trabajo, aquí, leyendo libros, haciendo y respondiendo preguntas. Cuanto más aprendo, más entiendo lo poco que sé.
fuente
La autoaprendizaje es muy importante por dos razones:
Como mantener el código heredado es esencial, también necesitará escribir el código mantenible usted mismo, y esto rara vez se enseña con lecciones formales (consulte ¿Cómo mejorar la capacitación de los estudiantes con respecto a la mantenibilidad?) Si no practica la autoaprendizaje y lee mucho durante sus estudios, es poco probable que adquiera las habilidades necesarias que lo harán un mejor desarrollador que el promedio.
No intentes aprender muchos idiomas / tecnologías durante tus estudios, pero aprende buenas prácticas y codificación limpia. Por ejemplo, será mejor que lea el "Código limpio" de Robert C. Martin que la "Referencia completa de Java" de Herbert Schildt durante sus estudios.
fuente
La autoaprendizaje es muy importante ya que internalizas los conceptos a tu manera y eso realmente ayuda. Elegir un idioma para autoaprendirte es muy importante. Los idiomas que tienen una documentación clara son muy importantes y lo que no quieres ser es muy ambicioso en querer aprender demasiados idiomas populares demasiado rápido. Dado que dice que comenzó con c ++, recomendaría Java para usted, siempre funciona muy bien para programadores autodidactas.
fuente
Probablemente aprendí más del 95% de lo que sé relacionado con la programación al probar cosas por mi cuenta y aprender cómo funciona. La escuela puede ayudar a enseñar un buen estilo de programación y optimizar el código para la velocidad, etc., pero nunca se convertirá en un "buen" programador simplemente leyendo un libro de texto. Una excelente manera de desarrollar habilidades de programación es encontrar problemas cotidianos que podría usar una computadora para resolver, y tratar de escribir un código para hacerlo. Quedarse atascado es parte del aprendizaje. Empecé queriendo ser un desarrollador web, por lo que hacía sitios web ficticios con bastante frecuencia (sin alojarlos ni nada por supuesto) para probar cosas nuevas que quería probar. ¡Funcionó bastante bien para mí!
fuente
Empecé a programar hace 2 años. Mi escuela no podía enseñar bien los idiomas, y tengo que conectarme en línea e investigar mucho sobre mí. Soy un aprendiz más lento y, por lo tanto, me tomó 2 años escribir mi primer programa, mientras que todos mis compañeros de la escuela todavía tienen dificultades o han dejado de programar.
Esto muestra que es mejor que un programador sea autodidacta en lugar de depender de la escuela. La escuela siempre ocultará información, ya que piensan que no estamos preparados para ello.
fuente
Como siempre en matemáticas y ciencias de la computación, hay 2 puntos de vista: 1. Necesarios y 2. Condiciones suficientes
fuente