Leyendo el hilo la contribución de JoaquinFerrero me parece a mi personalmente aquella mas cercana a la realidad.
Cuando trato de charlar con los miembros de mi familia sobre este tipo de temas me ecuentro con que realmente no tienen ni la noción mas vaga del tema. El problema está en comprender los elementos con los cuales se quieren alcanzar objetivos.
Si es exclusivamente el tema de la programación, entonces mas vale confrontarse con el tema donde los factores que influencian la actividad son mínimas pero que sirven para familiarizarse con el tema de la programación. Lo mas senscillo es usar un lenguaje interpretado y que se puede ejecutar en el mismo PC. Cual lenguaje usar es cuestión de gustos. Si dentro de los objetivos que se tienen está el programar de microcontroladores, entonces vale escoger uno bien capaz de programar controladores en un futuro. Repito, es cuestión de gustos, pero el lenguaje Python, que ya es parte de Windows y que es un interpretador, no hay que saber las cosas sobre compiladores y su configuración, no hay que poner un programa escrito en un controlador. Aquí un enlace a un libro en pdf y en Español, el dr. Chuck es un profesor excelente y sus libros son legalmente gratis. Lo mas sencillo con que se comprueba que la configuración del entorno, sea cual sea y sea para lo que sea es el famoso "Hola mundo!"
De allí un novato puede familiarizarse con que esta tratando cuando de programación se trata.
La otra parte con la que un novato tiene, a mi opinión personal, que familiarizarse es que es un controlador y que son los aspectos que diferencian uno de otro. Aquí exclusivamente me refierte al tema de usar controladores del tipo PIC. Un controlador es como el motor de cualquier tipo de maquina o coche. Los controladores de PIC existen de muchos tipos, pero quedemosnos en uno, tomemos el 16f84 mencionado por el iniciador del hilo. Cito de Wikipedia:
El PIC16F84 es un microcontrolador a 8 bits de la familia PIC perteneciente a la Gama Media Microchip.
El motor del controlador en este caso es uno de tal 8 bits. Existen controladores de 16 bits, de 32 bits y de 64 bits. Eso nos dice que el controlador contiene nun "motor" de 8 bits, o sea uno pequeño.
La biblia cuando de programar un controlador es su hoja de datos.
Aquí el enlace a la hoja de datos!
Acabo de mencionar que el motor del controlador es de 8 bits. Como decía arriba lo que diferencia variantes del mismo tipo son las funcionalidades adicionales que un controlador tiene.
Aquí una tabla sacadaa de la hoja de datos! el PIC16F84 es un miembro de la familia de controladores P;NIC16F84. De esta tabla podemos sacar que el PIC16F64 contiene memoria no volatol, llamada Flash de 1024 direcciones en las que se graba el programa. Que tiene 64 bytes, unidad de 8 bits, donde tu programa puede poner variables, parametros que van cambiando su valor. Tiene un reloj, el TMR0 que se puede conectar con 4 señales externas o del programa, el número de patitas es de 13 mas otras para su alimentación. Que permite ser alimentado con tensiones entre 2.0 y 6.0 voltios. eso significa que puede operarse en entornos de 3.3 VDC y 5.0 VDC.
Así el reto cuando quieres usar un controlador es diseñar un circuito para lograr los objetivos, o usar una placa con el controlador, donde ya las patitas vienen conectadas a otras funciones.
El reto para un novato es el aprender a pensar en combinar tus objetivos con las funcionalidades del controlador. Este tipo de placas se encuentra y se usa en lo que se llama "sistemas embebidos". Es el nombre de toda una gama de placas que permiten realizar los mas diversos objetivos.
En suma, el motor es de 8 bits, es de la familia de los PICF8X y según el modelo escogido tiene las funcionalidades explicadas extensamente en la hoja de datos.