La Inteligencia Artificial como último legado del ser humano

En este artículo divago, sin pretensión, sobre diferentes temas que me han interesado a lo largo de la vida: la finitud de la misma (tanto la individual como la del conjunto de los seres de este planeta), las distancias insalvables del espacio y su hostilidad a la vida, el sentido de esta… y la informática. Desde luego, el ser humano es algo más que inteligencia, así como para la vida la inteligencia es sólo una herramienta más, como las garras y los dientes o la capacidad de ver de noche, pero a largo plazo, tal vez sea lo único que podamos hacer perdurar.

El planeta tierra no podrá sustentar indefinidamente la vida, especialmente las formas de vida más complejas, como la nuestra, que son también las más delicadas: tenemos mucha menos resistencia que, por ejemplo, las cucarachas, y estás a su vez se quedan cortas frente a determinadas bacterias y virus, algunos capaces de permanecer latentes durante siglos antes de volver a despertar. Ahora mismo, nuestra civilización se enfrenta a dos grandes problemas:

Sigue leyendo

Cuando las matemáticas se explican mal

En la EGB nos podrían haber explicado mejor las matemáticas, me di cuenta de esto años después, en Bachillerato, y a las malas. Si no es tu caso, me alegro por ti; en el nuestro tuvimos profesores que no tenían claro lo que explicaban, no se trataba de saber mucho (es sólo la EGB) sino de tenerlo muy claro. En mi opinión, en matemáticas es preferible avanzar poco pero con firmeza a avanzar mucho sin solidificar las bases, lo que conduce más pronto que tarde al desmoronamiento de lo que creíamos saber.

A continuación, expondré cómo me parece que hubiera sido mejor que explicaran algunos aspectos. Si eres profesor, espero que te pueda servir mi opinión (puedes dejarme la tuya en los comentarios); si eres alumno de la educación obligatoria, tal vez esto puedo ayudarte a clarificar algunos conceptos.

Los miembros de una ecuación no «pasan» al otro lado

Recuerdo que el profesor usaba expresiones como:

  • x pasa a dividir (o a multiplicar) al otro lado.
  • Tal número pasa a restar (o a sumar) al otro lado.

Como ejemplo de los errores a los que puede conducir pensar así, veamos la ecuación de la división entera, donde D es el dividendo, d el divisor, q el cociente y r, r≥0, el residuo:

D = d*q + r

Si pensamos que D «pasa a dividir al otro lado», como el lado izquierdo de la igualdad queda vacío, podemos creer que esto es correcto:

0 = (d*q + r) / D

Si nos hubieran enseñado que, como ambos lados de la ecuación son iguales, la igualdad se mantendrá si operamos igual en ambos lados, pensaremos que vamos a dividir a ambos lados por D, con lo que llegaremos a una igualdad correcta:

D/D = (d*q + r) / D  → 1 = (d*q + r) / D

Segmentar la resolución de una ecuación

Otra zancadilla en nuestro aprendizaje nos la daba un profesor que usaba el punto y coma «;» para separar cada paso que ejecutaba para resolver la ecuación. Arrastré la coletilla hasta que en el Bachillerato, un compañero me preguntó por qué usaba un punto y coma en vez del signo igual. Tal vez sería más pedagógico usar el símbolo «implica que»:

x2 -9 = 0 ; x2 = 9 ; x = √3; x = ±3

x2 -9 = 0 ⇒ x2 = 9 ⇒ x = √3 ⇒ x = ±3

Lo que implica la igualdad

Deberían habernos dejado bien claro, incluso diría que machacado, que el hecho de que los dos lados de la ecuación sean iguales implica que seguirán siéndolo si se realiza la misma operación en ambos lados: elevar al cuadrado, al cubo, raíz cuadrada a ambos lados, etc. Cuando llega el momento, no está de más explicar que operaciones como las raíces pueden tener la limitación x ≥ 0 cuando operamos ecuaciones que las contienen, por ejemplo:

Estas condiciones son frecuentes en matemáticas: aparecen en los logaritmos y, pasada la educación obligatoria, vuelven a aparecer en el cálculo de límites, en las integrales, etc.

