¿Qué debería aprender primero sobre programación? ¿Alguna recomendación de libro?

Aprenda para qué sirven / se usan las diferentes categorías de lenguajes de programación. Suponiendo que se refiera a la programación en un lenguaje de programación en lugar de hacer macros con un programa macro, mi consejo sería preguntarse por qué quiere aprender sobre programación para empezar. Una vez que haya respondido eso, puede investigar qué idiomas se usan para el tipo de programación que le interesa. Luego, aprenda cuál es el idioma más comúnmente usado y solo inténtelo O aprenda cuál es el próximo gran idioma en ese ámbito será y se convertirá en un experto para hacerse comercializable para un trabajo.

Nunca he trabajado como programador, pero tengo una maestría en ciencias de la computación y, en el mundo real, te contratan porque tienes habilidades en un idioma o te contratan para aprender un idioma único en el trabajo.

La mayoría de los cursos para principiantes de las universidades son en Java o C, C +, y usted aprende habilidades valiosas al aprender esos idiomas que se pueden aplicar a otros idiomas. Por otro lado, si se convierte en un experto en un tipo de idioma, podría limitar su capacidad de adaptarse a un nuevo idioma cuando se vea obligado a cambiar. Realmente no podría decir si preferiría ser un experto en un idioma o saber cómo aprender cualquier idioma rápidamente después de haber adquirido una formación diversa en diferentes idiomas.

Si está preguntando en relación a hacerse comercializable, el futuro está en los idiomas que se ocupan de Internet de las cosas. Busca sobre esos.

Creo que la mejor manera de comenzar a aprender programación es en el contexto de la informática. Muchos estudiantes en la actualidad comenzarán su camino aprendiendo tecnologías web como HTML y CSS en sitios web como CodeAcademy, que está tan alejado de la programación seria y la informática como sea posible.

Si desea una comprensión realmente sólida del código y la forma en que una computadora lo utiliza, le recomiendo comenzar con lenguajes de programación de bajo nivel (es decir, más difíciles). Estos pueden tener una curva de aprendizaje más pronunciada, pero vale la pena porque aprenderá más sobre informática en general y la mayoría de las cosas que haga más adelante serán fáciles para usted.

Por lo tanto, recomiendo comenzar con el lenguaje de programación C. Es con lo que comienzan los estudiantes de informática en Harvard. Aprender la sintaxis C (estructura del lenguaje) abrirá la puerta a prácticamente cualquier otro lenguaje de programación creado después de 1972 porque C influyó mucho en todos los lenguajes que lo siguieron.

Para aprender C, aquí está el Curso de Introducción a las Ciencias de la Computación de Harvard, que está diseñado para que millones de personas lo tomen en línea viendo sus conferencias de video, haciendo los conjuntos de problemas, etc. Proporciona una enorme cantidad de recursos.

Esta es la forma más difícil de aprender programación, pero también es la forma más gratificante.

Como dice Emad Hanna, el punto más importante es que te guste la codificación. No lo sé y no sé casi nada sobre el tema. Entonces, me sorprendió mucho cuando trabajaba en un laboratorio donde teníamos muchos programadores que siempre podía decir quién había escrito qué programa. ¡Es como leer el cerebro de tus amigos! Fue fascinante. Hasta entonces, creía que uno solo tenía que seguir una serie de reglas y, por lo tanto, todos hacen más o menos lo mismo cuando usan el mismo idioma. Pero la codificación es como pintar: puedes ser un buen pintor o no, pero siempre tienes personalidad.

Comience con un MOOC en Internet, tienen muchos cursos gratuitos en varios niveles.

Simon Allardice, posiblemente el mejor entrenador, especialmente para los video tutoriales en línea, acaba de lanzar el video “What is Programming” en Pluralsight.com. Cubre los conceptos básicos de la programación y le dará una buena base para explorar los temas que las otras respuestas aquí cubren a su pregunta.

Escuchará muchas respuestas diferentes para esta pregunta, pero puedo decirle lo que funcionó para mí.

Hace más de 20 años, mi amigo me mostró que había un programa en mi escritorio de Windows 3.1 llamado QBasic que le permitía construir otros programas. Estaba fascinado e intenté crear todo tipo de programas y juegos por prueba y error y usando el archivo de ayuda. Todo lo que construí en aquel entonces apestaba pero estaba tan enganchado con la idea de programar y tan borracho en mi propia sensación de poder cuando creé estos pequeños universos (programas) que seguí absorbiendo información, aprendiendo y mejorando.

Debido a que aprendí de forma desestructurada, perdí algunos conceptos realmente GRANDES durante años (OO, tipos y estructuras de datos, subprocesos …) pero realmente creo que si hubiera tratado de aprender programación siguiendo un plan de estudios, habría perdido interés hace muchos años y no seguiría codificando hoy.

Lo que estoy tratando de decir es que tienes que estar realmente interesado en ALGO sobre la programación para que te impulse hacia adelante porque si solo estás codificando por aprender a codificar, se volverá aburrido muy rápido.

Vaya a edX y consulte el curso de Introducción a la informática en línea. Te llevarán a varios buenos libros. Encontré 2: un curso es de Harvard y el otro de Harvey Mudd.