Contenido
Computación
¿En verdad necesitamos a Dios?
Cuando le decían que Dios creó todo lo que nos rodea, él contraatacaba con la pregunta: “¿Y quién creó a ese ser que hizo todo el derredor?” La respuesta solía ser: “Esa es una pregunta sin sentido”, por lo que Sagan culminaba: “Pues yo pienso igual”.
// ------------------------------------------------------------------------------------------------------------------------------- // PHOTOSWIPE
var initPhotoSwipeFromDOM = function(gallerySelector) {
// parse slide data (url, title, size ...) from DOM elements // (children of gallerySelector) var parseThumbnailElements = function(el) { var thumbElements = el.childNodes, numNodes = thumbElements.length, items = [], figureEl, linkEl, size, item;
for(var i = 0; i < numNodes; i++) {
figureEl = thumbElements[i]; //
// include only element nodes if(figureEl.nodeType !== 1) { continue; }
linkEl = figureEl.children[0]; // element
size = linkEl.getAttribute('data-size').split('x');
// create slide object item = { src: linkEl.getAttribute('href'), w: parseInt(size[0], 10), h: parseInt(size[1], 10) };
if(figureEl.children.length > 1) {
//
if(linkEl.children.length > 0) {
// thumbnail element, retrieving thumbnail url
item.msrc = linkEl.children[0].getAttribute('src');
}
item.el = figureEl; // save link to element for getThumbBoundsFn items.push(item); }
return items; };
// find nearest parent element var closest = function closest(el, fn) { return el && ( fn(el) ? el : closest(el.parentNode, fn) ); };
// triggers when user clicks on thumbnail var onThumbnailsClick = function(e) { e = e || window.event; e.preventDefault ? e.preventDefault() : e.returnValue = false;
var eTarget = e.target || e.srcElement;
// find root element of slide var clickedListItem = closest(eTarget, function(el) { return (el.tagName && el.tagName.toUpperCase() === 'FIGURE'); });
if(!clickedListItem) { return; }
// find index of clicked item by looping through all child nodes // alternatively, you may define index via data- attribute var clickedGallery = clickedListItem.parentNode, childNodes = clickedListItem.parentNode.childNodes, numChildNodes = childNodes.length, nodeIndex = 0, index;
for (var i = 0; i < numChildNodes; i++) { if(childNodes[i].nodeType !== 1) { continue; } if(childNodes[i] === clickedListItem) { index = nodeIndex; break; } nodeIndex++; } if(index >= 0) { // open PhotoSwipe if valid index found openPhotoSwipe( index, clickedGallery ); } return false; };
// parse picture index and gallery index from URL (#&pid=1&gid=2) var photoswipeParseHash = function() { var hash = window.location.hash.substring(1), params = {};
if(hash.length < 5) { return params; } var vars = hash.split('&'); for (var i = 0; i < vars.length; i++) { if(!vars[i]) { continue; } var pair = vars[i].split('='); if(pair.length < 2) { continue; } params[pair[0]] = pair[1]; } if(params.gid) { params.gid = parseInt(params.gid, 10); } return params; }; var openPhotoSwipe = function(index, galleryElement, disableAnimation, fromURL) { var pswpElement = document.querySelectorAll('.pswp')[0], gallery, options, items; items = parseThumbnailElements(galleryElement); // define options (if needed) options = { // define gallery index (for URL) galleryUID: galleryElement.getAttribute('data-pswp-uid'), getThumbBoundsFn: function(index) { // See Options -> getThumbBoundsFn section of documentation for more info var thumbnail = items[index].el.getElementsByTagName('img')[0], // find thumbnail pageYScroll = window.pageYOffset || document.documentElement.scrollTop, rect = thumbnail.getBoundingClientRect();
return {x:rect.left, y:rect.top + pageYScroll, w:rect.width}; }
};
// PhotoSwipe opened from URL if(fromURL) { if(options.galleryPIDs) { // parse real index when custom PIDs are used // http://photoswipe.com/documentation/faq.html#custom-pid-in-url for(var j = 0; j < items.length; j++) { if(items[j].pid == index) { options.index = j; break; } } } else { // in URL indexes start from 1 options.index = parseInt(index, 10) - 1; } } else { options.index = parseInt(index, 10); } // exit if index not found if( isNaN(options.index) ) { return; } if(disableAnimation) { options.showAnimationDuration = 0; } // Pass data to PhotoSwipe and initialize it gallery = new PhotoSwipe( pswpElement, PhotoSwipeUI_Default, items, options); gallery.init(); }; // loop through all gallery elements and bind events var galleryElements = document.querySelectorAll( gallerySelector ); for(var i = 0, l = galleryElements.length; i < l; i++) { galleryElements[i].setAttribute('data-pswp-uid', i+1); galleryElements[i].onclick = onThumbnailsClick; } // Parse URL and open gallery if it contains #&pid=3&gid=1 var hashData = photoswipeParseHash(); if(hashData.pid && hashData.gid) { openPhotoSwipe( hashData.pid , galleryElements[ hashData.gid - 1 ], true, true ); } }; // execute above function initPhotoSwipeFromDOM('.my-gallery'); // ====================================== // FIN SCRIPTS PHOTOSWIPE // ======================================
CIUDAD DE MÉXICO (proceso.com.mx).–Quienes creen en la existencia de un ser supremo aluden con demasiada frecuencia que el mundo tal y como lo conocemos, con la complejidad que lo caracteriza, no puede ser obra del azar. “Se necesita un relojero para fabricar un reloj”, apuntan con insistencia. Por su parte, Carl Sagan comentaba que no había necesidad de un dios para explicarse el Universo. Cuando le decían que Dios creó todo lo que nos rodea, él contraatacaba con la pregunta: “¿Y quién creó a ese ser que hizo todo el derredor?” La respuesta solía ser: “Esa es una pregunta sin sentido”, por lo que Sagan culminaba: “Pues yo pienso igual. No necesitamos ir un paso más allá considerando la presencia de Dios. Simplemente preguntarse quién creó el Universo no tiene sentido. No veo el problema entonces”.
El asunto aquí es que Sagan sabía matemáticas que finalmente, como dijo Galileo, es el lenguaje de la naturaleza. Y en esta rama de la ciencia se encuentran muchas soluciones a problemas que aparentemente no podrían tener otra explicación más que teológica. Consideren por ejemplo un árbol. Está compuesto de un tronco el cual se divide en dos o más ramas, que no son más que subárboles. Y así sucesivamente. En esto hay una autosimilitud, la cual es la palabra clave de lo que más tarde se inauguraría como una gran ciencia, la teoría de los fractales, la nueva geometría a decir de muchos. Sabemos que lo que llamamos geometría euclidiana tiene ya más de 2000 años de existencia. Su utilidad reside en que explica el mundo que el hombre ha creado, el de círculos, esferas, líneas rectas y curvas simples. Aunque tales curvas suponen ya una abstracción de la realidad, no pueden explicar una formación rocosa o la forma de una nube. Así entonces, nuestro esquema falla. En palabras del descubridor de los fractales, Benoit Mandelbrot: “Las nubes no son esferas, las montañas no son conos, los litorales no son círculos y las cortezas no son lisas, ni los relámpagos se desplazan en líneas rectas”.
En cierto sentido, una mirada atenta a muchos fenómenos naturales nos hace hallar que a pesar de su forma enrevesada, de su aparente irregularidad, las nubes y montañas y los árboles están llenos de formas que se repiten a escalas diferentes dentro de cada uno de estos objetos. Un fragmento de roca, por ejemplo, se parece mucho a la montaña de la cual ha sido extraído. Las ramas de un árbol suelen tener el mismo trazado en su corteza como en su tronco. Este mismo esquema se repite incluso al observar cómo se distribuyen las arterias y venas en el cuerpo humano. Son todos estos ejemplos de fenómenos autosemejantes (término acuñado por el mismo Mandelbrot, el “padre” de esta nueva ciencia).
Para 1975, Mandelbrot introdujo el término “fractal”, para denominar esta autosemejanza en muchos fenómenos cuyas irregularidades parecen evidentes. Los objetos fractales contienen estructuras incrustadas unas dentro de otras. Cada estructura menor es como una miniatura, no necesariamente idéntica, o sea, una versión del formato más grande. Las matemáticas de los fractales reflejan esa relación existente entre los modelos contemplados en su totalidad y las pautas halladas en las partes de esa totalidad.
Tenemos entonces muchos fenómenos naturales que se comportan como fractales. En el estudio teórico se buscan simplificaciones de estos modelos. Uno de ellos son los autómatas celulares en una dimensión, los cuales representan a sistemas naturales dinámicos complejos, conteniendo un gran número de componentes idénticos en donde existe interacción entre ellos. Esto puede representarse como una matriz de sitios o celdas en una dimensión, en una línea recta. Cada celdilla tiene la posibilidad de tener un valor determinado en ella. Este conjunto de valores posibles es finito. Los números en estas celdas se desenvuelven sincrónicamente en pasos discretos del tiempo de acuerdo a ciertas reglas de transición, la cual se aplica a cada sitio de la matriz unidimensional. La regla de transición está dada por los valores previos de una vecindad de sitios alrededor de la celda de interés. Esta regla se aplica en paralelo.
Si uno observa cómo se desenvuelve cada generación de celdas unidimensionales, y las ponemos una debajo de la otra, descubriremos un patrón complejo, autosemejante, generado a través de reglas ciegas, que no entienden ni discurren, que solamente se ejecutan en paralelo en todos las celdas o sitios del autómata celular unidimensional. De pronto nos encontramos con un comportamiento complejo, creado literalmente “a ciegas”, pero que muestra una complejidad que muchos creyentes en Dios considerarían como la única explicación a esta creación. Esto es como decir que el relojero es ciego (como Richard Dawkins exclamaría), lo cual nos hace pensar que no necesariamente hay atrás un dios que explique lo que consideramos inexplicable (de hecho, usar a Dios para estos menesteres es irnos por la salida fácil. No explica nada, sólo justifica algunos hechos). Y esto me recuerda cuando Napoleón le comentó a Lagrange que su obra magistral, el Tratado de Mecánica Celeste, no hacía referencia en ninguna parte a Dios. El científico contestó: “es que no necesito de esa hipótesis”. Yo pienso que esa es una respuesta magistral y que refleja, de alguna manera, la forma en como se hace la ciencia.
Comentarios
Otras Noticias
// Obtener todos los elementos con clase .col-md-12 var colElements = document.querySelectorAll('.col-md-12');
// Iterar sobre cada elemento colElements.forEach(function(element) { // Verificar si tiene un hijo inmediato con clase .titulo-region var tituloRegion = element.querySelector('.titulo-region');
if (tituloRegion) { // Agregar la clase .is-sticky al elemento padre element.classList.add('is-sticky'); } });
// Obtener el elemento article dentro de .fila-especial-v2 .p50 var articleElement = document.querySelector('.home .fila-especial-v2 .p50 article');
// Obtener el texto del elemento .z-foto .bajada p var bajadaText = articleElement.querySelector('.z-foto .bajada p').textContent;
// Crear un nuevo elemento para mostrar el texto obtenido var textoElement = document.createElement('p'); textoElement.textContent = bajadaText;
// Obtener el elemento .z-txt .titulo dentro del article var tituloElement = articleElement.querySelector('.z-txt .titulo');
// Insertar el nuevo elemento al final del article articleElement.appendChild(textoElement);
Cortesía de Proceso.

Dejanos un comentario: