Soy un estudiante de ingeniería informática en mi primer semestre. Me apasiona la programación de computadoras. ¿Qué debo hacer para convertirme en un profesional?

Primero te recomendaré la técnica de este chico para aprender cosas

Thomas Frank

y la segunda cosa como eres uso indio

NPTEL Este sitio proporciona casi todos los cursos de campo del maestro de IITian y también puede solicitar un examen (realmente vale la pena): son lentos y muy detallados.

Aquí hay algunos cursos altamente recomendados por Google (tal vez para pasantías) para desarrollo técnico

No le estoy diciendo que complete todos los cursos mencionados a continuación, estos son solo como apoyo para su curso universitario (que está bastante desactualizado, supongo), por lo que le sugiero que intente completar cursos que no están cubiertos en su colegio / universidad.

Tome un curso de “Introducción a CS”

Concéntrese en las instrucciones básicas de codificación.

Recursos en línea:

Yo personalmente recomiendo aprender lenguajes de programación usando archivos PDF con el nombre “Aprenda el lenguaje X de la manera difícil” porque aprenderá la mayor parte usando el compilador predeterminado y todo por su cuenta con la práctica, que es la mejor manera de aprender cualquier idioma y simplemente usar sitios para encontrar el programa práctica.

por ejemplo, aprender Python The Hard Way 3rd Edition.pdf

Aprenda a codificar (al menos) un lenguaje de programación orientado a objetos (C ++, Java®, Python®)

Recursos en línea para programadores principiantes:

  • Programación Java: una introducción al software, Duke University, Coursera
  • Aprender a programar: los fundamentos, Universidad de Toronto, Coursera
  • Introducción a la programación en Java, MIT
  • Clase Python de Google
  • Introducción a la programación interactiva en Python, Rice University, Coursera

Recursos en línea para programadores más experimentados:

  • Programación Java: estructuras de datos y más allá, Universidad de California en San Diego, especialización en Coursera
  • Diseño de programas informáticos, Udacity
  • Aprenda a programar: Elaboración del Código de Calidad, Universidad de Toronto, Coursera
  • Introducción a los lenguajes de programación, Brown University

Aprenda el uso de lenguajes y cosas como JavaScript, CSS, HTML, Ruby, PHP, C, Perl, Shell, etc., estos no están en orden y puede usar Aprender para codificarlos.

Practica tus habilidades aquí

Aprenda a detectar errores, crear pruebas y romper su software.

Recursos en línea:

  • Pruebas de software, Udacity
  • Depuración de software, Udacity

Desarrollar razonamiento lógico y conocimiento de matemáticas discretas.

Recursos en línea:

  • Matemáticas para Informática, MIT
  • Introducción al pensamiento matemático, Stanford, Coursera
  • Modelos gráficos probabilísticos, Stanford, Coursera
  • Game Theory, Stanford y University of British Columbia, Coursera

Desarrollar una sólida comprensión de algoritmos y estructuras de datos.

Aprenda sobre los tipos de datos fundamentales (pila, colas y bolsas), algoritmos de clasificación (clasificación rápida, combinación, clasificación), estructuras de datos (árboles de búsqueda binarios, árboles rojo-negros, tablas hash) y Big O.

Recursos en línea:

  • Introducción a los algoritmos, MIT
  • Algoritmos Parte 1 y Algoritmos Parte 2, Princeton, Coursera
  • Lista de algoritmos, Wikipedia
  • Lista de estructuras de datos Wikipedia
  • Libro: Manual de diseño del algoritmo, Steven S. Skiena

Desarrollar un sólido conocimiento de los sistemas operativos.

Recursos en línea:

Computer Science 162, UC Berkeley, YouTube

Aprende el desarrollo de Android

Recursos en línea:

  • Google Developer Training para Android, en Udacity

Aprender desarrollo web

Recursos en línea:

  • Google Developer Training for Web, en Udacity

Aprende otras habilidades de desarrollador

Recursos en línea:

  • Sitio de capacitación para desarrolladores de Google

Aprende criptografía

Recursos en línea:

  • Criptografía, Stanford, Coursera
  • Criptografía Aplicada, Udacity

Trabajar en proyectos fuera del aula.

Cree y mantenga un sitio web, cree su propio servidor o cree un robot.