Potencia con exponente

En matemáticas se tiende a obviar los paréntesis que no son imprescindibles, esto nos puede inducir a creer que la siguiente igualdad es cierta, cuando no lo es:

En este caso, por la prioridad de los operadores, primero debe calcularse 34, 81, para finalmente operar 281. En cambio, mediante los paréntesis podemos indicar que la base no es 2 sino 23, es decir, la potencia de una potencia:

potencia correcta

Simplificaciones incorrectas

En el trabajo de una expresión matemática nunca puede irse en «piloto automático» sino que hay que tener muy claro en cada paso lo que se está haciendo. Esto es fundamental en el aprendizaje de las matemáticas.

Consecuencia del ejemplo anterior con la raíz, la siguiente simplificación, en algunas circunstancias, es falsa:

√x² ≠ x

La correcta es:

√x²= |x|

Cuando nos dan la fórmula de la ecuación de segundo grado, aparece el ± acompañando la raíz del radicando. Pues bien, cuando unas clases más adelante se explica que un elemento al cuadrado dentro de una raíz se simplifica, se debería dejar muy claro que, por convención, √x hace referencia a la solución positiva, mientras que -√x se refiere a la negativa. Por ejemplo:

√9 = 3

-√9 = -3

En el caso del cuadrado dentro de la raíz, sería:

√3² = 3

No obstante, en el caso de la raíz positiva, se produce una ambigüedad que se solventa mediante el empleo del valor absoluto. Esta ambigüedad surge porque se obtienen resultados diferentes dependiendo de si se elimina primero la raíz o se calcula primero la potencia:

Gracias al valor absoluto, se aclara que sólo se hace referencia la solución positiva, √ en vez de -√. Como anécdota, decir que obviar esto conduce a una demostración según la cual 2 + 2 = 5.

Esta otra trampa de simplificación es algo más sutil, partiendo del hecho que:

no ignorar raízEs decir, el resultado no es x³, podemos caer en el siguiente error:

simplificación incorrectaLa no igualdad sólo se convertiría en igualdad para los casos x > 0. Ahora bien, si sí o sí es necesario sacar la x del numerador, esta simplificación también es correcta:

simplificación correctaY, efectivamente:

efectivamente

Por si habían dudas

La proporcionalidad

Acerca de las fracciones nos enseñaron prácticamente todo, pero viéndolo desde la distancia, me parece que se pasó a la ligera por el hecho de que el cociente entre dos magnitudes expresa cuánto de la magnitud del numerador corresponde a cada unidad de la magnitud del denominador. Después, en el Bachillerato, esto aparece de forma masiva en asignaturas como Química y Física:

  • F/m: La aceleración es la fuerza que actúa por unidad de masa.
  • F/q: La intensidad del campo eléctrico es la fuerza que actúa por unidad de carga eléctrica.
  • d = m/V: La densidad es la masa de un objeto por unidad de volumen.

En el cotidiano acto de la compra tenían nuestros profesores un buen ejemplo, si por ejemplo un cartel anuncia que la malla de 6 Kg de naranjas cuesta 3’84€ y queremos saber cuánto cuesta el kilogramo, tendremos que poner el precio en el numerador y el peso en el denominador, pues deseamos conocer el precio en función del peso.

Aunque el ejemplo de la compra pueda parecer muy básico, el mismo concepto, la proporcionalidad, permite hallar la solución a problemas aparentemente más complejos, como el siguiente que nos servirá a modo de ejemplo. Tenemos un tramo de fibra óptica de 300 metros por el que se desplaza un haz de luz (línea negra), «rebotando» por reflexión total interna.

fibra óptica

Esquema del tramo de fibra óptica

Si sólo sabemos el valor de ϴc como la luz no se desplaza en línea recta sino en zigzag, aparentemente no podemos calcular la distancia real que recorre la luz, pero gracias a la proporcionalidad directa y algo de trigonometría podemos encontrar solución.

trigonometria haz de luz

El seno de un ángulo es el cateto opuesto entre la hipotenusa

