sábado, 15 de diciembre de 2018

En respuesta a: Hay indicios de espiritualidad más allá del Homo sapiens

Este artículo nace como respuesta (demasiado larga para ser incluida en la sección de comentarios) al artículo de Federico Gómez publicado en Tendencias 21: Hay indicios de espiritualidad más allá del Homo sapiens sobre la presencia de espiritualidad y protoreligión en los animales, algo que no creo que exista.

Respuesta:

Creo que se confunde lo que es espiritualidad con otras características que se consideran típicamente humanas como darse a los otros, sacrificarse o amar, por ejemplo.

Sin embargo la espiritualidad no es exactamente eso. Igualmente la definición de protoreligión dada en el artículo me parece tremendamente ambigua y confusa y no necesitaré acudir a una definición más concreta y clara de la que se da a entender en el escrito para aclarar que conductas, que sin lugar a dudas, el autor considera signos de una protoreligión como el altruismo, el sacrificio por los otros, el amor, el odio o la venganza, están perfectamente documentados desde hace ya tiempo por la sociobiología y la etología en el mundo animal.

¿Qué mayor servicio puede proporcionar un hombre o una mujer que dedicar su vida entera a la comunidad en la que vive, renunciando incluso a tener pareja y descendencia para dedicar su vida enteramente a los demás?  Sin embargo, esta misma conducta la encontramos en los insectos sociales como hormigas, abejas y termitas, donde la mayoría de la colonia no trabaja para sí misma, sino para su comunidad, sin reproducirse y dedicando su vida entera a los demás y donde una hormiga soldado, por ejemplo, no dudará en morir defendiendo a los suyos.

Como este hay muchos más ejemplos. La cuestión está en que lo que nos hace humanos no son estas características, que son comunes a muchos animales sobre la Tierra, sino precisamente la capacidad de comprenderlas y transmitirlas.

Ningún animal es capaz de comprender lo que le sucede, así como las causas de lo que le rodea, al menos no con la profundidad con la que lo hacemos los hombres. Ninguno es capaz de explicar a su descendencia lo que aprendió sobre el mundo durante su propia vida, cosa que es la base de la civilización humana.

Esta capacidad de comprender y de transmitir conocimientos complejos sobre el funcionamiento de las cosas se vio en la necesidad de rellenar lagunas que se escapaban a su comprensión, como la muerte, el sol, las estrellas, las estaciones, el nacimiento de una nueva vida, las desgracias, el sufrimiento. Ahí creo yo que nace la espiritualidad, cuando una inteligencia más desarrollada que cualquier otra y evolucionada para buscar causas y efectos tiene que explicar sucesos que escapan totalmente a su comprensión. Probablemente la espiritualidad y la religiosidad tengan una fuerte componente evolutiva, como adaptación para poder explicar, como un mecanismo adaptativo más, un mundo donde nuestra mente no puede captar y explicar todo.

En cuanto a los neandertales, se sabe que se han hibridado con el Homo sapiens ya que tenemos un 2% de sus genes (puede consultarse este artículo sobre el tema: Hibridación entre neandertales y humanos modernos. Estado de la cuestión).

 Aunque el concepto de lo que es una especie es resbaladizo y en ocasiones contradictorio o casi inaplicable (como pasa con muchas bacterias) en general se considera que dos especies son distintas cuando, en condiciones naturales, no se reproducen, cosa que evidentemente sí ha sucedido entre neandertales y sapiens. Esto significaría que los neandertales son de nuestra misma especie y por lo tanto no es raro que tengan ya el inicio de lo que es nuestra religiosidad. Evidentemente eran ya inteligentes.

En definitiva, no creo que exista ninguna protoreligiosidad ni espiritualidad en los animales ya que carecen de la inteligencia suficiente para articular la más mínima idea abstracta sobre el tema y mucho menos de transmitirlo a sus semejantes o sus propios hijos. Incluso aunque una madre elefante se quede días junto a su hijo muerto. El amor materno-filial llega a límites insospechados también entre organismos nada sospechosos de tener una elevada inteligencia como la araña Stegodyphus lineatus cuyas madres se dejan comer por los hijos como sacrificio personal (sublime si hablásemos de seres humanos) para que su descendencia pueda sobrevivir en ausencia de alimento (véase el artículo: Matrifagia, el sacrificio supremo de una araña aterciopelada).

domingo, 9 de septiembre de 2018

Herramientas y Servicios TIC Abiertos Para Educación

Logo de Herramientas y Servicios
TIC Abiertos Para Educación
Recientemente he publicado un trabajo en Internet sobre Herramientas y servicios TIC para Educación.

Empezó, como muchas de las cosas que he hecho, como una lista de herramientas que eran útiles para mi, pero finalmente ha "degenerado" en un listado muy exhaustivo de herramientas en abierto. Consta de una catalogación muy extensa y detallada que permite navegar por una gran cantidad de temas o categorías, lo que hace relativamente sencillo encontrar aquello que se desea.

Uno de los objetivos que me propuse fue no incluir herramientas que a la hora de la verdad no sirviesen para nada. Hay muchas herramientas excelentes que sólo pueden usarse de verdad pagando por ellas. Lógicamente un docente utiliza muchas herramientas a lo largo del año y quizás pueda pagar una o dos, pero partía de la base de que su uso tenía que ser gratuito y los resultados aceptables (hay muchas herramientas en las que con su versión gratuita se obtienen muy buenos resultados). Si quieres ver alguna de las herramientas que empecé incluyendo pero acabé retirando, puedes usar el buscador para encontrar la etiqueta trastero, allí es donde ha acabado más de una, aunque no muchas, ya que de entrada a la mayoría no las he llegado a poner en ningún momento.