Recursos en línea:

  • Proyecto Capstone: Análisis de datos de redes (sociales): desplácese hacia abajo hasta la parte inferior de la página, UCSD, Coursera
  • Proyecto Capstone: Programación Java: una versión de bricolaje de Netflix y motores de recomendación de Amazon, Duke University, Coursera
  • Directorio de proyectos, Apache
  • Archivo de proyectos de Google Summer of Code

Trabaje en una pequeña parte de un sistema grande (base de código), lea y comprenda el código existente, rastree la documentación y depure

GitHub es una excelente manera de leer el código de otras personas o contribuir a un proyecto.

Recursos en línea:

  • GitHub®
  • Kiln ™

Practica tus conocimientos algorítmicos y habilidades de codificación

Practique su conocimiento algorítmico a través de competencias de codificación como CodeJam o el Concurso Internacional de Programación Colegiada de ACM.

Recursos en línea:

  • CodeJam
  • ACM ICPC

Adquirir experiencia en prácticas en ingeniería de software

Encuentre las pasantías de Google en Ingeniería y Tecnología en nuestro sitio de Estudiantes.

Recurso en línea para prepararse para la entrevista para puestos de ingeniería de software, incluso para pasantías:

  • Dominando la Entrevista de Ingeniería de Software, UCSD, Coursera

(Lo siento, pero el crédito total va a Google. Sé que es malo copiar todo, pero también soy un estudiante de primer año que recibe ayuda con estos cursos)

Fuente: Estudiantes – Guía de desarrollo técnico – Carreras de Google

Espero que estos cursos te ayuden y esas pequeñas sugerencias de mí 🙂

Ese es el espíritu. Lo primero es que la mayoría de los estudiantes pierden la motivación fácilmente después de ingresar a una universidad, ya que la mayoría de las universidades que no son las mejores son aburridas y te enseñan cosas interesantes de manera poco interesante. Y la ausencia de la comunidad, la plataforma y el grupo de estudiantes afines y motivados hace que pierdas el entusiasmo y trabajes en contra de tu pasión.

Inicialmente, acepte el hecho de que no ingresó al MIT ni a ninguna otra universidad de su elección y asegúrese de nunca quejarse de su universidad actual. Haz las paces con eso. Aceptar el hecho. Tienes que superarlo, de lo contrario se convertirá en un obstáculo en tu camino hacia el éxito. Siempre recuerda que al final, la universidad no importa. Es la persona que realmente importa.

Ahora con respecto a los recursos académicos, nunca confíes en tu universidad para aprender cosas. Ve más allá del plan de estudios universitario. No está estudiando en el MIT, pero tiene acceso completo a la mayoría de los cursos abiertos en Materiales de cursos gratuitos en línea y puede obtener su experiencia en el aula. También hay muchos libros de MIT Media Press y puedes comprarlos o estudiarlos en línea en cualquier momento.

Y hay toneladas de MOOC con respecto a la programación de computadoras y las estructuras de datos y algoritmos, y debe comenzar con ellos desde el primer semestre.

No mire a sus compañeros lo que están haciendo y formule su propio conjunto de objetivos y horarios y comience a trabajar en ellos.

PD: te recomendaría el siguiente conjunto de MOOC y definitivamente deberías probar cualquiera de ellos,

Álgebra Lineal por MIT OCW

Introducción a los algoritmos por MIT OCW

Algoritmo de Stanford Parte 1 y Parte 2

Programación de Python Parte 1 por la Universidad de Rice

Criptografía Parte 1 por Dan Boneh, Stanford

Aprendizaje automático por Andrew Ng, Stanford

¡Espero eso ayude!

Actualmente estoy haciendo mi tercer año, BE en Biotecnología, aunque estoy en un campo de ingeniería bio relacionado. Tuve que aprender programación y comencé con C, luego me interesé en el desarrollo web, aprendí HTML, CSS, jquery, js y bootstrap.

También aprendí programación en perla.

Hay un dicho popular que dice ” Cada experto fue una vez un principiante “.

Lo primero que necesita tener antes de aprender un lenguaje de programación es interés en él.

Simplemente sienta que está aprendiendo un nuevo idioma como el griego o el latín, un idioma que debe ser bueno en gramática. Al mismo tiempo que aprende lenguajes de programación, debe conocer bien la sintaxis, las funciones y los tipos de datos.