Vemos que existe una proporcionalidad directa entre X y L, pues sen(ϴc) es una constante. Es decir, si en 300 metros caben n segmentos X, habrá el mismo número de segmentos L, n ∈ ℝ+. Como: Si llamamos e a la distancia real recorrida por luz, sabemos que la siguiente igualdad, que nos permite calcular la distancia realmente recorrida en zigzag, es cierta:

En definitiva, creo que una mayor dedicación y rigurosidad en la exposición de los conceptos básicos nos hubiera ayudado a aposentar los cimientos de las matemáticas; una asignatura difícil, incluso para enseñarla.

El futuro es de Javascript

El gran ruido de la invasión en el lado servidor de Javascript empezó en el año 2009 con Node.js: no era el primer proyecto que lo intentaba pero sí el primero que lo lograba, y su logro aportó más que poder disponer del mismo lenguaje en el cliente y en el servidor. Por otro lado, sobre las posibilidades que ofrece actualmente Javascript en el navegador gracias a los compiladores JIT, ya he hablado en otro artículo.

Aunque el creador de Node.js, Ryan Dahl, abandonara su proyecto hace ya años, dejando de lado la web para pasar a proyectos más interesantes de Machine Learning, afirmando que Go es una mejor herramienta para servidores web con gran volumen de carga, creo que la inercia que tiene Javascript a día de hoy, le garantiza el dominio en los próximos años.

Desde luego que Javascript dista de ser un gran lenguaje de programación, pero la historia de la informática está plagada de casos en los que no se impuso lo que técnicamente era mejor, pues pesaron más factores relacionados con el mundo de los negocios. En mi opinión, el impulso que está cogiendo Javascript en los últimos años, hará que la palabra de moda en el personal de recursos humanos sea «Javascript». Si trabajas en la industria deberías tenerlo en cuenta.

Encuesta stackoverflow 2018

Tecnologías más populares en la encuesta de Stackoverflow del presente año.

Por supuesto, los programadores en lenguajes «tradicionales» del lado servidor, como PHP, Java o Python, van a seguir teniendo trabajo los próximos años, aunque sólo sea, en el peor de los casos, por los millones de líneas de código en producción que alguien va a tener que seguir manteniendo; aunque a día de hoy no creo que se llegue a ese extremo; seguro que -todavía- se desarrollarán proyectos nuevos en estos lenguajes.


Editado el 18/4/2018:

Google Brain ha llevado a Javascript su librería de TensorFlow: TensorFlow.js Es decir, llega a los navegadores, y por lo tanto a los ordenadores, móviles y tablets, el machine learning y las redes neuronales.

Álgebra lineal y sus aplicaciones

Ha llegado a mis manos un libro de matemáticas que merece una mención: Álgebra lineal y sus aplicaciones, de David C. Lay. Se trata de un vasto tratado sobre el álgebra lineal que profundiza en todos los puntos, de manera que no tan sólo es una excelente herramienta para aprender (que además cuenta con una gran cantidad de ejercicios resueltos) sino que también es una excelente obra de consulta.

Aunque suficiente motivo, no es éste el que me impulsa a mencionarlo en este espacio sino el hecho de ser el primer libro de matemáticas de nivel universitario que me encuentro que no usa expresiones como «es evidente que» o «resulta obvio» para eludir dar explicaciones detalladas. En mi opinión, no consultamos libros sobre temas que nos resultan obvios y evidentes; además, me parece que la función de un libro de carácter didáctico es transmitir al lector los conocimientos de su autor, no demostrar cuan por encima de la materia tratada está su capacidad; esto ya se le presupone.

Álgebra lineal y sus aplicaciones 2ª edicion David C. Lay

Esta es la segunda edición que conseguí a través de la biblioteca de la UOC pero ya va por la quinta edición.

David C. Lay, profesor catedrático e investigador de matemáticas, ha hecho una excelente obra para estudiantes de ingeniería, economía y, en general, de cualquier carrera que incluya las matemáticas en su programa.


Editado el 26/12/2017:

