Antes de aprender a programar

Si quieres aprender a programar, lo más adecuado es dividir la tarea en dos partes (diseño e implementación) y comenzar por el diseño. Un diseño cuidadoso nos ahorrará muchos disgustos a la hora de programar.

Por algún motivo que desconozco al enseñar a programar generalmente sólo se enseña a picar código, y esto no es suficiente para desarrollar aplicaciones para resolver problemas complejos.

Se dice que se comete un error cada tres líneas de código de media, por eso hace falta realmente una manera de programar con menos errores para que programar no sea casi sinónimo de meter la pata. La programación siguiendo los pasos que recomiendo aquí será mucho más correcta que la que resultaría de picar código sin más.

De hecho, el lenguaje de programación es irrelevante hasta que comienza la implementación, en nuestro caso usaremos C, C++, Java, Prolog, Python, PHP y shell indistintamente.

  • Diseñar la aplicación
    • Imaginarla (herramientas: nuestra mente)
    • Describirla sobre el papel con diagramas (herramientas: umbrello)
    • Definirla mediante pseudocódigo (herramientas: editor de textos sencillo o incluso papel)
  • Implementar el diseño (picar código)
    • Elegir un lenguaje de programación y unas librerías (herramientas: qt creator)
    • Depurar la aplicación en busca de fallos

Para programar bien es necesario leer código ajeno, de esta forma aprendemos de los demás y nos entrenamos para integrar nuestro software en librerías proporcionadas por terceros. Una rutina adecuada podría ser:

  1. Leer e interpretar código ajeno
  2. Escribir nuestro propio código

Especialidades

Existen al menos dos especialidades globales para programar, en función de dónde se ejecuta el código, si en un servidor o en nuestra propia máquina.

  • Web
  • Multiplataforma

Recursos adicionales

Bibliografía

Anuncios

No huyáis, somos vuestros amigos

Con esta frase sacada de Mars Attacks, quiero ilustrar un problema de mucha actualidad: la posibilidad de que una inteligencia artificial dañe advertida o inadvertidamente a humanos. Si el ámbito de una IA es algo concreto, como conducir un coche o reconocer rostros, igual podemos fiarnos, al fin y al cabo, en el segundo caso el daño que puede causar es muy limitado y en el primero, se puede controlar con facilidad que el coche se dirija hacia una posición segura. Pero hay muchos casos en los que esto no es posible, ya que la IA es de propósito más general y las decisiones tomadas son más complejas. Yo voy a intentar implementar las leyes de la robótica de Asimov en una IA de propósito general y probarla en un entorno seguro a ver cómo funciona.

Avances en salud mental

Hasta hace bien poco, yo opinaba como la mayoría, que los psicofármacos suponían un punto de inflexión en los tratamientos, al igual que la psicoeducación familiar. Ahora mismo, me he dado cuenta gracias a un libro que plantea un punto de vista radicalmente diferente, Una nueva Antipsiquiatría, de Carlos Pérez Soto (2012), LOM Ediciones, de que este enfoque es totalmente erróneo. Lo que ha ocurrido es que se han reducido los internamientos, que cuestan caro al erario público, y se ha extendido el malestar de la enfermedad a toda la vida del paciente, convirtiéndolo en un discapacitado durante el resto de su existencia.

El optimismo del primer momento se desvanece tan rápido como comprendemos el pragmatismo de las decisiones tomadas al amparo de la filosofía del máximo ahorro. En efecto, la familia, ya de por sí tocada, se convierte en el ente mantenedor del nuevo discapacitado, esa persona convertida en inútil por la medicación que toma obligatoriamente día tras día, en un intento dudosamente victorioso de evitar males mayores.

Para quienes opinen que la medicación es la panacea, recordar sus innumerables secundarios y su relativamente escasa eficacia incluso frente a los problemas más comunes de la psiquiatría.

Este es un campo en el que la crítica y la disidencia ya brillan por su ausencia.

Las alternativas existen, pero sólo los países más avanzados cuentan con instalaciones para el tratamiento de enfermedades mentales sin fármacos, mediante terapia y vida sana, entre otros.