C es el primer lenguaje de programación básico que se debe aprender. Primero, debe comenzar a leer sobre computadoras, ciencias y principios detrás de la programación. una vez que tenga una percepción clara sobre la programación, intente comprender las funciones de programación leyendo libros como programación con C, ANSI C de balaguruswamy, Déjenos C o cualquier otro buen libro de su elección.

Luego, comience a programar desde el simple programa hello world. Otra mejor manera de aprender programación es viendo tutoriales en YouTube, hay muchos buenos tutoriales que enseñan la programación desde cero.

Recuerde, no tiene sentido escribir y practicar el programa en papel, no debe asaltar un programa simplemente sin entenderlo. entonces sería un desperdicio. Debe diseñar y construir su propio código o programa para la tarea que se le ha asignado. solo tiene que entender el código. Practique solo en PC o computadora portátil, no escriba y practique.

Para eso necesita tener un IDE (entorno de desarrollo integrado) que es un software, no use Turbo C para programar. está desactualizado. Busque algunos IDE de alta gama como CODEBLOCKS, Visual studio, Eclipse IDE, etc. Puede descargarlo y usarlo de forma gratuita. Comience a escribir programas, ejecute, depure y disfrute de la programación.

Voto a favor.

Sugiero el siguiente plan

  1. Introducción a la informática. Mira todas las conferencias y lo más importante, completa todas las tareas.
  2. Haz un curso de Algoritmos, Curso de Introducción a los Algoritmos en línea o el ofrecido por Princeton en Coursera.
  3. Dirígete a Problemas | LeetCode OJ y resuelve problemas.
  4. Proyectos personales. Piensa en lo que te emociona y hazlo.

Te conviertes en un profesional en algo, cualquier cosa, pero haciendo mucho de eso. Quiere ser un profesional de la música, luego toque mucha música. Quiere ser un corredor de maratón profesional, luego corra mucho hacia esa meta.

Lo mismo con la programación. ¿Quieres ser un profesional en programación? Luego programe mucho. Programa por diversión, programa como ejercicio. Haz ejercicios de codificación. Solo codigo. Escribe aplicaciones móviles. Escribe aplicaciones web. Solo codifique y estudie, y cuando comience a trabajar como programador, codifique un poco más y estudie.

Nunca dejes de programar y nunca dejes de estudiar sobre software y programación. No sé si tengo derecho a llamarme profesional, pero esta fórmula me ha funcionado bien durante los últimos 21 años trabajando como programador / software.

Si desea convertirse en un codificador de nivel profesional, simplemente comience a codificar. Elija cualquier sitio de codificación como Competencia de programación, Concurso de programación, Programación en línea, Codeforces, Esfera Juez en línea (SPOJ) y comience desde el principio a comenzar a resolver preguntas. Hay un sitio A2 Online Judge en el que las preguntas se agrupan de acuerdo con los niveles, así que simplemente comience a resolverlas. Una vez que alcances el nivel 5, te convertirás en un profesional.

La mejor manera de aprender a codificar es escribir más código.
Cree una cuenta de Github y consulte algunos códigos en el idioma que le interese.
También puede buscar en Google “Asignaciones de programación” e intentar resolver algunas asignaciones de universidades conocidas como Stanford, etc.
Después de eso, puede consultar sitios como topcoder, donde puede participar en un concurso y mejorar sus habilidades. Puede verificar la solución final y aprender de ella.
De esta manera puedes mejorar la programación todos los días.

Aproveche los cursos gratuitos en línea de lugares como MIT. Por ejemplo, este curso en PYTHON http://curiousreef.com/class/mit
Sin embargo, para volverse competente solo necesita comenzar y practicar con la suficiente frecuencia hasta que sea un maestro.

@ Un proceso paso a paso para enseñar cualquier cosa (en una fracción del tiempo)

El escritor de este blog es Scott H Young. Este chico completó el plan de estudios de 4 años de CS en MIT en 1 año. La mayor parte fue realizada por las conferencias del opencourseware donde en realidad están presentes muchas conferencias de buenos maestros. También puso una actualización de video semana a semana en su canal de youtube. Espero que te beneficie 🙂

Primero construya su programación básica con lenguaje C, luego vaya a C ++. Luego puede pasar a Java, .Net, Python, Androi, iOS o lo que quiera según la acumulación de intereses hasta ese nivel.

Tome CS50 primero.

CS50 Lectures 2015: CS50 Lectures 2015

edX. Ahí tienes amigo.