Estas navidades mi padre me lo ha regalado ^^  Aparentemente, el principal aporte de la quinta edición es que el 25% de los ejercicios son nuevos o están actualizados, principalmente ejercicios de computación, desaparece el CD (obsoleto) y la tapa es aun más blanda que la de la segunda edición (algo que compromete el futuro de un libro grueso de más de 500 páginas).

Google en las mismas prácticas que Microsoft

Los que ya tenemos unos años recordamos las «browser wars» entre Internet Explorer de Microsoft y Netscape de Netscape Communications. En aquel entonces Microsoft, que ya era acusada de monopolio, fue también acusada de competencia desleal por vender todas las versiones de su sistema operativo Windows con su navegador instalado por defecto. Recuerdo también que por aquel entonces alguien tuvo sus cinco minutos de gloria al mostrar que no era posible desinstalar Internet Explorer sin dejar inservible el sistema operativo.

Microsoft tuvo que afrontar juicios que iban desde demandas multimillonarias a la demanda por monopolio del Departamento de Justicia de los Estados Unidos. Para salvarse de esta última, la más grave pues amenazaba de dividir la compañía en varias, inyectó dinero en la moribunda Apple para que pudiera seguir existiendo una alternativa, aunque mínima, pero eso ya es otra historia. Paralelamente a estas demandas, habían juicios paralelos donde diferentes comunidades, como la hacker, acusaban a Microsoft de lo peor.

Curiosamente, hoy en día estamos viendo la misma obra pero interpretada por diferentes actores y esta vez el protagonista sale mucho mejor parado del juicio popular y el legal ni existe. Actualmente el ordenador de todos es el móvil (y sus prestaciones son incluso superiores a los ordenadores de la época), Android es Windows, Google Chrome es Internet Explorer y obviamente Google es Microsoft. Apple se interpreta a si misma en ambas partes pero en esta última su papel ha pasado de secundario a estar con los protagonistas.

Continuando con los paralelismos, todos los Android traen por defecto Google Chrome instalado y en ninguna de las versiones de Android donde lo he probado, 4.4 y 6.0, puede el usuario desinstalarlo. Como se puede ver en los siguientes pantallazos, la opción de desinstalar brilla por su ausencia:

Googe Chrome en Android 6.0 Marshmallow

Android 6.0 Marshmallow: Keep in the know, with Google Chrome.

Google Chrome en Android 4.4.2 Kit Kat.jpeg

Google Chrome en Android 4.4.2 Kit Kat tampoco se puede desinstalar, como los buenos virus.

En definitiva, pasan los años y se repite la misma historia con diferentes actores pero esta vez el desenlace en absoluto es trágico para el protagonista. Tal vez sea debido, como comentaba en otro artículo acerca de las prácticas de Google con su Gmail, a que más vale caer en gracia que ser gracioso. Don’t be evil.

Leyendo Don’t make me think

Hace años que no leo nada acerca de usabilidad, desde que finalicé los estudios. Ahora estoy leyendo «Don’t make me think, Revisited» de Steve Krug, un reputado especialista en usabilidad. Es la tercera edición que el autor hace del clásico que publicó en el año 2000. En esta nueva edición hace un repaso sobre los mismos principios añadiendo la usabilidad web para móviles y poniendo ejemplos más actuales.

Bastante ameno y muy ilustrado, no se trata de un extenso tratado sino de un compendio de los aspectos más importantes de la navegación y distribución de la información.

En vez de extenderme más en la descripción del libro pondré un ejemplo de su utilidad. Varios de los estudios que el autor ha hecho para sus clientes han incluido la observación del uso que diferentes usuarios dan a su web. Puede llegarnos a sorprender el modus operandi de algunos usuarios pues tendemos a pensar que la forma en que nosotros usamos una web es la más lógica o intuitiva y por lo tanto también la más común. Sólo darse cuenta de como caemos en este error compensa el tiempo y el dinero que cuesta el libro.

Leí en algún sitio que si sólo fueras a leer un libro sobre usabilidad debería ser este. Pues eso, imprescindible para diseñadores y desarrolladores web.