En estos momentos hay más de 300 herramientas distribuidas en unas 100 categorías. No es que haya 3 herramientas por categoría, sino que cada herramienta (salvo alguna excepción) está incluida en más de una ya que la mayoría de las herramientas permiten su inclusión en más de un tema.

La parte fuerte es la encabezada con el título 2. Herramientas por tipo, ya que allí es donde se encuentran todas. La sección 3, Técnicas de enseñanza, es un intento de selección de algunas herramientas utilizadas en alguna de las metodologías más utilizadas últimamente. Esta sección ni es exhaustiva, en cuanto a las herramientas que podemos utilizar, ni completa en cuanto a las metodologías listadas, únicamente es un acercamiento para aquellos que intentan por primera vez a estas técnicas y se completará con el paso del tiempo.

La sección de Materias  (Áreas de conocimiento y REA) está en una fase excesivamente inicial, por lo incompleta que es, y también se irá completando.

Para navegar utiliza el buscador o despliega los menús pulsando sobre el símbolo: >

Espero que este trabajo sea realmente útil y ayude a los que buscan herramientas específicas para sus clases. Para cualquier adición o comentario he abierto un foro de discusión específico o bien a través de un mensaje aquí mismo.

domingo, 10 de junio de 2018

Introducción a la programación con Julia 1.0


Introducción a la programación con Julia
está disponible en Amazon
Os presento el penúltimo libro que he publicado sobre programación (del último dedicado a la programación estadística con R hablaré en los próximos días): Introducción  a la programación con Julia (el índice puede consultarse aquí).

Desde que, por casualidad, empece a probar el lenguaje Julia hace ya algo más de un año, me cautivó por su facilidad de uso. Desde entonces utilizo asiduamente la consola de Julia para todo tipo de operaciones con matrices y para dibujos rápidos de gráficas, aunque lógicamente es un lenguaje de propósito general con infinidad de usos de todo tipo.

Julia (https://julialang.org) es un lenguaje de programación, orientado a las aplicaciones científicas que surge ante la necesidad de disponer de un lenguaje de alto nivel y rápido para el cálculo numérico, técnico y científico. Una de las características de Julia es su alto rendimiento que lo aproximan al de lenguajes compilados como C. Otro de sus aspecto interesantes es que la comunidad de desarrolladores de Julia elabora una gran cantidad de paquetes externos que continuamente amplían sus capacidades.

Julia comenzó a ser desarrollado en 2009 por cuatro científicos informáticos que se habían propuesto crear un lenguaje de alto nivel y rápido; Jeff Bezanson, Stefan Karpinski, Viral B. Shah y Alan Edelman. En 2012 lanzaron el sitio web de Julia y desde entonces se ha creado una comunidad de usuarios y desarrolladores a su alrededor.

Es un lenguaje multiplataforma de forma que puede ejecutarse en Linux, Windows y macOS. Dispone de un compilador en tiempo de ejecución, JIT (Just In Time compiler), lo cual significa que los programas se compilan (se traducen a un lenguaje que los ordenadores pueden entender y ejecutar) en el momento en que se utiliza, a diferencia de otros programas, como C. Julia está diseñado para el cálculo en paralelo y en la nube, dispone de una terminal interactiva de texto, llamada REPL, donde se pueden obtener directamente los resultados a medida que son tecleados.

Una de sus características destacable es que es software libre y puede ser descargado de su página web de forma gratuita. Además, Julia plantea similitudes con otros lenguajes ya establecidos hace tiempo como R (lenguaje de programación estadística, véase la entrada en este mismo blog: Introducción a la programación con R), Python o MATLAB, entre otros. De Julia se puede afirmar que tiene la facilidad de uso de Python y la velocidad de C. Efectivamente, Julia es un lenguaje de programación que no requiere un esfuerzo excesivo para conocerlo, a diferencia de R, por ejemplo, en el que cuesta más conseguir un buen nivel de conocimientos. Julia es relativamente sencillo, lo que hace que la curva de aprendizaje sea similar a la de Python, uno de los programas más usados actualmente por la comunidad científica, debido precisamente a su simplicidad. En 2016 entró en la lista de los 50 lenguajes de programación más usados y en la actualidad continúa ascendiendo en la clasificación. A pesar de ser un lenguaje de programación muy nuevo, con sólo 6 años de existencia, se perfila como uno de los que más crecerán y se utilizarán en un futuro cercano.

Este es el aspecto que tiene este lenguaje, aquí en concreto está programada la solución de una ecuación de segundo grado donde se preguntan los parámetros a, b y c a través del teclado:

function ec2(a, b, c)

  x1 = (-b + sqrt(b^2 - 4 * a * c)) / (2* a)
  x2 = (-b - sqrt(b^2 - 4 * a * c)) / (2* a)
  x = [x1, x2]  return x
end

function main()

  print("a = ")
  a = parse(Float64, readline())
  print("b = ")
  b = parse(Float64, readline())
  print("c = ")
  c = parse(Float64, readline())
  x = ec2(a, b, c)
  println("x1 = ", x[1], "\nx2 =", x[2])
end


main()



Y como ejemplo de lo compacto que puede llegar a ser este lenguaje, la siguiente línea de código devuelve true (verdadero) si x es un número primo o false (falso) si no lo es.
esprimo(x) = x <= 1? false : !in(0, x .% (2:sqrt(x)))